* -crlf
-
*.0 -diff -crlf
*.1 crlf=input
*.3 crlf=input
BSDmakefile crlf=input
bsp2ent crlf=input
*.bsp -diff -crlf
-*.cache -diff -crlf
+*.cache crlf=input
*.cbp -crlf
*.cbp -diff -crlf
*.c crlf=input
*.cpp crlf=input
create crlf=input
*.cron crlf=input
+crypto-keygen-standalone -diff -crlf
*.css crlf=input
*.cvswrappers crlf=input
+*.d0ir crlf=input
*.d0pk -diff -crlf
-*.db -diff -crlf
+*.db crlf=input
+*.db.* crlf=input
+*.def2ent crlf=input
*.default crlf=input
*.def crlf=input
*.dem -diff -crlf
*.dev -crlf
dir -diff -crlf
+*.directory crlf=input
djpeg -diff -crlf
*.dll -diff -crlf
DOCS -diff -crlf
*.dylib -diff -crlf
empty -diff -crlf
*.EncoderPlugin crlf=input
+*.ent crlf=input
+etc_svc_git-daemon_run crlf=input
*.flac -diff -crlf
+*.flp -diff -crlf
*.form crlf=input
*.framegroups crlf=input
+*.fteqccfail -diff -crlf
*.game crlf=input
*.gdb crlf=input
gendox crlf=input
git-update-octopus crlf=input
*.glp crlf=input
*.glsl crlf=input
+GPL-2 crlf=input
+GPL-3 crlf=input
GPL crlf=input
*.hardwired crlf=input
*.h crlf=input
*.hs crlf=input
+*.htaccess crlf=input
*.html crlf=input
*.html-part crlf=input
*.icns -diff -crlf
*.info-2 -diff -crlf
*.info -diff -crlf
*.inl crlf=input
-*.instantaction crlf=input
+*.iOS crlf=input
*.iqm -diff -crlf
*.java crlf=input
*.jhm crlf=input
*.mkdir -diff -crlf
*.mmpz -diff -crlf
*.modules crlf=input
+*.mp3 -diff -crlf
*.nib -crlf
*.obj -crlf
OFFSETS -diff -crlf
*.ogg -diff -crlf
*.options crlf=input
+*.otf -diff -crlf
pangorc crlf=input
+*.part crlf=input
*.patch crlf=input
*.patchsets crlf=input
+*.pbxproj crlf=input
*.pc crlf=input
-*.pcx -diff -crlf
*.pfb -diff -crlf
*.pfm -diff -crlf
+*.php crlf=input
*.pk3 -diff -crlf
PkgInfo crlf=input
*.pl crlf=input
*.plist crlf=input
*.pm crlf=input
*.png -diff -crlf
+*.po crlf=input
POSITIONS -diff -crlf
+*.pot crlf=input
*.proj -crlf
*.properties crlf=input
*.psd -diff -crlf
*.qc crlf=input
*.qdt crlf=input
*.qh crlf=input
+*.rar -diff -crlf
*.rb crlf=input
*.rc2 crlf=input
*.rc -crlf
rdjpgcom -diff -crlf
*.readme crlf=input
README crlf=input
-*.rtlights -diff -crlf
+*.rtlights crlf=input
SCHEMA crlf=input
*.scm crlf=input
sdl-config crlf=input
SDL -diff -crlf
+*.sfd -diff -crlf
*.shader crlf=input
*.sh crlf=input
*.skin crlf=input
TMAP -diff -crlf
todo crlf=input
TODO crlf=input
-tooltips.db diff crlf=input
*.ttf -diff -crlf
-*.TTF -diff -crlf
*.txt crlf=input
+*.txt.* crlf=input
update-shaderlists crlf=input
*.vbs -crlf
*.vcproj -crlf
+*.vcxproj crlf=input
versionbuilder crlf=input
+*.vhost crlf=input
*.wav -diff -crlf
-*.waypoints -diff -crlf
-w crlf=input
+*.waypoints crlf=input
*.width crlf=input
*.workspace -crlf
wrjpgcom -diff -crlf
xonotic-map-compiler-autobuild crlf=input
xonotic-map-compiler crlf=input
xonotic-map-screenshot crlf=input
-xonotic-osx-agl crlf=input
xonotic-osx-sdl crlf=input
*.xpm crlf=input
+*.xrns -diff -crlf
*.zip -diff -crlf
zipdiff crlf=input
*.zym -diff -crlf
SCM := $(shell if [ -d .svn ]; then echo svn; elif [ -d ../.git ]; then echo git; fi)
-FTEQCC ?= fteqcc
PERL ?= perl
ZIP ?= 7za a -tzip -mx=9
ZIPEXCLUDE ?= -x\!*.pk3 -xr\!\.svn -x\!qcsrc
DIFF ?= diff
-FTEQCCFLAGS_WATERMARK ?= -DWATERMARK='"$(shell git describe)"' -DCVAR_POPCON
-FTEQCCFLAGS ?= -Werror -Wno-Q302 -O3 -Ono-c -Ono-cs $(FTEQCCFLAGS_EXTRA) $(FTEQCCFLAGS_WATERMARK)
-FTEQCCFLAGS_PROGS ?=
-FTEQCCFLAGS_MENU ?=
-
# NOTE: use -DUSE_FTE instead of -TFTE here!
# It will automagically add an engine check with -TID and then change back to -TFTE
FTEQCCFLAGS_CSPROGS ?=
.PHONY: qc
qc: update-cvarcount
- $(MAKE) qc-recursive
-
-.PHONY: qc-recursive
-qc-recursive: menu.dat progs.dat csprogs.dat
+ $(MAKE) -C qcsrc
.PHONY: skin
skin: gfx/menu/default/skinvalues.txt
.PHONY: clean
clean:
- rm -f progs.dat menu.dat csprogs.dat
-
-FILES_CSPROGS = $(shell find qcsrc/client qcsrc/common qcsrc/warpzonelib -type f -not -name fteqcc.log -not -name qc.asm) qcsrc/server/w_*.qc
-csprogs.dat: $(FILES_CSPROGS)
- @echo make[1]: Entering directory \`$(PWD)/qcsrc/client\'
- cd qcsrc/client && $(FTEQCC) $(FTEQCCFLAGS) $(FTEQCCFLAGS_CSPROGS)
-
-FILES_PROGS = $(shell find qcsrc/server qcsrc/common qcsrc/warpzonelib -type f -not -name fteqcc.log -not -name qc.asm) qcsrc/server/w_*.qc
-progs.dat: $(FILES_PROGS)
- @echo make[1]: Entering directory \`$(PWD)/qcsrc/server\'
- cd qcsrc/server && $(FTEQCC) $(FTEQCCFLAGS) $(FTEQCCFLAGS_PROGS)
-
-FILES_MENU = $(shell find qcsrc/menu qcsrc/common qcsrc/warpzonelib -type f -not -name fteqcc.log -not -name qc.asm) qcsrc/server/w_*.qc
-menu.dat: $(FILES_MENU)
- @echo make[1]: Entering directory \`$(PWD)/qcsrc/menu\'
- cd qcsrc/menu && $(FTEQCC) $(FTEQCCFLAGS) $(FTEQCCFLAGS_MENU)
+ $(MAKE) -C qcsrc clean
gfx/menu/default/skinvalues.txt: qcsrc/menu/skin-customizables.inc
$(PERL) qcsrc/menu/skin-customizables.inc > gfx/menu/default/skinvalues.txt
-
-.PHONY: testcase
-testcase:
- cd qcsrc/testcase && $(FTEQCC) $(FTEQCCFLAGS) $(FTEQCCFLAGS_CSPROGS) -DTESTCASE="$$TESTCASE"
seta hud_configure_grid_xsize "" "snap to X * vid_conwidth"
seta hud_configure_grid_ysize "" "snap to Y * vid_conheight"
-seta scr_centerpos "" "Y position of the centerprint"
-
seta hud_panel_weapons "" "enable/disable this panel"
seta hud_panel_weapons_pos "" "position of this panel"
seta hud_panel_weapons_size "" "size of this panel"
seta hud_panel_physics_progressbar "" "enable progressbar in panel (2 = only for speed; 3 = only for acceleration)"
seta hud_panel_physics_acceleration_progressbar_mode "" "0 = progressbar increases from the center to the right if the acceleration is positive, to the left if it's negative; 1 = progressbar increases from the border in the same direction for both positive and negative accelerations"
seta hud_panel_physics_text "" "show text in panel (2 = only for speed; 3 = only for acceleration)"
+
+seta hud_panel_centerprint "" "enable/disable this panel"
+seta hud_panel_centerprint_pos "" "position of this base of the panel"
+seta hud_panel_centerprint_size "" "size of this panel"
+seta hud_panel_centerprint_bg "" "if set to something else than \"\" = override default background"
+seta hud_panel_centerprint_bg_color "" "if set to something else than \"\" = override default panel background color"
+seta hud_panel_centerprint_bg_color_team "" "override panel color with team color in team based games"
+seta hud_panel_centerprint_bg_alpha "" "if set to something else than \"\" = override default panel background alpha"
+seta hud_panel_centerprint_bg_border "" "if set to something else than \"\" = override default size of border around the background"
+seta hud_panel_centerprint_bg_padding "" "if set to something else than \"\" = override default padding of contents from border"
+seta hud_panel_centerprint_align "" "text alignment: 0 left, 0.5 center, 1 right"
+seta hud_panel_centerprint_flip "" "invert messages order"
+seta hud_panel_centerprint_fontscale "" "scale the text font by this amount"
+seta hud_panel_centerprint_time "" "message duration (NOTE: certain messages have a fixed duration)"
+seta hud_panel_centerprint_fadetime "" "how long a message takes to fade out (this time is included in the message duration and can't be > 1)"
--- /dev/null
+// placeholder file, is replaced by autoexec.cfg in user home directory
--- /dev/null
+// not so empty now
set g_balance_hagar_secondary 1
set g_balance_hagar_secondary_load 0
set g_balance_hagar_secondary_load_speed 0.6
+set g_balance_hagar_secondary_load_spread 0.075
+set g_balance_hagar_secondary_load_spread_bias 0.5
set g_balance_hagar_secondary_load_max 4
set g_balance_hagar_secondary_load_hold 0
set g_balance_hagar_secondary_load_releasedeath 1
set g_balance_tuba_edgedamage 0
set g_balance_tuba_radius 200
set g_balance_tuba_force 40
+set g_balance_tuba_pitchstep 6
// }}}
// {{{ fireball
set g_balance_fireball_primary_ammo 40
set g_balance_hagar_secondary 1
set g_balance_hagar_secondary_load 0
set g_balance_hagar_secondary_load_speed 0.6
+set g_balance_hagar_secondary_load_spread 0.075
+set g_balance_hagar_secondary_load_spread_bias 0.5
set g_balance_hagar_secondary_load_max 4
set g_balance_hagar_secondary_load_hold 0
set g_balance_hagar_secondary_load_releasedeath 1
set g_balance_tuba_edgedamage 0
set g_balance_tuba_radius 200
set g_balance_tuba_force 40
+set g_balance_tuba_pitchstep 6
// }}}
// {{{ fireball
set g_balance_fireball_primary_ammo 40
set g_balance_hagar_secondary 1
set g_balance_hagar_secondary_load 0
set g_balance_hagar_secondary_load_speed 0.6
+set g_balance_hagar_secondary_load_spread 0.075
+set g_balance_hagar_secondary_load_spread_bias 0.5
set g_balance_hagar_secondary_load_max 4
set g_balance_hagar_secondary_load_hold 0
set g_balance_hagar_secondary_load_releasedeath 1
set g_balance_tuba_edgedamage 0
set g_balance_tuba_radius 200
set g_balance_tuba_force 40
+set g_balance_tuba_pitchstep 6
// }}}
// {{{ fireball
set g_balance_fireball_primary_ammo 5
// }}}
// {{{ misc
-set g_balance_selfdamagepercent 0.75
+set g_balance_selfdamagepercent 0.65
set g_balance_weaponswitchdelay 0.15
set g_weaponspeedfactor 1 "weapon projectile speed multiplier"
set g_weaponratefactor 1 "weapon fire rate multiplier"
set g_balance_uzi_burst_ammo 3
set g_balance_uzi_first 1
-set g_balance_uzi_first_damage 16
+set g_balance_uzi_first_damage 14
set g_balance_uzi_first_force 5
set g_balance_uzi_first_spread 0.03
-set g_balance_uzi_first_refire 0.2
+set g_balance_uzi_first_refire 0.4
set g_balance_uzi_first_ammo 1
-set g_balance_uzi_sustained_damage 14
+set g_balance_uzi_sustained_damage 12
set g_balance_uzi_sustained_force 5
set g_balance_uzi_sustained_spread 0.04
set g_balance_uzi_sustained_refire 0.1
// {{{ nex
set g_balance_nex_primary_damage 90
set g_balance_nex_primary_force 400
-set g_balance_nex_primary_refire 1.25
-set g_balance_nex_primary_animtime 0.3
+set g_balance_nex_primary_refire 1.5
+set g_balance_nex_primary_animtime 0.4
set g_balance_nex_primary_ammo 6
set g_balance_nex_primary_damagefalloff_mindist 0 // 1000 For tZork ;3
set g_balance_nex_primary_damagefalloff_maxdist 0 // 3000
set g_balance_minstanex_reload_time 2
// }}}
// {{{ hagar
-set g_balance_hagar_primary_damage 30
-set g_balance_hagar_primary_edgedamage 15
+set g_balance_hagar_primary_damage 25
+set g_balance_hagar_primary_edgedamage 12.5
set g_balance_hagar_primary_force 50
-set g_balance_hagar_primary_radius 70
-set g_balance_hagar_primary_spread 0.05
+set g_balance_hagar_primary_radius 60
+set g_balance_hagar_primary_spread 0.04
set g_balance_hagar_primary_speed 2000
set g_balance_hagar_primary_lifetime 5
set g_balance_hagar_primary_refire 0.15
set g_balance_hagar_secondary 1
set g_balance_hagar_secondary_load 1
set g_balance_hagar_secondary_load_speed 0.5
+set g_balance_hagar_secondary_load_spread 0.075
+set g_balance_hagar_secondary_load_spread_bias 0.5
set g_balance_hagar_secondary_load_max 4
set g_balance_hagar_secondary_load_hold 1
set g_balance_hagar_secondary_load_releasedeath 0
set g_balance_hagar_secondary_edgedamage 20
set g_balance_hagar_secondary_force 50
set g_balance_hagar_secondary_radius 80
-set g_balance_hagar_secondary_spread 0.05
+set g_balance_hagar_secondary_spread 0.06
set g_balance_hagar_secondary_speed 2000
set g_balance_hagar_secondary_lifetime_min 10
set g_balance_hagar_secondary_lifetime_rand 0
set g_balance_rocketlauncher_damage 80
set g_balance_rocketlauncher_edgedamage 40
set g_balance_rocketlauncher_force 400
-set g_balance_rocketlauncher_radius 100
+set g_balance_rocketlauncher_radius 110
set g_balance_rocketlauncher_speed 1500
set g_balance_rocketlauncher_speedaccel 1500
set g_balance_rocketlauncher_speedstart 800
set g_balance_rocketlauncher_guidestop 0 // stop guiding when firing again
set g_balance_rocketlauncher_remote_damage 70
set g_balance_rocketlauncher_remote_edgedamage 35
-set g_balance_rocketlauncher_remote_radius 100
+set g_balance_rocketlauncher_remote_radius 110
set g_balance_rocketlauncher_remote_force 400
set g_balance_rocketlauncher_reload_ammo 0 //default: 25
set g_balance_rocketlauncher_reload_time 2
set g_balance_rifle_bursttime 0
set g_balance_rifle_primary_tracer 1
set g_balance_rifle_primary_shots 1
-set g_balance_rifle_primary_damage 30
-set g_balance_rifle_primary_headshotaddeddamage 30
+set g_balance_rifle_primary_damage 40
+set g_balance_rifle_primary_headshotaddeddamage 40
set g_balance_rifle_primary_spread 0
set g_balance_rifle_primary_force 100
set g_balance_rifle_primary_speed 40000
set g_balance_rifle_secondary_tracer 0
set g_balance_rifle_secondary_shots 4
set g_balance_rifle_secondary_damage 10
-set g_balance_rifle_secondary_headshotaddeddamage 10
-set g_balance_rifle_secondary_spread 0.02
+set g_balance_rifle_secondary_headshotaddeddamage 20
+set g_balance_rifle_secondary_spread 0.04
set g_balance_rifle_secondary_force 50
set g_balance_rifle_secondary_speed 20000
set g_balance_rifle_secondary_lifetime 5
set g_balance_tuba_edgedamage 0
set g_balance_tuba_radius 200
set g_balance_tuba_force 40
+set g_balance_tuba_pitchstep 6
// }}}
// {{{ fireball // this is a superweapon -- lets make it behave as one.
set g_balance_fireball_primary_ammo 20
set g_balance_hagar_secondary 1
set g_balance_hagar_secondary_load 0
set g_balance_hagar_secondary_load_speed 0.6
+set g_balance_hagar_secondary_load_spread 0.075
+set g_balance_hagar_secondary_load_spread_bias 0.5
set g_balance_hagar_secondary_load_max 4
set g_balance_hagar_secondary_load_hold 0
set g_balance_hagar_secondary_load_releasedeath 1
set g_balance_tuba_edgedamage 0
set g_balance_tuba_radius 200
set g_balance_tuba_force 40
+set g_balance_tuba_pitchstep 6
// }}}
// {{{ fireball
set g_balance_fireball_primary_ammo 40
#!/bin/sh
+case "$1" in
+ pot)
+ mode=pot
+ mail=true
+ ;;
+ po)
+ mode=po
+ mail=true
+ language=
+ ;;
+ '')
+ echo "Sorry, you are not supposed to use this script."
+ echo "This script is solely for use by the Xonotic Core Team."
+ echo "Unauthorized use of it can cause HIGHLY annoying merge"
+ echo "conflicts."
+ exit 1
+ ;;
+ *)
+ mode=po
+ mail=false
+ language=$1
+ ;;
+esac
+
for VM in menu csprogs; do
case "$VM" in
csprogs)
VMD=$VM
;;
esac
- {
- find qcsrc/"$VMD" -type f -not -name \*.po -not -name \*.txt
- find qcsrc/common -type f -not -name \*.po -not -name \*.txt
- find qcsrc/server -type f -name w_\*.qc
- } | xgettext -LC -k_ -f- --from-code utf-8 -o "$VM".dat.pot >&2
- for X in "$VM".dat.*.po; do
- [ -f "$X" ] || continue
- for Y in ~/check-translations/"$X".*; do
- [ -f "$Y" ] || continue
- msgcat -F --use-first "$Y" "$X" > "$X".new
- mv "$X".new "$X"
- done
- msgmerge -F -U "$X" "$VM".dat.pot >&2
- msgattrib --untranslated "$X" | grep . > "$X".untranslated || rm -f "$X".untranslated
- msgattrib --fuzzy "$X" | grep . > "$X".fuzzy || rm -f "$X".fuzzy
- nu=$((`grep -c ^#: "$X".untranslated` + 0))
- nf=$((`grep -c ^#: "$X".fuzzy` + 0))
- n=$(($nu + $nf))
- if [ $n -gt 0 ]; then
- echo "TODO for translation $X:"
- echo "Untranslated: $nu"
- echo "Fuzzy: $nf"
- ltr=`grep '^"Last-Translator: ' "$X" | cut -d ' ' -f 2- | cut -d '\\' -f 1 | egrep -v '<LL@li.org>|<EMAIL@ADDRESS>'`
- ltm=`grep '^"Language-Team: ' "$X" | cut -d ' ' -f 2- | cut -d '\\' -f 1 | egrep -v '<LL@li.org>|<EMAIL@ADDRESS>'`
- echo "Translators: $ltr, $ltm"
- case "$ltr" in
- '')
- to=$ltm
- cc=
- ;;
- *)
- to=$ltr
- if [ x"$ltr" = x"$ltm" ]; then
- cc=
- else
- cc=$ltm
- fi
- ;;
- esac
- if [ -n "$to" ]; then
- echo "To: $to"
- fi
- if [ -n "$cc" ]; then
- echo "Cc: $cc"
+
+ if [ x"$mode" = x"pot" ]; then
+ {
+ find qcsrc/"$VMD" -type f -not -name \*.po -not -name \*.txt
+ find qcsrc/common -type f -not -name \*.po -not -name \*.txt
+ find qcsrc/server -type f -name w_\*.qc
+ } | xgettext -LC -k_ -f- --from-code utf-8 -o "$VM".dat.pot >&2
+ fi
+
+ if [ x"$mode" = x"po" ]; then
+ for X in "$VM".dat.*.po; do
+ [ -f "$X" ] || continue
+ if [ -n "$language" ]; then
+ if [ x"${X#*.dat.}" != x"$language.po" ]; then
+ continue
+ fi
fi
- if [ -n "$to" ]; then
- while :; do
- echo "Send mail? [y/n]"
- read -r yesno
- case "$yesno" in
- y)
- attach=
- if [ $nu -gt 0 ]; then
- attach="$attach $X.untranslated"
- fi
- if [ $nf -gt 0 ]; then
- attach="$attach $X.fuzzy"
- fi
- {
- cat <<EOF
+ for Y in ~/check-translations/"$X".*; do
+ [ -f "$Y" ] || continue
+ msgcat -F --use-first "$Y" "$X" > "$X".new
+ mv "$X".new "$X"
+ done
+ msgmerge -F -U "$X" "$VM".dat.pot >&2
+ msgattrib --untranslated "$X" | grep . > "$X".untranslated || rm -f "$X".untranslated
+ msgattrib --fuzzy "$X" | grep . > "$X".fuzzy || rm -f "$X".fuzzy
+ nu=$((`grep -c ^#: "$X".untranslated` + 0))
+ nf=$((`grep -c ^#: "$X".fuzzy` + 0))
+ n=$(($nu + $nf))
+ if [ $n -gt 0 ]; then
+ echo "TODO for translation $X:"
+ echo "Untranslated: $nu"
+ echo "Fuzzy: $nf"
+ ltr=`grep '^"Last-Translator: ' "$X" | cut -d ' ' -f 2- | cut -d '\\' -f 1 | egrep -v '<LL@li.org>|<EMAIL@ADDRESS>'`
+ ltm=`grep '^"Language-Team: ' "$X" | cut -d ' ' -f 2- | cut -d '\\' -f 1 | egrep -v '<LL@li.org>|<EMAIL@ADDRESS>'`
+ echo "Translators: $ltr, $ltm"
+ case "$ltr" in
+ '')
+ to=$ltm
+ cc=
+ ;;
+ *)
+ to=$ltr
+ if [ x"$ltr" = x"$ltm" ]; then
+ cc=
+ else
+ cc=$ltm
+ fi
+ ;;
+ esac
+ if [ -n "$to" ]; then
+ echo "To: $to"
+ fi
+ if [ -n "$cc" ]; then
+ echo "Cc: $cc"
+ fi
+ if [ -n "$to" ]; then
+ while $mail; do
+ echo "Send mail? [y/n]"
+ read -r yesno
+ case "$yesno" in
+ y)
+ attach=
+ if [ $nu -gt 0 ]; then
+ attach="$attach $X.untranslated"
+ fi
+ if [ $nf -gt 0 ]; then
+ attach="$attach $X.fuzzy"
+ fi
+ {
+ cat <<EOF
Hi,
as you provided us with translations in the past, we kindly ask you
please tell us in a reply to this message.
EOF
- if [ $nu -gt 0 ]; then
- cat <<EOF
+ if [ $nu -gt 0 ]; then
+ cat <<EOF
Attached to this message is a file
$X.untranslated
with $nu yet to be translated messages. Please translate them and reply
with the file containing the translations in the "msgstr" fields.
EOF
- fi
- if [ $nf -gt 0 ]; then
- cat <<EOF
+ fi
+ if [ $nf -gt 0 ]; then
+ cat <<EOF
Attached to this message is a file
$X.fuzzy
with $nf automatically generated translations. Please verify and/or fix
them and reply with the file having been verified by you.
EOF
- fi
- cat <<EOF
+ fi
+ cat <<EOF
Thanks in advance,
Team Xonotic
EOF
- } | mutt \
- -e "set from=\"divVerent@xonotic.org\"" \
- -e "set use_from=yes" \
- -e "set use_envelope_from=yes" \
- -s "Need update for translations: $X" \
- -c "$cc" \
- -b "divVerent@xonotic.org" \
- -a $attach -- \
- "$to"
- break
- ;;
- n)
- break
- ;;
- esac
- done
+ } | mutt \
+ -e "set from=\"divVerent@xonotic.org\"" \
+ -e "set use_from=yes" \
+ -e "set use_envelope_from=yes" \
+ -s "Need update for translations: $X" \
+ -c "$cc" \
+ -b "divVerent@xonotic.org" \
+ -a $attach -- \
+ "$to"
+ break
+ ;;
+ n)
+ break
+ ;;
+ esac
+ done
+ fi
fi
- fi
- done
- for X in "$VM".dat.*.po.disabled; do
- [ -f "$X" ] || continue
- msgmerge -F -U "$X" "$VM".dat.pot >/dev/null 2>&1
- done
+ done
+
+ for X in "$VM".dat.*.po.disabled; do
+ [ -f "$X" ] || continue
+ if [ -n "$language" ]; then
+ if [ x"${X#*.dat.}" != x"$language.po" ]; then
+ continue
+ fi
+ fi
+ msgmerge -F -U "$X" "$VM".dat.pot >/dev/null 2>&1
+ done
+ fi
done
// place to put further updates
alias _update_configversion_4 "snd_entchannel0volume 1; snd_entchannel1volume 1; snd_entchannel2volume 1; snd_entchannel3volume 1; snd_entchannel4volume 1; snd_entchannel5volume 1; snd_entchannel6volume 1; snd_entchannel7volume 1; snd_playerchannel0volume 1; snd_playerchannel1volume 1; snd_playerchannel2volume 1; snd_playerchannel3volume 1; snd_playerchannel4volume 1; snd_playerchannel5volume 1; snd_playerchannel6volume 1; snd_playerchannel7volume 1; snd_worldchannel0volume 1; snd_worldchannel1volume 1; snd_worldchannel2volume 1; snd_worldchannel3volume 1; snd_worldchannel4volume 1; snd_worldchannel5volume 1; snd_worldchannel6volume 1; snd_worldchannel7volume 1; snd_csqcchannel0volume 1; snd_csqcchannel1volume 1; snd_csqcchannel2volume 1; snd_csqcchannel3volume 1; snd_csqcchannel4volume 1; snd_csqcchannel5volume 1; snd_csqcchannel6volume 1; snd_csqcchannel7volume 1; _update_configversion_5"
+// fix for common broken config for unknown reason
+alias _update_configversion_5 "r_shadow_realtime_world_lightmaps 1; _update_configversion_6"
+
+// some people have freetype issues, weird
+alias _update_configversion_6 "r_font_disable_freetype 0; utf8_enable 1; _update_configversion_7"
+
// place to put further updates
-alias _update_configversion_5 ""
+alias _update_configversion_7 ""
_update_configversion_$g_configversion
-set g_configversion 5
+set g_configversion 7
msgstr ""
"Project-Id-Version: 0.1preview\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2011-08-04 22:19+0200\n"
+"POT-Creation-Date: 2011-09-12 12:24+0200\n"
"PO-Revision-Date: 2011-04-20 10:46+0200\n"
"Last-Translator: Rudolf Polzer <divVerent@xonotic.org>\n"
"Language-Team: Rudolf Polzer <divVerent@xonotic.org>\n"
"Unbekannter Entity-Typ in CSQC_Ent_Update (enttype: %d, edict: %d, "
"classname: %s)\n"
-#: qcsrc/client/Main.qc:1450
+#: qcsrc/client/Main.qc:1451
#, c-format
msgid "%s (not bound)"
msgstr "%s (nicht zugewiesen)"
-#: qcsrc/client/Main.qc:1455 qcsrc/client/hud.qc:407
+#: qcsrc/client/Main.qc:1456 qcsrc/client/hud.qc:230
#, c-format
msgid "%s (%s)"
msgstr "%s (%s)"
msgid "Awaiting orders..."
msgstr "Warten auf Auftrag..."
-#: qcsrc/client/hud.qc:337
+#: qcsrc/client/hud.qc:160
msgid "1st"
msgstr "1."
-#: qcsrc/client/hud.qc:339
+#: qcsrc/client/hud.qc:162
msgid "2nd"
msgstr "2."
-#: qcsrc/client/hud.qc:341
+#: qcsrc/client/hud.qc:164
msgid "3rd"
msgstr "3."
-#: qcsrc/client/hud.qc:343
+#: qcsrc/client/hud.qc:166
#, c-format
msgid "%dth"
msgstr "%d."
-#: qcsrc/client/hud.qc:375
+#: qcsrc/client/hud.qc:198
#, c-format
msgid " (-%dL)"
msgstr " (-%dR)"
-#: qcsrc/client/hud.qc:380
+#: qcsrc/client/hud.qc:203
#, c-format
msgid " (+%dL)"
msgstr " (+%dR)"
-#: qcsrc/client/hud.qc:396
+#: qcsrc/client/hud.qc:219
msgid "Start line"
msgstr "Start"
-#: qcsrc/client/hud.qc:398 qcsrc/client/hud.qc:402
+#: qcsrc/client/hud.qc:221 qcsrc/client/hud.qc:225
msgid "Finish line"
msgstr "Ziel"
-#: qcsrc/client/hud.qc:400
+#: qcsrc/client/hud.qc:223
#, c-format
msgid "Intermediate %d"
msgstr "Zwischenzeit %d"
-#: qcsrc/client/hud.qc:409
+#: qcsrc/client/hud.qc:232
#, c-format
msgid "%s (%s %s)"
msgstr "%s (%s %s)"
-#: qcsrc/client/hud.qc:911
+#: qcsrc/client/hud.qc:772
msgid "Out of ammo"
msgstr "Keine Munition mehr."
-#: qcsrc/client/hud.qc:915
+#: qcsrc/client/hud.qc:776
msgid "Don't have"
msgstr "nicht vorhanden"
-#: qcsrc/client/hud.qc:919
+#: qcsrc/client/hud.qc:780
msgid "Unavailable"
msgstr "nicht verfügbar"
-#: qcsrc/client/hud.qc:1649
+#: qcsrc/client/hud.qc:1520
#, c-format
msgid "^1%s^1 couldn't take it anymore\n"
msgstr "^1%s^1 konnte es nicht mehr ertragen\n"
-#: qcsrc/client/hud.qc:1653 qcsrc/client/hud.qc:1957
+#: qcsrc/client/hud.qc:1524 qcsrc/client/hud.qc:1828
#, c-format
msgid "^1%s^1 died\n"
msgstr "^1%s^1 ist gestorben\n"
-#: qcsrc/client/hud.qc:1657
+#: qcsrc/client/hud.qc:1528
#, c-format
msgid "^7%s^7 committed suicide. What's the point of living without ammo?\n"
msgstr "^7%s^7 hat sich erhängt. Was ist schon ein Leben ohne Munition?\n"
-#: qcsrc/client/hud.qc:1661
+#: qcsrc/client/hud.qc:1532
#, c-format
msgid "^1%s^1 thought they found a nice camping ground\n"
msgstr "^1%s^1 dachte, einen tollen Campingplatz gefunden zu haben\n"
-#: qcsrc/client/hud.qc:1665
+#: qcsrc/client/hud.qc:1536
#, c-format
msgid "^1%s^1 didn't become friends with the Lord of Teamplay\n"
msgstr "^1%s^1 bekam Probleme mit dem Lord of Teamplay\n"
-#: qcsrc/client/hud.qc:1669
+#: qcsrc/client/hud.qc:1540
#, c-format
msgid "^1%s^1 unfairly eliminated themself\n"
msgstr "^1%s^1 hat sich selbst auf unfaire Weise erledigt\n"
-#: qcsrc/client/hud.qc:1673
+#: qcsrc/client/hud.qc:1544
#, c-format
msgid "^1%s^1 burned to death\n"
msgstr "^1%s^1 brannte zu Tode\n"
-#: qcsrc/client/hud.qc:1677
+#: qcsrc/client/hud.qc:1548
#, c-format
msgid "^1%s^1 couldn't resist the urge to self-destruct\n"
msgstr ""
"^1%s^1 konnte dem Drang zur Selbstzerstörung einfach nicht widerstehen\n"
-#: qcsrc/client/hud.qc:1681
+#: qcsrc/client/hud.qc:1552
#, c-format
msgid "^1%s^1 ended it all after a %d kill spree\n"
msgstr "^1%s^1 machte seinem %d-Amoklauf ein Ende\n"
-#: qcsrc/client/hud.qc:1698
+#: qcsrc/client/hud.qc:1569
#, c-format
msgid "^1%s^1 took action against a team mate\n"
msgstr "^1%s^1 ergriff Maßnahmen gegen einen Mitspieler\n"
-#: qcsrc/client/hud.qc:1700
+#: qcsrc/client/hud.qc:1571
#, c-format
msgid "^1%s^1 mows down a team mate\n"
msgstr "^1%s^1 mähte einen Mitspieler nieder\n"
-#: qcsrc/client/hud.qc:1705
+#: qcsrc/client/hud.qc:1576
#, c-format
msgid "^1%s^1 ended a %d scoring spree by going against a team mate\n"
msgstr ""
"^1%s^1 dachte, %d Punkte hintereinander reichen, und trug dies an einem "
"Mitspieler aus\n"
-#: qcsrc/client/hud.qc:1707
+#: qcsrc/client/hud.qc:1578
#, c-format
msgid "^1%s^1 ended a %d kill spree by killing a team mate\n"
msgstr "^1%s^1 beendete seinen %d-Amoklauf, indem er einen Mitspieler tötete\n"
-#: qcsrc/client/hud.qc:1711
+#: qcsrc/client/hud.qc:1582
#, c-format
msgid "^1%s^1's %s scoring spree was ended by a team mate!\n"
msgstr ""
"^1%s^1s %s Punkte hintereinander wurden von einem Mitspieler gestört!\n"
-#: qcsrc/client/hud.qc:1713
+#: qcsrc/client/hud.qc:1584
#, c-format
msgid "^1%s^1's %s kill spree was ended by a team mate!\n"
msgstr "^1%s^1s %s-Amoklauf wurde von einem Mitspieler beendet!\n"
-#: qcsrc/client/hud.qc:1717
+#: qcsrc/client/hud.qc:1588
#, c-format
msgid "^1%s^1 drew first blood\n"
msgstr "^1%s^1 war der Erste\n"
-#: qcsrc/client/hud.qc:1721
+#: qcsrc/client/hud.qc:1592
#, c-format
msgid "^1%s^1 tried to occupy %s^1's teleport destination space\n"
msgstr "^1%s^1 dachte, %s^1 am Teleportieren hindern zu können\n"
-#: qcsrc/client/hud.qc:1723
+#: qcsrc/client/hud.qc:1594
#, c-format
msgid "^1%s^1 was telefragged by %s\n"
msgstr "^1%s^1 wurde von %s^1 telefragged\n"
-#: qcsrc/client/hud.qc:1728
+#: qcsrc/client/hud.qc:1599
#, c-format
msgid "^1%s^1 was drowned by %s\n"
msgstr "^1%s^1 wurde von %s^1 etränkt\n"
-#: qcsrc/client/hud.qc:1733
+#: qcsrc/client/hud.qc:1604
#, c-format
msgid "^1%s^1 was slimed by %s\n"
msgstr "^1%s^1 wurde von %s^1 im Schleim versenkt\n"
-#: qcsrc/client/hud.qc:1738
+#: qcsrc/client/hud.qc:1609
#, c-format
msgid "^1%s^1 was cooked by %s\n"
msgstr "^1%s^1 wurde von %s^1 gebraten\n"
-#: qcsrc/client/hud.qc:1743
+#: qcsrc/client/hud.qc:1614
#, c-format
msgid "^1%s^1 was grounded by %s\n"
msgstr "^1%s^1 wurde von %s^1 geerdet\n"
-#: qcsrc/client/hud.qc:1748
+#: qcsrc/client/hud.qc:1619
#, c-format
msgid "^1%s^1 was shot into space by %s\n"
msgstr "^1%s^1 wurde von %s^1 ins All geschossen\n"
-#: qcsrc/client/hud.qc:1753
+#: qcsrc/client/hud.qc:1624
#, c-format
msgid "^1%s^1 was conserved by %s\n"
msgstr "^1%s^1 wurde von %s^1 konserviert\n"
-#: qcsrc/client/hud.qc:1759
+#: qcsrc/client/hud.qc:1630
#, c-format
msgid "^1%s^1 was thrown into a world of hurt by %s\n"
msgstr "^1%s^1 wurde von %s^1 in eine Welt des Schmerzes geworfen\n"
-#: qcsrc/client/hud.qc:1763
+#: qcsrc/client/hud.qc:1634
#, c-format
msgid "^1%s^1 was crushed by %s\n"
msgstr "^1%s^1 wurde von %s^1 zerquetscht\n"
-#: qcsrc/client/hud.qc:1767
+#: qcsrc/client/hud.qc:1638
#, c-format
msgid "^1%s^1 got shredded by %s\n"
msgstr "^1%s^1 wurde von %s^1 zerstückelt\n"
-#: qcsrc/client/hud.qc:1771
+#: qcsrc/client/hud.qc:1642
#, c-format
msgid "^1%s^1 was blasted to bits by %s\n"
msgstr "^1%s^1 wurde von %s^1 in die Luft gejagt\n"
-#: qcsrc/client/hud.qc:1775
+#: qcsrc/client/hud.qc:1646
#, c-format
msgid "^1%s^1 got caught in the destruction of %s^1's vehicle\n"
msgstr "^1%s^1 wurde von der Explosion von %s^1s Fahrzeug erwischt\n"
-#: qcsrc/client/hud.qc:1779
+#: qcsrc/client/hud.qc:1650
#, c-format
msgid "^1%s^1 was bolted down by %s\n"
msgstr "^1%s^1 wurde von %s^1 niedergeschmettert\n"
-#: qcsrc/client/hud.qc:1783
+#: qcsrc/client/hud.qc:1654
#, c-format
msgid "^1%s^1 could find no shelter from %s^1's rockets\n"
msgstr "^1%s^1 fand keine Deckung vor %s^1s Raketen\n"
-#: qcsrc/client/hud.qc:1787
+#: qcsrc/client/hud.qc:1658
#, c-format
msgid "^1%s^1 dies when %s^1's wakizashi dies.\n"
msgstr "^1%s^1 starb zusammen mit %s^1's Wakizashi.\n"
-#: qcsrc/client/hud.qc:1791
+#: qcsrc/client/hud.qc:1662
#, c-format
msgid "^1%s^1 nailed to hell by %s\n"
msgstr "^1%s^1 wurde von %s^1 in die Hölle geschossen\n"
-#: qcsrc/client/hud.qc:1795
+#: qcsrc/client/hud.qc:1666
#, c-format
msgid "^1%s^1 cluster crushed by %s\n"
msgstr "^1%s^1 wurde von %s^1 total zerstört\n"
-#: qcsrc/client/hud.qc:1799
+#: qcsrc/client/hud.qc:1670
#, c-format
msgid "^1%s^1 dies when %s^1's raptor dies.\n"
msgstr "^1%s^1 starb zusammen mit %s^1's Raptor.\n"
-#: qcsrc/client/hud.qc:1803
+#: qcsrc/client/hud.qc:1674
#, c-format
msgid "^1%s^1 was pushed into the line of fire by %s\n"
msgstr "^1%s^1 wurde von %s^1 ins offene Feuer geschubst\n"
-#: qcsrc/client/hud.qc:1807
+#: qcsrc/client/hud.qc:1678
#, c-format
msgid "^1%s^1 was pushed into an accident by %s\n"
msgstr "^1%s^1 wurde von %s^1 in einen unglücklichen Unfall geschubst\n"
-#: qcsrc/client/hud.qc:1811
+#: qcsrc/client/hud.qc:1682
#, c-format
msgid "^1%s^1 was unfairly eliminated by %s\n"
msgstr "^1%s^1 wurde von %s auf unfaire Weise erledigt\n"
-#: qcsrc/client/hud.qc:1815
+#: qcsrc/client/hud.qc:1686
#, c-format
msgid "^1%s^1 was burnt to death by %s\n"
msgstr "^1%s^1 wurde von %s verbrannt\n"
-#: qcsrc/client/hud.qc:1827
+#: qcsrc/client/hud.qc:1698
#, c-format
msgid "^1%s^1 was fragged by %s\n"
msgstr "^1%s^1 wurde von %s^1 gefraggt\n"
-#: qcsrc/client/hud.qc:1832
+#: qcsrc/client/hud.qc:1703
#, c-format
msgid "^1%s^1's %s scoring spree was ended by %s\n"
msgstr "^1%s^1's Punkte-Folge wurde von %s^1 beendet\n"
-#: qcsrc/client/hud.qc:1834
+#: qcsrc/client/hud.qc:1705
#, c-format
msgid "^1%s^1's %s kill spree was ended by %s\n"
msgstr "^1%s^1's Kill-Spree wurde von %s^1 beendet\n"
-#: qcsrc/client/hud.qc:1837
+#: qcsrc/client/hud.qc:1708
#, c-format
msgid "^1%s^1 made %s scores in a row\n"
msgstr "^1%s^1 machte %s Punkte hintereinander\n"
-#: qcsrc/client/hud.qc:1839
+#: qcsrc/client/hud.qc:1710
#, c-format
msgid "^1%s^1 has %s frags in a row\n"
msgstr "^1%s^1 hat %s Frags hintereinander\n"
-#: qcsrc/client/hud.qc:1842
+#: qcsrc/client/hud.qc:1713
#, c-format
msgid "%s^7 made a ^1TRIPLE SCORE\n"
msgstr "%s^7 hat einen ^1TRIPLE SCORE\n"
-#: qcsrc/client/hud.qc:1844
+#: qcsrc/client/hud.qc:1715
#, c-format
msgid "%s^7 made a ^1TRIPLE FRAG\n"
msgstr "%s^7 hat einen ^1TRIPLE FRAG\n"
-#: qcsrc/client/hud.qc:1847
+#: qcsrc/client/hud.qc:1718
#, c-format
msgid "%s^7 unleashes ^1SCORING RAGE\n"
msgstr "%s^7 hat ^1PUNKTE-RASEN\n"
-#: qcsrc/client/hud.qc:1849
+#: qcsrc/client/hud.qc:1720
#, c-format
msgid "%s^7 unleashes ^1RAGE\n"
msgstr "%s^7 ^1RAST VOR ZORN\n"
-#: qcsrc/client/hud.qc:1852
+#: qcsrc/client/hud.qc:1723
#, c-format
msgid "%s^7 made ^1TEN SCORES IN A ROW!\n"
msgstr "%s^7 hat ^1ZEHN PUNKTE HINTEREINANDER!\n"
-#: qcsrc/client/hud.qc:1854
+#: qcsrc/client/hud.qc:1725
#, c-format
msgid "%s^7 starts the ^1MASSACRE!\n"
msgstr "%s^7 beginnt das ^1MASSAKER!\n"
-#: qcsrc/client/hud.qc:1857
+#: qcsrc/client/hud.qc:1728
#, c-format
msgid "%s^7 made ^1FIFTEEN SCORES IN A ROW!\n"
msgstr "%s^7 hat ^1FÜNFZEHN PUNKTE HINTEREINANDER\n"
-#: qcsrc/client/hud.qc:1859
+#: qcsrc/client/hud.qc:1730
#, c-format
msgid "%s^7 executes ^1MAYHEM!\n"
msgstr "%s^7 erzeugt das ^1CHAOS!\n"
-#: qcsrc/client/hud.qc:1862
+#: qcsrc/client/hud.qc:1733
#, c-format
msgid "%s^7 made ^1TWENTY SCORES IN A ROW!\n"
msgstr "%s^7 hat ^1ZWANZIG PUNKTE HINTEREINANDER\n"
-#: qcsrc/client/hud.qc:1864
+#: qcsrc/client/hud.qc:1735
#, c-format
msgid "%s^7 is a ^1BERSERKER!\n"
msgstr "%s^7 ist ein ^1BERSERKER!\n"
-#: qcsrc/client/hud.qc:1867
+#: qcsrc/client/hud.qc:1738
#, c-format
msgid "%s^7 made ^1TWENTY FIVE SCORES IN A ROW!\n"
msgstr "%s^7 hat ^1FÜNFUNDZWANZIG PUNKTE HINTEREINANDER!\n"
-#: qcsrc/client/hud.qc:1869
+#: qcsrc/client/hud.qc:1740
#, c-format
msgid "%s^7 inflicts ^1CARNAGE!\n"
msgstr "%s^7 hält ein ^1BLUTBAD!\n"
-#: qcsrc/client/hud.qc:1872
+#: qcsrc/client/hud.qc:1743
#, c-format
msgid "%s^7 made ^1THIRTY SCORES IN A ROW!\n"
msgstr "%s^7 hat ^1DREISSIG PUNKTE HINTEREINANDER\n"
-#: qcsrc/client/hud.qc:1874
+#: qcsrc/client/hud.qc:1745
#, c-format
msgid "%s^7 unleashes ^1ARMAGEDDON!\n"
msgstr "%s^7 lässt die ^1APOKALYPSE^7 los!\n"
-#: qcsrc/client/hud.qc:1882
+#: qcsrc/client/hud.qc:1753
#, c-format
msgid "^1%s^1 was in the water for too long\n"
msgstr "^1%s^1 war zu lange im Wasser\n"
-#: qcsrc/client/hud.qc:1884
+#: qcsrc/client/hud.qc:1755
#, c-format
msgid "^1%s^1 drowned\n"
msgstr "^1%s^1 ertrank\n"
-#: qcsrc/client/hud.qc:1889
+#: qcsrc/client/hud.qc:1760
#, c-format
msgid "^1%s^1 was slimed\n"
msgstr "^1%s^1 wurde im Schleim versenkt\n"
-#: qcsrc/client/hud.qc:1895
+#: qcsrc/client/hud.qc:1766
#, c-format
msgid "^1%s^1 found a hot place\n"
msgstr "^1%s^1 fand einen heißen Ort\n"
-#: qcsrc/client/hud.qc:1897
+#: qcsrc/client/hud.qc:1768
#, c-format
msgid "^1%s^1 turned into hot slag\n"
msgstr "^1%s^1 verwandelte sich in heiße Schlacke\n"
-#: qcsrc/client/hud.qc:1904
+#: qcsrc/client/hud.qc:1775
#, c-format
msgid "^1%s^1 tested gravity (and it worked)\n"
msgstr "^1%s^1 probierte die Gravitation aus (und sie funktionierte)\n"
-#: qcsrc/client/hud.qc:1906
+#: qcsrc/client/hud.qc:1777
#, c-format
msgid "^1%s^1 hit the ground with a crunch\n"
msgstr "^1%s^1 landete mit einem Knall auf dem Boden\n"
-#: qcsrc/client/hud.qc:1911
+#: qcsrc/client/hud.qc:1782
#, c-format
msgid "^1%s^1 became a shooting star\n"
msgstr "^1%s^1 wurde zu einer Sternschnuppe\n"
-#: qcsrc/client/hud.qc:1917
+#: qcsrc/client/hud.qc:1788
#, c-format
msgid "^1%s^1 discovered a swamp\n"
msgstr "^1%s^1 entdeckte einen Sumpf\n"
-#: qcsrc/client/hud.qc:1919
+#: qcsrc/client/hud.qc:1790
#, c-format
msgid "^1%s^1 is now conserved for centuries to come\n"
msgstr "^1%s^1 ist jetzt für Jahrhunderte konserviert\n"
-#: qcsrc/client/hud.qc:1924
+#: qcsrc/client/hud.qc:1795
#, c-format
msgid "^1%s^1 was mowed down by a turret \n"
msgstr "^1%s^1 wurde von einem Turret niedergemäht\n"
-#: qcsrc/client/hud.qc:1936
+#: qcsrc/client/hud.qc:1807
#, c-format
msgid "^1%s^1 died in an accident\n"
msgstr "^1%s^1 starb an einem Unfall\n"
-#: qcsrc/client/hud.qc:1940
+#: qcsrc/client/hud.qc:1811
#, c-format
msgid "^1%s^1 was unfairly eliminated\n"
msgstr "^1%s^1 wurde auf unfaire Weise eliminiert\n"
-#: qcsrc/client/hud.qc:1946
+#: qcsrc/client/hud.qc:1817
#, c-format
msgid "^1%s^1 felt a little hot\n"
msgstr "^1%s^1 fand es ein wenig zu warm\n"
-#: qcsrc/client/hud.qc:1948
+#: qcsrc/client/hud.qc:1819
#, c-format
msgid "^1%s^1 burnt to death\n"
msgstr "^1%s^1 verbrannte\n"
-#: qcsrc/client/hud.qc:1955
+#: qcsrc/client/hud.qc:1826
#, c-format
msgid "^1%s^1 needs a restart\n"
msgstr "^1%s^1 braucht einen Neustart\n"
-#: qcsrc/client/hud.qc:1962
+#: qcsrc/client/hud.qc:1833
#, c-format
msgid "^1%s^1 needs a restart after a %d scoring spree\n"
msgstr "^1%s^1 braucht einen Neustart nach %d Punkten in Folge\n"
-#: qcsrc/client/hud.qc:1964
+#: qcsrc/client/hud.qc:1835
#, c-format
msgid "^1%s^1 died with a %d kill spree\n"
msgstr "^1%s^1 starb mit einer %d-Kill-Spree\n"
-#: qcsrc/client/hud.qc:1968
+#: qcsrc/client/hud.qc:1839
#, c-format
msgid "%s^7 got the %s\n"
msgstr "%s^7 bekam die %s\n"
-#: qcsrc/client/hud.qc:1971
+#: qcsrc/client/hud.qc:1842
#, c-format
msgid "%s^7 lost the %s\n"
msgstr "%s^7 verlor die %s\n"
-#: qcsrc/client/hud.qc:1974
+#: qcsrc/client/hud.qc:1845
#, c-format
msgid "%s^7 picked up the %s\n"
msgstr "%s^7 nahm sich die %s\n"
-#: qcsrc/client/hud.qc:1977
+#: qcsrc/client/hud.qc:1848
#, c-format
msgid "%s^7 returned the %s\n"
msgstr "%s^7 brachte die %s^7 zurück\n"
-#: qcsrc/client/hud.qc:1980
+#: qcsrc/client/hud.qc:1851
#, c-format
msgid "%s^7 captured the %s%s\n"
msgstr "%s^7 eroberte die %s%s\n"
-#: qcsrc/client/hud.qc:1999
+#: qcsrc/client/hud.qc:1870
#, c-format
msgid "%s^7 has picked up the ball!\n"
msgstr "%s^7 hat den Ball genommen!\n"
-#: qcsrc/client/hud.qc:2004
+#: qcsrc/client/hud.qc:1875
#, c-format
msgid "%s^7 has dropped the ball!\n"
msgstr "%s^7 hat den Ball verloren!\n"
-#: qcsrc/client/hud.qc:2017
+#: qcsrc/client/hud.qc:1886
#, c-format
msgid "You are now on: %s"
msgstr "Du bist jetzt im: %s"
-#: qcsrc/client/hud.qc:2019
+#: qcsrc/client/hud.qc:1888
#, c-format
msgid ""
"You have been moved into a different team to improve team balance\n"
"Du wurdest in ein anderes Team verschoben, um Team-Balance zu verbessern.\n"
"Du bist jetzt im: %s"
-#: qcsrc/client/hud.qc:2022
+#: qcsrc/client/hud.qc:1891
msgid "^1Reconsider your tactics, camper!"
msgstr "^1Ändere dein Verhalten, Camper!"
-#: qcsrc/client/hud.qc:2024
+#: qcsrc/client/hud.qc:1893
msgid "^1Die camper!"
msgstr "^1Stirb, Camper!"
-#: qcsrc/client/hud.qc:2027
+#: qcsrc/client/hud.qc:1896
msgid "^1You are reinserted into the game for running out of ammo..."
msgstr ""
"^1Du wurdest ins Spiel neu eingesetzt, weil dir die Munition ausging..."
-#: qcsrc/client/hud.qc:2029
+#: qcsrc/client/hud.qc:1898
msgid "^1You were killed for running out of ammo..."
msgstr "^1Du wurdest getötet, da dir die Munition ausging..."
-#: qcsrc/client/hud.qc:2032
+#: qcsrc/client/hud.qc:1901
msgid "^1You need to preserve your health"
msgstr "^1Du solltest deine Gesundheit erhalten"
-#: qcsrc/client/hud.qc:2034
+#: qcsrc/client/hud.qc:1903
msgid "^1You grew too old without taking your medicine"
msgstr "^1Du wurdest zu alt, und hast nicht deine Medizin genommen"
-#: qcsrc/client/hud.qc:2037
+#: qcsrc/client/hud.qc:1906
msgid "^1Don't go against team mates!"
msgstr "^1Ärgere deine Teamkollegen nicht!"
-#: qcsrc/client/hud.qc:2039
+#: qcsrc/client/hud.qc:1908
msgid "^1Don't shoot your team mates!"
msgstr "^1Schieße nicht auf deine Teamkollegen!"
-#: qcsrc/client/hud.qc:2044
+#: qcsrc/client/hud.qc:1913
msgid "^1You need to be more careful!"
msgstr "^1Sei vorsichtiger!"
-#: qcsrc/client/hud.qc:2046
+#: qcsrc/client/hud.qc:1915
msgid "^1You killed your own dumb self!"
msgstr "^1Du hast dich selbst umgebracht. Wie blöd."
-#: qcsrc/client/hud.qc:2051
+#: qcsrc/client/hud.qc:1920
#, c-format
msgid "^1Moron! You went against ^7%s^1, a team mate!"
msgstr "^1Idiot! Du hast %s getroffen, also einen Teamkollegen von dir!"
-#: qcsrc/client/hud.qc:2053
+#: qcsrc/client/hud.qc:1922
#, c-format
msgid "^1Moron! You fragged ^7%s^1, a team mate!"
msgstr "^1Idiot! Du hast %s getötet, also einen Teamkollegen von dir!"
-#: qcsrc/client/hud.qc:2057
+#: qcsrc/client/hud.qc:1926
msgid "^1First score"
msgstr "^1Erster Punkt"
-#: qcsrc/client/hud.qc:2059
+#: qcsrc/client/hud.qc:1928
msgid "^1First blood"
msgstr "^1Erstes Blut"
-#: qcsrc/client/hud.qc:2063
+#: qcsrc/client/hud.qc:1932
msgid "^1First casualty"
msgstr "^1Erster Kollateralschaden"
-#: qcsrc/client/hud.qc:2065
+#: qcsrc/client/hud.qc:1934
msgid "^1First victim"
msgstr "^1Erstes Opfer"
-#: qcsrc/client/hud.qc:2069
+#: qcsrc/client/hud.qc:1938
#, c-format
msgid "^1You scored against ^7%s^1 who was typing!"
msgstr "^1Du hast gegen ^7%s^1 gepunktet, während er am Tippen war!"
-#: qcsrc/client/hud.qc:2071
+#: qcsrc/client/hud.qc:1940
#, c-format
msgid "^1You typefragged ^7%s"
msgstr "^1Du hast ^7%s^1 beim Tippen erschossen"
-#: qcsrc/client/hud.qc:2075
+#: qcsrc/client/hud.qc:1944
#, c-format
msgid "^1You were scored against by ^7%s^1 while you were typing!"
msgstr "^1Gegen dich hat ^7%s^1 gepunktet, während du am Tippen warst!"
-#: qcsrc/client/hud.qc:2077
+#: qcsrc/client/hud.qc:1946
#, c-format
msgid "^1You were typefragged by ^7%s"
msgstr "^1Du wurdest von ^7%s^1 erschossen, während du am Tippen warst"
-#: qcsrc/client/hud.qc:2081
+#: qcsrc/client/hud.qc:1950
#, c-format
msgid "^4You scored against ^7%s"
msgstr "^4Du hast gegen ^7%s^4 gepunktet"
-#: qcsrc/client/hud.qc:2083
+#: qcsrc/client/hud.qc:1952
#, c-format
msgid "^4You fragged ^7%s"
msgstr "^4Du hast ^7%s^4 getötet"
-#: qcsrc/client/hud.qc:2087
+#: qcsrc/client/hud.qc:1956
#, c-format
msgid "^1You were scored against by ^7%s"
msgstr "^1Gegen dich hat ^7%s^1 gepunktet"
-#: qcsrc/client/hud.qc:2089
+#: qcsrc/client/hud.qc:1958
#, c-format
msgid "^1You were fragged by ^7%s"
msgstr "^1Du wurdest von ^7%s^1 getötet"
-#: qcsrc/client/hud.qc:2094
+#: qcsrc/client/hud.qc:1963
msgid "^1Watch your step!"
msgstr "^1Achte, wo du hintrittst!"
-#: qcsrc/client/hud.qc:2162 qcsrc/client/hud.qc:2163 qcsrc/client/hud.qc:2646
+#: qcsrc/client/hud.qc:2032 qcsrc/client/hud.qc:2033 qcsrc/client/hud.qc:2518
#, c-format
msgid "Player %d"
msgstr "Spieler %d"
-#: qcsrc/client/hud.qc:2949
+#: qcsrc/client/hud.qc:2823
msgid "^1Intermediate 1 (+15.42)"
msgstr "^1Intermediate 1 (+15.42)"
-#: qcsrc/client/hud.qc:2951 qcsrc/client/hud.qc:2993 qcsrc/client/hud.qc:3034
+#: qcsrc/client/hud.qc:2825 qcsrc/client/hud.qc:2867 qcsrc/client/hud.qc:2908
#, c-format
msgid "^1PENALTY: %.1f (%s)"
msgstr "^1STRAFE: %.1f (%s)"
-#: qcsrc/client/hud.qc:3036
+#: qcsrc/client/hud.qc:2910
#, c-format
msgid "^2PENALTY: %.1f (%s)"
msgstr "^2STRAFE: %.1f (%s)"
-#: qcsrc/client/hud.qc:3064
+#: qcsrc/client/hud.qc:2938
msgid "^1You must answer before entering hud configure mode\n"
msgstr "^1Du musst antworten, bevore das HUD konfiguriert werden kann\n"
-#: qcsrc/client/hud.qc:3067
+#: qcsrc/client/hud.qc:2941
msgid "^2Name ^7instead of \"^1Unregistered player^7\" in stats"
msgstr "^2Name^7 statt \"^1Unregistered player^7\" in den Statistiken"
-#: qcsrc/client/hud.qc:3148
+#: qcsrc/client/hud.qc:3023
msgid "A vote has been called for:"
msgstr "Eine Abstimmung wurde initiiert für:"
-#: qcsrc/client/hud.qc:3150
+#: qcsrc/client/hud.qc:3025
msgid "Allow servers to store and display your name?"
msgstr "Erlaube Servern, deinen Namen zu speichern und später zu zeigen?"
-#: qcsrc/client/hud.qc:3154
+#: qcsrc/client/hud.qc:3029
msgid "^1Configure the HUD"
msgstr "^1Das HUD konfigurieren"
-#: qcsrc/client/hud.qc:3158
+#: qcsrc/client/hud.qc:3033
#, c-format
msgid "Yes (%s): %d"
msgstr "Ja (%s): %d"
-#: qcsrc/client/hud.qc:3160
+#: qcsrc/client/hud.qc:3035
#, c-format
msgid "No (%s): %d"
msgstr "Nein (%s): %d"
-#: qcsrc/client/hud.qc:3663 qcsrc/client/hud.qc:3666 qcsrc/client/hud.qc:3668
+#: qcsrc/client/hud.qc:3538 qcsrc/client/hud.qc:3541 qcsrc/client/hud.qc:3543
msgid "Personal best"
msgstr "Persönliche Bestzeit"
-#: qcsrc/client/hud.qc:3681 qcsrc/client/hud.qc:3684 qcsrc/client/hud.qc:3686
+#: qcsrc/client/hud.qc:3556 qcsrc/client/hud.qc:3559 qcsrc/client/hud.qc:3561
msgid "Server best"
msgstr "Server-Bestzeit"
-#: qcsrc/client/hud.qc:4027
+#: qcsrc/client/hud.qc:3905
msgid "^3Player^7: This is the chat area."
msgstr "^3Player^7: Das ist der Chat-Bereich."
-#: qcsrc/client/hud.qc:4094
+#: qcsrc/client/hud.qc:3973
#, c-format
msgid "FPS: %.*f"
msgstr "FPS: %.*f"
-#: qcsrc/client/hud.qc:4160
+#: qcsrc/client/hud.qc:4040
msgid "^1Observing"
msgstr "^1Beobachten"
-#: qcsrc/client/hud.qc:4162
+#: qcsrc/client/hud.qc:4042
#, c-format
msgid "^1Spectating: ^7%s"
msgstr "^1Zuschauen bei: ^7%s"
-#: qcsrc/client/hud.qc:4166
+#: qcsrc/client/hud.qc:4046
#, c-format
msgid "^1Press ^3%s^1 to spectate"
msgstr "^1Drücke ^3%s^1, um bei jemandem zuzuschauen"
-#: qcsrc/client/hud.qc:4168
+#: qcsrc/client/hud.qc:4048
#, c-format
msgid "^1Press ^3%s^1 for another player"
msgstr "^1Drücke ^3%s^1 für einen anderen Spieler"
-#: qcsrc/client/hud.qc:4172
+#: qcsrc/client/hud.qc:4052
#, c-format
msgid "^1Use ^3%s^1 or ^3%s^1 to change the speed"
msgstr "^1Benutze ^3%s^1 oder ^3%s^1 zum Ändern der Geschwindigkeit"
-#: qcsrc/client/hud.qc:4174
+#: qcsrc/client/hud.qc:4054
#, c-format
msgid "^1Press ^3%s^1 to observe"
msgstr "^1Drücke ^3%s^1 zum Beobachten"
-#: qcsrc/client/hud.qc:4177
+#: qcsrc/client/hud.qc:4057
#, c-format
msgid "^1Press ^3%s^1 for gamemode info"
msgstr "^1Drücke ^3%s^1 für Spielmodus-Info"
-#: qcsrc/client/hud.qc:4181
+#: qcsrc/client/hud.qc:4061
msgid "^1Wait for your turn to join"
msgstr "^1Warte, bis du dran bist"
-#: qcsrc/client/hud.qc:4187
+#: qcsrc/client/hud.qc:4067
msgid "^1Match has already begun"
msgstr "^1Das Match hat bereits begonnen"
-#: qcsrc/client/hud.qc:4189
+#: qcsrc/client/hud.qc:4069
msgid "^1You have no more lives left"
msgstr "^1Du hast keine Leben mehr übrig"
-#: qcsrc/client/hud.qc:4191 qcsrc/client/hud.qc:4194
+#: qcsrc/client/hud.qc:4071 qcsrc/client/hud.qc:4074
#, c-format
msgid "^1Press ^3%s^1 to join"
msgstr "^1Drücke ^3%s^1 zum Mitspielen"
-#: qcsrc/client/hud.qc:4202
+#: qcsrc/client/hud.qc:4082
#, c-format
msgid "^1Game starts in ^3%d^1 seconds"
msgstr "^1Das Spiel beginnt in ^3%d^1 Sekunden"
-#: qcsrc/client/hud.qc:4209
+#: qcsrc/client/hud.qc:4089
msgid "^2Currently in ^1warmup^2 stage!"
msgstr "^2Momentan in der ^1Aufwärmphase!"
-#: qcsrc/client/hud.qc:4224
+#: qcsrc/client/hud.qc:4104
#, c-format
msgid "%sPress ^3%s%s to end warmup"
msgstr "%sDrücke ^3%s%s um die Aufwärmphase zu beenden"
-#: qcsrc/client/hud.qc:4226
+#: qcsrc/client/hud.qc:4106
#, c-format
msgid "%sPress ^3%s%s once you are ready"
msgstr "%sDrücke ^3%s%s sobald du soweit bist"
-#: qcsrc/client/hud.qc:4231
+#: qcsrc/client/hud.qc:4111
msgid "^2Waiting for others to ready up to end warmup..."
msgstr "^2Warte, bis andere bereit sind, um die Aufwärmphase zu beenden"
-#: qcsrc/client/hud.qc:4233
+#: qcsrc/client/hud.qc:4113
msgid "^2Waiting for others to ready up..."
msgstr "^2Warte, bis andere bereit sind..."
-#: qcsrc/client/hud.qc:4239
+#: qcsrc/client/hud.qc:4119
#, c-format
msgid "^2Press ^3%s^2 to end warmup"
msgstr "^2Drücke ^3%s^2 um die Aufwärmphase zu beenden"
-#: qcsrc/client/hud.qc:4260
+#: qcsrc/client/hud.qc:4140
msgid "Teamnumbers are unbalanced!"
msgstr "Die Teams sind unbalanciert!"
-#: qcsrc/client/hud.qc:4265
+#: qcsrc/client/hud.qc:4145
#, c-format
msgid " Press ^3%s%s to adjust"
msgstr "Drücke ^3%s%s um dies zu korrigieren"
-#: qcsrc/client/hud.qc:4273
+#: qcsrc/client/hud.qc:4153
msgid "^7Press ^3ESC ^7to show HUD options."
msgstr "^7Drücke ^3ESC^7 um die HUD-Optionen zu zeigen"
-#: qcsrc/client/hud.qc:4275
+#: qcsrc/client/hud.qc:4155
msgid "^3Doubleclick ^7a panel for panel-specific options."
msgstr "^3Doppelklick^7 auf ein Panel für Panel-spezifische Optionen."
-#: qcsrc/client/hud.qc:4277
+#: qcsrc/client/hud.qc:4157
msgid "^3CTRL ^7to disable collision testing, ^3SHIFT ^7and"
msgstr "^3CTRL^7 um Kollisionstests zu deaktivieren, ^3SHIFT^7 und"
-#: qcsrc/client/hud.qc:4279
+#: qcsrc/client/hud.qc:4159
msgid "^3ALT ^7+ ^3ARROW KEYS ^7for fine adjustments."
msgstr "^3ALT^7 + ^3PFEILTASTEN^7 für Feinjustierungen"
-#: qcsrc/client/hud.qc:4315
+#: qcsrc/client/hud.qc:4197
msgid " qu/s"
msgstr "qu/s"
-#: qcsrc/client/hud.qc:4319
+#: qcsrc/client/hud.qc:4201
msgid " m/s"
msgstr "m/s"
-#: qcsrc/client/hud.qc:4323
+#: qcsrc/client/hud.qc:4205
msgid " km/h"
msgstr "km/h"
-#: qcsrc/client/hud.qc:4327
+#: qcsrc/client/hud.qc:4209
msgid " mph"
msgstr "mph"
-#: qcsrc/client/hud.qc:4331
+#: qcsrc/client/hud.qc:4213
msgid " knots"
msgstr "Knoten"
-#: qcsrc/client/hud.qc:4682
+#: qcsrc/client/hud.qc:4860
msgid "Automatically fixed wrong/missing panel numbers in _hud_panelorder\n"
msgstr "Falsche Panel-Nummern in _hud_panelorder wurden automatisch behoben"
-#: qcsrc/client/hud_config.qc:132
+#: qcsrc/client/hud_config.qc:136
#, c-format
msgid "^2Successfully exported to %s! (Note: It's saved in data/data/)\n"
msgstr ""
"^2Erfolgreich als %s exportiert! (Hinweis: die Datei wurde in data/data/ "
"abgelegt)\n"
-#: qcsrc/client/hud_config.qc:136
+#: qcsrc/client/hud_config.qc:140
#, c-format
msgid "^1Couldn't write to %s\n"
msgstr "^1Konnte nicht nach %s schreiben\n"
#: qcsrc/client/scoreboard.qc:46
msgid "SCO^revivals"
-msgstr "wiederbelebt"
+msgstr "Wiederbelebt"
#: qcsrc/client/scoreboard.qc:47
msgid "SCO^score"
msgstr "^2scoreboard_columns_set default\n"
#: qcsrc/client/scoreboard.qc:243
-msgid "^2scoreboard_columns_set ^7filed1 field2 ...\n"
-msgstr "^2scoreboard_columns_set ^7filed1 field2 ...\n"
+msgid "^2scoreboard_columns_set ^7field1 field2 ...\n"
+msgstr "^2scoreboard_columns_set ^7field1 field2 ...\n"
#: qcsrc/client/scoreboard.qc:244
msgid "The following field names are recognized (case insensitive):\n"
msgid "Rankings"
msgstr "Platzierungen"
-#: qcsrc/client/scoreboard.qc:1170 qcsrc/client/scoreboard.qc:1172
+#: qcsrc/client/scoreboard.qc:1170
msgid "Scoreboard"
msgstr "Tabelle"
-#: qcsrc/client/scoreboard.qc:1218
+#: qcsrc/client/scoreboard.qc:1215
#, c-format
msgid "Speed award: %d ^7(%s^7)"
msgstr "Höchstgeschwindigkeit: %d ^7(%s^7)"
-#: qcsrc/client/scoreboard.qc:1222
+#: qcsrc/client/scoreboard.qc:1219
#, c-format
msgid "All-time fastest: %d ^7(%s^7)"
msgstr "Rekord: %d ^7(%s^7)"
-#: qcsrc/client/scoreboard.qc:1249 qcsrc/client/teamplay.qc:63
+#: qcsrc/client/scoreboard.qc:1246 qcsrc/client/teamplay.qc:63
msgid "Spectators"
msgstr "Zuschauer"
-#: qcsrc/client/scoreboard.qc:1255
+#: qcsrc/client/scoreboard.qc:1252
#, c-format
msgid "playing on ^2%s^7"
msgstr "es wird auf ^2%s^7 gespielt"
-#: qcsrc/client/scoreboard.qc:1262 qcsrc/client/scoreboard.qc:1267
+#: qcsrc/client/scoreboard.qc:1259 qcsrc/client/scoreboard.qc:1264
#, c-format
msgid " for up to ^1%1.0f minutes^7"
msgstr " für bis zu ^1%.1f Minuten^7"
-#: qcsrc/client/scoreboard.qc:1271 qcsrc/client/scoreboard.qc:1290
+#: qcsrc/client/scoreboard.qc:1268 qcsrc/client/scoreboard.qc:1287
msgid " or"
msgstr " oder"
-#: qcsrc/client/scoreboard.qc:1274 qcsrc/client/scoreboard.qc:1281
+#: qcsrc/client/scoreboard.qc:1271 qcsrc/client/scoreboard.qc:1278
#, c-format
msgid " until ^3%s %s^7"
msgstr " bis ^3%s %s^7"
-#: qcsrc/client/scoreboard.qc:1275 qcsrc/client/scoreboard.qc:1282
-#: qcsrc/client/scoreboard.qc:1294 qcsrc/client/scoreboard.qc:1301
+#: qcsrc/client/scoreboard.qc:1272 qcsrc/client/scoreboard.qc:1279
+#: qcsrc/client/scoreboard.qc:1291 qcsrc/client/scoreboard.qc:1298
msgid "SCO^points"
msgstr "Punkte"
-#: qcsrc/client/scoreboard.qc:1276 qcsrc/client/scoreboard.qc:1283
-#: qcsrc/client/scoreboard.qc:1295 qcsrc/client/scoreboard.qc:1302
+#: qcsrc/client/scoreboard.qc:1273 qcsrc/client/scoreboard.qc:1280
+#: qcsrc/client/scoreboard.qc:1292 qcsrc/client/scoreboard.qc:1299
msgid "SCO^is beaten"
msgstr "geschlagen wird"
-#: qcsrc/client/scoreboard.qc:1293 qcsrc/client/scoreboard.qc:1300
+#: qcsrc/client/scoreboard.qc:1290 qcsrc/client/scoreboard.qc:1297
#, c-format
msgid " until a lead of ^3%s %s^7"
msgstr " bis zu einem Vorsprung von ^3%s %s^7"
#: qcsrc/client/waypointsprites.qc:301
msgid "Hook"
-msgstr "Hook"
+msgstr "Enterhaken"
#: qcsrc/client/waypointsprites.qc:302 qcsrc/server/w_fireball.qc:2
msgid "Fireball"
msgid "%s needing help!"
msgstr "%s braucht Hilfe!"
-#: qcsrc/server/w_crylink.qc:664
+#: qcsrc/common/mapinfo.qc:1092
+#, c-format
+msgid "%s: %s"
+msgstr "%s: %s"
+
+#: qcsrc/server/w_crylink.qc:666
#, c-format
msgid "%s succeeded at self-destructing themself with the Crylink"
msgstr "%s zerstörte sich selbst erfolgreich mit der Crylink"
-#: qcsrc/server/w_crylink.qc:669
+#: qcsrc/server/w_crylink.qc:671
#, c-format
msgid "%s could not hide from %s's Crylink"
msgstr "%s konnte sich nicht vor %ss Crylink verstecken"
-#: qcsrc/server/w_crylink.qc:671
+#: qcsrc/server/w_crylink.qc:673
#, c-format
msgid "%s was too close to %s's Crylink"
msgstr "%s trat %ss Crylink zu nahe"
-#: qcsrc/server/w_crylink.qc:673
+#: qcsrc/server/w_crylink.qc:675
#, c-format
msgid "%s took a close look at %s's Crylink"
msgstr "%s schaute sich %ss Crylink sehr genau an"
msgid "%s ate %s's grenade"
msgstr "%s nahm %ss Granate in den Mund"
-#: qcsrc/server/w_hagar.qc:382 qcsrc/server/w_seeker.qc:655
+#: qcsrc/server/w_hagar.qc:395 qcsrc/server/w_seeker.qc:655
#, c-format
msgid "%s played with tiny rockets"
msgstr "%s hat mit kleinen Raketen gespielt"
-#: qcsrc/server/w_hagar.qc:386
+#: qcsrc/server/w_hagar.qc:399
#, c-format
msgid "%s hoped %s's missiles wouldn't bounce"
msgstr "%s hat gehofft, dass %ss Raketen nicht von Wänden abprallen"
-#: qcsrc/server/w_hagar.qc:388 qcsrc/server/w_seeker.qc:661
+#: qcsrc/server/w_hagar.qc:401 qcsrc/server/w_seeker.qc:661
#, c-format
msgid "%s was pummeled by %s"
msgstr "^1%s^1 wurde von %s^1 erwischt"
#: qcsrc/server/w_hook.qc:2
msgid "Grappling Hook"
-msgstr "Grappling Hook"
+msgstr "Enterhaken"
#: qcsrc/server/w_hook.qc:266 qcsrc/server/w_porto.qc:296
#, c-format
msgid "MinstaNex"
msgstr "MinstaNex"
-#: qcsrc/server/w_minstanex.qc:290 qcsrc/server/w_nex.qc:253
-#: qcsrc/server/w_shotgun.qc:209 qcsrc/server/w_uzi.qc:317
+#: qcsrc/server/w_minstanex.qc:293 qcsrc/server/w_nex.qc:253
+#: qcsrc/server/w_shotgun.qc:215 qcsrc/server/w_uzi.qc:317
#, c-format
msgid "%s is now thinking with portals"
msgstr "%s kann jetzt mit Portalen denken"
-#: qcsrc/server/w_minstanex.qc:292 qcsrc/server/w_nex.qc:255
+#: qcsrc/server/w_minstanex.qc:295 qcsrc/server/w_nex.qc:255
#, c-format
msgid "%s has been vaporized by %s"
msgstr "^1%s^1 wurde von %s^1 vernichtet"
msgid "%s was tagged by %s"
msgstr "^1%s^1 wurde von %s^1 getagged"
-#: qcsrc/server/w_shotgun.qc:213
+#: qcsrc/server/w_shotgun.qc:219
#, c-format
msgid "%2$s ^7slapped %1$s ^7around a bit with a large ^2shotgun"
msgstr "%2$1s ^7hat %1$s ^7ein wenig mit einer großen Schrotflinte geschlagen"
-#: qcsrc/server/w_shotgun.qc:215
+#: qcsrc/server/w_shotgun.qc:221
#, c-format
msgid "%s was gunned by %s"
msgstr "^1%s^1 wurde von %s^1 erschossen"
+# Xonotic CSQC
+# Copyright (C) 2011 Team Xonotic
+# This file is distributed under the same license as the Xonotic package.
+# Felice Sallustio <fel.sallustio@gmail.com>, 2011.
+# Antonio 'terencehill' Piu <piuntn@gmail.com>, 2011.
+#
msgid ""
msgstr ""
-"Project-Id-Version: \n"
+"Project-Id-Version: 0.1preview\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2011-07-06 20:55+0200\n"
-"PO-Revision-Date: \n"
-"Last-Translator: Felice Sallustio <fel.sallustio@gmail.com>\n"
-"Language-Team: \n"
+"POT-Creation-Date: 2011-09-02 07:51+0200\n"
+"PO-Revision-Date: 2011-09-04 01:40+0100\n"
+"Last-Translator: Antonio 'terencehill' Piu <piuntn@gmail.com>\n"
+"Language-Team: Antonio 'terencehill' Piu <piuntn@gmail.com>\n"
+"Language: it\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"Language: \n"
"X-Poedit-Language: Italian\n"
#: qcsrc/client/Main.qc:30
msgid "^4CSQC Build information: ^1%s\n"
msgstr "^4Informazioni sulla build CSQC: ^1%s\n"
-#: qcsrc/client/Main.qc:237
-#: qcsrc/client/Main.qc:253
+#: qcsrc/client/Main.qc:237 qcsrc/client/Main.qc:253
#, c-format
msgid "trying to switch to unsupported team %d\n"
msgstr "tentando di passare al team non supportato %d\n"
-#: qcsrc/client/Main.qc:369
-#: qcsrc/client/scoreboard.qc:241
+#: qcsrc/client/Main.qc:369 qcsrc/client/scoreboard.qc:241
msgid "Usage:\n"
msgstr "Uso:\n"
#: qcsrc/client/Main.qc:494
msgid "Usage: cl_cmd COMMAND..., where possible commands are:\n"
-msgstr "Uso: cl_cmd COMMAND..., dove possibile i comandi sono:\n"
+msgstr "Uso: cl_cmd COMANDO..., dove i possibili comandi sono:\n"
#: qcsrc/client/Main.qc:495
msgid " settemp cvar value\n"
#: qcsrc/client/Main.qc:726
#, c-format
msgid "A CSQC entity changed its owner! (edict: %d, classname: %s)\n"
-msgstr "Una entity CSQC ha cambiato il suo dominio! (edict: %d, classname: %s)\n"
+msgstr ""
+"Un'entity CSQC ha cambiato il suo proprietario! (edict: %d, classname: %s)\n"
-#: qcsrc/client/Main.qc:953
+#: qcsrc/client/Main.qc:964
#, c-format
msgid "A CSQC entity changed its type! (edict: %d, classname: %s)\n"
-msgstr "Una entity CSQC ha cambiato il suo tipo! (edict: %d, classname: %s)\n"
+msgstr "Un'entity CSQC ha cambiato il suo tipo! (edict: %d, classname: %s)\n"
-#: qcsrc/client/Main.qc:994
+#: qcsrc/client/Main.qc:1005
#, c-format
-msgid "Unknown entity type in CSQC_Ent_Update (enttype: %d, edict: %d, classname: %s)\n"
-msgstr "Entity type sconosciuto in CSQC_Ent_Update (enttype: %d, edict: %d, classname: %s)\n"
+msgid ""
+"Unknown entity type in CSQC_Ent_Update (enttype: %d, edict: %d, classname: "
+"%s)\n"
+msgstr ""
+"Tipo di entity sconosciuta in CSQC_Ent_Update (enttype: %d, edict: %d, "
+"classname: %s)\n"
-#: qcsrc/client/Main.qc:1463
+#: qcsrc/client/Main.qc:1451
#, c-format
msgid "%s (not bound)"
-msgstr "%s (nessun limite)"
+msgstr "%s (nessun tasto)"
-#: qcsrc/client/Main.qc:1468
-#: qcsrc/client/hud.qc:407
+#: qcsrc/client/Main.qc:1456 qcsrc/client/hud.qc:230
#, c-format
msgid "%s (%s)"
msgstr "%s (%s)"
#: qcsrc/client/ctf.qc:35
msgid "----- Order Menu -----"
-msgstr "----- Ordine del menu -----"
+msgstr "----- Menu degli ordini -----"
#: qcsrc/client/ctf.qc:36
#, c-format
msgid "2) ^3next page"
msgstr "2) ^3pagina successiva"
-#: qcsrc/client/ctf.qc:55
-#: qcsrc/client/ctf.qc:161
+#: qcsrc/client/ctf.qc:55 qcsrc/client/ctf.qc:161
msgid "ESC) Exit Menu"
msgstr "ESC) Esci dal menu"
#: qcsrc/client/ctf.qc:155
msgid "Issue orders:"
-msgstr ""
+msgstr "Impartisci ordini:"
#: qcsrc/client/ctf.qc:156
msgid " 1) Attack"
#: qcsrc/client/ctf.qc:160
msgid "3) Resign from command."
-msgstr ""
+msgstr "3) Dimettiti dal commando."
#: qcsrc/client/ctf.qc:212
msgid "You're commander!"
msgid "Awaiting orders..."
msgstr "Attendendo ordini..."
-#: qcsrc/client/hud.qc:337
+#: qcsrc/client/hud.qc:160
msgid "1st"
msgstr "1°"
-#: qcsrc/client/hud.qc:339
+#: qcsrc/client/hud.qc:162
msgid "2nd"
msgstr "2°"
-#: qcsrc/client/hud.qc:341
+#: qcsrc/client/hud.qc:164
msgid "3rd"
msgstr "3°"
-#: qcsrc/client/hud.qc:343
+#: qcsrc/client/hud.qc:166
#, c-format
msgid "%dth"
msgstr "%d°"
-#: qcsrc/client/hud.qc:375
+#: qcsrc/client/hud.qc:198
#, c-format
msgid " (-%dL)"
msgstr " (-%dG)"
-#: qcsrc/client/hud.qc:380
+#: qcsrc/client/hud.qc:203
#, c-format
msgid " (+%dL)"
msgstr " (+%dG)"
-#: qcsrc/client/hud.qc:396
+#: qcsrc/client/hud.qc:219
msgid "Start line"
msgstr "Linea di partenza"
-#: qcsrc/client/hud.qc:398
-#: qcsrc/client/hud.qc:402
+#: qcsrc/client/hud.qc:221 qcsrc/client/hud.qc:225
msgid "Finish line"
msgstr "Linea d'arrivo"
-#: qcsrc/client/hud.qc:400
+#: qcsrc/client/hud.qc:223
#, c-format
msgid "Intermediate %d"
msgstr "Intermedio %d"
-#: qcsrc/client/hud.qc:409
+#: qcsrc/client/hud.qc:232
#, c-format
msgid "%s (%s %s)"
msgstr "%s (%s %s)"
-#: qcsrc/client/hud.qc:911
+#: qcsrc/client/hud.qc:735
msgid "Out of ammo"
-msgstr "Senza munizioni"
+msgstr "Scarica"
-#: qcsrc/client/hud.qc:915
+#: qcsrc/client/hud.qc:739
msgid "Don't have"
-msgstr "Non a disposizione"
+msgstr "Mancante"
-#: qcsrc/client/hud.qc:919
+#: qcsrc/client/hud.qc:743
msgid "Unavailable"
msgstr "Non disponibile"
-#: qcsrc/client/hud.qc:1649
+#: qcsrc/client/hud.qc:1483
#, c-format
msgid "^1%s^1 couldn't take it anymore\n"
-msgstr "^1%s^1 non ce l'ha più fatta\n"
+msgstr "^1%s^1 non ne poteva più\n"
-#: qcsrc/client/hud.qc:1653
-#: qcsrc/client/hud.qc:1957
+#: qcsrc/client/hud.qc:1487 qcsrc/client/hud.qc:1791
#, c-format
msgid "^1%s^1 died\n"
msgstr "^1%s^1 è morto\n"
-#: qcsrc/client/hud.qc:1657
+#: qcsrc/client/hud.qc:1491
#, c-format
msgid "^7%s^7 committed suicide. What's the point of living without ammo?\n"
-msgstr "^7%s^7 ha commesso il suicidio. Qual'è il motivo di vivere senza munizioni?\n"
+msgstr ""
+"^7%s^7 ha commesso suicidio. Qual'è il motivo di vivere senza munizioni?\n"
-#: qcsrc/client/hud.qc:1661
+#: qcsrc/client/hud.qc:1495
#, c-format
msgid "^1%s^1 thought they found a nice camping ground\n"
-msgstr "^1%s^1 pensavano di trovare un bel campeggio\n"
+msgstr "^1%s^1 pensava di trovare un bel campeggio\n"
-#: qcsrc/client/hud.qc:1665
+#: qcsrc/client/hud.qc:1499
#, c-format
msgid "^1%s^1 didn't become friends with the Lord of Teamplay\n"
-msgstr "^1%s^1 non sono diventati amici con il Signore del Teamplay\n"
+msgstr "^1%s^1 non è diventato amico del Signore del Teamplay\n"
-#: qcsrc/client/hud.qc:1669
+#: qcsrc/client/hud.qc:1503
#, c-format
msgid "^1%s^1 unfairly eliminated themself\n"
-msgstr "^1%s^1 ingiustamente si sono eliminati\n"
+msgstr "^1%s^1 si è eliminato ingiustamente\n"
-#: qcsrc/client/hud.qc:1673
+#: qcsrc/client/hud.qc:1507
#, c-format
msgid "^1%s^1 burned to death\n"
-msgstr "^1%s^1 è stato bruciato alla morte\n"
+msgstr "^1%s^1 è morto bruciato\n"
-#: qcsrc/client/hud.qc:1677
+#: qcsrc/client/hud.qc:1511
#, c-format
msgid "^1%s^1 couldn't resist the urge to self-destruct\n"
-msgstr "^1%s^1 non ha resistito alla tentazione di autodistruggersi\n"
+msgstr "^1%s^1 non ha resistito allo stimolo di autodistruggersi\n"
-#: qcsrc/client/hud.qc:1681
+#: qcsrc/client/hud.qc:1515
#, c-format
msgid "^1%s^1 ended it all after a %d kill spree\n"
-msgstr "^1%s^1 ha fatto in modo di concludere una serie di %d uccisioni\n"
+msgstr "^1%s^1 l'ha fatta finita con una serie di %d uccisioni\n"
-#: qcsrc/client/hud.qc:1698
+#: qcsrc/client/hud.qc:1532
#, c-format
msgid "^1%s^1 took action against a team mate\n"
msgstr "^1%s^1 ha agito contro un compagno di squadra\n"
-#: qcsrc/client/hud.qc:1700
+#: qcsrc/client/hud.qc:1534
#, c-format
msgid "^1%s^1 mows down a team mate\n"
-msgstr "^1%s^1 è stato falciato da un compagno di squadra\n"
+msgstr "^1%s^1 ha falciato un compagno di squadra\n"
-#: qcsrc/client/hud.qc:1705
+#: qcsrc/client/hud.qc:1539
#, c-format
msgid "^1%s^1 ended a %d scoring spree by going against a team mate\n"
-msgstr "^1%s^1 ha concluso una serie di %d punti per esser andato contro un compagno di squadra\n"
+msgstr ""
+"^1%s^1 ha concluso una serie di %d punti per esser andato contro un compagno "
+"di squadra\n"
-#: qcsrc/client/hud.qc:1707
+#: qcsrc/client/hud.qc:1541
#, c-format
msgid "^1%s^1 ended a %d kill spree by killing a team mate\n"
-msgstr "^1%s^1 ha concluso una serie di %d uccisioni per aver ammazzato un compagno di squadra\n"
+msgstr ""
+"^1%s^1 ha concluso una serie di %d uccisioni per aver ammazzato un compagno "
+"di squadra\n"
-#: qcsrc/client/hud.qc:1711
+#: qcsrc/client/hud.qc:1545
#, c-format
msgid "^1%s^1's %s scoring spree was ended by a team mate!\n"
-msgstr "^1La serie di ^1%s^1 di ^1%s^1 punti è stata conclusa da un compagno di squadra!\n"
+msgstr ""
+"^1La serie di ^1%s^1 di ^1%s^1 punti è stata conclusa da un compagno di "
+"squadra!\n"
-#: qcsrc/client/hud.qc:1713
+#: qcsrc/client/hud.qc:1547
#, c-format
msgid "^1%s^1's %s kill spree was ended by a team mate!\n"
-msgstr "^1La serie di ^1%s ^1di ^1%s ^1uccisioni è stata conclusa da un compagno di squadra!\n"
+msgstr ""
+"^1La serie di ^1%s ^1di ^1%s ^1uccisioni è stata conclusa da un compagno di "
+"squadra!\n"
-#: qcsrc/client/hud.qc:1717
+#: qcsrc/client/hud.qc:1551
#, c-format
msgid "^1%s^1 drew first blood\n"
msgstr "^1%s^1 ha tratto la prima uccisione\n"
-#: qcsrc/client/hud.qc:1721
+#: qcsrc/client/hud.qc:1555
#, c-format
msgid "^1%s^1 tried to occupy %s^1's teleport destination space\n"
-msgstr "^1%s^1 ha provato a occupare lo spazio del teletrasporto di %s\n"
+msgstr ""
+"^1%s^1 ha provato a occupare lo spazio di destinazione della teleporta di "
+"%s\n"
-#: qcsrc/client/hud.qc:1723
+#: qcsrc/client/hud.qc:1557
#, c-format
msgid "^1%s^1 was telefragged by %s\n"
msgstr "^1%s^1 è stato telefraggato da %s\n"
-#: qcsrc/client/hud.qc:1728
+#: qcsrc/client/hud.qc:1562
#, c-format
msgid "^1%s^1 was drowned by %s\n"
msgstr "^1%s^1 è stato annegato da %s\n"
-#: qcsrc/client/hud.qc:1733
+#: qcsrc/client/hud.qc:1567
#, c-format
msgid "^1%s^1 was slimed by %s\n"
msgstr "^1%s^1 è stato coperto di melma da %s\n"
-#: qcsrc/client/hud.qc:1738
+#: qcsrc/client/hud.qc:1572
#, c-format
msgid "^1%s^1 was cooked by %s\n"
msgstr "^1%s^1 è stato cucinato da %s\n"
-#: qcsrc/client/hud.qc:1743
+#: qcsrc/client/hud.qc:1577
#, c-format
msgid "^1%s^1 was grounded by %s\n"
msgstr "^1%s^1 è stato messo a terra da %s\n"
-#: qcsrc/client/hud.qc:1748
+#: qcsrc/client/hud.qc:1582
#, c-format
msgid "^1%s^1 was shot into space by %s\n"
msgstr "^1%s^1 è stato buttato nello spazio da %s\n"
-#: qcsrc/client/hud.qc:1753
+#: qcsrc/client/hud.qc:1587
#, c-format
msgid "^1%s^1 was conserved by %s\n"
msgstr "^1%s^1 è stato conservato da %s\n"
-#: qcsrc/client/hud.qc:1759
+#: qcsrc/client/hud.qc:1593
#, c-format
msgid "^1%s^1 was thrown into a world of hurt by %s\n"
msgstr "^1%s^1 è stato lanciato in un mondo di dolore da %s\n"
-#: qcsrc/client/hud.qc:1763
+#: qcsrc/client/hud.qc:1597
#, c-format
msgid "^1%s^1 was crushed by %s\n"
msgstr "^1%s^1 è stato schiacciato da %s\n"
-#: qcsrc/client/hud.qc:1767
+#: qcsrc/client/hud.qc:1601
#, c-format
msgid "^1%s^1 got shredded by %s\n"
msgstr "^1%s^1 è stato triturato da %s\n"
-#: qcsrc/client/hud.qc:1771
+#: qcsrc/client/hud.qc:1605
#, c-format
msgid "^1%s^1 was blasted to bits by %s\n"
msgstr "^1%s^1 è stato disintegrato da %s\n"
-#: qcsrc/client/hud.qc:1775
+#: qcsrc/client/hud.qc:1609
#, c-format
msgid "^1%s^1 got caught in the destruction of %s^1's vehicle\n"
msgstr "^1%s^1 è caduto nella distruzione del veicolo di %s\n"
-#: qcsrc/client/hud.qc:1779
+#: qcsrc/client/hud.qc:1613
#, c-format
msgid "^1%s^1 was bolted down by %s\n"
-msgstr "^1%s^1 è stato bullonato giù da %s\n"
+msgstr "^1%s^1 è stato imbullonato da %s\n"
-#: qcsrc/client/hud.qc:1783
+#: qcsrc/client/hud.qc:1617
#, c-format
msgid "^1%s^1 could find no shelter from %s^1's rockets\n"
msgstr "^1%s^1 non ha trovato riparo dai razzi di %s\n"
-#: qcsrc/client/hud.qc:1787
+#: qcsrc/client/hud.qc:1621
#, c-format
msgid "^1%s^1 dies when %s^1's wakizashi dies.\n"
msgstr "^1%s^1 muore mentre il wakizashi di %s^1 muore.\n"
-#: qcsrc/client/hud.qc:1791
+#: qcsrc/client/hud.qc:1625
#, c-format
msgid "^1%s^1 nailed to hell by %s\n"
msgstr "^1%s^1 è stato inchiodato all'inferno da %s\n"
-#: qcsrc/client/hud.qc:1795
+#: qcsrc/client/hud.qc:1629
#, c-format
msgid "^1%s^1 cluster crushed by %s\n"
msgstr "^1L'ammasso di ^1%s^1 è stato schiacciato da %s\n"
-#: qcsrc/client/hud.qc:1799
+#: qcsrc/client/hud.qc:1633
#, c-format
msgid "^1%s^1 dies when %s^1's raptor dies.\n"
msgstr "^1%s^1 muore mentre il raptor di %s^1 muore.\n"
-#: qcsrc/client/hud.qc:1803
+#: qcsrc/client/hud.qc:1637
#, c-format
msgid "^1%s^1 was pushed into the line of fire by %s\n"
-msgstr "^1%s^1 è stato spinto in una linea di fuoco da %s\n"
+msgstr "^1%s^1 è stato spinto nella linea di fuoco da %s\n"
-#: qcsrc/client/hud.qc:1807
+#: qcsrc/client/hud.qc:1641
#, c-format
msgid "^1%s^1 was pushed into an accident by %s\n"
msgstr "^1%s^1 è stato spinto in un incidente da %s\n"
-#: qcsrc/client/hud.qc:1811
+#: qcsrc/client/hud.qc:1645
#, c-format
msgid "^1%s^1 was unfairly eliminated by %s\n"
msgstr "^1%s^1 è stato ingiustamente eliminato da %s\n"
-#: qcsrc/client/hud.qc:1815
+#: qcsrc/client/hud.qc:1649
#, c-format
msgid "^1%s^1 was burnt to death by %s\n"
-msgstr "^1%s^1 è stato bruciato alla morte da %s\n"
+msgstr "^1%s^1 è stato bruciato a morte da %s\n"
-#: qcsrc/client/hud.qc:1827
+#: qcsrc/client/hud.qc:1661
#, c-format
msgid "^1%s^1 was fragged by %s\n"
msgstr "^1%s^1 è stato fraggato da %s\n"
-#: qcsrc/client/hud.qc:1832
+#: qcsrc/client/hud.qc:1666
#, c-format
msgid "^1%s^1's %s scoring spree was ended by %s\n"
msgstr "^1La serie di ^1%s ^1di ^1%s^1 punti è stata conclusa da %s\n"
-#: qcsrc/client/hud.qc:1834
+#: qcsrc/client/hud.qc:1668
#, c-format
msgid "^1%s^1's %s kill spree was ended by %s\n"
msgstr "^1La serie di %s^1 di ^1%s^1 uccisioni è stata conclusa da %s\n"
-#: qcsrc/client/hud.qc:1837
+#: qcsrc/client/hud.qc:1671
#, c-format
msgid "^1%s^1 made %s scores in a row\n"
msgstr "^1%s^1 ha fatto %s punti di fila\n"
-#: qcsrc/client/hud.qc:1839
+#: qcsrc/client/hud.qc:1673
#, c-format
msgid "^1%s^1 has %s frags in a row\n"
-msgstr "^1%s^1 ha fatto %s frag di fila\n"
+msgstr "^1%s^1 ha %s frag di fila\n"
-#: qcsrc/client/hud.qc:1842
+#: qcsrc/client/hud.qc:1676
#, c-format
msgid "%s^7 made a ^1TRIPLE SCORE\n"
msgstr "%s^7 ha realizzato un ^1TRIPLO PUNTO\n"
-#: qcsrc/client/hud.qc:1844
+#: qcsrc/client/hud.qc:1678
#, c-format
msgid "%s^7 made a ^1TRIPLE FRAG\n"
msgstr "%s^7 ha realizzato un ^1FRAG TRIPLO\n"
-#: qcsrc/client/hud.qc:1847
+#: qcsrc/client/hud.qc:1681
#, c-format
msgid "%s^7 unleashes ^1SCORING RAGE\n"
msgstr "%s^7 scatena una ^1FURIA DI PUNTI\n"
-#: qcsrc/client/hud.qc:1849
+#: qcsrc/client/hud.qc:1683
#, c-format
msgid "%s^7 unleashes ^1RAGE\n"
msgstr "%s^7 scatena la propria ^1FURIA\n"
-#: qcsrc/client/hud.qc:1852
+#: qcsrc/client/hud.qc:1686
#, c-format
msgid "%s^7 made ^1TEN SCORES IN A ROW!\n"
msgstr "%s^7 ha realizzato ^1DIECI PUNTI DI FILA!\n"
-#: qcsrc/client/hud.qc:1854
+#: qcsrc/client/hud.qc:1688
#, c-format
msgid "%s^7 starts the ^1MASSACRE!\n"
msgstr "%s^7 ha iniziato il ^1MASSACRO!\n"
-#: qcsrc/client/hud.qc:1857
+#: qcsrc/client/hud.qc:1691
#, c-format
msgid "%s^7 made ^1FIFTEEN SCORES IN A ROW!\n"
msgstr "%s^7 ha realizzato ^QUINDICI PUNTI DI FILA!\n"
-#: qcsrc/client/hud.qc:1859
+#: qcsrc/client/hud.qc:1693
#, c-format
msgid "%s^7 executes ^1MAYHEM!\n"
msgstr "%s^7 ha eseguito un ^1MAYHEM!\n"
-#: qcsrc/client/hud.qc:1862
+#: qcsrc/client/hud.qc:1696
#, c-format
msgid "%s^7 made ^1TWENTY SCORES IN A ROW!\n"
msgstr "%s^7 ha realizzato ^1VENTI PUNTI DI FILA!\n"
-#: qcsrc/client/hud.qc:1864
+#: qcsrc/client/hud.qc:1698
#, c-format
msgid "%s^7 is a ^1BERSERKER!\n"
msgstr "%s^7 è un ^1FEROCE GUERRIERO!\n"
-#: qcsrc/client/hud.qc:1867
+#: qcsrc/client/hud.qc:1701
#, c-format
msgid "%s^7 made ^1TWENTY FIVE SCORES IN A ROW!\n"
msgstr "%s^7 ha realizzato ^1VENTICINQUE PUNTI DI FILA!\n"
-#: qcsrc/client/hud.qc:1869
+#: qcsrc/client/hud.qc:1703
#, c-format
msgid "%s^7 inflicts ^1CARNAGE!\n"
-msgstr "%s^7 ha inflitto una ^1STRAGE!\n"
+msgstr "%s^7 ha fatto una ^1CARNEFICINA!\n"
-#: qcsrc/client/hud.qc:1872
+#: qcsrc/client/hud.qc:1706
#, c-format
msgid "%s^7 made ^1THIRTY SCORES IN A ROW!\n"
msgstr "%s^7 ha realizzato ^1TRENTA PUNTI DI FILA!\n"
-#: qcsrc/client/hud.qc:1874
+#: qcsrc/client/hud.qc:1708
#, c-format
msgid "%s^7 unleashes ^1ARMAGEDDON!\n"
msgstr "%s^7 scatena un ^1ARMAGEDDON!\n"
-#: qcsrc/client/hud.qc:1882
+#: qcsrc/client/hud.qc:1716
#, c-format
msgid "^1%s^1 was in the water for too long\n"
msgstr "^1%s^1 è stato in acqua per troppo tempo\n"
-#: qcsrc/client/hud.qc:1884
+#: qcsrc/client/hud.qc:1718
#, c-format
msgid "^1%s^1 drowned\n"
msgstr "^1%s^1 è annegato\n"
-#: qcsrc/client/hud.qc:1889
+#: qcsrc/client/hud.qc:1723
#, c-format
msgid "^1%s^1 was slimed\n"
msgstr "^1%s^1 è stato coperto di melma\n"
-#: qcsrc/client/hud.qc:1895
+#: qcsrc/client/hud.qc:1729
#, c-format
msgid "^1%s^1 found a hot place\n"
msgstr "^1%s^1 ha trovato un posto caldo\n"
-#: qcsrc/client/hud.qc:1897
+#: qcsrc/client/hud.qc:1731
#, c-format
msgid "^1%s^1 turned into hot slag\n"
msgstr "^1%s^1 è finito dentro la lava bollente\n"
-#: qcsrc/client/hud.qc:1904
+#: qcsrc/client/hud.qc:1738
#, c-format
msgid "^1%s^1 tested gravity (and it worked)\n"
msgstr "^1%s^1 ha testato la gravità (e ha funzionato)\n"
-#: qcsrc/client/hud.qc:1906
+#: qcsrc/client/hud.qc:1740
#, c-format
msgid "^1%s^1 hit the ground with a crunch\n"
msgstr "^1%s^1 ha fatto scricchiolare il terreno\n"
-#: qcsrc/client/hud.qc:1911
+#: qcsrc/client/hud.qc:1745
#, c-format
msgid "^1%s^1 became a shooting star\n"
msgstr "^1%s^1 è diventato una stella cadente\n"
-#: qcsrc/client/hud.qc:1917
+#: qcsrc/client/hud.qc:1751
#, c-format
msgid "^1%s^1 discovered a swamp\n"
msgstr "^1%s^1 ha scoperto una palude\n"
-#: qcsrc/client/hud.qc:1919
+#: qcsrc/client/hud.qc:1753
#, c-format
msgid "^1%s^1 is now conserved for centuries to come\n"
msgstr "^1%s^1 è ora conservato per i secoli a venire\n"
-#: qcsrc/client/hud.qc:1924
+#: qcsrc/client/hud.qc:1758
#, c-format
msgid "^1%s^1 was mowed down by a turret \n"
-msgstr "^1%s^1 è stato buttato giù da una torretta \n"
+msgstr "^1%s^1 è stato falciato da una torretta \n"
-#: qcsrc/client/hud.qc:1936
+#: qcsrc/client/hud.qc:1770
#, c-format
msgid "^1%s^1 died in an accident\n"
msgstr "^1%s^1 è morto in un incidente\n"
-#: qcsrc/client/hud.qc:1940
+#: qcsrc/client/hud.qc:1774
#, c-format
msgid "^1%s^1 was unfairly eliminated\n"
msgstr "^1%s^1 è stato ingiustamente eliminato\n"
-#: qcsrc/client/hud.qc:1946
+#: qcsrc/client/hud.qc:1780
#, c-format
msgid "^1%s^1 felt a little hot\n"
-msgstr "^1%s^1 aveva un pò caldo\n"
+msgstr "^1%s^1 ha sentito un pò di caldo\n"
-#: qcsrc/client/hud.qc:1948
+#: qcsrc/client/hud.qc:1782
#, c-format
msgid "^1%s^1 burnt to death\n"
-msgstr "^1%s^1 è bruciato alla morte\n"
+msgstr "^1%s^1 è morto bruciato\n"
-#: qcsrc/client/hud.qc:1955
+#: qcsrc/client/hud.qc:1789
#, c-format
msgid "^1%s^1 needs a restart\n"
msgstr "^1%s^1 ha bisogno di una ripresa\n"
-#: qcsrc/client/hud.qc:1962
+#: qcsrc/client/hud.qc:1796
#, c-format
msgid "^1%s^1 needs a restart after a %d scoring spree\n"
msgstr "^1%s^1 ha bisogno di una ripresa dopo una serie di %d punti\n"
-#: qcsrc/client/hud.qc:1964
+#: qcsrc/client/hud.qc:1798
#, c-format
msgid "^1%s^1 died with a %d kill spree\n"
msgstr "^1%s^1 è morto dopo una serie di %d uccisioni\n"
-#: qcsrc/client/hud.qc:1968
+#: qcsrc/client/hud.qc:1802
#, c-format
msgid "%s^7 got the %s\n"
msgstr "%s^7 ha preso la %s\n"
-#: qcsrc/client/hud.qc:1971
+#: qcsrc/client/hud.qc:1805
#, c-format
msgid "%s^7 lost the %s\n"
msgstr "%s^7 ha perso la %s\n"
-#: qcsrc/client/hud.qc:1974
+#: qcsrc/client/hud.qc:1808
#, c-format
msgid "%s^7 picked up the %s\n"
msgstr "%s^7 ha raccolto la %s\n"
-#: qcsrc/client/hud.qc:1977
+#: qcsrc/client/hud.qc:1811
#, c-format
msgid "%s^7 returned the %s\n"
msgstr "%s^7 ha fatto ritornare la %s\n"
-#: qcsrc/client/hud.qc:1980
+#: qcsrc/client/hud.qc:1814
#, c-format
msgid "%s^7 captured the %s%s\n"
msgstr "%s^7 ha catturato la %s%s\n"
-#: qcsrc/client/hud.qc:1999
+#: qcsrc/client/hud.qc:1833
#, c-format
msgid "%s^7 has picked up the ball!\n"
msgstr "%s^7 ha raccolto la palla!\n"
-#: qcsrc/client/hud.qc:2004
+#: qcsrc/client/hud.qc:1838
#, c-format
msgid "%s^7 has dropped the ball!\n"
msgstr "%s^7 ha rilasciato la palla!\n"
-#: qcsrc/client/hud.qc:2017
+#: qcsrc/client/hud.qc:1849
#, c-format
msgid "You are now on: %s"
msgstr "Sei ora in: %s"
-#: qcsrc/client/hud.qc:2019
+#: qcsrc/client/hud.qc:1851
#, c-format
msgid ""
"You have been moved into a different team to improve team balance\n"
"You are now on: %s"
msgstr ""
-"Sei stato spostato in una squadra differente per aumentare il bilanciamento delle squadre\n"
+"Sei stato spostato in una squadra differente per migliorare il bilanciamento "
+"delle squadre\n"
"Sei ora in: %s"
-#: qcsrc/client/hud.qc:2022
+#: qcsrc/client/hud.qc:1854
msgid "^1Reconsider your tactics, camper!"
msgstr "^1Riconsidera le tue tattiche, camper!"
-#: qcsrc/client/hud.qc:2024
+#: qcsrc/client/hud.qc:1856
msgid "^1Die camper!"
msgstr "^1Muori camper!"
-#: qcsrc/client/hud.qc:2027
+#: qcsrc/client/hud.qc:1859
msgid "^1You are reinserted into the game for running out of ammo..."
-msgstr "^1Ti sei reinserito nel gioco per mancanza di munizioni..."
+msgstr "^1Sei reinserito nel gioco per mancanza di munizioni..."
-#: qcsrc/client/hud.qc:2029
+#: qcsrc/client/hud.qc:1861
msgid "^1You were killed for running out of ammo..."
msgstr "^1Sei stato ucciso per mancanza di munizioni..."
-#: qcsrc/client/hud.qc:2032
+#: qcsrc/client/hud.qc:1864
msgid "^1You need to preserve your health"
msgstr "^1Hai bisogno di preservare la tua vita"
-#: qcsrc/client/hud.qc:2034
+#: qcsrc/client/hud.qc:1866
msgid "^1You grew too old without taking your medicine"
-msgstr "^1Sei diventato troppo vecchio senza prendere le due medicine"
+msgstr "^1Sei diventato troppo vecchio senza prendere le tue medicine"
-#: qcsrc/client/hud.qc:2037
+#: qcsrc/client/hud.qc:1869
msgid "^1Don't go against team mates!"
msgstr "^1Non andare contro i tuoi compagni di squadra!"
-#: qcsrc/client/hud.qc:2039
+#: qcsrc/client/hud.qc:1871
msgid "^1Don't shoot your team mates!"
msgstr "^1Non sparare ai tuoi compagni di squadra!"
-#: qcsrc/client/hud.qc:2044
+#: qcsrc/client/hud.qc:1876
msgid "^1You need to be more careful!"
msgstr "^1Hai bisogno di essere più prudente!"
-#: qcsrc/client/hud.qc:2046
+#: qcsrc/client/hud.qc:1878
msgid "^1You killed your own dumb self!"
-msgstr "^1Ti sei ammazzato da solo!"
+msgstr "^1Ti sei ammazzato da solo, stupido!"
-#: qcsrc/client/hud.qc:2051
+#: qcsrc/client/hud.qc:1883
#, c-format
msgid "^1Moron! You went against ^7%s^1, a team mate!"
msgstr "^1Idiota! Sei andato contro ^7%s^1, un compagno di squadra!"
-#: qcsrc/client/hud.qc:2053
+#: qcsrc/client/hud.qc:1885
#, c-format
msgid "^1Moron! You fragged ^7%s^1, a team mate!"
msgstr "^1Idiota! Hai fraggato ^7%s^1, un compagno di squadra!"
-#: qcsrc/client/hud.qc:2057
+#: qcsrc/client/hud.qc:1889
msgid "^1First score"
msgstr "^1Primo punto"
-#: qcsrc/client/hud.qc:2059
+#: qcsrc/client/hud.qc:1891
msgid "^1First blood"
-msgstr "^1Primo colpo"
+msgstr "^1Primo sangue"
-#: qcsrc/client/hud.qc:2063
+#: qcsrc/client/hud.qc:1895
msgid "^1First casualty"
-msgstr "^1Primo ferito"
+msgstr "^1Primo incidente"
-#: qcsrc/client/hud.qc:2065
+#: qcsrc/client/hud.qc:1897
msgid "^1First victim"
msgstr "^1Prima vittima"
-#: qcsrc/client/hud.qc:2069
+#: qcsrc/client/hud.qc:1901
#, c-format
msgid "^1You scored against ^7%s^1 who was typing!"
msgstr "^1Hai segnato contro ^7%s^1 che stava scrivendo!"
-#: qcsrc/client/hud.qc:2071
+#: qcsrc/client/hud.qc:1903
#, c-format
msgid "^1You typefragged ^7%s"
-msgstr "^1Hai telefraggato ^7%s"
+msgstr "^1Hai \"typefraggato\" ^7%s"
-#: qcsrc/client/hud.qc:2075
+#: qcsrc/client/hud.qc:1907
#, c-format
msgid "^1You were scored against by ^7%s^1 while you were typing!"
-msgstr "^1Sei stato segnato da ^7%s^1 mentre tu stavi scrivendo!"
+msgstr "^1Sei stato segnato da ^7%s^1 mentre stavi scrivendo!"
-#: qcsrc/client/hud.qc:2077
+#: qcsrc/client/hud.qc:1909
#, c-format
msgid "^1You were typefragged by ^7%s"
msgstr "^1Sei stato \"typefraggato\" da ^7%s"
-#: qcsrc/client/hud.qc:2081
+#: qcsrc/client/hud.qc:1913
#, c-format
msgid "^4You scored against ^7%s"
msgstr "^4Hai segnato contro ^7%s"
-#: qcsrc/client/hud.qc:2083
+#: qcsrc/client/hud.qc:1915
#, c-format
msgid "^4You fragged ^7%s"
msgstr "^4Hai fraggato ^7%s"
-#: qcsrc/client/hud.qc:2087
+#: qcsrc/client/hud.qc:1919
#, c-format
msgid "^1You were scored against by ^7%s"
msgstr "^1Sei stato segnato da ^7%s"
-#: qcsrc/client/hud.qc:2089
+#: qcsrc/client/hud.qc:1921
#, c-format
msgid "^1You were fragged by ^7%s"
msgstr "^1Sei stato fraggato da ^7%s"
-#: qcsrc/client/hud.qc:2094
+#: qcsrc/client/hud.qc:1926
msgid "^1Watch your step!"
msgstr "^1Attento a dove metti i piedi!"
-#: qcsrc/client/hud.qc:2162
-#: qcsrc/client/hud.qc:2163
-#: qcsrc/client/hud.qc:2646
+#: qcsrc/client/hud.qc:1995 qcsrc/client/hud.qc:1996 qcsrc/client/hud.qc:2481
#, c-format
msgid "Player %d"
msgstr "Giocatore %d"
-#: qcsrc/client/hud.qc:2949
+#: qcsrc/client/hud.qc:2786
msgid "^1Intermediate 1 (+15.42)"
msgstr "^1Intermedio 1 (+15.42)"
-#: qcsrc/client/hud.qc:2951
-#: qcsrc/client/hud.qc:2993
-#: qcsrc/client/hud.qc:3034
+#: qcsrc/client/hud.qc:2788 qcsrc/client/hud.qc:2830 qcsrc/client/hud.qc:2871
#, c-format
msgid "^1PENALTY: %.1f (%s)"
msgstr "^1PENALITÀ: %.1f (%s)"
-#: qcsrc/client/hud.qc:3036
+#: qcsrc/client/hud.qc:2873
#, c-format
msgid "^2PENALTY: %.1f (%s)"
msgstr "^2PENALITÀ: %.1f (%s)"
-#: qcsrc/client/hud.qc:3064
+#: qcsrc/client/hud.qc:2901
msgid "^1You must answer before entering hud configure mode\n"
-msgstr "^1Devi rispondere ad alcune domande prima di entrare nella modalità di configurazione dell'HUD\n"
+msgstr ""
+"^1Devi rispondere prima di entrare nella modalità di configurazione "
+"dell'HUD\n"
-#: qcsrc/client/hud.qc:3067
+#: qcsrc/client/hud.qc:2904
msgid "^2Name ^7instead of \"^1Unregistered player^7\" in stats"
-msgstr "^2Nome ^7invece di \"^1Giocatore non registrato^7\" in stato"
+msgstr "^2Nome ^7invece di \"^1Giocatore non registrato^7\" nelle statistiche"
-#: qcsrc/client/hud.qc:3148
+#: qcsrc/client/hud.qc:2986
msgid "A vote has been called for:"
msgstr "Un voto è stato chiamato per:"
-#: qcsrc/client/hud.qc:3150
+#: qcsrc/client/hud.qc:2988
msgid "Allow servers to store and display your name?"
msgstr "Permetti ai server di salvare e visualizzare il tuo nome?"
-#: qcsrc/client/hud.qc:3154
+#: qcsrc/client/hud.qc:2992
msgid "^1Configure the HUD"
-msgstr "^1Configura il pannello HUD"
+msgstr "^1Configura l'HUD"
-#: qcsrc/client/hud.qc:3158
+#: qcsrc/client/hud.qc:2996
#, c-format
msgid "Yes (%s): %d"
msgstr "Sì (%s): %d"
-#: qcsrc/client/hud.qc:3160
+#: qcsrc/client/hud.qc:2998
#, c-format
msgid "No (%s): %d"
msgstr "No (%s): %d"
-#: qcsrc/client/hud.qc:3667
-#: qcsrc/client/hud.qc:3670
-#: qcsrc/client/hud.qc:3672
+#: qcsrc/client/hud.qc:3501 qcsrc/client/hud.qc:3504 qcsrc/client/hud.qc:3506
msgid "Personal best"
msgstr "Miglior personale"
-#: qcsrc/client/hud.qc:3685
-#: qcsrc/client/hud.qc:3688
-#: qcsrc/client/hud.qc:3690
+#: qcsrc/client/hud.qc:3519 qcsrc/client/hud.qc:3522 qcsrc/client/hud.qc:3524
msgid "Server best"
msgstr "Migliori del server"
-#: qcsrc/client/hud.qc:4031
+#: qcsrc/client/hud.qc:3868
msgid "^3Player^7: This is the chat area."
-msgstr "^3Giocatore^7: Questa è un'area per la chat."
+msgstr "^3Giocatore^7: Questa è l'area della chat."
-#: qcsrc/client/hud.qc:4098
+#: qcsrc/client/hud.qc:3936
#, c-format
msgid "FPS: %.*f"
msgstr "FPS: %.*f"
-#: qcsrc/client/hud.qc:4164
+#: qcsrc/client/hud.qc:4003
msgid "^1Observing"
-msgstr "^1Modalità spettatore"
+msgstr "^1Osservando"
-#: qcsrc/client/hud.qc:4166
+#: qcsrc/client/hud.qc:4005
#, c-format
msgid "^1Spectating: ^7%s"
msgstr "^1Assistendo: ^7%s"
-#: qcsrc/client/hud.qc:4170
+#: qcsrc/client/hud.qc:4009
#, c-format
msgid "^1Press ^3%s^1 to spectate"
msgstr "^1Premi ^3%s^1 per assistere"
-#: qcsrc/client/hud.qc:4172
+#: qcsrc/client/hud.qc:4011
#, c-format
msgid "^1Press ^3%s^1 for another player"
msgstr "^1Premi ^3%s^1 per un altro giocatore"
-#: qcsrc/client/hud.qc:4176
+#: qcsrc/client/hud.qc:4015
#, c-format
msgid "^1Use ^3%s^1 or ^3%s^1 to change the speed"
msgstr "^1Usa ^3%s^1 o ^3%s^1 per cambiare velocità"
-#: qcsrc/client/hud.qc:4178
+#: qcsrc/client/hud.qc:4017
#, c-format
msgid "^1Press ^3%s^1 to observe"
msgstr "^1Premi ^3%s^1 per osservare"
-#: qcsrc/client/hud.qc:4181
+#: qcsrc/client/hud.qc:4020
#, c-format
msgid "^1Press ^3%s^1 for gamemode info"
-msgstr "^1Premi ^3%s^1 per le informazioni sulla modalità di gioco"
+msgstr "^1Premi ^3%s^1 per informazioni sulla modalità di gioco"
-#: qcsrc/client/hud.qc:4185
+#: qcsrc/client/hud.qc:4024
msgid "^1Wait for your turn to join"
msgstr "^1Attendi il tuo turno per entrare"
-#: qcsrc/client/hud.qc:4191
+#: qcsrc/client/hud.qc:4030
msgid "^1Match has already begun"
msgstr "^1La partita è già iniziata"
-#: qcsrc/client/hud.qc:4193
+#: qcsrc/client/hud.qc:4032
msgid "^1You have no more lives left"
msgstr "^1Non hai più vite a disposizione"
-#: qcsrc/client/hud.qc:4195
-#: qcsrc/client/hud.qc:4198
+#: qcsrc/client/hud.qc:4034 qcsrc/client/hud.qc:4037
#, c-format
msgid "^1Press ^3%s^1 to join"
msgstr "^1Premi ^3%s^1 per entrare"
-#: qcsrc/client/hud.qc:4206
+#: qcsrc/client/hud.qc:4045
#, c-format
msgid "^1Game starts in ^3%d^1 seconds"
msgstr "^1La partita inizia tra ^3%d^1 secondi"
-#: qcsrc/client/hud.qc:4213
+#: qcsrc/client/hud.qc:4052
msgid "^2Currently in ^1warmup^2 stage!"
msgstr "^2Attualmente in ^1warmup^2!"
-#: qcsrc/client/hud.qc:4228
+#: qcsrc/client/hud.qc:4067
#, c-format
msgid "%sPress ^3%s%s to end warmup"
msgstr "%sPremi ^3%s%s per terminare il warmup"
-#: qcsrc/client/hud.qc:4230
+#: qcsrc/client/hud.qc:4069
#, c-format
msgid "%sPress ^3%s%s once you are ready"
msgstr "%sPremi ^3%s%s una volta che sei pronto"
-#: qcsrc/client/hud.qc:4235
+#: qcsrc/client/hud.qc:4074
msgid "^2Waiting for others to ready up to end warmup..."
msgstr "^2Attendendo che gli altri siano pronti per terminare il warmup..."
-#: qcsrc/client/hud.qc:4237
+#: qcsrc/client/hud.qc:4076
msgid "^2Waiting for others to ready up..."
msgstr "^2Attendendo che gli altri siano pronti..."
-#: qcsrc/client/hud.qc:4243
+#: qcsrc/client/hud.qc:4082
#, c-format
msgid "^2Press ^3%s^2 to end warmup"
msgstr "^2Premi ^3%s^2 per terminare il warmup"
-#: qcsrc/client/hud.qc:4264
+#: qcsrc/client/hud.qc:4103
msgid "Teamnumbers are unbalanced!"
-msgstr "Il numero di giocatori per squadra è sbilanciato!"
+msgstr "Numero di giocatori per squadra sbilanciato!"
-#: qcsrc/client/hud.qc:4269
+#: qcsrc/client/hud.qc:4108
#, c-format
msgid " Press ^3%s%s to adjust"
msgstr " Premi ^3%s%s per aggiustare"
-#: qcsrc/client/hud.qc:4277
+#: qcsrc/client/hud.qc:4116
msgid "^7Press ^3ESC ^7to show HUD options."
-msgstr "^7Premi ^3ESC ^7per mostrare le opzioni dello HUD"
+msgstr "^7Premi ^3ESC ^7per mostrare le opzioni dell'HUD."
-#: qcsrc/client/hud.qc:4279
+#: qcsrc/client/hud.qc:4118
msgid "^3Doubleclick ^7a panel for panel-specific options."
-msgstr "^7Fai ^3doppio-click ^7su un pannello per le sue specifiche opzioni "
+msgstr "^3Doppio-click ^7su un pannello per le sue specifiche opzioni."
-#: qcsrc/client/hud.qc:4281
+#: qcsrc/client/hud.qc:4120
msgid "^3CTRL ^7to disable collision testing, ^3SHIFT ^7and"
msgstr "^3CTRL ^7per disabilitare il test di collisione, ^3SHIFT ^7e"
-#: qcsrc/client/hud.qc:4283
+#: qcsrc/client/hud.qc:4122
msgid "^3ALT ^7+ ^3ARROW KEYS ^7for fine adjustments."
msgstr "^3ALT ^7+ ^3ARROW KEYS ^7per fini aggiustamenti"
-#: qcsrc/client/hud.qc:4319
+#: qcsrc/client/hud.qc:4160
msgid " qu/s"
msgstr " qu/s"
-#: qcsrc/client/hud.qc:4323
+#: qcsrc/client/hud.qc:4164
msgid " m/s"
msgstr " m/s"
-#: qcsrc/client/hud.qc:4327
+#: qcsrc/client/hud.qc:4168
msgid " km/h"
msgstr " km/h"
-#: qcsrc/client/hud.qc:4331
+#: qcsrc/client/hud.qc:4172
msgid " mph"
msgstr " mph"
-#: qcsrc/client/hud.qc:4335
+#: qcsrc/client/hud.qc:4176
msgid " knots"
msgstr " nodi"
-#: qcsrc/client/hud.qc:4686
+#: qcsrc/client/hud.qc:4823
msgid "Automatically fixed wrong/missing panel numbers in _hud_panelorder\n"
-msgstr "Corretti automaticamente numeri sul pannello sbagliati/mancanti in _hud_panelorder\n"
+msgstr ""
+"Corretti automaticamente numeri di pannello sbagliati/mancanti in "
+"_hud_panelorder\n"
-#: qcsrc/client/hud_config.qc:132
+#: qcsrc/client/hud_config.qc:136
#, c-format
msgid "^2Successfully exported to %s! (Note: It's saved in data/data/)\n"
msgstr "^2Esportato con successo in %s! (nota: E' salvato in data/data/)\n"
-#: qcsrc/client/hud_config.qc:136
+#: qcsrc/client/hud_config.qc:140
#, c-format
msgid "^1Couldn't write to %s\n"
msgstr "^1Impossibile scrivere in %s\n"
#: qcsrc/client/mapvoting.qc:113
msgid "Don't care"
-msgstr "Non t'importa"
+msgstr "Non importa"
#: qcsrc/client/mapvoting.qc:194
msgid "Vote for a map"
msgstr "Vota per una mappa"
-#: qcsrc/client/mapvoting.qc:199
+#: qcsrc/client/mapvoting.qc:200
#, c-format
msgid "%d seconds left"
msgstr "%d secondi rimanenti"
#: qcsrc/client/mapvoting.qc:263
-msgid "mv_mapdownload: ^3You're not supposed to use this command on your own!\n"
+msgid ""
+"mv_mapdownload: ^3You're not supposed to use this command on your own!\n"
msgstr "mv_mapdownload: ^3Non avrai creduto di poter usare questo comando!\n"
#: qcsrc/client/mapvoting.qc:273
#: qcsrc/client/miscfunctions.qc:283
msgid "Trying to remove a team which is not in the teamlist!"
-msgstr "Tentando di rimuovere una squadra che non è nella lista!"
+msgstr "Tentando di rimuovere una squadra che non è nella lista delle squadre!"
-#: qcsrc/client/movetypes.qc:159
+#: qcsrc/client/movetypes.qc:163
#, c-format
msgid "Can't unstick an entity (edict: %d, classname: %s, origin: %s)\n"
-msgstr ""
+msgstr "Can't unstick an entity (edict: %d, classname: %s, origin: %s)\n"
-#: qcsrc/client/movetypes.qc:162
+#: qcsrc/client/movetypes.qc:166
#, c-format
msgid "Sucessfully unstuck an entity (edict: %d, classname: %s, origin: %s)\n"
-msgstr ""
+msgstr "Sucessfully unstuck an entity (edict: %d, classname: %s, origin: %s)\n"
#: qcsrc/client/scoreboard.qc:19
msgid "SCO^bckills"
-msgstr ""
+msgstr "uccisioni pp"
#: qcsrc/client/scoreboard.qc:20
msgid "SCO^bctime"
-msgstr ""
+msgstr "tempo pp"
#: qcsrc/client/scoreboard.qc:21
msgid "SCO^caps"
#: qcsrc/client/scoreboard.qc:26
msgid "SCO^fckills"
-msgstr ""
+msgstr "uccisioni pb"
#: qcsrc/client/scoreboard.qc:27
msgid "SCO^goals"
#: qcsrc/client/scoreboard.qc:28
msgid "SCO^kckills"
-msgstr ""
+msgstr "uccisioni pc"
#: qcsrc/client/scoreboard.qc:29
msgid "SCO^kdratio"
-msgstr ""
+msgstr "rapporto u/m"
#: qcsrc/client/scoreboard.qc:30
msgid "SCO^k/d"
-msgstr ""
+msgstr "u/m"
#: qcsrc/client/scoreboard.qc:31
msgid "SCO^kd"
-msgstr ""
+msgstr "um"
#: qcsrc/client/scoreboard.qc:32
msgid "SCO^kdr"
-msgstr ""
+msgstr "rum"
#: qcsrc/client/scoreboard.qc:33
msgid "SCO^kills"
#: qcsrc/client/scoreboard.qc:39
msgid "SCO^objectives"
-msgstr ""
+msgstr "obiettivi"
#: qcsrc/client/scoreboard.qc:40
msgid "SCO^pickups"
#: qcsrc/client/scoreboard.qc:43
msgid "SCO^pushes"
-msgstr "SCO^buttati"
+msgstr "SCO^spinte"
#: qcsrc/client/scoreboard.qc:44
msgid "SCO^rank"
#: qcsrc/client/scoreboard.qc:46
msgid "SCO^revivals"
-msgstr ""
+msgstr "ravvivamenti"
#: qcsrc/client/scoreboard.qc:47
msgid "SCO^score"
msgstr "SCO^tick"
#: qcsrc/client/scoreboard.qc:239
-msgid "You can modify the scoreboard using the ^2scoreboard_columns_set command.\n"
-msgstr "Puoi modificare lo scoreboard usando il comando ^2scoreboard_columns_set.\n"
+msgid ""
+"You can modify the scoreboard using the ^2scoreboard_columns_set command.\n"
+msgstr ""
+"Puoi modificare lo scoreboard usando il comando ^2scoreboard_columns_set.\n"
#: qcsrc/client/scoreboard.qc:240
msgid "^3|---------------------------------------------------------------|\n"
#: qcsrc/client/scoreboard.qc:242
msgid "^2scoreboard_columns_set default\n"
-msgstr "^2scoreboard_columns_set prefedinito\n"
+msgstr "^2scoreboard_columns_set default\n"
#: qcsrc/client/scoreboard.qc:243
msgid "^2scoreboard_columns_set ^7filed1 field2 ...\n"
#: qcsrc/client/scoreboard.qc:247
msgid "^3name^7 or ^3nick^7 Name of a player\n"
-msgstr "^3nome^7 o ^3nick^7 Nome di un giocatore\n"
+msgstr "^3name^7 o ^3nick^7 Nome di un giocatore\n"
#: qcsrc/client/scoreboard.qc:248
msgid "^3ping^7 Ping time\n"
#: qcsrc/client/scoreboard.qc:250
msgid "^3kills^7 Number of kills\n"
-msgstr "^3uccisioni^7 Numero di uccisioni\n"
+msgstr "^3kills^7 Numero di uccisioni\n"
#: qcsrc/client/scoreboard.qc:251
msgid "^3deaths^7 Number of deaths\n"
-msgstr "^3morti^7 Numero di morti\n"
+msgstr "^3deaths^7 Numero di morti\n"
#: qcsrc/client/scoreboard.qc:252
msgid "^3suicides^7 Number of suicides\n"
-msgstr "^3suicidi^7 Numero di suicidi\n"
+msgstr "^3suicides^7 Numero di suicidi\n"
#: qcsrc/client/scoreboard.qc:253
msgid "^3frags^7 kills - suicides\n"
-msgstr "^3frag^7 uccisioni - suicidi\n"
+msgstr "^3frags^7 uccisioni - suicidi\n"
#: qcsrc/client/scoreboard.qc:254
msgid "^3kd^7 The kill-death ratio\n"
msgstr "^3kd^7 Rapporto uccisioni-morti\n"
#: qcsrc/client/scoreboard.qc:255
-msgid "^3caps^7 How often a flag (CTF) or a key (KeyHunt) was captured\n"
-msgstr "^3catture^7 Per quante volte una bandiera (CTF) o una chiave (KeyHunt) è stata catturata\n"
+msgid ""
+"^3caps^7 How often a flag (CTF) or a key (KeyHunt) was "
+"captured\n"
+msgstr ""
+"^3caps^7 Per quante volte una bandiera (CTF) o una "
+"chiave (KeyHunt) è stata catturata\n"
#: qcsrc/client/scoreboard.qc:256
-msgid "^3pickups^7 How often a flag (CTF) or a key (KeyHunt) or a ball (Keepaway) was picked up\n"
-msgstr "^3raccolte^7 Per quante volte una bandiera (CTF) o una chiave (KeyHunt) o una palla (Keepaway) viene raccolta\n"
+msgid ""
+"^3pickups^7 How often a flag (CTF) or a key (KeyHunt) or a "
+"ball (Keepaway) was picked up\n"
+msgstr ""
+"^3pickups^7 Per quante volte una bandiera (CTF) o una "
+"chiave (KeyHunt) o una palla (Keepaway) viene raccolta\n"
#: qcsrc/client/scoreboard.qc:257
msgid "^3fckills^7 Number of flag carrier kills\n"
-msgstr "^3fckills^7 Numero di uccisioni dei portatori di bandiere\n"
+msgstr ""
+"^3fckills^7 Numero di uccisioni dei portatori di bandiera\n"
#: qcsrc/client/scoreboard.qc:258
msgid "^3returns^7 Number of flag returns\n"
-msgstr "^3ritorni^7 Numbero di ritorni della bandiera\n"
+msgstr "^3returns^7 Numbero di ritorni della bandiera\n"
#: qcsrc/client/scoreboard.qc:259
msgid "^3drops^7 Number of flag drops\n"
-msgstr "^3cadute^7 Numero di bandiere cadute\n"
+msgstr "^3drops^7 Numero di bandiere cadute\n"
#: qcsrc/client/scoreboard.qc:260
msgid "^3lives^7 Number of lives (LMS)\n"
-msgstr "^3vite^7 Numero di vite (LMS)\n"
+msgstr "^3lives^7 Numero di vite (LMS)\n"
#: qcsrc/client/scoreboard.qc:261
msgid "^3rank^7 Player rank\n"
-msgstr "^3posizione^7 Posizione del giocatore\n"
+msgstr "^3rank^7 Posizione del giocatore\n"
#: qcsrc/client/scoreboard.qc:262
msgid "^3pushes^7 Number of players pushed into void\n"
-msgstr "^3buttati^7 Numero di giocatori buttati giù nel nulla\n"
+msgstr "^3pushes^7 Numero di giocatori spinti nel vuoto\n"
#: qcsrc/client/scoreboard.qc:263
-msgid "^3destroyed^7 Number of keys destroyed by pushing them into void\n"
-msgstr "^3distrutte^7 Numero di chiavi distrutte buttandole giù nel nulla\n"
+msgid ""
+"^3destroyed^7 Number of keys destroyed by pushing them into "
+"void\n"
+msgstr ""
+"^3destroyed^7 Numero di chiavi distrutte spingendole nel "
+"vuoto\n"
#: qcsrc/client/scoreboard.qc:264
msgid "^3kckills^7 Number of keys carrier kills\n"
-msgstr "^3kckills^7 Numero di uccisioni dei portatori di chiavi\n"
+msgstr ""
+"^3kckills^7 Numero di uccisioni di portatori di chiavi\n"
#: qcsrc/client/scoreboard.qc:265
msgid "^3losses^7 Number of times a key was lost\n"
-msgstr "^3perdute^7 Numero di volte che una chiave s'è persa\n"
+msgstr ""
+"^3losses^7 Numero di volte che una chiave s'è persa\n"
#: qcsrc/client/scoreboard.qc:266
msgid "^3laps^7 Number of laps finished (race/cts)\n"
-msgstr "^3giri^7 Numero di giri completati (corsa/cts)\n"
+msgstr "^3laps^7 Numero di giri completati (corsa/cts)\n"
#: qcsrc/client/scoreboard.qc:267
msgid "^3time^7 Total time raced (race/cts)\n"
-msgstr "^3tempo^7 Tempo totale (corsa/cts)\n"
+msgstr "^3time^7 Tempo totale (corsa/cts)\n"
#: qcsrc/client/scoreboard.qc:268
msgid "^3fastest^7 Time of fastest lap (race/cts)\n"
-msgstr "^3giro più veloce^7 Tempo del giro più veloce (corsa/cts)\n"
+msgstr "^3fastest^7 Tempo del giro più veloce (corsa/cts)\n"
#: qcsrc/client/scoreboard.qc:269
msgid "^3ticks^7 Number of ticks (DOM)\n"
-msgstr "^3tick^7 Numero di tick (DOM)\n"
+msgstr "^3ticks^7 Numero di tick (DOM)\n"
#: qcsrc/client/scoreboard.qc:270
msgid "^3takes^7 Number of domination points taken (DOM)\n"
-msgstr "^3presi^7 Numero di punti di dominio presi (DOM)\n"
+msgstr "^3takes^7 Numero di punti di dominio presi (DOM)\n"
#: qcsrc/client/scoreboard.qc:271
msgid "^3bckills^7 Number of ball carrier kills\n"
-msgstr "^3bckills^7 Numbero di uccisioni dei portatori di palle\n"
+msgstr ""
+"^3bckills^7 Numbero di uccisioni di portatori di palla\n"
#: qcsrc/client/scoreboard.qc:272
-msgid "^3bctime^7 Total amount of time holding the ball in Keepaway\n"
-msgstr "^3bctime^7 Totale ammontare del tempo in possesso della palla nel Keepaway\n"
+msgid ""
+"^3bctime^7 Total amount of time holding the ball in "
+"Keepaway\n"
+msgstr ""
+"^3bctime^7 Tempo totale di possesso della palla in "
+"Keepaway\n"
#: qcsrc/client/scoreboard.qc:273
msgid ""
"^3score^7 Total score\n"
"\n"
msgstr ""
-"^3punti^7 Punteggio totale\n"
+"^3score^7 Punteggio totale\n"
"\n"
#: qcsrc/client/scoreboard.qc:275
"field to show all fields available for the current game mode.\n"
"\n"
msgstr ""
+"Prima di un campo puoi mettere il segno + o -, seguito da una lista di tipi "
+"di gioco\n"
+"separati da virgole, seguita dal segno /, per mostrare il campo solo in "
+"questi\n"
+"o in tutti tranne questi tipi di gioco. Puoi anche specificare "
+"'all' (tutti)\n"
+"come campo per mostrare tutti i campi disponibili per l'attuale mdo di "
+"gioco.\n"
+"\n"
#: qcsrc/client/scoreboard.qc:280
msgid ""
"include/exclude ALL teams/noteams game modes.\n"
"\n"
msgstr ""
-"I nomi speciali per il tipo di gioco 'teams' e 'noteams' possono essere usati\n"
+"I nomi speciali per il tipo di gioco 'teams' e 'noteams' possono essere "
+"usati\n"
"per includere/escludere TUTTE le modalità con team/senza team.\n"
"\n"
#: qcsrc/client/scoreboard.qc:283
msgid "Example: scoreboard_columns_set name ping pl | +ctf/field3 -dm/field4\n"
-msgstr "Esempio: scoreboard_columns_set name ping pl | +ctf/field3 -dm/field4\n"
+msgstr ""
+"Esempio: scoreboard_columns_set name ping pl | +ctf/field3 -dm/field4\n"
#: qcsrc/client/scoreboard.qc:284
msgid ""
"right of the vertical bar aligned to the right.\n"
msgstr ""
"farà visualizzare nome, ping e pl allineati a sinistra, e i campi\n"
-"a destra della barra verticale allineata a destra.\n"
+"a destra della barra verticale allineati a destra.\n"
#: qcsrc/client/scoreboard.qc:286
msgid ""
"'field3' sarà mostrato solo in CTF, e 'field4' sarà mostrato in tutte\n"
"le altre modalità di gioco eccetto DM.\n"
-#: qcsrc/client/scoreboard.qc:432
-#: qcsrc/client/scoreboard.qc:447
-#: qcsrc/client/scoreboard.qc:457
-#: qcsrc/client/scoreboard.qc:466
+#: qcsrc/client/scoreboard.qc:432 qcsrc/client/scoreboard.qc:447
+#: qcsrc/client/scoreboard.qc:457 qcsrc/client/scoreboard.qc:466
#: qcsrc/client/scoreboard.qc:475
#, c-format
msgid "fixed missing field '%s'\n"
msgstr "riparato campo mancante '%s'\n"
-#: qcsrc/client/scoreboard.qc:515
-#: qcsrc/client/scoreboard.qc:522
+#: qcsrc/client/scoreboard.qc:515 qcsrc/client/scoreboard.qc:522
msgid "N/A"
msgstr "N/D"
#: qcsrc/client/scoreboard.qc:950
#, c-format
msgid "Accuracy stats (average %d%%)"
-msgstr "Stato precisione (media %d%%)"
+msgstr "Statistiche precisione (media %d%%)"
#: qcsrc/client/scoreboard.qc:1015
#, c-format
#: qcsrc/client/scoreboard.qc:1075
msgid "Rankings"
-msgstr "Posizioni"
+msgstr "Classifica"
#: qcsrc/client/scoreboard.qc:1170
-#: qcsrc/client/scoreboard.qc:1172
msgid "Scoreboard"
msgstr "Tabella dei punteggi"
-#: qcsrc/client/scoreboard.qc:1218
+#: qcsrc/client/scoreboard.qc:1215
#, c-format
msgid "Speed award: %d ^7(%s^7)"
msgstr "Velocità migliore: %d ^7(%s^7)"
-#: qcsrc/client/scoreboard.qc:1222
+#: qcsrc/client/scoreboard.qc:1219
#, c-format
msgid "All-time fastest: %d ^7(%s^7)"
msgstr "Tempo più veloce in assoluto: %d ^7(%s^7)"
-#: qcsrc/client/scoreboard.qc:1249
-#: qcsrc/client/teamplay.qc:63
+#: qcsrc/client/scoreboard.qc:1246 qcsrc/client/teamplay.qc:63
msgid "Spectators"
msgstr "Spettatori"
-#: qcsrc/client/scoreboard.qc:1255
+#: qcsrc/client/scoreboard.qc:1252
#, c-format
msgid "playing on ^2%s^7"
msgstr "giocando in ^2%s^7"
-#: qcsrc/client/scoreboard.qc:1262
-#: qcsrc/client/scoreboard.qc:1267
+#: qcsrc/client/scoreboard.qc:1259 qcsrc/client/scoreboard.qc:1264
#, c-format
msgid " for up to ^1%1.0f minutes^7"
msgstr " fino a ^1%1.0f minuti^7"
-#: qcsrc/client/scoreboard.qc:1271
-#: qcsrc/client/scoreboard.qc:1290
+#: qcsrc/client/scoreboard.qc:1268 qcsrc/client/scoreboard.qc:1287
msgid " or"
msgstr " o"
-#: qcsrc/client/scoreboard.qc:1274
-#: qcsrc/client/scoreboard.qc:1281
+#: qcsrc/client/scoreboard.qc:1271 qcsrc/client/scoreboard.qc:1278
#, c-format
msgid " until ^3%s %s^7"
msgstr " fino a ^3%s %s^7"
-#: qcsrc/client/scoreboard.qc:1275
-#: qcsrc/client/scoreboard.qc:1282
-#: qcsrc/client/scoreboard.qc:1294
-#: qcsrc/client/scoreboard.qc:1301
+#: qcsrc/client/scoreboard.qc:1272 qcsrc/client/scoreboard.qc:1279
+#: qcsrc/client/scoreboard.qc:1291 qcsrc/client/scoreboard.qc:1298
msgid "SCO^points"
msgstr "SCO^punti"
-#: qcsrc/client/scoreboard.qc:1276
-#: qcsrc/client/scoreboard.qc:1283
-#: qcsrc/client/scoreboard.qc:1295
-#: qcsrc/client/scoreboard.qc:1302
+#: qcsrc/client/scoreboard.qc:1273 qcsrc/client/scoreboard.qc:1280
+#: qcsrc/client/scoreboard.qc:1292 qcsrc/client/scoreboard.qc:1299
msgid "SCO^is beaten"
msgstr "SCO^è battuto"
-#: qcsrc/client/scoreboard.qc:1293
-#: qcsrc/client/scoreboard.qc:1300
+#: qcsrc/client/scoreboard.qc:1290 qcsrc/client/scoreboard.qc:1297
#, c-format
msgid " until a lead of ^3%s %s^7"
-msgstr " fino a ^3%s %s^7"
+msgstr " fino a che si vince di ^3%s %s^7"
-#: qcsrc/client/target_music.qc:93
-#: qcsrc/client/target_music.qc:181
+#: qcsrc/client/target_music.qc:93 qcsrc/client/target_music.qc:181
#, c-format
msgid "Cannot initialize sound %s\n"
-msgstr "Impossibile inizializzare suono %s\n"
+msgstr "Impossibile inizializzare il suono %s\n"
#: qcsrc/client/teamplay.qc:64
msgid "Red Team"
msgid "Pink Team"
msgstr "Team Rosa"
-#: qcsrc/client/waypointsprites.qc:234
+#: qcsrc/client/waypointsprites.qc:254
msgid "Push"
msgstr "Spingi"
-#: qcsrc/client/waypointsprites.qc:235
+#: qcsrc/client/waypointsprites.qc:255
msgid "Destroy"
msgstr "Distruggi"
-#: qcsrc/client/waypointsprites.qc:236
+#: qcsrc/client/waypointsprites.qc:256
msgid "Defend"
msgstr "Difendi"
-#: qcsrc/client/waypointsprites.qc:237
+#: qcsrc/client/waypointsprites.qc:257
msgid "Blue base"
msgstr "Base Blu"
-#: qcsrc/client/waypointsprites.qc:238
+#: qcsrc/client/waypointsprites.qc:258
msgid "DANGER"
msgstr "PERICOLO"
-#: qcsrc/client/waypointsprites.qc:239
+#: qcsrc/client/waypointsprites.qc:259
msgid "Flag carrier"
msgstr "Portatore bandiera"
-#: qcsrc/client/waypointsprites.qc:240
+#: qcsrc/client/waypointsprites.qc:260
msgid "Dropped flag"
msgstr "Bandiera rilasciata"
-#: qcsrc/client/waypointsprites.qc:241
+#: qcsrc/client/waypointsprites.qc:261
msgid "Help me!"
msgstr "Aiuto!"
-#: qcsrc/client/waypointsprites.qc:242
+#: qcsrc/client/waypointsprites.qc:262
msgid "Here"
msgstr "Qui"
-#: qcsrc/client/waypointsprites.qc:243
+#: qcsrc/client/waypointsprites.qc:263
msgid "Dropped key"
msgstr "Chiave rilasciata"
-#: qcsrc/client/waypointsprites.qc:244
-#: qcsrc/client/waypointsprites.qc:246
-#: qcsrc/client/waypointsprites.qc:247
-#: qcsrc/client/waypointsprites.qc:248
-#: qcsrc/client/waypointsprites.qc:249
+#: qcsrc/client/waypointsprites.qc:264 qcsrc/client/waypointsprites.qc:266
+#: qcsrc/client/waypointsprites.qc:267 qcsrc/client/waypointsprites.qc:268
+#: qcsrc/client/waypointsprites.qc:269
msgid "Key carrier"
msgstr "Portatore chiave"
-#: qcsrc/client/waypointsprites.qc:245
+#: qcsrc/client/waypointsprites.qc:265
msgid "Run here"
msgstr "Corri qui"
-#: qcsrc/client/waypointsprites.qc:250
+#: qcsrc/client/waypointsprites.qc:270
msgid "Red base"
msgstr "Base Rossa"
-#: qcsrc/client/waypointsprites.qc:251
+#: qcsrc/client/waypointsprites.qc:271
msgid "Waypoint"
msgstr "Waypoint"
-#: qcsrc/client/waypointsprites.qc:252
-#: qcsrc/client/waypointsprites.qc:253
-#: qcsrc/client/waypointsprites.qc:254
+#: qcsrc/client/waypointsprites.qc:272 qcsrc/client/waypointsprites.qc:273
+#: qcsrc/client/waypointsprites.qc:274
msgid "Generator"
msgstr "Generatore"
-#: qcsrc/client/waypointsprites.qc:255
-#: qcsrc/client/waypointsprites.qc:256
-#: qcsrc/client/waypointsprites.qc:257
-#: qcsrc/client/waypointsprites.qc:258
-#: qcsrc/client/waypointsprites.qc:259
-#: qcsrc/client/waypointsprites.qc:260
-#: qcsrc/client/waypointsprites.qc:261
-#: qcsrc/client/waypointsprites.qc:262
-#: qcsrc/client/waypointsprites.qc:285
-#: qcsrc/client/waypointsprites.qc:286
-#: qcsrc/client/waypointsprites.qc:287
-#: qcsrc/client/waypointsprites.qc:288
-#: qcsrc/client/waypointsprites.qc:289
+#: qcsrc/client/waypointsprites.qc:275 qcsrc/client/waypointsprites.qc:276
+#: qcsrc/client/waypointsprites.qc:277 qcsrc/client/waypointsprites.qc:278
+#: qcsrc/client/waypointsprites.qc:279 qcsrc/client/waypointsprites.qc:280
+#: qcsrc/client/waypointsprites.qc:281 qcsrc/client/waypointsprites.qc:282
+#: qcsrc/client/waypointsprites.qc:306 qcsrc/client/waypointsprites.qc:307
+#: qcsrc/client/waypointsprites.qc:308 qcsrc/client/waypointsprites.qc:309
+#: qcsrc/client/waypointsprites.qc:310
msgid "Control point"
msgstr "Punto di controllo"
-#: qcsrc/client/waypointsprites.qc:263
+#: qcsrc/client/waypointsprites.qc:283
msgid "Checkpoint"
msgstr "Checkpoint"
-#: qcsrc/client/waypointsprites.qc:264
+#: qcsrc/client/waypointsprites.qc:284 qcsrc/client/waypointsprites.qc:286
msgid "Finish"
msgstr "Arrivo"
-#: qcsrc/client/waypointsprites.qc:265
+#: qcsrc/client/waypointsprites.qc:285 qcsrc/client/waypointsprites.qc:286
msgid "Start"
msgstr "Partenza"
-#: qcsrc/client/waypointsprites.qc:266
-#: qcsrc/client/waypointsprites.qc:267
+#: qcsrc/client/waypointsprites.qc:287 qcsrc/client/waypointsprites.qc:288
msgid "Ball"
msgstr "Palla"
-#: qcsrc/client/waypointsprites.qc:268
+#: qcsrc/client/waypointsprites.qc:289
msgid "Ball carrier"
msgstr "Portatore palla"
-#: qcsrc/client/waypointsprites.qc:269
-#: qcsrc/server/w_laser.qc:2
+#: qcsrc/client/waypointsprites.qc:290 qcsrc/server/w_laser.qc:2
msgid "Laser"
msgstr "Laser"
-#: qcsrc/client/waypointsprites.qc:270
-#: qcsrc/server/w_shotgun.qc:2
+#: qcsrc/client/waypointsprites.qc:291 qcsrc/server/w_shotgun.qc:2
msgid "Shotgun"
-msgstr ""
+msgstr "Shotgun"
-#: qcsrc/client/waypointsprites.qc:271
-#: qcsrc/server/w_uzi.qc:2
+#: qcsrc/client/waypointsprites.qc:292 qcsrc/server/w_uzi.qc:2
msgid "Machine Gun"
-msgstr ""
+msgstr "Machine Gun"
-#: qcsrc/client/waypointsprites.qc:272
-#: qcsrc/server/w_grenadelauncher.qc:2
+#: qcsrc/client/waypointsprites.qc:293 qcsrc/server/w_grenadelauncher.qc:2
msgid "Mortar"
-msgstr ""
+msgstr "Mortar"
-#: qcsrc/client/waypointsprites.qc:273
-#: qcsrc/server/w_electro.qc:2
+#: qcsrc/client/waypointsprites.qc:294 qcsrc/server/w_electro.qc:2
msgid "Electro"
-msgstr ""
+msgstr "Electro"
-#: qcsrc/client/waypointsprites.qc:274
-#: qcsrc/server/w_crylink.qc:2
+#: qcsrc/client/waypointsprites.qc:295 qcsrc/server/w_crylink.qc:2
msgid "Crylink"
msgstr "Crylink"
-#: qcsrc/client/waypointsprites.qc:275
-#: qcsrc/server/w_nex.qc:2
+#: qcsrc/client/waypointsprites.qc:296 qcsrc/server/w_nex.qc:2
msgid "Nex"
msgstr "Nex"
-#: qcsrc/client/waypointsprites.qc:276
-#: qcsrc/server/w_hagar.qc:2
+#: qcsrc/client/waypointsprites.qc:297 qcsrc/server/w_hagar.qc:2
msgid "Hagar"
-msgstr ""
+msgstr "Hagar"
-#: qcsrc/client/waypointsprites.qc:277
-#: qcsrc/server/w_rocketlauncher.qc:2
+#: qcsrc/client/waypointsprites.qc:298 qcsrc/server/w_rocketlauncher.qc:2
msgid "Rocket Launcher"
msgstr "Rocket Launcher"
-#: qcsrc/client/waypointsprites.qc:278
-#: qcsrc/server/w_porto.qc:2
+#: qcsrc/client/waypointsprites.qc:299 qcsrc/server/w_porto.qc:2
msgid "Port-O-Launch"
-msgstr ""
+msgstr "Port-O-Launch"
-#: qcsrc/client/waypointsprites.qc:279
+#: qcsrc/client/waypointsprites.qc:300
msgid "Minstanex"
-msgstr ""
+msgstr "Minstanex"
-#: qcsrc/client/waypointsprites.qc:280
+#: qcsrc/client/waypointsprites.qc:301
msgid "Hook"
-msgstr ""
+msgstr "Hook"
-#: qcsrc/client/waypointsprites.qc:281
-#: qcsrc/server/w_fireball.qc:2
+#: qcsrc/client/waypointsprites.qc:302 qcsrc/server/w_fireball.qc:2
msgid "Fireball"
-msgstr ""
+msgstr "Fireball"
-#: qcsrc/client/waypointsprites.qc:282
+#: qcsrc/client/waypointsprites.qc:303
msgid "HLAC"
-msgstr ""
+msgstr "HLAC"
-#: qcsrc/client/waypointsprites.qc:283
-#: qcsrc/server/w_rifle.qc:2
+#: qcsrc/client/waypointsprites.qc:304 qcsrc/server/w_rifle.qc:2
msgid "Rifle"
msgstr "Fucile"
-#: qcsrc/client/waypointsprites.qc:284
-#: qcsrc/server/w_minelayer.qc:2
+#: qcsrc/client/waypointsprites.qc:305 qcsrc/server/w_minelayer.qc:2
msgid "Mine Layer"
-msgstr ""
+msgstr "Mine Layer"
-#: qcsrc/client/waypointsprites.qc:290
+#: qcsrc/client/waypointsprites.qc:311
msgid "Invisibility"
msgstr "Invisibilità"
-#: qcsrc/client/waypointsprites.qc:291
+#: qcsrc/client/waypointsprites.qc:312
msgid "Extra life"
msgstr "Vita extra"
-#: qcsrc/client/waypointsprites.qc:292
+#: qcsrc/client/waypointsprites.qc:313
msgid "Speed"
msgstr "Velocità"
-#: qcsrc/client/waypointsprites.qc:293
+#: qcsrc/client/waypointsprites.qc:314
msgid "Strength"
msgstr "Forza"
-#: qcsrc/client/waypointsprites.qc:294
+#: qcsrc/client/waypointsprites.qc:315
msgid "Shield"
msgstr "Scudo"
-#: qcsrc/client/waypointsprites.qc:295
+#: qcsrc/client/waypointsprites.qc:316
msgid "Fuel regen"
msgstr "Rigeneratore di carburante"
-#: qcsrc/client/waypointsprites.qc:296
+#: qcsrc/client/waypointsprites.qc:317
msgid "Jet Pack"
msgstr "Jet Pack"
-#: qcsrc/client/waypointsprites.qc:297
+#: qcsrc/client/waypointsprites.qc:318
msgid "Frozen!"
msgstr "Congelato!"
-#: qcsrc/client/waypointsprites.qc:298
+#: qcsrc/client/waypointsprites.qc:319
msgid "Tagged"
msgstr "Contrassegnato"
-#: qcsrc/client/waypointsprites.qc:299
+#: qcsrc/client/waypointsprites.qc:320
msgid "Vehicle"
msgstr "Veicolo"
-#: qcsrc/client/waypointsprites.qc:560
+#: qcsrc/client/waypointsprites.qc:590
+msgid "Spam"
+msgstr "Spam"
+
+#: qcsrc/client/waypointsprites.qc:594
#, c-format
msgid "%s needing help!"
msgstr "%s sta chiedendo aiuto!"
-#: qcsrc/server/w_crylink.qc:664
+#: qcsrc/common/mapinfo.qc:1092
+#, c-format
+msgid "%s: %s"
+msgstr "%s: %s"
+
+#: qcsrc/server/w_crylink.qc:666
#, c-format
msgid "%s succeeded at self-destructing themself with the Crylink"
msgstr "%s è riuscito ad autodistruggersi col Crylink"
-#: qcsrc/server/w_crylink.qc:669
+#: qcsrc/server/w_crylink.qc:671
#, c-format
msgid "%s could not hide from %s's Crylink"
msgstr "%s non s'è potuto nascondere dal Crylink di %s"
-#: qcsrc/server/w_crylink.qc:671
+#: qcsrc/server/w_crylink.qc:673
#, c-format
msgid "%s was too close to %s's Crylink"
msgstr "%s era troppo vicino al Crylink di %s"
-#: qcsrc/server/w_crylink.qc:673
+#: qcsrc/server/w_crylink.qc:675
#, c-format
msgid "%s took a close look at %s's Crylink"
msgstr "%s ha visto da vicino il Crylink di %s"
#: qcsrc/server/w_electro.qc:574
#, c-format
msgid "%s could not remember where they put plasma"
-msgstr "%s non s'è ricordato dove loro avevano posto del plasma"
+msgstr "%s non s'è ricordato dove aveva messo il plasma"
#: qcsrc/server/w_electro.qc:576
#, c-format
#: qcsrc/server/w_electro.qc:583
#, c-format
msgid "%s just noticed %s's blue ball"
-msgstr "%s aveva appena notato la palla blu di %s"
+msgstr "%s ha appena notato la palla blu di %s"
#: qcsrc/server/w_electro.qc:585
#, c-format
msgid "%s forgot about some firemine"
msgstr "%s s'è dimenticato di alcune mine infuocate"
-#: qcsrc/server/w_fireball.qc:419
-#: qcsrc/server/w_hlac.qc:240
+#: qcsrc/server/w_fireball.qc:419 qcsrc/server/w_hlac.qc:240
#, c-format
msgid "%s should have used a smaller gun"
msgstr "%s avrebbe dovuto usare un'arma più piccola"
msgid "%s tasted %s's fireball"
msgstr "%s ha assaggiato la fireball di %s"
-#: qcsrc/server/w_grenadelauncher.qc:379
+#: qcsrc/server/w_grenadelauncher.qc:383
#, c-format
msgid "%s tried out his own grenade"
msgstr "%s ha provato da solo la propria granata"
-#: qcsrc/server/w_grenadelauncher.qc:381
+#: qcsrc/server/w_grenadelauncher.qc:385
#, c-format
msgid "%s detonated"
msgstr "%s è detonato"
-#: qcsrc/server/w_grenadelauncher.qc:387
+#: qcsrc/server/w_grenadelauncher.qc:391
#, c-format
msgid "%s didn't see %s's grenade"
msgstr "%s non ha visto la granata di %s"
-#: qcsrc/server/w_grenadelauncher.qc:389
+#: qcsrc/server/w_grenadelauncher.qc:393
#, c-format
msgid "%s almost dodged %s's grenade"
msgstr "%s ha quasi schivato la granata di %s"
-#: qcsrc/server/w_grenadelauncher.qc:391
+#: qcsrc/server/w_grenadelauncher.qc:395
#, c-format
msgid "%s ate %s's grenade"
msgstr "%s ha mangiato la granata di %s"
-#: qcsrc/server/w_hagar.qc:382
-#: qcsrc/server/w_seeker.qc:655
+#: qcsrc/server/w_hagar.qc:395 qcsrc/server/w_seeker.qc:655
#, c-format
msgid "%s played with tiny rockets"
msgstr "%s ha giocato con piccoli razzi"
-#: qcsrc/server/w_hagar.qc:386
+#: qcsrc/server/w_hagar.qc:399
#, c-format
msgid "%s hoped %s's missiles wouldn't bounce"
msgstr "%s ha sperato che il missile di %s non rimbalzasse"
-#: qcsrc/server/w_hagar.qc:388
-#: qcsrc/server/w_seeker.qc:661
+#: qcsrc/server/w_hagar.qc:401 qcsrc/server/w_seeker.qc:661
#, c-format
msgid "%s was pummeled by %s"
-msgstr "%s è stato riempito di sberle da %s"
+msgstr "%s è stato preso a pugni da %s"
#: qcsrc/server/w_hlac.qc:2
msgid "Heavy Laser Assault Cannon"
-msgstr ""
+msgstr "Heavy Laser Assault Cannon"
#: qcsrc/server/w_hlac.qc:242
#, c-format
#: qcsrc/server/w_hook.qc:2
msgid "Grappling Hook"
-msgstr ""
+msgstr "Grappling Hook"
-#: qcsrc/server/w_hook.qc:266
-#: qcsrc/server/w_porto.qc:296
+#: qcsrc/server/w_hook.qc:266 qcsrc/server/w_porto.qc:296
#, c-format
msgid "%s did the impossible"
msgstr "%s ha fatto l'impossibile"
msgid "%s was lasered to death by %s"
msgstr "%s è stato \"laserato\" alla morte da %s"
-#: qcsrc/server/w_minelayer.qc:523
-#: qcsrc/server/w_rocketlauncher.qc:501
+#: qcsrc/server/w_minelayer.qc:523 qcsrc/server/w_rocketlauncher.qc:501
#, c-format
msgid "%s exploded"
msgstr "%s è esploso"
#: qcsrc/server/w_minstanex.qc:2
msgid "MinstaNex"
-msgstr ""
+msgstr "MinstaNex"
-#: qcsrc/server/w_minstanex.qc:290
-#: qcsrc/server/w_nex.qc:253
-#: qcsrc/server/w_shotgun.qc:209
-#: qcsrc/server/w_uzi.qc:317
+#: qcsrc/server/w_minstanex.qc:293 qcsrc/server/w_nex.qc:253
+#: qcsrc/server/w_shotgun.qc:215 qcsrc/server/w_uzi.qc:317
#, c-format
msgid "%s is now thinking with portals"
msgstr "%s sta ora pensando con i portali"
-#: qcsrc/server/w_minstanex.qc:292
-#: qcsrc/server/w_nex.qc:255
+#: qcsrc/server/w_minstanex.qc:295 qcsrc/server/w_nex.qc:255
#, c-format
msgid "%s has been vaporized by %s"
msgstr "%s è stato vaporizzato da %s"
#: qcsrc/server/w_rifle.qc:233
#, c-format
msgid "%s shot themself automatically"
-msgstr "%s si è sparato automaticamente"
+msgstr "%s si è sparato da solo automaticamente"
#: qcsrc/server/w_rifle.qc:235
#, c-format
msgid "%s got hit in the head by %s"
msgstr "%s ha preso un colpo in testa da %s"
-#: qcsrc/server/w_rifle.qc:258
-#: qcsrc/server/w_uzi.qc:321
+#: qcsrc/server/w_rifle.qc:258 qcsrc/server/w_uzi.qc:321
#, c-format
msgid "%s was sniped by %s"
msgstr "%s è stato fucilato da %s"
#: qcsrc/server/w_seeker.qc:2
msgid "T.A.G. Seeker"
-msgstr ""
+msgstr "T.A.G. Seeker"
#: qcsrc/server/w_seeker.qc:659
#, c-format
msgid "%s was tagged by %s"
msgstr "%s è stato contrassegnato da %s"
-#: qcsrc/server/w_shotgun.qc:213
+#: qcsrc/server/w_shotgun.qc:219
#, c-format
msgid "%2$s ^7slapped %1$s ^7around a bit with a large ^2shotgun"
msgstr "%2$s ^7ha schiaffeggiato %1$s ^7un pò con un grosso ^2shotgun"
-#: qcsrc/server/w_shotgun.qc:215
+#: qcsrc/server/w_shotgun.qc:221
#, c-format
msgid "%s was gunned by %s"
msgstr "%s è stato sparato da %s"
msgid "@!#%'n Tuba"
msgstr "@!#%'n Tuba"
-#: qcsrc/server/w_tuba.qc:253
+#: qcsrc/server/w_tuba.qc:252
#, c-format
msgid "%s hurt his own ears with the @!#%%'n Tuba"
msgstr "%s s'è fatto male alle orecchie con la @!#%%'n Tuba"
-#: qcsrc/server/w_tuba.qc:257
+#: qcsrc/server/w_tuba.qc:256
#, c-format
msgid "%s died of %s's great playing on the @!#%%'n Tuba"
msgstr "%s è morto nella gran esibizione di %s con la @!#%%'n Tuba"
#, c-format
msgid "%s was riddled full of holes by %s"
msgstr "%s è stato riempito di buchi da %s"
-
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2011-06-27 18:26+0200\n"
+"POT-Creation-Date: 2011-09-12 12:24+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: 8bit\n"
-#: qcsrc/client/scoreboard.qc:19
-msgid "SCO^bckills"
+#: qcsrc/client/mapvoting.qc:28
+msgid " (1 vote)"
msgstr ""
-#: qcsrc/client/scoreboard.qc:20
-msgid "SCO^bctime"
+#: qcsrc/client/mapvoting.qc:30
+#, c-format
+msgid " (%d votes)"
msgstr ""
-#: qcsrc/client/scoreboard.qc:21
-msgid "SCO^caps"
+#: qcsrc/client/mapvoting.qc:113
+msgid "Don't care"
msgstr ""
-#: qcsrc/client/scoreboard.qc:22
-msgid "SCO^deaths"
+#: qcsrc/client/mapvoting.qc:194
+msgid "Vote for a map"
msgstr ""
-#: qcsrc/client/scoreboard.qc:23
-msgid "SCO^destroyed"
+#: qcsrc/client/mapvoting.qc:200
+#, c-format
+msgid "%d seconds left"
msgstr ""
-#: qcsrc/client/scoreboard.qc:24
-msgid "SCO^drops"
+#: qcsrc/client/mapvoting.qc:263
+msgid ""
+"mv_mapdownload: ^3You're not supposed to use this command on your own!\n"
msgstr ""
-#: qcsrc/client/scoreboard.qc:25
-msgid "SCO^faults"
+#: qcsrc/client/mapvoting.qc:273
+msgid "^1Error:^7 Couldn't find pak index.\n"
msgstr ""
-#: qcsrc/client/scoreboard.qc:26
-msgid "SCO^fckills"
+#: qcsrc/client/mapvoting.qc:282
+msgid "Requesting preview...\n"
msgstr ""
-#: qcsrc/client/scoreboard.qc:27
-msgid "SCO^goals"
+#: qcsrc/client/Main.qc:30
+msgid "ERROR - MENU IS VISIBLE BUT NO MENU WAS DEFINED!"
msgstr ""
-#: qcsrc/client/scoreboard.qc:28
-msgid "SCO^kckills"
+#: qcsrc/client/Main.qc:56
+msgid ""
+"^3Your engine build is outdated\n"
+"^3This Server uses a newer QC VM. Please update!\n"
msgstr ""
-#: qcsrc/client/scoreboard.qc:29
-msgid "SCO^kdratio"
+#: qcsrc/client/Main.qc:66
+#, c-format
+msgid "^4CSQC Build information: ^1%s\n"
msgstr ""
-#: qcsrc/client/scoreboard.qc:30
-msgid "SCO^k/d"
+#: qcsrc/client/Main.qc:237 qcsrc/client/Main.qc:253
+#, c-format
+msgid "trying to switch to unsupported team %d\n"
msgstr ""
-#: qcsrc/client/scoreboard.qc:31
-msgid "SCO^kd"
+#: qcsrc/client/Main.qc:369 qcsrc/client/scoreboard.qc:241
+msgid "Usage:\n"
msgstr ""
-#: qcsrc/client/scoreboard.qc:32
-msgid "SCO^kdr"
+#: qcsrc/client/Main.qc:370
+msgid "hud_save configname (saves to hud_skinname_configname.cfg)\n"
msgstr ""
-#: qcsrc/client/scoreboard.qc:33
-msgid "SCO^kills"
+#: qcsrc/client/Main.qc:494
+msgid "Usage: cl_cmd COMMAND..., where possible commands are:\n"
msgstr ""
-#: qcsrc/client/scoreboard.qc:34
-msgid "SCO^laps"
+#: qcsrc/client/Main.qc:495
+msgid " settemp cvar value\n"
msgstr ""
-#: qcsrc/client/scoreboard.qc:35
-msgid "SCO^lives"
+#: qcsrc/client/Main.qc:496
+msgid " scoreboard_columns_set ...\n"
msgstr ""
-#: qcsrc/client/scoreboard.qc:36
-msgid "SCO^losses"
+#: qcsrc/client/Main.qc:497
+msgid " scoreboard_columns_help\n"
msgstr ""
-#: qcsrc/client/scoreboard.qc:37
-msgid "SCO^name"
+#: qcsrc/client/Main.qc:726
+#, c-format
+msgid "A CSQC entity changed its owner! (edict: %d, classname: %s)\n"
msgstr ""
-#: qcsrc/client/scoreboard.qc:38
-msgid "SCO^nick"
+#: qcsrc/client/Main.qc:964
+#, c-format
+msgid "A CSQC entity changed its type! (edict: %d, classname: %s)\n"
msgstr ""
-#: qcsrc/client/scoreboard.qc:39
-msgid "SCO^objectives"
+#: qcsrc/client/Main.qc:1005
+#, c-format
+msgid ""
+"Unknown entity type in CSQC_Ent_Update (enttype: %d, edict: %d, classname: "
+"%s)\n"
msgstr ""
-#: qcsrc/client/scoreboard.qc:40
-msgid "SCO^pickups"
+#: qcsrc/client/Main.qc:1451
+#, c-format
+msgid "%s (not bound)"
msgstr ""
-#: qcsrc/client/scoreboard.qc:41
-msgid "SCO^ping"
+#: qcsrc/client/Main.qc:1456 qcsrc/client/hud.qc:230
+#, c-format
+msgid "%s (%s)"
msgstr ""
-#: qcsrc/client/scoreboard.qc:42
-msgid "SCO^pl"
+#: qcsrc/client/target_music.qc:93 qcsrc/client/target_music.qc:181
+#, c-format
+msgid "Cannot initialize sound %s\n"
msgstr ""
-#: qcsrc/client/scoreboard.qc:43
-msgid "SCO^pushes"
+#: qcsrc/client/hud.qc:160
+msgid "1st"
msgstr ""
-#: qcsrc/client/scoreboard.qc:44
-msgid "SCO^rank"
+#: qcsrc/client/hud.qc:162
+msgid "2nd"
msgstr ""
-#: qcsrc/client/scoreboard.qc:45
-msgid "SCO^returns"
+#: qcsrc/client/hud.qc:164
+msgid "3rd"
msgstr ""
-#: qcsrc/client/scoreboard.qc:46
-msgid "SCO^revivals"
+#: qcsrc/client/hud.qc:166
+#, c-format
+msgid "%dth"
msgstr ""
-#: qcsrc/client/scoreboard.qc:47
-msgid "SCO^score"
+#: qcsrc/client/hud.qc:198
+#, c-format
+msgid " (-%dL)"
msgstr ""
-#: qcsrc/client/scoreboard.qc:48
-msgid "SCO^suicides"
+#: qcsrc/client/hud.qc:203
+#, c-format
+msgid " (+%dL)"
msgstr ""
-#: qcsrc/client/scoreboard.qc:49
-msgid "SCO^takes"
+#: qcsrc/client/hud.qc:219
+msgid "Start line"
msgstr ""
-#: qcsrc/client/scoreboard.qc:50
-msgid "SCO^ticks"
+#: qcsrc/client/hud.qc:221 qcsrc/client/hud.qc:225
+msgid "Finish line"
msgstr ""
-#: qcsrc/client/scoreboard.qc:239
-msgid ""
-"You can modify the scoreboard using the ^2scoreboard_columns_set command.\n"
+#: qcsrc/client/hud.qc:223
+#, c-format
+msgid "Intermediate %d"
msgstr ""
-#: qcsrc/client/scoreboard.qc:240
-msgid "^3|---------------------------------------------------------------|\n"
+#: qcsrc/client/hud.qc:232
+#, c-format
+msgid "%s (%s %s)"
msgstr ""
-#: qcsrc/client/scoreboard.qc:241 qcsrc/client/Main.qc:369
-msgid "Usage:\n"
+#: qcsrc/client/hud.qc:772
+msgid "Out of ammo"
msgstr ""
-#: qcsrc/client/scoreboard.qc:242
-msgid "^2scoreboard_columns_set default\n"
+#: qcsrc/client/hud.qc:776
+msgid "Don't have"
msgstr ""
-#: qcsrc/client/scoreboard.qc:243
-msgid "^2scoreboard_columns_set ^7filed1 field2 ...\n"
+#: qcsrc/client/hud.qc:780
+msgid "Unavailable"
msgstr ""
-#: qcsrc/client/scoreboard.qc:244
-msgid "The following field names are recognized (case insensitive):\n"
+#: qcsrc/client/hud.qc:1520
+#, c-format
+msgid "^1%s^1 couldn't take it anymore\n"
msgstr ""
-#: qcsrc/client/scoreboard.qc:245
-msgid ""
-"You can use a ^3|^7 to start the right-aligned fields.\n"
-"\n"
+#: qcsrc/client/hud.qc:1524 qcsrc/client/hud.qc:1828
+#, c-format
+msgid "^1%s^1 died\n"
msgstr ""
-#: qcsrc/client/scoreboard.qc:247
-msgid "^3name^7 or ^3nick^7 Name of a player\n"
+#: qcsrc/client/hud.qc:1528
+#, c-format
+msgid "^7%s^7 committed suicide. What's the point of living without ammo?\n"
msgstr ""
-#: qcsrc/client/scoreboard.qc:248
-msgid "^3ping^7 Ping time\n"
+#: qcsrc/client/hud.qc:1532
+#, c-format
+msgid "^1%s^1 thought they found a nice camping ground\n"
msgstr ""
-#: qcsrc/client/scoreboard.qc:249
-msgid "^3pl^7 Packet loss\n"
+#: qcsrc/client/hud.qc:1536
+#, c-format
+msgid "^1%s^1 didn't become friends with the Lord of Teamplay\n"
msgstr ""
-#: qcsrc/client/scoreboard.qc:250
-msgid "^3kills^7 Number of kills\n"
+#: qcsrc/client/hud.qc:1540
+#, c-format
+msgid "^1%s^1 unfairly eliminated themself\n"
msgstr ""
-#: qcsrc/client/scoreboard.qc:251
-msgid "^3deaths^7 Number of deaths\n"
+#: qcsrc/client/hud.qc:1544
+#, c-format
+msgid "^1%s^1 burned to death\n"
msgstr ""
-#: qcsrc/client/scoreboard.qc:252
-msgid "^3suicides^7 Number of suicides\n"
+#: qcsrc/client/hud.qc:1548
+#, c-format
+msgid "^1%s^1 couldn't resist the urge to self-destruct\n"
msgstr ""
-#: qcsrc/client/scoreboard.qc:253
-msgid "^3frags^7 kills - suicides\n"
+#: qcsrc/client/hud.qc:1552
+#, c-format
+msgid "^1%s^1 ended it all after a %d kill spree\n"
msgstr ""
-#: qcsrc/client/scoreboard.qc:254
-msgid "^3kd^7 The kill-death ratio\n"
+#: qcsrc/client/hud.qc:1569
+#, c-format
+msgid "^1%s^1 took action against a team mate\n"
msgstr ""
-#: qcsrc/client/scoreboard.qc:255
-msgid ""
-"^3caps^7 How often a flag (CTF) or a key (KeyHunt) was "
-"captured\n"
+#: qcsrc/client/hud.qc:1571
+#, c-format
+msgid "^1%s^1 mows down a team mate\n"
msgstr ""
-#: qcsrc/client/scoreboard.qc:256
-msgid ""
-"^3pickups^7 How often a flag (CTF) or a key (KeyHunt) or a "
-"ball (Keepaway) was picked up\n"
+#: qcsrc/client/hud.qc:1576
+#, c-format
+msgid "^1%s^1 ended a %d scoring spree by going against a team mate\n"
msgstr ""
-#: qcsrc/client/scoreboard.qc:257
-msgid "^3fckills^7 Number of flag carrier kills\n"
+#: qcsrc/client/hud.qc:1578
+#, c-format
+msgid "^1%s^1 ended a %d kill spree by killing a team mate\n"
msgstr ""
-#: qcsrc/client/scoreboard.qc:258
-msgid "^3returns^7 Number of flag returns\n"
+#: qcsrc/client/hud.qc:1582
+#, c-format
+msgid "^1%s^1's %s scoring spree was ended by a team mate!\n"
msgstr ""
-#: qcsrc/client/scoreboard.qc:259
-msgid "^3drops^7 Number of flag drops\n"
+#: qcsrc/client/hud.qc:1584
+#, c-format
+msgid "^1%s^1's %s kill spree was ended by a team mate!\n"
msgstr ""
-#: qcsrc/client/scoreboard.qc:260
-msgid "^3lives^7 Number of lives (LMS)\n"
+#: qcsrc/client/hud.qc:1588
+#, c-format
+msgid "^1%s^1 drew first blood\n"
msgstr ""
-#: qcsrc/client/scoreboard.qc:261
-msgid "^3rank^7 Player rank\n"
+#: qcsrc/client/hud.qc:1592
+#, c-format
+msgid "^1%s^1 tried to occupy %s^1's teleport destination space\n"
msgstr ""
-#: qcsrc/client/scoreboard.qc:262
-msgid "^3pushes^7 Number of players pushed into void\n"
+#: qcsrc/client/hud.qc:1594
+#, c-format
+msgid "^1%s^1 was telefragged by %s\n"
msgstr ""
-#: qcsrc/client/scoreboard.qc:263
-msgid ""
-"^3destroyed^7 Number of keys destroyed by pushing them into "
-"void\n"
+#: qcsrc/client/hud.qc:1599
+#, c-format
+msgid "^1%s^1 was drowned by %s\n"
msgstr ""
-#: qcsrc/client/scoreboard.qc:264
-msgid "^3kckills^7 Number of keys carrier kills\n"
+#: qcsrc/client/hud.qc:1604
+#, c-format
+msgid "^1%s^1 was slimed by %s\n"
msgstr ""
-#: qcsrc/client/scoreboard.qc:265
-msgid "^3losses^7 Number of times a key was lost\n"
+#: qcsrc/client/hud.qc:1609
+#, c-format
+msgid "^1%s^1 was cooked by %s\n"
msgstr ""
-#: qcsrc/client/scoreboard.qc:266
-msgid "^3laps^7 Number of laps finished (race/cts)\n"
+#: qcsrc/client/hud.qc:1614
+#, c-format
+msgid "^1%s^1 was grounded by %s\n"
msgstr ""
-#: qcsrc/client/scoreboard.qc:267
-msgid "^3time^7 Total time raced (race/cts)\n"
+#: qcsrc/client/hud.qc:1619
+#, c-format
+msgid "^1%s^1 was shot into space by %s\n"
msgstr ""
-#: qcsrc/client/scoreboard.qc:268
-msgid "^3fastest^7 Time of fastest lap (race/cts)\n"
+#: qcsrc/client/hud.qc:1624
+#, c-format
+msgid "^1%s^1 was conserved by %s\n"
msgstr ""
-#: qcsrc/client/scoreboard.qc:269
-msgid "^3ticks^7 Number of ticks (DOM)\n"
+#: qcsrc/client/hud.qc:1630
+#, c-format
+msgid "^1%s^1 was thrown into a world of hurt by %s\n"
msgstr ""
-#: qcsrc/client/scoreboard.qc:270
-msgid "^3takes^7 Number of domination points taken (DOM)\n"
+#: qcsrc/client/hud.qc:1634
+#, c-format
+msgid "^1%s^1 was crushed by %s\n"
msgstr ""
-#: qcsrc/client/scoreboard.qc:271
-msgid "^3bckills^7 Number of ball carrier kills\n"
+#: qcsrc/client/hud.qc:1638
+#, c-format
+msgid "^1%s^1 got shredded by %s\n"
msgstr ""
-#: qcsrc/client/scoreboard.qc:272
-msgid ""
-"^3bctime^7 Total amount of time holding the ball in "
-"Keepaway\n"
+#: qcsrc/client/hud.qc:1642
+#, c-format
+msgid "^1%s^1 was blasted to bits by %s\n"
msgstr ""
-#: qcsrc/client/scoreboard.qc:273
-msgid ""
-"^3score^7 Total score\n"
-"\n"
+#: qcsrc/client/hud.qc:1646
+#, c-format
+msgid "^1%s^1 got caught in the destruction of %s^1's vehicle\n"
msgstr ""
-#: qcsrc/client/scoreboard.qc:275
-msgid ""
-"Before a field you can put a + or - sign, then a comma separated list\n"
-"of game types, then a slash, to make the field show up only in these\n"
-"or in all but these game types. You can also specify 'all' as a\n"
-"field to show all fields available for the current game mode.\n"
-"\n"
+#: qcsrc/client/hud.qc:1650
+#, c-format
+msgid "^1%s^1 was bolted down by %s\n"
msgstr ""
-#: qcsrc/client/scoreboard.qc:280
-msgid ""
-"The special game type names 'teams' and 'noteams' can be used to\n"
-"include/exclude ALL teams/noteams game modes.\n"
-"\n"
+#: qcsrc/client/hud.qc:1654
+#, c-format
+msgid "^1%s^1 could find no shelter from %s^1's rockets\n"
msgstr ""
-#: qcsrc/client/scoreboard.qc:283
-msgid "Example: scoreboard_columns_set name ping pl | +ctf/field3 -dm/field4\n"
+#: qcsrc/client/hud.qc:1658
+#, c-format
+msgid "^1%s^1 dies when %s^1's wakizashi dies.\n"
msgstr ""
-#: qcsrc/client/scoreboard.qc:284
-msgid ""
-"will display name, ping and pl aligned to the left, and the fields\n"
-"right of the vertical bar aligned to the right.\n"
+#: qcsrc/client/hud.qc:1662
+#, c-format
+msgid "^1%s^1 nailed to hell by %s\n"
msgstr ""
-#: qcsrc/client/scoreboard.qc:286
-msgid ""
-"'field3' will only be shown in CTF, and 'field4' will be shown in all\n"
-"other gamemodes except DM.\n"
+#: qcsrc/client/hud.qc:1666
+#, c-format
+msgid "^1%s^1 cluster crushed by %s\n"
msgstr ""
-#: qcsrc/client/scoreboard.qc:432 qcsrc/client/scoreboard.qc:447
-#: qcsrc/client/scoreboard.qc:457 qcsrc/client/scoreboard.qc:466
-#: qcsrc/client/scoreboard.qc:475
+#: qcsrc/client/hud.qc:1670
#, c-format
-msgid "fixed missing field '%s'\n"
+msgid "^1%s^1 dies when %s^1's raptor dies.\n"
msgstr ""
-#: qcsrc/client/scoreboard.qc:515 qcsrc/client/scoreboard.qc:522
-msgid "N/A"
+#: qcsrc/client/hud.qc:1674
+#, c-format
+msgid "^1%s^1 was pushed into the line of fire by %s\n"
msgstr ""
-#: qcsrc/client/scoreboard.qc:949
+#: qcsrc/client/hud.qc:1678
#, c-format
-msgid "Accuracy stats (average %d%%)"
+msgid "^1%s^1 was pushed into an accident by %s\n"
msgstr ""
-#: qcsrc/client/scoreboard.qc:1014
+#: qcsrc/client/hud.qc:1682
#, c-format
-msgid "%d%%"
+msgid "^1%s^1 was unfairly eliminated by %s\n"
msgstr ""
-#: qcsrc/client/scoreboard.qc:1074
-msgid "Rankings"
+#: qcsrc/client/hud.qc:1686
+#, c-format
+msgid "^1%s^1 was burnt to death by %s\n"
msgstr ""
-#: qcsrc/client/scoreboard.qc:1165 qcsrc/client/scoreboard.qc:1167
-msgid "Scoreboard"
+#: qcsrc/client/hud.qc:1698
+#, c-format
+msgid "^1%s^1 was fragged by %s\n"
msgstr ""
-#: qcsrc/client/scoreboard.qc:1208
+#: qcsrc/client/hud.qc:1703
#, c-format
-msgid "Speed award: %d ^7(%s^7)"
+msgid "^1%s^1's %s scoring spree was ended by %s\n"
msgstr ""
-#: qcsrc/client/scoreboard.qc:1212
+#: qcsrc/client/hud.qc:1705
#, c-format
-msgid "All-time fastest: %d ^7(%s^7)"
+msgid "^1%s^1's %s kill spree was ended by %s\n"
msgstr ""
-#: qcsrc/client/scoreboard.qc:1239 qcsrc/client/teamplay.qc:63
-msgid "Spectators"
+#: qcsrc/client/hud.qc:1708
+#, c-format
+msgid "^1%s^1 made %s scores in a row\n"
msgstr ""
-#: qcsrc/client/scoreboard.qc:1246
+#: qcsrc/client/hud.qc:1710
#, c-format
-msgid "playing on ^2%s^7"
+msgid "^1%s^1 has %s frags in a row\n"
msgstr ""
-#: qcsrc/client/scoreboard.qc:1253 qcsrc/client/scoreboard.qc:1258
+#: qcsrc/client/hud.qc:1713
#, c-format
-msgid " for up to ^1%1.0f minutes^7"
+msgid "%s^7 made a ^1TRIPLE SCORE\n"
msgstr ""
-#: qcsrc/client/scoreboard.qc:1262 qcsrc/client/scoreboard.qc:1281
-msgid " or"
+#: qcsrc/client/hud.qc:1715
+#, c-format
+msgid "%s^7 made a ^1TRIPLE FRAG\n"
msgstr ""
-#: qcsrc/client/scoreboard.qc:1265 qcsrc/client/scoreboard.qc:1272
+#: qcsrc/client/hud.qc:1718
#, c-format
-msgid " until ^3%s %s^7"
+msgid "%s^7 unleashes ^1SCORING RAGE\n"
msgstr ""
-#: qcsrc/client/scoreboard.qc:1266 qcsrc/client/scoreboard.qc:1273
-#: qcsrc/client/scoreboard.qc:1285 qcsrc/client/scoreboard.qc:1292
-msgid "SCO^points"
+#: qcsrc/client/hud.qc:1720
+#, c-format
+msgid "%s^7 unleashes ^1RAGE\n"
msgstr ""
-#: qcsrc/client/scoreboard.qc:1267 qcsrc/client/scoreboard.qc:1274
-#: qcsrc/client/scoreboard.qc:1286 qcsrc/client/scoreboard.qc:1293
-msgid "SCO^is beaten"
+#: qcsrc/client/hud.qc:1723
+#, c-format
+msgid "%s^7 made ^1TEN SCORES IN A ROW!\n"
msgstr ""
-#: qcsrc/client/scoreboard.qc:1284 qcsrc/client/scoreboard.qc:1291
+#: qcsrc/client/hud.qc:1725
#, c-format
-msgid " until a lead of ^3%s %s^7"
+msgid "%s^7 starts the ^1MASSACRE!\n"
msgstr ""
-#: qcsrc/client/waypointsprites.qc:234
-msgid "Push"
+#: qcsrc/client/hud.qc:1728
+#, c-format
+msgid "%s^7 made ^1FIFTEEN SCORES IN A ROW!\n"
msgstr ""
-#: qcsrc/client/waypointsprites.qc:235
-msgid "Destroy"
+#: qcsrc/client/hud.qc:1730
+#, c-format
+msgid "%s^7 executes ^1MAYHEM!\n"
msgstr ""
-#: qcsrc/client/waypointsprites.qc:236
-msgid "Defend"
+#: qcsrc/client/hud.qc:1733
+#, c-format
+msgid "%s^7 made ^1TWENTY SCORES IN A ROW!\n"
msgstr ""
-#: qcsrc/client/waypointsprites.qc:237
-msgid "Blue base"
+#: qcsrc/client/hud.qc:1735
+#, c-format
+msgid "%s^7 is a ^1BERSERKER!\n"
msgstr ""
-#: qcsrc/client/waypointsprites.qc:238
-msgid "DANGER"
+#: qcsrc/client/hud.qc:1738
+#, c-format
+msgid "%s^7 made ^1TWENTY FIVE SCORES IN A ROW!\n"
msgstr ""
-#: qcsrc/client/waypointsprites.qc:239
-msgid "Flag carrier"
+#: qcsrc/client/hud.qc:1740
+#, c-format
+msgid "%s^7 inflicts ^1CARNAGE!\n"
msgstr ""
-#: qcsrc/client/waypointsprites.qc:240
-msgid "Dropped flag"
+#: qcsrc/client/hud.qc:1743
+#, c-format
+msgid "%s^7 made ^1THIRTY SCORES IN A ROW!\n"
msgstr ""
-#: qcsrc/client/waypointsprites.qc:241
-msgid "Help me!"
+#: qcsrc/client/hud.qc:1745
+#, c-format
+msgid "%s^7 unleashes ^1ARMAGEDDON!\n"
msgstr ""
-#: qcsrc/client/waypointsprites.qc:242
-msgid "Here"
+#: qcsrc/client/hud.qc:1753
+#, c-format
+msgid "^1%s^1 was in the water for too long\n"
msgstr ""
-#: qcsrc/client/waypointsprites.qc:243
-msgid "Dropped key"
+#: qcsrc/client/hud.qc:1755
+#, c-format
+msgid "^1%s^1 drowned\n"
msgstr ""
-#: qcsrc/client/waypointsprites.qc:244 qcsrc/client/waypointsprites.qc:246
-#: qcsrc/client/waypointsprites.qc:247 qcsrc/client/waypointsprites.qc:248
-#: qcsrc/client/waypointsprites.qc:249
-msgid "Key carrier"
+#: qcsrc/client/hud.qc:1760
+#, c-format
+msgid "^1%s^1 was slimed\n"
msgstr ""
-#: qcsrc/client/waypointsprites.qc:245
-msgid "Run here"
+#: qcsrc/client/hud.qc:1766
+#, c-format
+msgid "^1%s^1 found a hot place\n"
msgstr ""
-#: qcsrc/client/waypointsprites.qc:250
-msgid "Red base"
+#: qcsrc/client/hud.qc:1768
+#, c-format
+msgid "^1%s^1 turned into hot slag\n"
msgstr ""
-#: qcsrc/client/waypointsprites.qc:251
-msgid "Waypoint"
+#: qcsrc/client/hud.qc:1775
+#, c-format
+msgid "^1%s^1 tested gravity (and it worked)\n"
msgstr ""
-#: qcsrc/client/waypointsprites.qc:252 qcsrc/client/waypointsprites.qc:253
-#: qcsrc/client/waypointsprites.qc:254
-msgid "Generator"
+#: qcsrc/client/hud.qc:1777
+#, c-format
+msgid "^1%s^1 hit the ground with a crunch\n"
msgstr ""
-#: qcsrc/client/waypointsprites.qc:255 qcsrc/client/waypointsprites.qc:256
-#: qcsrc/client/waypointsprites.qc:257 qcsrc/client/waypointsprites.qc:258
-#: qcsrc/client/waypointsprites.qc:259 qcsrc/client/waypointsprites.qc:260
-#: qcsrc/client/waypointsprites.qc:261 qcsrc/client/waypointsprites.qc:262
-#: qcsrc/client/waypointsprites.qc:285 qcsrc/client/waypointsprites.qc:286
-#: qcsrc/client/waypointsprites.qc:287 qcsrc/client/waypointsprites.qc:288
-#: qcsrc/client/waypointsprites.qc:289
-msgid "Control point"
+#: qcsrc/client/hud.qc:1782
+#, c-format
+msgid "^1%s^1 became a shooting star\n"
msgstr ""
-#: qcsrc/client/waypointsprites.qc:263
-msgid "Checkpoint"
+#: qcsrc/client/hud.qc:1788
+#, c-format
+msgid "^1%s^1 discovered a swamp\n"
msgstr ""
-#: qcsrc/client/waypointsprites.qc:264
-msgid "Finish"
+#: qcsrc/client/hud.qc:1790
+#, c-format
+msgid "^1%s^1 is now conserved for centuries to come\n"
msgstr ""
-#: qcsrc/client/waypointsprites.qc:265
-msgid "Start"
+#: qcsrc/client/hud.qc:1795
+#, c-format
+msgid "^1%s^1 was mowed down by a turret \n"
msgstr ""
-#: qcsrc/client/waypointsprites.qc:266 qcsrc/client/waypointsprites.qc:267
-msgid "Ball"
+#: qcsrc/client/hud.qc:1807
+#, c-format
+msgid "^1%s^1 died in an accident\n"
msgstr ""
-#: qcsrc/client/waypointsprites.qc:268
-msgid "Ball carrier"
+#: qcsrc/client/hud.qc:1811
+#, c-format
+msgid "^1%s^1 was unfairly eliminated\n"
msgstr ""
-#: qcsrc/client/waypointsprites.qc:269 qcsrc/server/w_laser.qc:2
-msgid "Laser"
+#: qcsrc/client/hud.qc:1817
+#, c-format
+msgid "^1%s^1 felt a little hot\n"
+msgstr ""
+
+#: qcsrc/client/hud.qc:1819
+#, c-format
+msgid "^1%s^1 burnt to death\n"
+msgstr ""
+
+#: qcsrc/client/hud.qc:1826
+#, c-format
+msgid "^1%s^1 needs a restart\n"
+msgstr ""
+
+#: qcsrc/client/hud.qc:1833
+#, c-format
+msgid "^1%s^1 needs a restart after a %d scoring spree\n"
+msgstr ""
+
+#: qcsrc/client/hud.qc:1835
+#, c-format
+msgid "^1%s^1 died with a %d kill spree\n"
+msgstr ""
+
+#: qcsrc/client/hud.qc:1839
+#, c-format
+msgid "%s^7 got the %s\n"
msgstr ""
-#: qcsrc/client/waypointsprites.qc:270 qcsrc/server/w_shotgun.qc:2
-msgid "Shotgun"
+#: qcsrc/client/hud.qc:1842
+#, c-format
+msgid "%s^7 lost the %s\n"
msgstr ""
-#: qcsrc/client/waypointsprites.qc:271 qcsrc/server/w_uzi.qc:2
-msgid "Machine Gun"
+#: qcsrc/client/hud.qc:1845
+#, c-format
+msgid "%s^7 picked up the %s\n"
msgstr ""
-#: qcsrc/client/waypointsprites.qc:272 qcsrc/server/w_grenadelauncher.qc:2
-msgid "Mortar"
+#: qcsrc/client/hud.qc:1848
+#, c-format
+msgid "%s^7 returned the %s\n"
msgstr ""
-#: qcsrc/client/waypointsprites.qc:273 qcsrc/server/w_electro.qc:2
-msgid "Electro"
+#: qcsrc/client/hud.qc:1851
+#, c-format
+msgid "%s^7 captured the %s%s\n"
msgstr ""
-#: qcsrc/client/waypointsprites.qc:274 qcsrc/server/w_crylink.qc:2
-msgid "Crylink"
+#: qcsrc/client/hud.qc:1870
+#, c-format
+msgid "%s^7 has picked up the ball!\n"
msgstr ""
-#: qcsrc/client/waypointsprites.qc:275 qcsrc/server/w_nex.qc:2
-msgid "Nex"
+#: qcsrc/client/hud.qc:1875
+#, c-format
+msgid "%s^7 has dropped the ball!\n"
msgstr ""
-#: qcsrc/client/waypointsprites.qc:276 qcsrc/server/w_hagar.qc:2
-msgid "Hagar"
+#: qcsrc/client/hud.qc:1886
+#, c-format
+msgid "You are now on: %s"
msgstr ""
-#: qcsrc/client/waypointsprites.qc:277 qcsrc/server/w_rocketlauncher.qc:2
-msgid "Rocket Launcher"
+#: qcsrc/client/hud.qc:1888
+#, c-format
+msgid ""
+"You have been moved into a different team to improve team balance\n"
+"You are now on: %s"
msgstr ""
-#: qcsrc/client/waypointsprites.qc:278 qcsrc/server/w_porto.qc:2
-msgid "Port-O-Launch"
+#: qcsrc/client/hud.qc:1891
+msgid "^1Reconsider your tactics, camper!"
msgstr ""
-#: qcsrc/client/waypointsprites.qc:279
-msgid "Minstanex"
+#: qcsrc/client/hud.qc:1893
+msgid "^1Die camper!"
msgstr ""
-#: qcsrc/client/waypointsprites.qc:280
-msgid "Hook"
+#: qcsrc/client/hud.qc:1896
+msgid "^1You are reinserted into the game for running out of ammo..."
msgstr ""
-#: qcsrc/client/waypointsprites.qc:281 qcsrc/server/w_fireball.qc:2
-msgid "Fireball"
+#: qcsrc/client/hud.qc:1898
+msgid "^1You were killed for running out of ammo..."
msgstr ""
-#: qcsrc/client/waypointsprites.qc:282
-msgid "HLAC"
+#: qcsrc/client/hud.qc:1901
+msgid "^1You need to preserve your health"
msgstr ""
-#: qcsrc/client/waypointsprites.qc:283 qcsrc/server/w_rifle.qc:2
-msgid "Rifle"
+#: qcsrc/client/hud.qc:1903
+msgid "^1You grew too old without taking your medicine"
msgstr ""
-#: qcsrc/client/waypointsprites.qc:284 qcsrc/server/w_minelayer.qc:2
-msgid "Mine Layer"
+#: qcsrc/client/hud.qc:1906
+msgid "^1Don't go against team mates!"
msgstr ""
-#: qcsrc/client/waypointsprites.qc:290
-msgid "Invisibility"
+#: qcsrc/client/hud.qc:1908
+msgid "^1Don't shoot your team mates!"
msgstr ""
-#: qcsrc/client/waypointsprites.qc:291
-msgid "Extra life"
+#: qcsrc/client/hud.qc:1913
+msgid "^1You need to be more careful!"
msgstr ""
-#: qcsrc/client/waypointsprites.qc:292
-msgid "Speed"
+#: qcsrc/client/hud.qc:1915
+msgid "^1You killed your own dumb self!"
msgstr ""
-#: qcsrc/client/waypointsprites.qc:293
-msgid "Strength"
+#: qcsrc/client/hud.qc:1920
+#, c-format
+msgid "^1Moron! You went against ^7%s^1, a team mate!"
msgstr ""
-#: qcsrc/client/waypointsprites.qc:294
-msgid "Shield"
+#: qcsrc/client/hud.qc:1922
+#, c-format
+msgid "^1Moron! You fragged ^7%s^1, a team mate!"
msgstr ""
-#: qcsrc/client/waypointsprites.qc:295
-msgid "Fuel regen"
+#: qcsrc/client/hud.qc:1926
+msgid "^1First score"
msgstr ""
-#: qcsrc/client/waypointsprites.qc:296
-msgid "Jet Pack"
+#: qcsrc/client/hud.qc:1928
+msgid "^1First blood"
msgstr ""
-#: qcsrc/client/waypointsprites.qc:297
-msgid "Frozen!"
+#: qcsrc/client/hud.qc:1932
+msgid "^1First casualty"
msgstr ""
-#: qcsrc/client/waypointsprites.qc:298
-msgid "Tagged"
+#: qcsrc/client/hud.qc:1934
+msgid "^1First victim"
msgstr ""
-#: qcsrc/client/waypointsprites.qc:299
-msgid "Vehicle"
+#: qcsrc/client/hud.qc:1938
+#, c-format
+msgid "^1You scored against ^7%s^1 who was typing!"
msgstr ""
-#: qcsrc/client/waypointsprites.qc:560
+#: qcsrc/client/hud.qc:1940
#, c-format
-msgid "%s needing help!"
+msgid "^1You typefragged ^7%s"
msgstr ""
-#: qcsrc/client/hud_config.qc:132
+#: qcsrc/client/hud.qc:1944
#, c-format
-msgid "^2Successfully exported to %s! (Note: It's saved in data/data/)\n"
+msgid "^1You were scored against by ^7%s^1 while you were typing!"
msgstr ""
-#: qcsrc/client/hud_config.qc:136
+#: qcsrc/client/hud.qc:1946
#, c-format
-msgid "^1Couldn't write to %s\n"
+msgid "^1You were typefragged by ^7%s"
msgstr ""
-#: qcsrc/client/ctf.qc:35
-msgid "----- Order Menu -----"
+#: qcsrc/client/hud.qc:1950
+#, c-format
+msgid "^4You scored against ^7%s"
msgstr ""
-#: qcsrc/client/ctf.qc:36
+#: qcsrc/client/hud.qc:1952
#, c-format
-msgid "Order: %s"
+msgid "^4You fragged ^7%s"
msgstr ""
-#: qcsrc/client/ctf.qc:37
-msgid "1) ^3previous page"
+#: qcsrc/client/hud.qc:1956
+#, c-format
+msgid "^1You were scored against by ^7%s"
msgstr ""
-#: qcsrc/client/ctf.qc:38
-msgid "2) ^3next page"
+#: qcsrc/client/hud.qc:1958
+#, c-format
+msgid "^1You were fragged by ^7%s"
msgstr ""
-#: qcsrc/client/ctf.qc:55 qcsrc/client/ctf.qc:161
-msgid "ESC) Exit Menu"
+#: qcsrc/client/hud.qc:1963
+msgid "^1Watch your step!"
msgstr ""
-#: qcsrc/client/ctf.qc:126
+#: qcsrc/client/hud.qc:2032 qcsrc/client/hud.qc:2033 qcsrc/client/hud.qc:2518
#, c-format
-msgid "Couldn't find player %d\n"
-msgstr ""
-
-#: qcsrc/client/ctf.qc:154
-msgid "----- Command Menu -----"
+msgid "Player %d"
msgstr ""
-#: qcsrc/client/ctf.qc:155
-msgid "Issue orders:"
+#: qcsrc/client/hud.qc:2823
+msgid "^1Intermediate 1 (+15.42)"
msgstr ""
-#: qcsrc/client/ctf.qc:156
-msgid " 1) Attack"
+#: qcsrc/client/hud.qc:2825 qcsrc/client/hud.qc:2867 qcsrc/client/hud.qc:2908
+#, c-format
+msgid "^1PENALTY: %.1f (%s)"
msgstr ""
-#: qcsrc/client/ctf.qc:158
-msgid " 2) Defend"
+#: qcsrc/client/hud.qc:2910
+#, c-format
+msgid "^2PENALTY: %.1f (%s)"
msgstr ""
-#: qcsrc/client/ctf.qc:160
-msgid "3) Resign from command."
+#: qcsrc/client/hud.qc:2938
+msgid "^1You must answer before entering hud configure mode\n"
msgstr ""
-#: qcsrc/client/ctf.qc:212
-msgid "You're commander!"
+#: qcsrc/client/hud.qc:2941
+msgid "^2Name ^7instead of \"^1Unregistered player^7\" in stats"
msgstr ""
-#: qcsrc/client/ctf.qc:215
-msgid "Awaiting orders..."
+#: qcsrc/client/hud.qc:3023
+msgid "A vote has been called for:"
msgstr ""
-#: qcsrc/client/Main.qc:30
-msgid "ERROR - MENU IS VISIBLE BUT NO MENU WAS DEFINED!"
+#: qcsrc/client/hud.qc:3025
+msgid "Allow servers to store and display your name?"
msgstr ""
-#: qcsrc/client/Main.qc:56
-msgid ""
-"^3Your engine build is outdated\n"
-"^3This Server uses a newer QC VM. Please update!\n"
+#: qcsrc/client/hud.qc:3029
+msgid "^1Configure the HUD"
msgstr ""
-#: qcsrc/client/Main.qc:66
+#: qcsrc/client/hud.qc:3033
#, c-format
-msgid "^4CSQC Build information: ^1%s\n"
+msgid "Yes (%s): %d"
msgstr ""
-#: qcsrc/client/Main.qc:237 qcsrc/client/Main.qc:253
+#: qcsrc/client/hud.qc:3035
#, c-format
-msgid "trying to switch to unsupported team %d\n"
+msgid "No (%s): %d"
msgstr ""
-#: qcsrc/client/Main.qc:370
-msgid "hud_save configname (saves to hud_skinname_configname.cfg)\n"
+#: qcsrc/client/hud.qc:3538 qcsrc/client/hud.qc:3541 qcsrc/client/hud.qc:3543
+msgid "Personal best"
msgstr ""
-#: qcsrc/client/Main.qc:494
-msgid "Usage: cl_cmd COMMAND..., where possible commands are:\n"
+#: qcsrc/client/hud.qc:3556 qcsrc/client/hud.qc:3559 qcsrc/client/hud.qc:3561
+msgid "Server best"
msgstr ""
-#: qcsrc/client/Main.qc:495
-msgid " settemp cvar value\n"
+#: qcsrc/client/hud.qc:3905
+msgid "^3Player^7: This is the chat area."
msgstr ""
-#: qcsrc/client/Main.qc:496
-msgid " scoreboard_columns_set ...\n"
+#: qcsrc/client/hud.qc:3973
+#, c-format
+msgid "FPS: %.*f"
msgstr ""
-#: qcsrc/client/Main.qc:497
-msgid " scoreboard_columns_help\n"
+#: qcsrc/client/hud.qc:4040
+msgid "^1Observing"
msgstr ""
-#: qcsrc/client/Main.qc:726
+#: qcsrc/client/hud.qc:4042
#, c-format
-msgid "A CSQC entity changed its owner! (edict: %d, classname: %s)\n"
+msgid "^1Spectating: ^7%s"
msgstr ""
-#: qcsrc/client/Main.qc:953
+#: qcsrc/client/hud.qc:4046
#, c-format
-msgid "A CSQC entity changed its type! (edict: %d, classname: %s)\n"
+msgid "^1Press ^3%s^1 to spectate"
msgstr ""
-#: qcsrc/client/Main.qc:994
+#: qcsrc/client/hud.qc:4048
#, c-format
-msgid ""
-"Unknown entity type in CSQC_Ent_Update (enttype: %d, edict: %d, classname: "
-"%s)\n"
+msgid "^1Press ^3%s^1 for another player"
msgstr ""
-#: qcsrc/client/Main.qc:1463
+#: qcsrc/client/hud.qc:4052
#, c-format
-msgid "%s (not bound)"
+msgid "^1Use ^3%s^1 or ^3%s^1 to change the speed"
msgstr ""
-#: qcsrc/client/Main.qc:1468 qcsrc/client/hud.qc:407
+#: qcsrc/client/hud.qc:4054
#, c-format
-msgid "%s (%s)"
+msgid "^1Press ^3%s^1 to observe"
msgstr ""
-#: qcsrc/client/mapvoting.qc:28
-msgid " (1 vote)"
+#: qcsrc/client/hud.qc:4057
+#, c-format
+msgid "^1Press ^3%s^1 for gamemode info"
msgstr ""
-#: qcsrc/client/mapvoting.qc:30
-#, c-format
-msgid " (%d votes)"
+#: qcsrc/client/hud.qc:4061
+msgid "^1Wait for your turn to join"
msgstr ""
-#: qcsrc/client/mapvoting.qc:113
-msgid "Don't care"
+#: qcsrc/client/hud.qc:4067
+msgid "^1Match has already begun"
msgstr ""
-#: qcsrc/client/mapvoting.qc:194
-msgid "Vote for a map"
+#: qcsrc/client/hud.qc:4069
+msgid "^1You have no more lives left"
msgstr ""
-#: qcsrc/client/mapvoting.qc:199
+#: qcsrc/client/hud.qc:4071 qcsrc/client/hud.qc:4074
#, c-format
-msgid "%d seconds left"
+msgid "^1Press ^3%s^1 to join"
msgstr ""
-#: qcsrc/client/mapvoting.qc:263
-msgid ""
-"mv_mapdownload: ^3You're not supposed to use this command on your own!\n"
+#: qcsrc/client/hud.qc:4082
+#, c-format
+msgid "^1Game starts in ^3%d^1 seconds"
msgstr ""
-#: qcsrc/client/mapvoting.qc:273
-msgid "^1Error:^7 Couldn't find pak index.\n"
+#: qcsrc/client/hud.qc:4089
+msgid "^2Currently in ^1warmup^2 stage!"
msgstr ""
-#: qcsrc/client/mapvoting.qc:282
-msgid "Requesting preview...\n"
+#: qcsrc/client/hud.qc:4104
+#, c-format
+msgid "%sPress ^3%s%s to end warmup"
msgstr ""
-#: qcsrc/client/movetypes.qc:159
+#: qcsrc/client/hud.qc:4106
#, c-format
-msgid "Can't unstick an entity (edict: %d, classname: %s, origin: %s)\n"
+msgid "%sPress ^3%s%s once you are ready"
msgstr ""
-#: qcsrc/client/movetypes.qc:162
-#, c-format
-msgid "Sucessfully unstuck an entity (edict: %d, classname: %s, origin: %s)\n"
+#: qcsrc/client/hud.qc:4111
+msgid "^2Waiting for others to ready up to end warmup..."
msgstr ""
-#: qcsrc/client/miscfunctions.qc:23
-msgid "^1Begin!"
+#: qcsrc/client/hud.qc:4113
+msgid "^2Waiting for others to ready up..."
msgstr ""
-#: qcsrc/client/miscfunctions.qc:34
+#: qcsrc/client/hud.qc:4119
#, c-format
-msgid "^1Game starts in %d seconds"
+msgid "^2Press ^3%s^2 to end warmup"
msgstr ""
-#: qcsrc/client/miscfunctions.qc:113
-msgid "^1RED^7 flag"
+#: qcsrc/client/hud.qc:4140
+msgid "Teamnumbers are unbalanced!"
msgstr ""
-#: qcsrc/client/miscfunctions.qc:118
-msgid "^4BLUE^7 flag"
+#: qcsrc/client/hud.qc:4145
+#, c-format
+msgid " Press ^3%s%s to adjust"
msgstr ""
-#: qcsrc/client/miscfunctions.qc:126
-#, c-format
-msgid "You picked up the %s!"
+#: qcsrc/client/hud.qc:4153
+msgid "^7Press ^3ESC ^7to show HUD options."
msgstr ""
-#: qcsrc/client/miscfunctions.qc:130
-#, c-format
-msgid "You got the %s!"
+#: qcsrc/client/hud.qc:4155
+msgid "^3Doubleclick ^7a panel for panel-specific options."
msgstr ""
-#: qcsrc/client/miscfunctions.qc:283
-msgid "Trying to remove a team which is not in the teamlist!"
+#: qcsrc/client/hud.qc:4157
+msgid "^3CTRL ^7to disable collision testing, ^3SHIFT ^7and"
msgstr ""
-#: qcsrc/client/teamplay.qc:64
-msgid "Red Team"
+#: qcsrc/client/hud.qc:4159
+msgid "^3ALT ^7+ ^3ARROW KEYS ^7for fine adjustments."
msgstr ""
-#: qcsrc/client/teamplay.qc:65
-msgid "Blue Team"
+#: qcsrc/client/hud.qc:4197
+msgid " qu/s"
msgstr ""
-#: qcsrc/client/teamplay.qc:66
-msgid "Yellow Team"
+#: qcsrc/client/hud.qc:4201
+msgid " m/s"
msgstr ""
-#: qcsrc/client/teamplay.qc:67
-msgid "Pink Team"
+#: qcsrc/client/hud.qc:4205
+msgid " km/h"
msgstr ""
-#: qcsrc/client/hud.qc:337
-msgid "1st"
+#: qcsrc/client/hud.qc:4209
+msgid " mph"
msgstr ""
-#: qcsrc/client/hud.qc:339
-msgid "2nd"
+#: qcsrc/client/hud.qc:4213
+msgid " knots"
msgstr ""
-#: qcsrc/client/hud.qc:341
-msgid "3rd"
+#: qcsrc/client/hud.qc:4860
+msgid "Automatically fixed wrong/missing panel numbers in _hud_panelorder\n"
msgstr ""
-#: qcsrc/client/hud.qc:343
-#, c-format
-msgid "%dth"
+#: qcsrc/client/waypointsprites.qc:254
+msgid "Push"
msgstr ""
-#: qcsrc/client/hud.qc:375
-#, c-format
-msgid " (-%dL)"
+#: qcsrc/client/waypointsprites.qc:255
+msgid "Destroy"
msgstr ""
-#: qcsrc/client/hud.qc:380
-#, c-format
-msgid " (+%dL)"
+#: qcsrc/client/waypointsprites.qc:256
+msgid "Defend"
msgstr ""
-#: qcsrc/client/hud.qc:396
-msgid "Start line"
+#: qcsrc/client/waypointsprites.qc:257
+msgid "Blue base"
msgstr ""
-#: qcsrc/client/hud.qc:398 qcsrc/client/hud.qc:402
-msgid "Finish line"
+#: qcsrc/client/waypointsprites.qc:258
+msgid "DANGER"
msgstr ""
-#: qcsrc/client/hud.qc:400
-#, c-format
-msgid "Intermediate %d"
+#: qcsrc/client/waypointsprites.qc:259
+msgid "Flag carrier"
msgstr ""
-#: qcsrc/client/hud.qc:409
-#, c-format
-msgid "%s (%s %s)"
+#: qcsrc/client/waypointsprites.qc:260
+msgid "Dropped flag"
msgstr ""
-#: qcsrc/client/hud.qc:911
-msgid "Out of ammo"
+#: qcsrc/client/waypointsprites.qc:261
+msgid "Help me!"
msgstr ""
-#: qcsrc/client/hud.qc:915
-msgid "Don't have"
+#: qcsrc/client/waypointsprites.qc:262
+msgid "Here"
msgstr ""
-#: qcsrc/client/hud.qc:919
-msgid "Unavailable"
+#: qcsrc/client/waypointsprites.qc:263
+msgid "Dropped key"
msgstr ""
-#: qcsrc/client/hud.qc:1649
-#, c-format
-msgid "^1%s^1 couldn't take it anymore\n"
+#: qcsrc/client/waypointsprites.qc:264 qcsrc/client/waypointsprites.qc:266
+#: qcsrc/client/waypointsprites.qc:267 qcsrc/client/waypointsprites.qc:268
+#: qcsrc/client/waypointsprites.qc:269
+msgid "Key carrier"
msgstr ""
-#: qcsrc/client/hud.qc:1653 qcsrc/client/hud.qc:1957
-#, c-format
-msgid "^1%s^1 died\n"
+#: qcsrc/client/waypointsprites.qc:265
+msgid "Run here"
msgstr ""
-#: qcsrc/client/hud.qc:1657
-#, c-format
-msgid "^7%s^7 committed suicide. What's the point of living without ammo?\n"
+#: qcsrc/client/waypointsprites.qc:270
+msgid "Red base"
msgstr ""
-#: qcsrc/client/hud.qc:1661
-#, c-format
-msgid "^1%s^1 thought they found a nice camping ground\n"
+#: qcsrc/client/waypointsprites.qc:271
+msgid "Waypoint"
msgstr ""
-#: qcsrc/client/hud.qc:1665
-#, c-format
-msgid "^1%s^1 didn't become friends with the Lord of Teamplay\n"
+#: qcsrc/client/waypointsprites.qc:272 qcsrc/client/waypointsprites.qc:273
+#: qcsrc/client/waypointsprites.qc:274
+msgid "Generator"
msgstr ""
-#: qcsrc/client/hud.qc:1669
-#, c-format
-msgid "^1%s^1 unfairly eliminated themself\n"
+#: qcsrc/client/waypointsprites.qc:275 qcsrc/client/waypointsprites.qc:276
+#: qcsrc/client/waypointsprites.qc:277 qcsrc/client/waypointsprites.qc:278
+#: qcsrc/client/waypointsprites.qc:279 qcsrc/client/waypointsprites.qc:280
+#: qcsrc/client/waypointsprites.qc:281 qcsrc/client/waypointsprites.qc:282
+#: qcsrc/client/waypointsprites.qc:306 qcsrc/client/waypointsprites.qc:307
+#: qcsrc/client/waypointsprites.qc:308 qcsrc/client/waypointsprites.qc:309
+#: qcsrc/client/waypointsprites.qc:310
+msgid "Control point"
msgstr ""
-#: qcsrc/client/hud.qc:1673
-#, c-format
-msgid "^1%s^1 burned to death\n"
+#: qcsrc/client/waypointsprites.qc:283
+msgid "Checkpoint"
msgstr ""
-#: qcsrc/client/hud.qc:1677
-#, c-format
-msgid "^1%s^1 couldn't resist the urge to self-destruct\n"
+#: qcsrc/client/waypointsprites.qc:284 qcsrc/client/waypointsprites.qc:286
+msgid "Finish"
msgstr ""
-#: qcsrc/client/hud.qc:1681
-#, c-format
-msgid "^1%s^1 ended it all after a %d kill spree\n"
+#: qcsrc/client/waypointsprites.qc:285 qcsrc/client/waypointsprites.qc:286
+msgid "Start"
msgstr ""
-#: qcsrc/client/hud.qc:1698
-#, c-format
-msgid "^1%s^1 took action against a team mate\n"
+#: qcsrc/client/waypointsprites.qc:287 qcsrc/client/waypointsprites.qc:288
+msgid "Ball"
msgstr ""
-#: qcsrc/client/hud.qc:1700
-#, c-format
-msgid "^1%s^1 mows down a team mate\n"
+#: qcsrc/client/waypointsprites.qc:289
+msgid "Ball carrier"
msgstr ""
-#: qcsrc/client/hud.qc:1705
-#, c-format
-msgid "^1%s^1 ended a %d scoring spree by going against a team mate\n"
+#: qcsrc/client/waypointsprites.qc:290 qcsrc/server/w_laser.qc:2
+msgid "Laser"
msgstr ""
-#: qcsrc/client/hud.qc:1707
-#, c-format
-msgid "^1%s^1 ended a %d kill spree by killing a team mate\n"
+#: qcsrc/client/waypointsprites.qc:291 qcsrc/server/w_shotgun.qc:2
+msgid "Shotgun"
msgstr ""
-#: qcsrc/client/hud.qc:1711
-#, c-format
-msgid "^1%s^1's %s scoring spree was ended by a team mate!\n"
+#: qcsrc/client/waypointsprites.qc:292 qcsrc/server/w_uzi.qc:2
+msgid "Machine Gun"
msgstr ""
-#: qcsrc/client/hud.qc:1713
-#, c-format
-msgid "^1%s^1's %s kill spree was ended by a team mate!\n"
+#: qcsrc/client/waypointsprites.qc:293 qcsrc/server/w_grenadelauncher.qc:2
+msgid "Mortar"
msgstr ""
-#: qcsrc/client/hud.qc:1717
-#, c-format
-msgid "^1%s^1 drew first blood\n"
+#: qcsrc/client/waypointsprites.qc:294 qcsrc/server/w_electro.qc:2
+msgid "Electro"
msgstr ""
-#: qcsrc/client/hud.qc:1721
-#, c-format
-msgid "^1%s^1 tried to occupy %s^1's teleport destination space\n"
+#: qcsrc/client/waypointsprites.qc:295 qcsrc/server/w_crylink.qc:2
+msgid "Crylink"
msgstr ""
-#: qcsrc/client/hud.qc:1723
-#, c-format
-msgid "^1%s^1 was telefragged by %s\n"
+#: qcsrc/client/waypointsprites.qc:296 qcsrc/server/w_nex.qc:2
+msgid "Nex"
msgstr ""
-#: qcsrc/client/hud.qc:1728
-#, c-format
-msgid "^1%s^1 was drowned by %s\n"
+#: qcsrc/client/waypointsprites.qc:297 qcsrc/server/w_hagar.qc:2
+msgid "Hagar"
msgstr ""
-#: qcsrc/client/hud.qc:1733
-#, c-format
-msgid "^1%s^1 was slimed by %s\n"
+#: qcsrc/client/waypointsprites.qc:298 qcsrc/server/w_rocketlauncher.qc:2
+msgid "Rocket Launcher"
msgstr ""
-#: qcsrc/client/hud.qc:1738
-#, c-format
-msgid "^1%s^1 was cooked by %s\n"
+#: qcsrc/client/waypointsprites.qc:299 qcsrc/server/w_porto.qc:2
+msgid "Port-O-Launch"
msgstr ""
-#: qcsrc/client/hud.qc:1743
-#, c-format
-msgid "^1%s^1 was grounded by %s\n"
+#: qcsrc/client/waypointsprites.qc:300
+msgid "Minstanex"
msgstr ""
-#: qcsrc/client/hud.qc:1748
-#, c-format
-msgid "^1%s^1 was shot into space by %s\n"
+#: qcsrc/client/waypointsprites.qc:301
+msgid "Hook"
msgstr ""
-#: qcsrc/client/hud.qc:1753
-#, c-format
-msgid "^1%s^1 was conserved by %s\n"
+#: qcsrc/client/waypointsprites.qc:302 qcsrc/server/w_fireball.qc:2
+msgid "Fireball"
msgstr ""
-#: qcsrc/client/hud.qc:1759
-#, c-format
-msgid "^1%s^1 was thrown into a world of hurt by %s\n"
+#: qcsrc/client/waypointsprites.qc:303
+msgid "HLAC"
msgstr ""
-#: qcsrc/client/hud.qc:1763
-#, c-format
-msgid "^1%s^1 was crushed by %s\n"
+#: qcsrc/client/waypointsprites.qc:304 qcsrc/server/w_rifle.qc:2
+msgid "Rifle"
msgstr ""
-#: qcsrc/client/hud.qc:1767
-#, c-format
-msgid "^1%s^1 got shredded by %s\n"
+#: qcsrc/client/waypointsprites.qc:305 qcsrc/server/w_minelayer.qc:2
+msgid "Mine Layer"
msgstr ""
-#: qcsrc/client/hud.qc:1771
-#, c-format
-msgid "^1%s^1 was blasted to bits by %s\n"
+#: qcsrc/client/waypointsprites.qc:311
+msgid "Invisibility"
msgstr ""
-#: qcsrc/client/hud.qc:1775
-#, c-format
-msgid "^1%s^1 got caught in the destruction of %s^1's vehicle\n"
+#: qcsrc/client/waypointsprites.qc:312
+msgid "Extra life"
msgstr ""
-#: qcsrc/client/hud.qc:1779
-#, c-format
-msgid "^1%s^1 was bolted down by %s\n"
+#: qcsrc/client/waypointsprites.qc:313
+msgid "Speed"
msgstr ""
-#: qcsrc/client/hud.qc:1783
-#, c-format
-msgid "^1%s^1 could find no shelter from %s^1's rockets\n"
+#: qcsrc/client/waypointsprites.qc:314
+msgid "Strength"
msgstr ""
-#: qcsrc/client/hud.qc:1787
-#, c-format
-msgid "^1%s^1 dies when %s^1's wakizashi dies.\n"
+#: qcsrc/client/waypointsprites.qc:315
+msgid "Shield"
msgstr ""
-#: qcsrc/client/hud.qc:1791
-#, c-format
-msgid "^1%s^1 nailed to hell by %s\n"
+#: qcsrc/client/waypointsprites.qc:316
+msgid "Fuel regen"
msgstr ""
-#: qcsrc/client/hud.qc:1795
-#, c-format
-msgid "^1%s^1 cluster crushed by %s\n"
+#: qcsrc/client/waypointsprites.qc:317
+msgid "Jet Pack"
msgstr ""
-#: qcsrc/client/hud.qc:1799
-#, c-format
-msgid "^1%s^1 dies when %s^1's raptor dies.\n"
+#: qcsrc/client/waypointsprites.qc:318
+msgid "Frozen!"
msgstr ""
-#: qcsrc/client/hud.qc:1803
-#, c-format
-msgid "^1%s^1 was pushed into the line of fire by %s\n"
+#: qcsrc/client/waypointsprites.qc:319
+msgid "Tagged"
msgstr ""
-#: qcsrc/client/hud.qc:1807
-#, c-format
-msgid "^1%s^1 was pushed into an accident by %s\n"
+#: qcsrc/client/waypointsprites.qc:320
+msgid "Vehicle"
msgstr ""
-#: qcsrc/client/hud.qc:1811
-#, c-format
-msgid "^1%s^1 was unfairly eliminated by %s\n"
+#: qcsrc/client/waypointsprites.qc:590
+msgid "Spam"
msgstr ""
-#: qcsrc/client/hud.qc:1815
+#: qcsrc/client/waypointsprites.qc:594
#, c-format
-msgid "^1%s^1 was burnt to death by %s\n"
+msgid "%s needing help!"
msgstr ""
-#: qcsrc/client/hud.qc:1827
+#: qcsrc/client/hud_config.qc:136
#, c-format
-msgid "^1%s^1 was fragged by %s\n"
+msgid "^2Successfully exported to %s! (Note: It's saved in data/data/)\n"
msgstr ""
-#: qcsrc/client/hud.qc:1832
+#: qcsrc/client/hud_config.qc:140
#, c-format
-msgid "^1%s^1's %s scoring spree was ended by %s\n"
+msgid "^1Couldn't write to %s\n"
msgstr ""
-#: qcsrc/client/hud.qc:1834
-#, c-format
-msgid "^1%s^1's %s kill spree was ended by %s\n"
+#: qcsrc/client/scoreboard.qc:19
+msgid "SCO^bckills"
msgstr ""
-#: qcsrc/client/hud.qc:1837
-#, c-format
-msgid "^1%s^1 made %s scores in a row\n"
+#: qcsrc/client/scoreboard.qc:20
+msgid "SCO^bctime"
msgstr ""
-#: qcsrc/client/hud.qc:1839
-#, c-format
-msgid "^1%s^1 has %s frags in a row\n"
+#: qcsrc/client/scoreboard.qc:21
+msgid "SCO^caps"
msgstr ""
-#: qcsrc/client/hud.qc:1842
-#, c-format
-msgid "%s^7 made a ^1TRIPLE SCORE\n"
+#: qcsrc/client/scoreboard.qc:22
+msgid "SCO^deaths"
msgstr ""
-#: qcsrc/client/hud.qc:1844
-#, c-format
-msgid "%s^7 made a ^1TRIPLE FRAG\n"
+#: qcsrc/client/scoreboard.qc:23
+msgid "SCO^destroyed"
msgstr ""
-#: qcsrc/client/hud.qc:1847
-#, c-format
-msgid "%s^7 unleashes ^1SCORING RAGE\n"
+#: qcsrc/client/scoreboard.qc:24
+msgid "SCO^drops"
msgstr ""
-#: qcsrc/client/hud.qc:1849
-#, c-format
-msgid "%s^7 unleashes ^1RAGE\n"
+#: qcsrc/client/scoreboard.qc:25
+msgid "SCO^faults"
msgstr ""
-#: qcsrc/client/hud.qc:1852
-#, c-format
-msgid "%s^7 made ^1TEN SCORES IN A ROW!\n"
+#: qcsrc/client/scoreboard.qc:26
+msgid "SCO^fckills"
msgstr ""
-#: qcsrc/client/hud.qc:1854
-#, c-format
-msgid "%s^7 starts the ^1MASSACRE!\n"
+#: qcsrc/client/scoreboard.qc:27
+msgid "SCO^goals"
msgstr ""
-#: qcsrc/client/hud.qc:1857
-#, c-format
-msgid "%s^7 made ^1FIFTEEN SCORES IN A ROW!\n"
+#: qcsrc/client/scoreboard.qc:28
+msgid "SCO^kckills"
msgstr ""
-#: qcsrc/client/hud.qc:1859
-#, c-format
-msgid "%s^7 executes ^1MAYHEM!\n"
+#: qcsrc/client/scoreboard.qc:29
+msgid "SCO^kdratio"
msgstr ""
-#: qcsrc/client/hud.qc:1862
-#, c-format
-msgid "%s^7 made ^1TWENTY SCORES IN A ROW!\n"
+#: qcsrc/client/scoreboard.qc:30
+msgid "SCO^k/d"
msgstr ""
-#: qcsrc/client/hud.qc:1864
-#, c-format
-msgid "%s^7 is a ^1BERSERKER!\n"
+#: qcsrc/client/scoreboard.qc:31
+msgid "SCO^kd"
msgstr ""
-#: qcsrc/client/hud.qc:1867
-#, c-format
-msgid "%s^7 made ^1TWENTY FIVE SCORES IN A ROW!\n"
+#: qcsrc/client/scoreboard.qc:32
+msgid "SCO^kdr"
msgstr ""
-#: qcsrc/client/hud.qc:1869
-#, c-format
-msgid "%s^7 inflicts ^1CARNAGE!\n"
+#: qcsrc/client/scoreboard.qc:33
+msgid "SCO^kills"
msgstr ""
-#: qcsrc/client/hud.qc:1872
-#, c-format
-msgid "%s^7 made ^1THIRTY SCORES IN A ROW!\n"
+#: qcsrc/client/scoreboard.qc:34
+msgid "SCO^laps"
msgstr ""
-#: qcsrc/client/hud.qc:1874
-#, c-format
-msgid "%s^7 unleashes ^1ARMAGEDDON!\n"
+#: qcsrc/client/scoreboard.qc:35
+msgid "SCO^lives"
msgstr ""
-#: qcsrc/client/hud.qc:1882
-#, c-format
-msgid "^1%s^1 was in the water for too long\n"
+#: qcsrc/client/scoreboard.qc:36
+msgid "SCO^losses"
msgstr ""
-#: qcsrc/client/hud.qc:1884
-#, c-format
-msgid "^1%s^1 drowned\n"
+#: qcsrc/client/scoreboard.qc:37
+msgid "SCO^name"
msgstr ""
-#: qcsrc/client/hud.qc:1889
-#, c-format
-msgid "^1%s^1 was slimed\n"
+#: qcsrc/client/scoreboard.qc:38
+msgid "SCO^nick"
msgstr ""
-#: qcsrc/client/hud.qc:1895
-#, c-format
-msgid "^1%s^1 found a hot place\n"
+#: qcsrc/client/scoreboard.qc:39
+msgid "SCO^objectives"
msgstr ""
-#: qcsrc/client/hud.qc:1897
-#, c-format
-msgid "^1%s^1 turned into hot slag\n"
+#: qcsrc/client/scoreboard.qc:40
+msgid "SCO^pickups"
msgstr ""
-#: qcsrc/client/hud.qc:1904
-#, c-format
-msgid "^1%s^1 tested gravity (and it worked)\n"
+#: qcsrc/client/scoreboard.qc:41
+msgid "SCO^ping"
msgstr ""
-#: qcsrc/client/hud.qc:1906
-#, c-format
-msgid "^1%s^1 hit the ground with a crunch\n"
+#: qcsrc/client/scoreboard.qc:42
+msgid "SCO^pl"
msgstr ""
-#: qcsrc/client/hud.qc:1911
-#, c-format
-msgid "^1%s^1 became a shooting star\n"
+#: qcsrc/client/scoreboard.qc:43
+msgid "SCO^pushes"
msgstr ""
-#: qcsrc/client/hud.qc:1917
-#, c-format
-msgid "^1%s^1 discovered a swamp\n"
+#: qcsrc/client/scoreboard.qc:44
+msgid "SCO^rank"
+msgstr ""
+
+#: qcsrc/client/scoreboard.qc:45
+msgid "SCO^returns"
msgstr ""
-#: qcsrc/client/hud.qc:1919
-#, c-format
-msgid "^1%s^1 is now conserved for centuries to come\n"
+#: qcsrc/client/scoreboard.qc:46
+msgid "SCO^revivals"
msgstr ""
-#: qcsrc/client/hud.qc:1924
-#, c-format
-msgid "^1%s^1 was mowed down by a turret \n"
+#: qcsrc/client/scoreboard.qc:47
+msgid "SCO^score"
msgstr ""
-#: qcsrc/client/hud.qc:1936
-#, c-format
-msgid "^1%s^1 died in an accident\n"
+#: qcsrc/client/scoreboard.qc:48
+msgid "SCO^suicides"
msgstr ""
-#: qcsrc/client/hud.qc:1940
-#, c-format
-msgid "^1%s^1 was unfairly eliminated\n"
+#: qcsrc/client/scoreboard.qc:49
+msgid "SCO^takes"
msgstr ""
-#: qcsrc/client/hud.qc:1946
-#, c-format
-msgid "^1%s^1 felt a little hot\n"
+#: qcsrc/client/scoreboard.qc:50
+msgid "SCO^ticks"
msgstr ""
-#: qcsrc/client/hud.qc:1948
-#, c-format
-msgid "^1%s^1 burnt to death\n"
+#: qcsrc/client/scoreboard.qc:239
+msgid ""
+"You can modify the scoreboard using the ^2scoreboard_columns_set command.\n"
msgstr ""
-#: qcsrc/client/hud.qc:1955
-#, c-format
-msgid "^1%s^1 needs a restart\n"
+#: qcsrc/client/scoreboard.qc:240
+msgid "^3|---------------------------------------------------------------|\n"
msgstr ""
-#: qcsrc/client/hud.qc:1962
-#, c-format
-msgid "^1%s^1 needs a restart after a %d scoring spree\n"
+#: qcsrc/client/scoreboard.qc:242
+msgid "^2scoreboard_columns_set default\n"
msgstr ""
-#: qcsrc/client/hud.qc:1964
-#, c-format
-msgid "^1%s^1 died with a %d kill spree\n"
+#: qcsrc/client/scoreboard.qc:243
+msgid "^2scoreboard_columns_set ^7field1 field2 ...\n"
msgstr ""
-#: qcsrc/client/hud.qc:1968
-#, c-format
-msgid "%s^7 got the %s\n"
+#: qcsrc/client/scoreboard.qc:244
+msgid "The following field names are recognized (case insensitive):\n"
msgstr ""
-#: qcsrc/client/hud.qc:1971
-#, c-format
-msgid "%s^7 lost the %s\n"
+#: qcsrc/client/scoreboard.qc:245
+msgid ""
+"You can use a ^3|^7 to start the right-aligned fields.\n"
+"\n"
msgstr ""
-#: qcsrc/client/hud.qc:1974
-#, c-format
-msgid "%s^7 picked up the %s\n"
+#: qcsrc/client/scoreboard.qc:247
+msgid "^3name^7 or ^3nick^7 Name of a player\n"
msgstr ""
-#: qcsrc/client/hud.qc:1977
-#, c-format
-msgid "%s^7 returned the %s\n"
+#: qcsrc/client/scoreboard.qc:248
+msgid "^3ping^7 Ping time\n"
msgstr ""
-#: qcsrc/client/hud.qc:1980
-#, c-format
-msgid "%s^7 captured the %s%s\n"
+#: qcsrc/client/scoreboard.qc:249
+msgid "^3pl^7 Packet loss\n"
msgstr ""
-#: qcsrc/client/hud.qc:1999
-#, c-format
-msgid "%s^7 has picked up the ball!\n"
+#: qcsrc/client/scoreboard.qc:250
+msgid "^3kills^7 Number of kills\n"
msgstr ""
-#: qcsrc/client/hud.qc:2004
-#, c-format
-msgid "%s^7 has dropped the ball!\n"
+#: qcsrc/client/scoreboard.qc:251
+msgid "^3deaths^7 Number of deaths\n"
msgstr ""
-#: qcsrc/client/hud.qc:2017
-#, c-format
-msgid "You are now on: %s"
+#: qcsrc/client/scoreboard.qc:252
+msgid "^3suicides^7 Number of suicides\n"
msgstr ""
-#: qcsrc/client/hud.qc:2019
-#, c-format
-msgid ""
-"You have been moved into a different team to improve team balance\n"
-"You are now on: %s"
+#: qcsrc/client/scoreboard.qc:253
+msgid "^3frags^7 kills - suicides\n"
msgstr ""
-#: qcsrc/client/hud.qc:2022
-msgid "^1Reconsider your tactics, camper!"
+#: qcsrc/client/scoreboard.qc:254
+msgid "^3kd^7 The kill-death ratio\n"
msgstr ""
-#: qcsrc/client/hud.qc:2024
-msgid "^1Die camper!"
+#: qcsrc/client/scoreboard.qc:255
+msgid ""
+"^3caps^7 How often a flag (CTF) or a key (KeyHunt) was "
+"captured\n"
msgstr ""
-#: qcsrc/client/hud.qc:2027
-msgid "^1You are reinserted into the game for running out of ammo..."
+#: qcsrc/client/scoreboard.qc:256
+msgid ""
+"^3pickups^7 How often a flag (CTF) or a key (KeyHunt) or a "
+"ball (Keepaway) was picked up\n"
msgstr ""
-#: qcsrc/client/hud.qc:2029
-msgid "^1You were killed for running out of ammo..."
+#: qcsrc/client/scoreboard.qc:257
+msgid "^3fckills^7 Number of flag carrier kills\n"
msgstr ""
-#: qcsrc/client/hud.qc:2032
-msgid "^1You need to preserve your health"
+#: qcsrc/client/scoreboard.qc:258
+msgid "^3returns^7 Number of flag returns\n"
msgstr ""
-#: qcsrc/client/hud.qc:2034
-msgid "^1You grew too old without taking your medicine"
+#: qcsrc/client/scoreboard.qc:259
+msgid "^3drops^7 Number of flag drops\n"
msgstr ""
-#: qcsrc/client/hud.qc:2037
-msgid "^1Don't go against team mates!"
+#: qcsrc/client/scoreboard.qc:260
+msgid "^3lives^7 Number of lives (LMS)\n"
msgstr ""
-#: qcsrc/client/hud.qc:2039
-msgid "^1Don't shoot your team mates!"
+#: qcsrc/client/scoreboard.qc:261
+msgid "^3rank^7 Player rank\n"
msgstr ""
-#: qcsrc/client/hud.qc:2044
-msgid "^1You need to be more careful!"
+#: qcsrc/client/scoreboard.qc:262
+msgid "^3pushes^7 Number of players pushed into void\n"
msgstr ""
-#: qcsrc/client/hud.qc:2046
-msgid "^1You killed your own dumb self!"
+#: qcsrc/client/scoreboard.qc:263
+msgid ""
+"^3destroyed^7 Number of keys destroyed by pushing them into "
+"void\n"
msgstr ""
-#: qcsrc/client/hud.qc:2051
-#, c-format
-msgid "^1Moron! You went against ^7%s^1, a team mate!"
+#: qcsrc/client/scoreboard.qc:264
+msgid "^3kckills^7 Number of keys carrier kills\n"
msgstr ""
-#: qcsrc/client/hud.qc:2053
-#, c-format
-msgid "^1Moron! You fragged ^7%s^1, a team mate!"
+#: qcsrc/client/scoreboard.qc:265
+msgid "^3losses^7 Number of times a key was lost\n"
msgstr ""
-#: qcsrc/client/hud.qc:2057
-msgid "^1First score"
+#: qcsrc/client/scoreboard.qc:266
+msgid "^3laps^7 Number of laps finished (race/cts)\n"
msgstr ""
-#: qcsrc/client/hud.qc:2059
-msgid "^1First blood"
+#: qcsrc/client/scoreboard.qc:267
+msgid "^3time^7 Total time raced (race/cts)\n"
msgstr ""
-#: qcsrc/client/hud.qc:2063
-msgid "^1First casualty"
+#: qcsrc/client/scoreboard.qc:268
+msgid "^3fastest^7 Time of fastest lap (race/cts)\n"
msgstr ""
-#: qcsrc/client/hud.qc:2065
-msgid "^1First victim"
+#: qcsrc/client/scoreboard.qc:269
+msgid "^3ticks^7 Number of ticks (DOM)\n"
msgstr ""
-#: qcsrc/client/hud.qc:2069
-#, c-format
-msgid "^1You scored against ^7%s^1 who was typing!"
+#: qcsrc/client/scoreboard.qc:270
+msgid "^3takes^7 Number of domination points taken (DOM)\n"
msgstr ""
-#: qcsrc/client/hud.qc:2071
-#, c-format
-msgid "^1You typefragged ^7%s"
+#: qcsrc/client/scoreboard.qc:271
+msgid "^3bckills^7 Number of ball carrier kills\n"
msgstr ""
-#: qcsrc/client/hud.qc:2075
-#, c-format
-msgid "^1You were scored against by ^7%s^1 while you were typing!"
+#: qcsrc/client/scoreboard.qc:272
+msgid ""
+"^3bctime^7 Total amount of time holding the ball in "
+"Keepaway\n"
msgstr ""
-#: qcsrc/client/hud.qc:2077
-#, c-format
-msgid "^1You were typefragged by ^7%s"
+#: qcsrc/client/scoreboard.qc:273
+msgid ""
+"^3score^7 Total score\n"
+"\n"
msgstr ""
-#: qcsrc/client/hud.qc:2081
-#, c-format
-msgid "^4You scored against ^7%s"
+#: qcsrc/client/scoreboard.qc:275
+msgid ""
+"Before a field you can put a + or - sign, then a comma separated list\n"
+"of game types, then a slash, to make the field show up only in these\n"
+"or in all but these game types. You can also specify 'all' as a\n"
+"field to show all fields available for the current game mode.\n"
+"\n"
msgstr ""
-#: qcsrc/client/hud.qc:2083
-#, c-format
-msgid "^4You fragged ^7%s"
+#: qcsrc/client/scoreboard.qc:280
+msgid ""
+"The special game type names 'teams' and 'noteams' can be used to\n"
+"include/exclude ALL teams/noteams game modes.\n"
+"\n"
msgstr ""
-#: qcsrc/client/hud.qc:2087
-#, c-format
-msgid "^1You were scored against by ^7%s"
+#: qcsrc/client/scoreboard.qc:283
+msgid "Example: scoreboard_columns_set name ping pl | +ctf/field3 -dm/field4\n"
msgstr ""
-#: qcsrc/client/hud.qc:2089
-#, c-format
-msgid "^1You were fragged by ^7%s"
+#: qcsrc/client/scoreboard.qc:284
+msgid ""
+"will display name, ping and pl aligned to the left, and the fields\n"
+"right of the vertical bar aligned to the right.\n"
msgstr ""
-#: qcsrc/client/hud.qc:2094
-msgid "^1Watch your step!"
+#: qcsrc/client/scoreboard.qc:286
+msgid ""
+"'field3' will only be shown in CTF, and 'field4' will be shown in all\n"
+"other gamemodes except DM.\n"
msgstr ""
-#: qcsrc/client/hud.qc:2162 qcsrc/client/hud.qc:2163 qcsrc/client/hud.qc:2646
+#: qcsrc/client/scoreboard.qc:432 qcsrc/client/scoreboard.qc:447
+#: qcsrc/client/scoreboard.qc:457 qcsrc/client/scoreboard.qc:466
+#: qcsrc/client/scoreboard.qc:475
#, c-format
-msgid "Player %d"
+msgid "fixed missing field '%s'\n"
msgstr ""
-#: qcsrc/client/hud.qc:2949
-msgid "^1Intermediate 1 (+15.42)"
+#: qcsrc/client/scoreboard.qc:515 qcsrc/client/scoreboard.qc:522
+msgid "N/A"
msgstr ""
-#: qcsrc/client/hud.qc:2951 qcsrc/client/hud.qc:2993 qcsrc/client/hud.qc:3034
+#: qcsrc/client/scoreboard.qc:950
#, c-format
-msgid "^1PENALTY: %.1f (%s)"
+msgid "Accuracy stats (average %d%%)"
msgstr ""
-#: qcsrc/client/hud.qc:3036
+#: qcsrc/client/scoreboard.qc:1015
#, c-format
-msgid "^2PENALTY: %.1f (%s)"
+msgid "%d%%"
msgstr ""
-#: qcsrc/client/hud.qc:3064
-msgid "^1You must answer before entering hud configure mode\n"
+#: qcsrc/client/scoreboard.qc:1075
+msgid "Rankings"
msgstr ""
-#: qcsrc/client/hud.qc:3067
-msgid "^2Name ^7instead of \"^1Unregistered player^7\" in stats"
+#: qcsrc/client/scoreboard.qc:1170
+msgid "Scoreboard"
msgstr ""
-#: qcsrc/client/hud.qc:3148
-msgid "A vote has been called for:"
+#: qcsrc/client/scoreboard.qc:1215
+#, c-format
+msgid "Speed award: %d ^7(%s^7)"
msgstr ""
-#: qcsrc/client/hud.qc:3150
-msgid "Allow servers to store and display your name?"
+#: qcsrc/client/scoreboard.qc:1219
+#, c-format
+msgid "All-time fastest: %d ^7(%s^7)"
msgstr ""
-#: qcsrc/client/hud.qc:3154
-msgid "^1Configure the HUD"
+#: qcsrc/client/scoreboard.qc:1246 qcsrc/client/teamplay.qc:63
+msgid "Spectators"
msgstr ""
-#: qcsrc/client/hud.qc:3158
+#: qcsrc/client/scoreboard.qc:1252
#, c-format
-msgid "Yes (%s): %d"
+msgid "playing on ^2%s^7"
msgstr ""
-#: qcsrc/client/hud.qc:3160
+#: qcsrc/client/scoreboard.qc:1259 qcsrc/client/scoreboard.qc:1264
#, c-format
-msgid "No (%s): %d"
-msgstr ""
-
-#: qcsrc/client/hud.qc:3667 qcsrc/client/hud.qc:3670 qcsrc/client/hud.qc:3672
-msgid "Personal best"
-msgstr ""
-
-#: qcsrc/client/hud.qc:3685 qcsrc/client/hud.qc:3688 qcsrc/client/hud.qc:3690
-msgid "Server best"
+msgid " for up to ^1%1.0f minutes^7"
msgstr ""
-#: qcsrc/client/hud.qc:4031
-msgid "^3Player^7: This is the chat area."
+#: qcsrc/client/scoreboard.qc:1268 qcsrc/client/scoreboard.qc:1287
+msgid " or"
msgstr ""
-#: qcsrc/client/hud.qc:4098
+#: qcsrc/client/scoreboard.qc:1271 qcsrc/client/scoreboard.qc:1278
#, c-format
-msgid "FPS: %.*f"
+msgid " until ^3%s %s^7"
msgstr ""
-#: qcsrc/client/hud.qc:4164
-msgid "^1Observing"
+#: qcsrc/client/scoreboard.qc:1272 qcsrc/client/scoreboard.qc:1279
+#: qcsrc/client/scoreboard.qc:1291 qcsrc/client/scoreboard.qc:1298
+msgid "SCO^points"
msgstr ""
-#: qcsrc/client/hud.qc:4166
-#, c-format
-msgid "^1Spectating: ^7%s"
+#: qcsrc/client/scoreboard.qc:1273 qcsrc/client/scoreboard.qc:1280
+#: qcsrc/client/scoreboard.qc:1292 qcsrc/client/scoreboard.qc:1299
+msgid "SCO^is beaten"
msgstr ""
-#: qcsrc/client/hud.qc:4170
+#: qcsrc/client/scoreboard.qc:1290 qcsrc/client/scoreboard.qc:1297
#, c-format
-msgid "^1Press ^3%s^1 to spectate"
+msgid " until a lead of ^3%s %s^7"
msgstr ""
-#: qcsrc/client/hud.qc:4172
-#, c-format
-msgid "^1Press ^3%s^1 for another player"
+#: qcsrc/client/miscfunctions.qc:23
+msgid "^1Begin!"
msgstr ""
-#: qcsrc/client/hud.qc:4176
+#: qcsrc/client/miscfunctions.qc:34
#, c-format
-msgid "^1Use ^3%s^1 or ^3%s^1 to change the speed"
+msgid "^1Game starts in %d seconds"
msgstr ""
-#: qcsrc/client/hud.qc:4178
-#, c-format
-msgid "^1Press ^3%s^1 to observe"
+#: qcsrc/client/miscfunctions.qc:113
+msgid "^1RED^7 flag"
msgstr ""
-#: qcsrc/client/hud.qc:4181
-#, c-format
-msgid "^1Press ^3%s^1 for gamemode info"
+#: qcsrc/client/miscfunctions.qc:118
+msgid "^4BLUE^7 flag"
msgstr ""
-#: qcsrc/client/hud.qc:4185
-msgid "^1Wait for your turn to join"
+#: qcsrc/client/miscfunctions.qc:126
+#, c-format
+msgid "You picked up the %s!"
msgstr ""
-#: qcsrc/client/hud.qc:4191
-msgid "^1Match has already begun"
+#: qcsrc/client/miscfunctions.qc:130
+#, c-format
+msgid "You got the %s!"
msgstr ""
-#: qcsrc/client/hud.qc:4193
-msgid "^1You have no more lives left"
+#: qcsrc/client/miscfunctions.qc:283
+msgid "Trying to remove a team which is not in the teamlist!"
msgstr ""
-#: qcsrc/client/hud.qc:4195 qcsrc/client/hud.qc:4198
-#, c-format
-msgid "^1Press ^3%s^1 to join"
+#: qcsrc/client/ctf.qc:35
+msgid "----- Order Menu -----"
msgstr ""
-#: qcsrc/client/hud.qc:4206
+#: qcsrc/client/ctf.qc:36
#, c-format
-msgid "^1Game starts in ^3%d^1 seconds"
+msgid "Order: %s"
msgstr ""
-#: qcsrc/client/hud.qc:4213
-msgid "^2Currently in ^1warmup^2 stage!"
+#: qcsrc/client/ctf.qc:37
+msgid "1) ^3previous page"
msgstr ""
-#: qcsrc/client/hud.qc:4228
-#, c-format
-msgid "%sPress ^3%s%s to end warmup"
+#: qcsrc/client/ctf.qc:38
+msgid "2) ^3next page"
msgstr ""
-#: qcsrc/client/hud.qc:4230
-#, c-format
-msgid "%sPress ^3%s%s once you are ready"
+#: qcsrc/client/ctf.qc:55 qcsrc/client/ctf.qc:161
+msgid "ESC) Exit Menu"
msgstr ""
-#: qcsrc/client/hud.qc:4235
-msgid "^2Waiting for others to ready up to end warmup..."
+#: qcsrc/client/ctf.qc:126
+#, c-format
+msgid "Couldn't find player %d\n"
msgstr ""
-#: qcsrc/client/hud.qc:4237
-msgid "^2Waiting for others to ready up..."
+#: qcsrc/client/ctf.qc:154
+msgid "----- Command Menu -----"
msgstr ""
-#: qcsrc/client/hud.qc:4243
-#, c-format
-msgid "^2Press ^3%s^2 to end warmup"
+#: qcsrc/client/ctf.qc:155
+msgid "Issue orders:"
msgstr ""
-#: qcsrc/client/hud.qc:4264
-msgid "Teamnumbers are unbalanced!"
+#: qcsrc/client/ctf.qc:156
+msgid " 1) Attack"
msgstr ""
-#: qcsrc/client/hud.qc:4269
-#, c-format
-msgid " Press ^3%s%s to adjust"
+#: qcsrc/client/ctf.qc:158
+msgid " 2) Defend"
msgstr ""
-#: qcsrc/client/hud.qc:4277
-msgid "^7Press ^3ESC ^7to show HUD options."
+#: qcsrc/client/ctf.qc:160
+msgid "3) Resign from command."
msgstr ""
-#: qcsrc/client/hud.qc:4279
-msgid "^3Doubleclick ^7a panel for panel-specific options."
+#: qcsrc/client/ctf.qc:212
+msgid "You're commander!"
msgstr ""
-#: qcsrc/client/hud.qc:4281
-msgid "^3CTRL ^7to disable collision testing, ^3SHIFT ^7and"
+#: qcsrc/client/ctf.qc:215
+msgid "Awaiting orders..."
msgstr ""
-#: qcsrc/client/hud.qc:4283
-msgid "^3ALT ^7+ ^3ARROW KEYS ^7for fine adjustments."
+#: qcsrc/client/movetypes.qc:163
+#, c-format
+msgid "Can't unstick an entity (edict: %d, classname: %s, origin: %s)\n"
msgstr ""
-#: qcsrc/client/hud.qc:4319
-msgid " qu/s"
+#: qcsrc/client/movetypes.qc:166
+#, c-format
+msgid "Sucessfully unstuck an entity (edict: %d, classname: %s, origin: %s)\n"
msgstr ""
-#: qcsrc/client/hud.qc:4323
-msgid " m/s"
+#: qcsrc/client/teamplay.qc:64
+msgid "Red Team"
msgstr ""
-#: qcsrc/client/hud.qc:4327
-msgid " km/h"
+#: qcsrc/client/teamplay.qc:65
+msgid "Blue Team"
msgstr ""
-#: qcsrc/client/hud.qc:4331
-msgid " mph"
+#: qcsrc/client/teamplay.qc:66
+msgid "Yellow Team"
msgstr ""
-#: qcsrc/client/hud.qc:4335
-msgid " knots"
+#: qcsrc/client/teamplay.qc:67
+msgid "Pink Team"
msgstr ""
-#: qcsrc/client/hud.qc:4686
-msgid "Automatically fixed wrong/missing panel numbers in _hud_panelorder\n"
+#: qcsrc/common/mapinfo.qc:1092
+#, c-format
+msgid "%s: %s"
msgstr ""
-#: qcsrc/client/target_music.qc:93 qcsrc/client/target_music.qc:181
+#: qcsrc/server/w_fireball.qc:417
#, c-format
-msgid "Cannot initialize sound %s\n"
+msgid "%s forgot about some firemine"
msgstr ""
-#: qcsrc/server/w_rifle.qc:233
+#: qcsrc/server/w_fireball.qc:419 qcsrc/server/w_hlac.qc:240
#, c-format
-msgid "%s shot themself automatically"
+msgid "%s should have used a smaller gun"
msgstr ""
-#: qcsrc/server/w_rifle.qc:235
+#: qcsrc/server/w_fireball.qc:426
#, c-format
-msgid "%s sniped themself somehow"
+msgid "%s tried to catch %s's firemine"
msgstr ""
-#: qcsrc/server/w_rifle.qc:242
+#: qcsrc/server/w_fireball.qc:428
#, c-format
-msgid "%s failed to hide from %s's bullet hail"
+msgid "%s fatefully ignored %s's firemine"
msgstr ""
-#: qcsrc/server/w_rifle.qc:244
+#: qcsrc/server/w_fireball.qc:435
#, c-format
-msgid "%s died in %s's bullet hail"
+msgid "%s could not hide from %s's fireball"
msgstr ""
-#: qcsrc/server/w_rifle.qc:251
+#: qcsrc/server/w_fireball.qc:437
#, c-format
-msgid "%s failed to hide from %s's rifle"
+msgid "%s saw the pretty lights of %s's fireball"
msgstr ""
-#: qcsrc/server/w_rifle.qc:256
+#: qcsrc/server/w_fireball.qc:440
#, c-format
-msgid "%s got hit in the head by %s"
+msgid "%s got too close to %s's fireball"
msgstr ""
-#: qcsrc/server/w_rifle.qc:258 qcsrc/server/w_uzi.qc:321
+#: qcsrc/server/w_fireball.qc:442
#, c-format
-msgid "%s was sniped by %s"
+msgid "%s tasted %s's fireball"
msgstr ""
-#: qcsrc/server/w_uzi.qc:317 qcsrc/server/w_shotgun.qc:209
-#: qcsrc/server/w_minstanex.qc:290 qcsrc/server/w_nex.qc:253
+#: qcsrc/server/w_nex.qc:253 qcsrc/server/w_shotgun.qc:215
+#: qcsrc/server/w_uzi.qc:317 qcsrc/server/w_minstanex.qc:293
#, c-format
msgid "%s is now thinking with portals"
msgstr ""
-#: qcsrc/server/w_uzi.qc:323
+#: qcsrc/server/w_nex.qc:255 qcsrc/server/w_minstanex.qc:295
#, c-format
-msgid "%s was riddled full of holes by %s"
+msgid "%s has been vaporized by %s"
msgstr ""
-#: qcsrc/server/w_rocketlauncher.qc:501 qcsrc/server/w_minelayer.qc:523
+#: qcsrc/server/w_laser.qc:311
#, c-format
-msgid "%s exploded"
+msgid "%s lasered themself to hell"
msgstr ""
-#: qcsrc/server/w_rocketlauncher.qc:505
+#: qcsrc/server/w_laser.qc:315
#, c-format
-msgid "%s got too close to %s's rocket"
+msgid "%s was cut in half by %s's gauntlet"
msgstr ""
-#: qcsrc/server/w_rocketlauncher.qc:507
+#: qcsrc/server/w_laser.qc:317
#, c-format
-msgid "%s almost dodged %s's rocket"
+msgid "%s was lasered to death by %s"
msgstr ""
-#: qcsrc/server/w_rocketlauncher.qc:509
+#: qcsrc/server/w_shotgun.qc:219
#, c-format
-msgid "%s ate %s's rocket"
+msgid "%2$s ^7slapped %1$s ^7around a bit with a large ^2shotgun"
msgstr ""
-#: qcsrc/server/w_porto.qc:296 qcsrc/server/w_hook.qc:266
+#: qcsrc/server/w_shotgun.qc:221
#, c-format
-msgid "%s did the impossible"
+msgid "%s was gunned by %s"
msgstr ""
-#: qcsrc/server/w_porto.qc:298
+#: qcsrc/server/w_uzi.qc:321 qcsrc/server/w_rifle.qc:258
#, c-format
-msgid "%s felt %s doing the impossible to him"
+msgid "%s was sniped by %s"
msgstr ""
-#: qcsrc/server/w_hook.qc:2
-msgid "Grappling Hook"
+#: qcsrc/server/w_uzi.qc:323
+#, c-format
+msgid "%s was riddled full of holes by %s"
msgstr ""
-#: qcsrc/server/w_hook.qc:268
-#, c-format
-msgid "%s has run into %s's gravity bomb"
+#: qcsrc/server/w_minstanex.qc:2
+msgid "MinstaNex"
msgstr ""
-#: qcsrc/server/w_electro.qc:577
+#: qcsrc/server/w_electro.qc:574
#, c-format
msgid "%s could not remember where they put plasma"
msgstr ""
-#: qcsrc/server/w_electro.qc:579
+#: qcsrc/server/w_electro.qc:576
#, c-format
msgid "%s played with plasma"
msgstr ""
-#: qcsrc/server/w_electro.qc:586
+#: qcsrc/server/w_electro.qc:583
#, c-format
msgid "%s just noticed %s's blue ball"
msgstr ""
-#: qcsrc/server/w_electro.qc:588
+#: qcsrc/server/w_electro.qc:585
#, c-format
msgid "%s got in touch with %s's blue ball"
msgstr ""
-#: qcsrc/server/w_electro.qc:593
+#: qcsrc/server/w_electro.qc:590
#, c-format
msgid "%s felt the electrifying air of %s's combo"
msgstr ""
-#: qcsrc/server/w_electro.qc:595
+#: qcsrc/server/w_electro.qc:592
#, c-format
msgid "%s got too close to %s's blue beam"
msgstr ""
-#: qcsrc/server/w_electro.qc:597
+#: qcsrc/server/w_electro.qc:594
#, c-format
msgid "%s was blasted by %s's blue beam"
msgstr ""
-#: qcsrc/server/w_laser.qc:311
-#, c-format
-msgid "%s lasered themself to hell"
-msgstr ""
-
-#: qcsrc/server/w_laser.qc:315
+#: qcsrc/server/w_tuba.qc:2
#, c-format
-msgid "%s was cut in half by %s's gauntlet"
+msgid "@!#%'n Tuba"
msgstr ""
-#: qcsrc/server/w_laser.qc:317
+#: qcsrc/server/w_tuba.qc:252
#, c-format
-msgid "%s was lasered to death by %s"
+msgid "%s hurt his own ears with the @!#%%'n Tuba"
msgstr ""
-#: qcsrc/server/w_shotgun.qc:213
+#: qcsrc/server/w_tuba.qc:256
#, c-format
-msgid "%2$s ^7slapped %1$s ^7around a bit with a large ^2shotgun"
+msgid "%s died of %s's great playing on the @!#%%'n Tuba"
msgstr ""
-#: qcsrc/server/w_shotgun.qc:215
+#: qcsrc/server/w_porto.qc:296 qcsrc/server/w_hook.qc:266
#, c-format
-msgid "%s was gunned by %s"
+msgid "%s did the impossible"
msgstr ""
-#: qcsrc/server/w_tuba.qc:2
+#: qcsrc/server/w_porto.qc:298
#, c-format
-msgid "@!#%'n Tuba"
+msgid "%s felt %s doing the impossible to him"
msgstr ""
-#: qcsrc/server/w_tuba.qc:263
+#: qcsrc/server/w_hagar.qc:395 qcsrc/server/w_seeker.qc:655
#, c-format
-msgid "%s hurt his own ears with the @!#%%'n Tuba"
+msgid "%s played with tiny rockets"
msgstr ""
-#: qcsrc/server/w_tuba.qc:267
+#: qcsrc/server/w_hagar.qc:399
#, c-format
-msgid "%s died of %s's great playing on the @!#%%'n Tuba"
-msgstr ""
-
-#: qcsrc/server/w_minstanex.qc:2
-msgid "MinstaNex"
+msgid "%s hoped %s's missiles wouldn't bounce"
msgstr ""
-#: qcsrc/server/w_minstanex.qc:292 qcsrc/server/w_nex.qc:255
+#: qcsrc/server/w_hagar.qc:401 qcsrc/server/w_seeker.qc:661
#, c-format
-msgid "%s has been vaporized by %s"
+msgid "%s was pummeled by %s"
msgstr ""
-#: qcsrc/server/w_crylink.qc:664
+#: qcsrc/server/w_crylink.qc:666
#, c-format
msgid "%s succeeded at self-destructing themself with the Crylink"
msgstr ""
-#: qcsrc/server/w_crylink.qc:669
+#: qcsrc/server/w_crylink.qc:671
#, c-format
msgid "%s could not hide from %s's Crylink"
msgstr ""
-#: qcsrc/server/w_crylink.qc:671
+#: qcsrc/server/w_crylink.qc:673
#, c-format
msgid "%s was too close to %s's Crylink"
msgstr ""
-#: qcsrc/server/w_crylink.qc:673
+#: qcsrc/server/w_crylink.qc:675
#, c-format
msgid "%s took a close look at %s's Crylink"
msgstr ""
-#: qcsrc/server/w_hlac.qc:2
-msgid "Heavy Laser Assault Cannon"
+#: qcsrc/server/w_rocketlauncher.qc:501 qcsrc/server/w_minelayer.qc:523
+#, c-format
+msgid "%s exploded"
msgstr ""
-#: qcsrc/server/w_hlac.qc:240 qcsrc/server/w_fireball.qc:419
+#: qcsrc/server/w_rocketlauncher.qc:505
#, c-format
-msgid "%s should have used a smaller gun"
+msgid "%s got too close to %s's rocket"
msgstr ""
-#: qcsrc/server/w_hlac.qc:242
+#: qcsrc/server/w_rocketlauncher.qc:507
#, c-format
-msgid "%s was cut down by %s"
+msgid "%s almost dodged %s's rocket"
msgstr ""
-#: qcsrc/server/w_grenadelauncher.qc:379
+#: qcsrc/server/w_rocketlauncher.qc:509
#, c-format
-msgid "%s tried out his own grenade"
+msgid "%s ate %s's rocket"
msgstr ""
-#: qcsrc/server/w_grenadelauncher.qc:381
-#, c-format
-msgid "%s detonated"
+#: qcsrc/server/w_hook.qc:2
+msgid "Grappling Hook"
msgstr ""
-#: qcsrc/server/w_grenadelauncher.qc:387
+#: qcsrc/server/w_hook.qc:268
#, c-format
-msgid "%s didn't see %s's grenade"
+msgid "%s has run into %s's gravity bomb"
msgstr ""
-#: qcsrc/server/w_grenadelauncher.qc:389
+#: qcsrc/server/w_minelayer.qc:527
#, c-format
-msgid "%s almost dodged %s's grenade"
+msgid "%s got too close to %s's mine"
msgstr ""
-#: qcsrc/server/w_grenadelauncher.qc:391
+#: qcsrc/server/w_minelayer.qc:529
#, c-format
-msgid "%s ate %s's grenade"
+msgid "%s almost dodged %s's mine"
msgstr ""
-#: qcsrc/server/w_hagar.qc:382 qcsrc/server/w_seeker.qc:655
+#: qcsrc/server/w_minelayer.qc:531
#, c-format
-msgid "%s played with tiny rockets"
+msgid "%s stepped on %s's mine"
msgstr ""
-#: qcsrc/server/w_hagar.qc:386
+#: qcsrc/server/w_rifle.qc:233
#, c-format
-msgid "%s hoped %s's missiles wouldn't bounce"
+msgid "%s shot themself automatically"
msgstr ""
-#: qcsrc/server/w_hagar.qc:388 qcsrc/server/w_seeker.qc:661
+#: qcsrc/server/w_rifle.qc:235
#, c-format
-msgid "%s was pummeled by %s"
+msgid "%s sniped themself somehow"
msgstr ""
-#: qcsrc/server/w_seeker.qc:2
-msgid "T.A.G. Seeker"
+#: qcsrc/server/w_rifle.qc:242
+#, c-format
+msgid "%s failed to hide from %s's bullet hail"
msgstr ""
-#: qcsrc/server/w_seeker.qc:659
+#: qcsrc/server/w_rifle.qc:244
#, c-format
-msgid "%s was tagged by %s"
+msgid "%s died in %s's bullet hail"
msgstr ""
-#: qcsrc/server/w_fireball.qc:417
+#: qcsrc/server/w_rifle.qc:251
#, c-format
-msgid "%s forgot about some firemine"
+msgid "%s failed to hide from %s's rifle"
msgstr ""
-#: qcsrc/server/w_fireball.qc:426
+#: qcsrc/server/w_rifle.qc:256
#, c-format
-msgid "%s tried to catch %s's firemine"
+msgid "%s got hit in the head by %s"
msgstr ""
-#: qcsrc/server/w_fireball.qc:428
-#, c-format
-msgid "%s fatefully ignored %s's firemine"
+#: qcsrc/server/w_seeker.qc:2
+msgid "T.A.G. Seeker"
msgstr ""
-#: qcsrc/server/w_fireball.qc:435
+#: qcsrc/server/w_seeker.qc:659
#, c-format
-msgid "%s could not hide from %s's fireball"
+msgid "%s was tagged by %s"
msgstr ""
-#: qcsrc/server/w_fireball.qc:437
+#: qcsrc/server/w_grenadelauncher.qc:383
#, c-format
-msgid "%s saw the pretty lights of %s's fireball"
+msgid "%s tried out his own grenade"
msgstr ""
-#: qcsrc/server/w_fireball.qc:440
+#: qcsrc/server/w_grenadelauncher.qc:385
#, c-format
-msgid "%s got too close to %s's fireball"
+msgid "%s detonated"
msgstr ""
-#: qcsrc/server/w_fireball.qc:442
+#: qcsrc/server/w_grenadelauncher.qc:391
#, c-format
-msgid "%s tasted %s's fireball"
+msgid "%s didn't see %s's grenade"
msgstr ""
-#: qcsrc/server/w_minelayer.qc:527
+#: qcsrc/server/w_grenadelauncher.qc:393
#, c-format
-msgid "%s got too close to %s's mine"
+msgid "%s almost dodged %s's grenade"
msgstr ""
-#: qcsrc/server/w_minelayer.qc:529
+#: qcsrc/server/w_grenadelauncher.qc:395
#, c-format
-msgid "%s almost dodged %s's mine"
+msgid "%s ate %s's grenade"
msgstr ""
-#: qcsrc/server/w_minelayer.qc:531
+#: qcsrc/server/w_hlac.qc:2
+msgid "Heavy Laser Assault Cannon"
+msgstr ""
+
+#: qcsrc/server/w_hlac.qc:242
#, c-format
-msgid "%s stepped on %s's mine"
+msgid "%s was cut down by %s"
msgstr ""
--- /dev/null
+// placeholder file, is replaced by data/campaign.cfg in user home directory
// e.g. Xonotic 1.5.1 RC1 will be 15101
set g_xonoticversion git "Xonotic version (formatted for humans)"
-gameversion 100 // 0.1.0
+gameversion 500 // 0.5.0
gameversion_min 0 // git builds see all versions
gameversion_max 65535 // git builds see all versions
seta crosshair_rifle "" "crosshair to display when wielding the rifle"
seta crosshair_rifle_color "0.85 0.5 0.25" "crosshair color to display when wielding the rifle"
seta crosshair_rifle_alpha 1 "crosshair alpha value to display when wielding the rifle"
-seta crosshair_rifle_size 0.65 "crosshair size when wielding the rifle"
+seta crosshair_rifle_size 0.5 "crosshair size when wielding the rifle"
seta crosshair_tuba "" "crosshair to display when wielding the tuba"
seta crosshair_tuba_color "0.85 0.5 0.25" "crosshair color to display when wielding the tuba"
seta crosshair_tuba_alpha 1 "crosshair alpha value to display when wielding the tuba"
r_motionblur 0 // motion blur value, default is 0
r_damageblur 0 // motion blur when damaged, default is 0 (removed in Xonotic)
-r_bloom_blur 8
-r_bloom_brighten 3
+r_bloom_blur 16
+r_bloom_brighten 2.5
r_bloom_colorexponent 1
r_bloom_colorscale 1
-r_bloom_colorsubtract 0.25
+r_bloom_colorsubtract 0.15
r_bloom_resolution 320
r_hdr_range 4
set sv_player_crouch_mins "-16 -16 -24" "mins of a crouched playermodel"
set sv_player_crouch_maxs "16 16 25" "maxs of a crouched playermodel"
-set sv_pogostick 1 "don't require releasing the space bar for jumping again"
set sv_doublejump 0 "allow Quake 2-style double jumps"
set sv_jumpspeedcap_min "" "lower bound on the baseline velocity of a jump; final velocity will be >= (jumpheight * min + jumpheight)"
set sv_jumpspeedcap_max "" "upper bound on the baseline velocity of a jump; final velocity will be <= (jumpheight * max + jumpheight)"
// general bot AI cvars
set bot_ai_thinkinterval 0.05
set bot_ai_strategyinterval 5 "How often a new objective is chosen"
-set bot_ai_enemydetectioninterval 3 "How often bots pick a new target"
+set bot_ai_enemydetectioninterval 2 "How often bots pick a new target"
set bot_ai_enemydetectionradius 10000 "How far bots can see enemies"
set bot_ai_dodgeupdateinterval 0.2 "How often scan for items to dodge. Currently not in use."
set bot_ai_chooseweaponinterval 0.5 "How often the best weapon according to the situation will be chosen"
set bot_ai_aimskill_think 1 "Aiming velocity. Use values below 1 for slower aiming"
set bot_ai_custom_weapon_priority_distances "300 850" "Define close and far distances in any order. Based on the distance to the enemy bots will choose different weapons"
set bot_ai_custom_weapon_priority_far "minstanex nex rifle electro rocketlauncher grenadelauncher hagar hlac crylink laser uzi fireball seeker shotgun tuba minelayer" "Desired weapons for far distances ordered by priority"
-set bot_ai_custom_weapon_priority_mid "minstanex rocketlauncher nex fireball seeker grenadelauncher electro uzi rifle crylink hlac hagar shotgun laser tuba minelayer" "Desired weapons for middle distances ordered by priority"
-set bot_ai_custom_weapon_priority_close "minstanex shotgun nex uzi hlac tuba seeker hagar crylink grenadelauncher electro rifle rocketlauncher laser fireball minelayer" "Desired weapons for close distances ordered by priority"
+set bot_ai_custom_weapon_priority_mid "minstanex rocketlauncher nex fireball seeker grenadelauncher electro uzi crylink hlac hagar shotgun laser rifle tuba minelayer" "Desired weapons for middle distances ordered by priority"
+set bot_ai_custom_weapon_priority_close "minstanex shotgun nex uzi hlac tuba seeker hagar crylink grenadelauncher electro rocketlauncher laser fireball rifle minelayer" "Desired weapons for close distances ordered by priority"
set bot_ai_weapon_combo 1 "Enable bots to do weapon combos"
set bot_ai_weapon_combo_threshold 0.4 "Try to make a combo N seconds after the last attack"
set bot_ai_friends_aware_pickup_radius "500" "Bots will not pickup items if a team mate is this distance near the item"
set bot_ai_ignoregoal_timeout 3 "Ignore goals making bots to get stuck in front of a wall for N seconds"
set bot_ai_bunnyhop_skilloffset 7 "Bots with skill equal or greater than this value will perform the \"bunnyhop\" technique"
-set bot_ai_bunnyhop_startdistance 100 "Run to goals located further than this distance"
-set bot_ai_bunnyhop_stopdistance 125 "Stop jumping after reaching this distance to the goal"
+set bot_ai_bunnyhop_startdistance 200 "Run to goals located further than this distance"
+set bot_ai_bunnyhop_stopdistance 200 "Stop jumping after reaching this distance to the goal"
set bot_ai_bunnyhop_firstjumpdelay 0.2 "Start running to the goal only if it was seen for more than N seconds"
set bot_god 0 "god mode for bots"
set bot_ai_navigation_jetpack 0 "Enable bots to navigate maps using the jetpack"
set g_balance_ctf_delay_collect 1.0
set g_balance_ctf_damageforcescale 1
-set g_ctf_shield_max_ratio 0 "shield at most 0% of a team from the enemy flag (try: 0.4 for 40%)"
-set g_ctf_shield_min_negscore 20 "shield the player from the flag if he's got -20 points or less"
+set g_ctf_shield_max_ratio 0 "shield at most this percentage of a team from the enemy flag (try: 0.4 for 40%)"
+set g_ctf_shield_min_negscore 20 "shield the player from the flag if he's got this negative amount of points or less"
set g_ctf_shield_force 100 "push force of the shield"
// fun for server admins
set g_ca 0 "Clan Arena: Played in rounds, once you're dead you're out! The team with survivors wins the round."
set g_ca_point_limit 10 "point limit 10 is standard for clan arena"
set g_ca_point_leadlimit 0
+set g_ca_spectate_enemies 0 "Allow spectating enemy player by dead player during clan arena games."
set g_ca_warmup 10 "how long the players will have time to run around the map before the round starts"
// onslaught
bind SPACE +jump
// weapons
-bind 1 "impulse 1"
-bind 2 "impulse 2"
-bind 3 "impulse 3"
-bind 4 "impulse 4"
-bind 5 "impulse 5"
-bind 6 "impulse 6"
-bind 7 "impulse 7"
-bind 8 "impulse 8"
-bind 9 "impulse 9"
-bind 0 "impulse 14" // cycles the superweapons
+alias weapon_group_1 "impulse 1"
+alias weapon_group_2 "impulse 2"
+alias weapon_group_3 "impulse 3"
+alias weapon_group_4 "impulse 4"
+alias weapon_group_5 "impulse 5"
+alias weapon_group_6 "impulse 6"
+alias weapon_group_7 "impulse 7"
+alias weapon_group_8 "impulse 8"
+alias weapon_group_9 "impulse 9"
+alias weapon_group_0 "impulse 14" // cycles the superweapons
+bind 0 weapon_group_0
+bind 1 weapon_group_1
+bind 2 weapon_group_2
+bind 3 weapon_group_3
+bind 4 weapon_group_4
+bind 5 weapon_group_5
+bind 6 weapon_group_6
+bind 7 weapon_group_7
+bind 8 weapon_group_8
+bind 9 weapon_group_9
bind q weaplast
bind MOUSE1 +fire
bind MOUSE2 +fire2
-bind MOUSE3 +zoom
+bind MOUSE3 togglezoom
bind MOUSE4 weaplast
bind MOUSE5 +hook
bind MWHEELUP weapnext
set g_campaign_forceteam 0 "Forces the player to a given team in campaign mode, 1 = red, 2 = blue, 3 = yellow, 4 = pink"
seta g_campaign_name "xonoticbeta"
set g_campaign_skill 0
-set g_campaignxonotic20_index 0
-set g_campaignxonotic25_index 1
+alias warp "sv_cmd warp $*"
alias singleplayer_start "g_campaign_index 0; set scmenu_campaign_goto 0"
alias singleplayer_continue "set scmenu_campaign_goto -1"
seta hud_panel_weapons_ammo_full_cells 80 "show 100% of the status bar at this ammo count"
seta hud_panel_weapons_ammo_full_rockets 80 "show 100% of the status bar at this ammo count"
seta hud_panel_weapons_ammo_full_fuel 100 "show 100% of the status bar at this ammo count"
+seta hud_panel_weapons_onlyowned 1 "show only owned weapons"
seta hud_panel_ammo_maxammo "40" "when you have this much ammo, the ammo status bar is full"
seta hud_shownames 1 "draw names and health/armor of nearby players"
seta hud_shownames_enemies 2 "1 = draw names of enemies you point at (TODO), 2 = draw names of all enemies in view"
+seta hud_shownames_self 0 "also include your own name to be shown when third person camera mode is on (chase_active/cl_eventchase)"
seta hud_shownames_status 1 "1 = draw health/armor status of teammates"
seta hud_shownames_statusbar_height 4 "height of status bar"
seta hud_shownames_aspect 8 "aspect ratio of total drawing area per name"
seta cl_port $cl_port
seta r_showsurfaces $r_showsurfaces
seta r_ambient $r_ambient
-seta skill $skill
+seta skill 4
seta gl_finish $gl_finish
seta v_kicktime $v_kicktime
seta r_subdivisions_tolerance $r_subdivisions_tolerance
// hud: font size
seta hud_fontsize 11
-seta scr_centersize 12
seta hud_width 560
// these entities are not referenced by anything directly, they just represent
set sv_clones 0 "number of clones a player may make (reset by the \"kill\" command)"
-set cl_handicap 1 "the higher, the more damage you will receive (client setting)"
+set cl_handicap 1 "the higher, the more damage you will receive (client setting) NOTE: reconnect or use sendcvar command to update the choice."
+
+seta cl_clippedspectating 1 "movement collision for spectators so that you can't pass through walls and such. (client setting) NOTE: reconnect or use sendcvar command to update the choice."
// must be at the bottom of this file:
// alias for switching the teamselect menu
set g_triggerimpulse_accel_multiplier 1 "trigger_impulse accelerator multiplier (applied AFTER the power)"
set g_triggerimpulse_directional_multiplier 1 "trigger_impulse directional field multiplier"
set g_triggerimpulse_radial_multiplier 1 "trigger_impulse radial field multiplier"
+set the_goggles "they do nothing" "but the googles, they do"
seta g_ghost_items 1 "enable ghosted items (when between 0 and 1, overrides the alpha value)"
seta g_ghost_items_color "-1 -1 -1" "color of ghosted items, 0 0 0 leaves the color unchanged"
set _campaign_index ""
set _campaign_name ""
+// debug
+set _independent_players 0 "DO NOT TOUCH"
+
// define some engine cvars that we need even on dedicated server
set r_showbboxes 0
// exact gloss looks better, e.g. on g-23
r_shadow_glossexact 1
+r_shadow_glossintensity 1
// use fake light if map has no lightmaps
r_fakelight 1
+++ /dev/null
-title Default // "WickedX"
-author sev
-
-// Colors: 'Red Green Blue'
-// Suffixes: Clicked (_c), Disabled (_d), Focused (_f), Normal (_n)
-
-// Background layer scaling:
-// Crop (c), Letterbox (l), Height (h), Width (w), Stretch (s)
-// Background layer positioning:
-// Top Left (7), Top Center (8) Top Right (9)
-// Middle Left (4), Middle Center (5) Middle Right (6)
-// Bottom Left (1), Bottom Center (2) Bottom Right (3)
-// ALIGN_BACKGROUND(_INGAME) spspsp, s=Scale p=Position
-
-//------------------------------------------------------------------------------
-// Structure (e.g. positions, sizes, margins)
-//------------------------------------------------------------------------------
-// item: color picker
-// uses "colorpicker" images
-MARGIN_COLORPICKER '0 0 0'
-
-// item: dialog
-// uses "border" images
-// uses "closebutton" images
-MARGIN_TOP 8
-MARGIN_BOTTOM 8
-MARGIN_LEFT 8
-MARGIN_RIGHT 8
-MARGIN_COLUMNS 4
-MARGIN_ROWS 4
-HEIGHT_DIALOGBORDER 1
-
-// font sizes (used for everything)
-FONTSIZE_NORMAL 12
-HEIGHT_NORMAL 1.5
-FONTSIZE_TITLE 16
-HEIGHT_TITLE 1.5
-HEIGHT_ZOOMEDTITLE -1
-
-// general
-// uses "background" images
-// uses "background_ingame" images
-ALIGN_BACKGROUND h5h5
-ALIGN_BACKGROUND_INGAME h5
-ALPHA_BACKGROUND_INGAME 1
-ALPHA_DISABLED 0.2
-ALPHA_BEHIND 0.5
-ALPHA_TEXT 0.7
-
-// mouse
-// uses "cursor" images
-SIZE_CURSOR '32 32 0'
-OFFSET_CURSOR '0 0 0'
-ALPHA_CURSOR_INTRO 0
-
-// nexposee positions of windows (they are the scale transformation
-// centers, NOT the actual positions of the windows!)
-POSITION_DIALOG_MULTIPLAYER '0.8 0.4 0'
-POSITION_DIALOG_SINGLEPLAYER '0.2 0.4 0'
-POSITION_DIALOG_SETTINGS '0.5 0.95 0'
-POSITION_DIALOG_CREDITS '-0.05 1.2 0'
-POSITION_DIALOG_QUIT '1.05 1.2 0'
-
-// tooltips
-// uses "tooltip" images
-MARGIN_TOOLTIP '8 8 0'
-BORDER_TOOLTIP '16 16 0'
-FONTSIZE_TOOLTIP 12
-ALPHA_TOOLTIP 0.7
-WIDTH_TOOLTIP 0.3
-AVOID_TOOLTIP '8 8 0'
-
-//------------------------------------------------------------------------------
-// Colors (e.g. font colors, field colors)
-//------------------------------------------------------------------------------
-// item: campaign
-ALPHA_CAMPAIGN_SELECTABLE 0.8
-COLOR_CAMPAIGN_SELECTABLE '1 1 1'
-ALPHA_CAMPAIGN_CURRENT 1
-COLOR_CAMPAIGN_CURRENT '1 1 1'
-ALPHA_CAMPAIGN_FUTURE 0.2
-COLOR_CAMPAIGN_FUTURE '1 1 1'
-ALPHA_CAMPAIGN_DESCRIPTION 0.7
-
-// item: credits list
-COLOR_CREDITS_TITLE '0.875 0.375 0'
-ALPHA_CREDITS_TITLE 1
-COLOR_CREDITS_FUNCTION '0 0.1875 0.4375'
-ALPHA_CREDITS_FUNCTION 0.5
-COLOR_CREDITS_PERSON '0 0.375 0.75'
-ALPHA_CREDITS_PERSON 0.875
-ROWS_CREDITS 20
-WIDTH_CREDITS 0.5
-
-// item: cvar list
-ALPHA_CVARLIST_SAVED 1
-ALPHA_CVARLIST_TEMPORARY 0.7
-COLOR_CVARLIST_CHANGED '0 0.375 0.75'
-COLOR_CVARLIST_REVERTBUTTON '1 0 0'
-COLOR_CVARLIST_UNCHANGED '1 1 1'
-
-// item: list box
-COLOR_LISTBOX_SELECTED '0.875 0.375 0'
-ALPHA_LISTBOX_SELECTED 1
-COLOR_LISTBOX_WAITING '1 1 1'
-ALPHA_LISTBOX_WAITING 0.5
-
-// item: map list
-COLOR_MAPLIST_TITLE '1 1 1'
-COLOR_MAPLIST_AUTHOR '0 0.375 0.75'
-COLOR_MAPLIST_INCLUDEDBG '0 0.1875 0.4375'
-ALPHA_MAPLIST_INCLUDEDFG 1
-ALPHA_MAPLIST_INCLUDEDBG 0.375
-ALPHA_MAPLIST_NOTINCLUDEDFG 0.25
-
-// item: nexposee
-ALPHAS_MAINMENU '0.8 0.9 1'
-
-// item: player model
-COLOR_MODELTITLE '1 1 1'
-ALPHA_MODELTITLE 1
-
-// item: server info
-COLOR_SERVERINFO_NAME '1 1 1'
-COLOR_SERVERINFO_IP '0.875 0.375 0'
-
-// item: server list
-ALPHA_SERVERLIST_FULL 0.4
-ALPHA_SERVERLIST_EMPTY 0.7
-COLOR_SERVERLIST_LOWPING '0 1 0'
-COLOR_SERVERLIST_MEDPING '1 0.75 0'
-COLOR_SERVERLIST_HIGHPING '1 0 0'
-ALPHA_SERVERLIST_HIGHPING 0.4
-ALPHA_SERVERLIST_FAVORITE 0.8
-COLOR_SERVERLIST_FAVORITE '1 1 1'
-
-// item: skin list
-COLOR_SKINLIST_TITLE '1 1 1'
-COLOR_SKINLIST_AUTHOR '0 0.375 0.75'
-
-//------------------------------------------------------------------------------
-// Images (colors multiplied to images)
-//------------------------------------------------------------------------------
-// item: button
-// uses "button" images
-// uses "buttongray" images
-// uses "bigbutton" images
-// uses "bigbuttongray" images
-COLOR_BUTTON_N '1 1 1'
-COLOR_BUTTON_C '1 1 1'
-COLOR_BUTTON_F '1 1 1'
-COLOR_BUTTON_D '1 1 1'
-
-// item: checkbox
-// uses "checkbox" images
-COLOR_CHECKBOX_N '1 1 1'
-COLOR_CHECKBOX_C '0.5 0.75 1'
-COLOR_CHECKBOX_F '0.5 0.75 1'
-COLOR_CHECKBOX_D '1 1 1'
-
-// item: crosshair button
-// uses "crosshairbutton" images
-
-// dialog background colors
-// uses "border" images
-COLOR_DIALOG_MULTIPLAYER '1 1 1'
-COLOR_DIALOG_SETTINGS '1 1 1'
-COLOR_DIALOG_TEAMSELECT '1 1 1'
-COLOR_DIALOG_QUIT '1 1 1'
-COLOR_DIALOG_ADVANCED '1 1 1'
-COLOR_DIALOG_MUTATORS '1 1 1'
-COLOR_DIALOG_MAPINFO '1 1 1'
-COLOR_DIALOG_USERBIND '1 1 1'
-COLOR_DIALOG_SINGLEPLAYER '1 1 1'
-COLOR_DIALOG_CREDITS '1 1 1'
-COLOR_DIALOG_WEAPONS '1 1 1'
-COLOR_DIALOG_WAYPOINTS '1 1 1'
-COLOR_DIALOG_SERVERINFO '1 1 1'
-COLOR_DIALOG_CVARS '1 0 0'
-
-// item: input box
-// uses "inputbox" images
-COLOR_INPUTBOX_N '1 1 1'
-COLOR_INPUTBOX_F '1 1 1'
-MARGIN_INPUTBOX_CHARS 1
-
-// item: key grabber
-COLOR_KEYGRABBER_TITLES '1 1 1'
-ALPHA_KEYGRABBER_TITLES 1
-COLOR_KEYGRABBER_KEYS '1 1 1'
-ALPHA_KEYGRABBER_KEYS 0.7
-
-// item: player color button
-// uses "colorbutton" images
-// uses "color" images
-
-// item: player name editor
-// uses "charmap" images
-// uses "charmapbutton" images
-
-// item: radio button
-// uses "radiobutton" images
-COLOR_RADIOBUTTON_N '1 1 1'
-COLOR_RADIOBUTTON_C '1 1 1'
-COLOR_RADIOBUTTON_F '1 1 1'
-COLOR_RADIOBUTTON_D '1 1 1'
-
-// item: scrollbar
-// uses "scrollbar" images
-COLOR_SCROLLBAR_N '1 1 1'
-COLOR_SCROLLBAR_C '0.5 0.75 1'
-COLOR_SCROLLBAR_F '0.5 0.75 1'
-COLOR_SCROLLBAR_S '0.25 0.25 0.25'
-WIDTH_SCROLLBAR 16
-
-// item: slider
-// uses "slider" images
-COLOR_SLIDER_N '1 1 1'
-COLOR_SLIDER_C '0.5 0.75 1'
-COLOR_SLIDER_F '0.5 0.75 1'
-COLOR_SLIDER_D '1 1 1'
-COLOR_SLIDER_S '0.25 0.25 0.25'
-WIDTH_SLIDERTEXT 0.333333333333
-TOLERANCE_SLIDER '0.2 2 0'
// uses "closebutton" images
MARGIN_TOP 8
MARGIN_BOTTOM 8
-MARGIN_LEFT 8
-MARGIN_RIGHT 8
+MARGIN_LEFT 16
+MARGIN_RIGHT 16
MARGIN_COLUMNS 4
MARGIN_ROWS 4
HEIGHT_DIALOGBORDER 1
--- /dev/null
+title Default // "WickedX"
+author sev
+
+// Colors: 'Red Green Blue'
+// Suffixes: Clicked (_c), Disabled (_d), Focused (_f), Normal (_n)
+
+// Background layer scaling:
+// Crop (c), Letterbox (l), Height (h), Width (w), Stretch (s)
+// Background layer positioning:
+// Top Left (7), Top Center (8) Top Right (9)
+// Middle Left (4), Middle Center (5) Middle Right (6)
+// Bottom Left (1), Bottom Center (2) Bottom Right (3)
+// ALIGN_BACKGROUND(_INGAME) spspsp, s=Scale p=Position
+
+//------------------------------------------------------------------------------
+// Structure (e.g. positions, sizes, margins)
+//------------------------------------------------------------------------------
+// item: color picker
+// uses "colorpicker" images
+MARGIN_COLORPICKER '0 0 0'
+
+// item: dialog
+// uses "border" images
+// uses "closebutton" images
+MARGIN_TOP 8
+MARGIN_BOTTOM 8
+MARGIN_LEFT 16
+MARGIN_RIGHT 16
+MARGIN_COLUMNS 4
+MARGIN_ROWS 4
+HEIGHT_DIALOGBORDER 1
+
+// font sizes (used for everything)
+FONTSIZE_NORMAL 12
+HEIGHT_NORMAL 1.5
+FONTSIZE_TITLE 16
+HEIGHT_TITLE 1.5
+HEIGHT_ZOOMEDTITLE -1
+
+// general
+// uses "background" images
+// uses "background_ingame" images
+ALIGN_BACKGROUND h5h5
+ALIGN_BACKGROUND_INGAME h5
+ALPHA_BACKGROUND_INGAME 1
+ALPHA_DISABLED 0.2
+ALPHA_BEHIND 0.5
+ALPHA_TEXT 0.7
+
+// mouse
+// uses "cursor" images
+SIZE_CURSOR '32 32 0'
+OFFSET_CURSOR '0 0 0'
+ALPHA_CURSOR_INTRO 0
+
+// nexposee positions of windows (they are the scale transformation
+// centers, NOT the actual positions of the windows!)
+POSITION_DIALOG_MULTIPLAYER '0.8 0.4 0'
+POSITION_DIALOG_SINGLEPLAYER '0.2 0.4 0'
+POSITION_DIALOG_SETTINGS '0.5 0.95 0'
+POSITION_DIALOG_CREDITS '-0.05 1.2 0'
+POSITION_DIALOG_QUIT '1.05 1.2 0'
+
+// tooltips
+// uses "tooltip" images
+MARGIN_TOOLTIP '8 8 0'
+BORDER_TOOLTIP '16 16 0'
+FONTSIZE_TOOLTIP 12
+ALPHA_TOOLTIP 0.7
+WIDTH_TOOLTIP 0.3
+AVOID_TOOLTIP '8 8 0'
+
+//------------------------------------------------------------------------------
+// Colors (e.g. font colors, field colors)
+//------------------------------------------------------------------------------
+// item: campaign
+ALPHA_CAMPAIGN_SELECTABLE 0.8
+COLOR_CAMPAIGN_SELECTABLE '1 1 1'
+ALPHA_CAMPAIGN_CURRENT 1
+COLOR_CAMPAIGN_CURRENT '1 1 1'
+ALPHA_CAMPAIGN_FUTURE 0.2
+COLOR_CAMPAIGN_FUTURE '1 1 1'
+ALPHA_CAMPAIGN_DESCRIPTION 0.7
+
+// item: credits list
+COLOR_CREDITS_TITLE '0.875 0.375 0'
+ALPHA_CREDITS_TITLE 1
+COLOR_CREDITS_FUNCTION '0 0.1875 0.4375'
+ALPHA_CREDITS_FUNCTION 0.5
+COLOR_CREDITS_PERSON '0 0.375 0.75'
+ALPHA_CREDITS_PERSON 0.875
+ROWS_CREDITS 20
+WIDTH_CREDITS 0.5
+
+// item: cvar list
+ALPHA_CVARLIST_SAVED 1
+ALPHA_CVARLIST_TEMPORARY 0.7
+COLOR_CVARLIST_CHANGED '0 0.375 0.75'
+COLOR_CVARLIST_REVERTBUTTON '1 0 0'
+COLOR_CVARLIST_UNCHANGED '1 1 1'
+
+// item: list box
+COLOR_LISTBOX_SELECTED '0.875 0.375 0'
+ALPHA_LISTBOX_SELECTED 1
+COLOR_LISTBOX_WAITING '1 1 1'
+ALPHA_LISTBOX_WAITING 0.5
+
+// item: map list
+COLOR_MAPLIST_TITLE '1 1 1'
+COLOR_MAPLIST_AUTHOR '0 0.375 0.75'
+COLOR_MAPLIST_INCLUDEDBG '0 0.1875 0.4375'
+ALPHA_MAPLIST_INCLUDEDFG 1
+ALPHA_MAPLIST_INCLUDEDBG 0.375
+ALPHA_MAPLIST_NOTINCLUDEDFG 0.25
+
+// item: nexposee
+ALPHAS_MAINMENU '0.8 0.9 1'
+
+// item: player model
+COLOR_MODELTITLE '1 1 1'
+ALPHA_MODELTITLE 1
+
+// item: server info
+COLOR_SERVERINFO_NAME '1 1 1'
+COLOR_SERVERINFO_IP '0.875 0.375 0'
+
+// item: server list
+ALPHA_SERVERLIST_FULL 0.4
+ALPHA_SERVERLIST_EMPTY 0.7
+COLOR_SERVERLIST_LOWPING '0 1 0'
+COLOR_SERVERLIST_MEDPING '1 0.75 0'
+COLOR_SERVERLIST_HIGHPING '1 0 0'
+ALPHA_SERVERLIST_HIGHPING 0.4
+ALPHA_SERVERLIST_FAVORITE 0.8
+COLOR_SERVERLIST_FAVORITE '1 1 1'
+
+// item: skin list
+COLOR_SKINLIST_TITLE '1 1 1'
+COLOR_SKINLIST_AUTHOR '0 0.375 0.75'
+
+//------------------------------------------------------------------------------
+// Images (colors multiplied to images)
+//------------------------------------------------------------------------------
+// item: button
+// uses "button" images
+// uses "buttongray" images
+// uses "bigbutton" images
+// uses "bigbuttongray" images
+COLOR_BUTTON_N '1 1 1'
+COLOR_BUTTON_C '1 1 1'
+COLOR_BUTTON_F '1 1 1'
+COLOR_BUTTON_D '1 1 1'
+
+// item: checkbox
+// uses "checkbox" images
+COLOR_CHECKBOX_N '1 1 1'
+COLOR_CHECKBOX_C '0.5 0.75 1'
+COLOR_CHECKBOX_F '0.5 0.75 1'
+COLOR_CHECKBOX_D '1 1 1'
+
+// item: crosshair button
+// uses "crosshairbutton" images
+
+// dialog background colors
+// uses "border" images
+COLOR_DIALOG_MULTIPLAYER '1 1 1'
+COLOR_DIALOG_SETTINGS '1 1 1'
+COLOR_DIALOG_TEAMSELECT '1 1 1'
+COLOR_DIALOG_QUIT '1 1 1'
+COLOR_DIALOG_ADVANCED '1 1 1'
+COLOR_DIALOG_MUTATORS '1 1 1'
+COLOR_DIALOG_MAPINFO '1 1 1'
+COLOR_DIALOG_USERBIND '1 1 1'
+COLOR_DIALOG_SINGLEPLAYER '1 1 1'
+COLOR_DIALOG_CREDITS '1 1 1'
+COLOR_DIALOG_WEAPONS '1 1 1'
+COLOR_DIALOG_WAYPOINTS '1 1 1'
+COLOR_DIALOG_SERVERINFO '1 1 1'
+COLOR_DIALOG_CVARS '1 0 0'
+
+// item: input box
+// uses "inputbox" images
+COLOR_INPUTBOX_N '1 1 1'
+COLOR_INPUTBOX_F '1 1 1'
+MARGIN_INPUTBOX_CHARS 1
+
+// item: key grabber
+COLOR_KEYGRABBER_TITLES '1 1 1'
+ALPHA_KEYGRABBER_TITLES 1
+COLOR_KEYGRABBER_KEYS '1 1 1'
+ALPHA_KEYGRABBER_KEYS 0.7
+
+// item: player color button
+// uses "colorbutton" images
+// uses "color" images
+
+// item: player name editor
+// uses "charmap" images
+// uses "charmapbutton" images
+
+// item: radio button
+// uses "radiobutton" images
+COLOR_RADIOBUTTON_N '1 1 1'
+COLOR_RADIOBUTTON_C '1 1 1'
+COLOR_RADIOBUTTON_F '1 1 1'
+COLOR_RADIOBUTTON_D '1 1 1'
+
+// item: scrollbar
+// uses "scrollbar" images
+COLOR_SCROLLBAR_N '1 1 1'
+COLOR_SCROLLBAR_C '0.5 0.75 1'
+COLOR_SCROLLBAR_F '0.5 0.75 1'
+COLOR_SCROLLBAR_S '0.25 0.25 0.25'
+WIDTH_SCROLLBAR 16
+
+// item: slider
+// uses "slider" images
+COLOR_SLIDER_N '1 1 1'
+COLOR_SLIDER_C '0.5 0.75 1'
+COLOR_SLIDER_F '0.5 0.75 1'
+COLOR_SLIDER_D '1 1 1'
+COLOR_SLIDER_S '0.25 0.25 0.25'
+WIDTH_SLIDERTEXT 0.333333333333
+TOLERANCE_SLIDER '0.2 2 0'
// uses "closebutton" images
MARGIN_TOP 8
MARGIN_BOTTOM 8
-MARGIN_LEFT 8
-MARGIN_RIGHT 8
+MARGIN_LEFT 16
+MARGIN_RIGHT 16
MARGIN_COLUMNS 4
MARGIN_ROWS 4
HEIGHT_DIALOGBORDER 1
seta hud_progressbar_acceleration_color "0.5 0.75 1"
seta hud_progressbar_acceleration_neg_color "0.125 0.25 0.5"
-seta _hud_panelorder "15 12 9 10 5 6 14 0 7 4 11 2 1 3 8 13 "
+seta _hud_panelorder "15 12 9 10 5 6 14 0 7 4 11 2 1 3 8 13 16 "
seta hud_configure_grid "1"
seta hud_configure_grid_xsize "0.010000"
seta hud_configure_grid_ysize "0.010000"
-seta scr_centerpos "0.25"
-
seta hud_panel_weapons 1
seta hud_panel_weapons_pos "0.940000 0.180000"
seta hud_panel_weapons_size "0.060000 0.610000"
seta hud_panel_physics_progressbar "1"
seta hud_panel_physics_text "1"
+seta hud_panel_centerprint 1
+seta hud_panel_centerprint_pos "0.175000 0.260000"
+seta hud_panel_centerprint_size "0.650000 0.210000"
+seta hud_panel_centerprint_bg "0"
+seta hud_panel_centerprint_bg_color ""
+seta hud_panel_centerprint_bg_color_team ""
+seta hud_panel_centerprint_bg_alpha ""
+seta hud_panel_centerprint_bg_border ""
+seta hud_panel_centerprint_bg_padding ""
+seta hud_panel_centerprint_align "0.5"
+seta hud_panel_centerprint_flip "1"
+seta hud_panel_centerprint_fontscale "1"
+seta hud_panel_centerprint_time "3"
+seta hud_panel_centerprint_fadetime "0.25"
+
menu_sync
seta hud_progressbar_acceleration_color "0.5 0.75 1"
seta hud_progressbar_acceleration_neg_color "0.125 0.25 0.5"
-seta _hud_panelorder "10 3 0 14 6 9 13 4 1 2 11 12 7 5 8 15 "
+seta _hud_panelorder "10 3 0 14 6 9 13 4 1 2 11 12 7 5 8 15 16 "
seta hud_configure_grid "1"
seta hud_configure_grid_xsize "0.010000"
seta hud_configure_grid_ysize "0.010000"
-seta scr_centerpos "0.25"
-
seta hud_panel_weapons 1
seta hud_panel_weapons_pos "0.350000 0.940000"
seta hud_panel_weapons_size "0.300000 0.060000"
seta hud_panel_physics_progressbar "3"
seta hud_panel_physics_text "2"
+seta hud_panel_centerprint 1
+seta hud_panel_centerprint_pos "0.175000 0.260000"
+seta hud_panel_centerprint_size "0.650000 0.210000"
+seta hud_panel_centerprint_bg "0"
+seta hud_panel_centerprint_bg_color ""
+seta hud_panel_centerprint_bg_color_team ""
+seta hud_panel_centerprint_bg_alpha ""
+seta hud_panel_centerprint_bg_border ""
+seta hud_panel_centerprint_bg_padding ""
+seta hud_panel_centerprint_align "0.5"
+seta hud_panel_centerprint_flip "1"
+seta hud_panel_centerprint_fontscale "1"
+seta hud_panel_centerprint_time "3"
+seta hud_panel_centerprint_fadetime "0.25"
+
menu_sync
seta hud_progressbar_acceleration_color "0.5 0.75 1"
seta hud_progressbar_acceleration_neg_color "0.125 0.25 0.5"
-seta _hud_panelorder "15 10 9 6 8 14 5 0 4 13 2 7 1 3 11 12 "
+seta _hud_panelorder "15 10 9 6 8 14 5 0 4 13 2 7 1 3 11 12 16 "
seta hud_configure_grid "1"
seta hud_configure_grid_xsize "0.010000"
seta hud_configure_grid_ysize "0.010000"
-seta scr_centerpos "0.25"
-
seta hud_panel_weapons 1
seta hud_panel_weapons_pos "0.920000 0.090000"
seta hud_panel_weapons_size "0.060000 0.630000"
seta hud_panel_physics_progressbar "1"
seta hud_panel_physics_text "1"
+seta hud_panel_centerprint 1
+seta hud_panel_centerprint_pos "0.175000 0.260000"
+seta hud_panel_centerprint_size "0.650000 0.210000"
+seta hud_panel_centerprint_bg "0"
+seta hud_panel_centerprint_bg_color ""
+seta hud_panel_centerprint_bg_color_team ""
+seta hud_panel_centerprint_bg_alpha ""
+seta hud_panel_centerprint_bg_border ""
+seta hud_panel_centerprint_bg_padding ""
+seta hud_panel_centerprint_align "0.5"
+seta hud_panel_centerprint_flip "1"
+seta hud_panel_centerprint_fontscale "1"
+seta hud_panel_centerprint_time "3"
+seta hud_panel_centerprint_fadetime "0.25"
+
menu_sync
seta hud_progressbar_acceleration_color "0.5 0.75 1"
seta hud_progressbar_acceleration_neg_color "0.125 0.25 0.5"
-seta _hud_panelorder "15 3 1 2 11 10 0 14 6 9 13 4 12 7 5 8 "
+seta _hud_panelorder "15 3 1 2 11 10 0 14 6 9 13 4 12 7 5 8 16 "
seta hud_configure_grid "1"
seta hud_configure_grid_xsize "0.010000"
seta hud_configure_grid_ysize "0.010000"
-seta scr_centerpos "0.25"
-
seta hud_panel_weapons 1
seta hud_panel_weapons_pos "0.350000 0.940000"
seta hud_panel_weapons_size "0.300000 0.060000"
seta hud_panel_physics_progressbar "3"
seta hud_panel_physics_text "2"
+seta hud_panel_centerprint 1
+seta hud_panel_centerprint_pos "0.175000 0.260000"
+seta hud_panel_centerprint_size "0.650000 0.210000"
+seta hud_panel_centerprint_bg "0"
+seta hud_panel_centerprint_bg_color ""
+seta hud_panel_centerprint_bg_color_team ""
+seta hud_panel_centerprint_bg_alpha ""
+seta hud_panel_centerprint_bg_border ""
+seta hud_panel_centerprint_bg_padding ""
+seta hud_panel_centerprint_align "0.5"
+seta hud_panel_centerprint_flip "1"
+seta hud_panel_centerprint_fontscale "1"
+seta hud_panel_centerprint_time "3"
+seta hud_panel_centerprint_fadetime "0.25"
+
menu_sync
seta hud_progressbar_acceleration_color "0.25 1 0.25"
seta hud_progressbar_acceleration_neg_color "1 0.25 0.25"
-seta _hud_panelorder "15 0 11 8 5 6 14 9 13 7 2 3 1 10 12 4 "
+seta _hud_panelorder "15 0 11 8 5 6 14 9 13 7 2 3 1 10 12 4 16 "
seta hud_configure_grid "1"
seta hud_configure_grid_xsize "0.01"
seta hud_configure_grid_ysize "0.01"
-seta scr_centerpos "0.25"
-
seta hud_panel_weapons 1
seta hud_panel_weapons_pos "0.370000 0.870000"
seta hud_panel_weapons_size "0.340000 0.060000"
seta hud_panel_physics_progressbar "3"
seta hud_panel_physics_text "2"
+seta hud_panel_centerprint 1
+seta hud_panel_centerprint_pos "0.175000 0.260000"
+seta hud_panel_centerprint_size "0.650000 0.210000"
+seta hud_panel_centerprint_bg "0"
+seta hud_panel_centerprint_bg_color ""
+seta hud_panel_centerprint_bg_color_team ""
+seta hud_panel_centerprint_bg_alpha ""
+seta hud_panel_centerprint_bg_border ""
+seta hud_panel_centerprint_bg_padding ""
+seta hud_panel_centerprint_align "0.5"
+seta hud_panel_centerprint_flip "1"
+seta hud_panel_centerprint_fontscale "1"
+seta hud_panel_centerprint_time "3"
+seta hud_panel_centerprint_fadetime "0.25"
+
menu_sync
alias _seekdemo_3_1 "_seekdemo_7"
alias _seekdemo_4 "set _demo_good 0; cl_cmd rpn /_demo_good 1 def; _seekdemo_5"
alias _seekdemo_5 "_seekdemo_6_$_demo_good"
-alias _seekdemo_6_0 "defer 0.001 _seekdemo_4"
+alias _seekdemo_6_0 "defer 0.02 _seekdemo_4"
alias _seekdemo_6_1 "defer clear; _seekdemo_7"
alias _seekdemo_7 "set _demo_time_step 2; cl_cmd rpn _demo_time time gt /_demo_time_step exch def; _seekdemo_8"
alias _seekdemo_8 "_seekdemo_9_$_demo_time_step"
"weaplast" "previously used"
"weapbest" "best"
"reload" "reload"
-"impulse 1" "Laser"
-"impulse 2" "Shotgun"
-"impulse 3" "Machine Gun"
-"impulse 4" "Mortar / Mine Layer"
-"impulse 5" "Electro"
-"impulse 6" "Crylink / HLAC"
-"impulse 7" "Nex / MinstaNex / Rifle"
-"impulse 8" "Hagar / Seeker"
-"impulse 9" "Rocket Launcher / Fireball"
-"impulse 14" "Port-O-Launch / Hook"
+"weapon_group_1" "Laser"
+"weapon_group_2" "Shotgun"
+"weapon_group_3" "Machine Gun"
+"weapon_group_4" "Mortar / Mine Layer"
+"weapon_group_5" "Electro"
+"weapon_group_6" "Crylink / HLAC"
+"weapon_group_7" "Nex / MinstaNex / Rifle"
+"weapon_group_8" "Hagar / Seeker"
+"weapon_group_9" "Rocket Launcher / Fireball"
+"weapon_group_0" "Port-O-Launch / Hook"
"" ""
"" "View"
"+zoom" "hold zoom"
"impulse 14" "Port-O-Launch / Hook"
"" ""
"" "Vista"
-"+zoom" "zoom click unico"
-"togglezoom" "zoom con doppio click"
+"+zoom" "tieni zoom"
+"togglezoom" "attiva/disattiva zoom"
"+showscores" "mostra punteggio"
"screenshot" "cattura schermata"
"" ""
"+show_info" "info del server"
"toggleconsole" "apri console"
"disconnect" "disconnetti"
-"quit" "chiudi"
+"quit" "esci"
"" ""
"" "Teamplay"
"messagemode2" "chat di squadra"
de German "Deutsch"
en English "English"
-fi Finnish "Suomi"
+es Spanish "Español"
fr French "Français"
-hu Hungarian "Magyar"
it Italian "Italiano"
+hu Hungarian "Magyar"
nl Dutch "Nederlands"
pt Portuguese "Português"
ro Romanian "Romana"
ru Russian "Русский"
-se Swedish "Svenska"
-es Spanish "Español"
+fi Finnish "Suomi"
msgstr ""
"Project-Id-Version: 0.1preview\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2011-08-04 22:19+0200\n"
+"POT-Creation-Date: 2011-09-12 12:24+0200\n"
"PO-Revision-Date: 2011-04-20 10:46+0200\n"
"Last-Translator: Rudolf Polzer <divVerent@xonotic.org>\n"
"Language-Team: Rudolf Polzer <divVerent@xonotic.org>\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
+#: qcsrc/common/mapinfo.qc:1092 qcsrc/menu/xonotic/skinlist.c:163
+#, c-format
+msgid "%s: %s"
+msgstr "%s: %s"
+
#: qcsrc/menu/gamecommand.qc:47
#, c-format
msgid "error: status is %d\n"
msgstr "^4MQC Build-Information: ^1%s (deutsch)\n"
#: qcsrc/menu/xonotic/campaign.c:284
-#: qcsrc/menu/xonotic/dialog_singleplayer.c:66
+#: qcsrc/menu/xonotic/dialog_singleplayer.c:123
msgid "???"
msgstr "???"
msgstr "Icon ausrichten:"
#: qcsrc/menu/xonotic/dialog_hudpanel_ammo.c:29
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:36
#: qcsrc/menu/xonotic/dialog_hudpanel_healtharmor.c:28
#: qcsrc/menu/xonotic/dialog_hudpanel_healtharmor.c:40
#: qcsrc/menu/xonotic/dialog_hudpanel_powerups.c:28
msgstr "Links"
#: qcsrc/menu/xonotic/dialog_hudpanel_ammo.c:30
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:38
#: qcsrc/menu/xonotic/dialog_hudpanel_healtharmor.c:30
#: qcsrc/menu/xonotic/dialog_hudpanel_healtharmor.c:41
#: qcsrc/menu/xonotic/dialog_hudpanel_powerups.c:30
msgid "Right"
msgstr "Rechts"
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:4
+msgid "Centerprint"
+msgstr "Nachrichten"
+
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:23
+msgid "Message duration:"
+msgstr "Anzeigedauer:"
+
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:27
+msgid "Fade time:"
+msgstr "Ausblenden nach:"
+
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:31
+msgid "Flip messages order"
+msgstr "Reihenfolge vertauschen"
+
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:33
+msgid "Text alignment:"
+msgstr "Textausrichtung:"
+
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:37
+#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup_weapons.c:50
+msgid "Center"
+msgstr "Mittig"
+
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:41
+msgid "Font scale:"
+msgstr "Schriftgröße:"
+
#: qcsrc/menu/xonotic/dialog_hudpanel_chat.c:4
msgid "Chat Panel"
msgstr "Chat-Panel"
msgstr "Panel nicht anzeigen"
#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:23
-msgid "Panel enabled if not observing"
-msgstr "Panel beim Spielen anzeigen"
+msgid "Panel enabled"
+msgstr "Panel anzeigen"
#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:24
-#: qcsrc/menu/xonotic/dialog_hudpanel_pressedkeys.c:23
-#: qcsrc/menu/xonotic/dialog_hudpanel_radar.c:23
-msgid "Panel always enabled"
-msgstr "Panel immer anzeigen"
+msgid "Panel enabled even observing"
+msgstr "Panel auch beim Zuschauen anzeigen"
-#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:30
+#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:25
+msgid "Panel enabled only in Race/CTS"
+msgstr "Panel nur in Race und CTS anzeigen"
+
+#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:31
msgid "Status bar"
msgstr "Statusleiste"
-#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:32
+#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:33
#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup_weapons.c:48
msgid "Left align"
msgstr "Links"
-#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:33
+#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:34
#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup_weapons.c:52
msgid "Right align"
msgstr "Rechts"
-#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:34
+#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:35
msgid "Inward align"
msgstr "Innen"
-#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:35
+#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:36
msgid "Outward align"
msgstr "Außen"
-#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:39
+#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:40
msgid "Flip speed/acceleration positions"
msgstr "Geschwindigkeit/Beschleunigung tauschen"
-#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:43
+#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:44
msgid "Speed:"
msgstr "Geschwindigkeit:"
-#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:44
+#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:45
msgid "Include vertical speed"
msgstr "Mit vertikaler Geschwindigkeit"
-#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:55
+#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:56
msgid "Speed unit:"
msgstr "Geschwindigkeitseinheit:"
-#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:57
+#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:58
msgid "qu/s"
msgstr "qu/s"
-#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:58
+#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:59
msgid "m/s"
msgstr "m/s"
-#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:59
+#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:60
msgid "km/h"
msgstr "km/h"
-#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:60
+#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:61
msgid "mph"
msgstr "mph"
-#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:61
+#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:62
msgid "knots"
msgstr "Knoten"
-#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:63
+#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:64
msgid "Show"
msgstr "Anzeigen"
-#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:66
+#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:67
msgid "Top speed"
msgstr "Geschwindigkeitsrekord:"
-#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:72
+#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:73
msgid "Acceleration:"
msgstr "Beschleunigung:"
-#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:73
+#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:74
msgid "Include vertical acceleration"
msgstr "Mit vertikaler Beschleunigung"
msgid "Panel enabled when spectating"
msgstr "Panel beim Zuschauen anzeigen"
+#: qcsrc/menu/xonotic/dialog_hudpanel_pressedkeys.c:23
+#: qcsrc/menu/xonotic/dialog_hudpanel_radar.c:23
+msgid "Panel always enabled"
+msgstr "Panel immer anzeigen"
+
#: qcsrc/menu/xonotic/dialog_hudpanel_pressedkeys.c:30
msgid "Forced aspect:"
msgstr "Aspektverhältnis:"
#: qcsrc/menu/xonotic/dialog_hudsetup_exit.c:43
#: qcsrc/menu/xonotic/dialog_hudsetup_exit.c:82
#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:154
-#: qcsrc/menu/xonotic/util.qc:600
+#: qcsrc/menu/xonotic/util.qc:612
msgid "Alpha:"
msgstr "Alpha:"
msgstr "Waffensymbole:"
#: qcsrc/menu/xonotic/dialog_hudpanel_weapons.c:45
+msgid "Show only owned weapons"
+msgstr "Nur vorhandene Waffen zeigen"
+
+#: qcsrc/menu/xonotic/dialog_hudpanel_weapons.c:48
msgid "Show weapon ID as:"
msgstr "Waffen-ID zeigen als:"
-#: qcsrc/menu/xonotic/dialog_hudpanel_weapons.c:46
+#: qcsrc/menu/xonotic/dialog_hudpanel_weapons.c:49
msgid "SHOWAS^None"
msgstr "nichts"
-#: qcsrc/menu/xonotic/dialog_hudpanel_weapons.c:47
+#: qcsrc/menu/xonotic/dialog_hudpanel_weapons.c:50
msgid "Number"
msgstr "Zahl"
-#: qcsrc/menu/xonotic/dialog_hudpanel_weapons.c:48
+#: qcsrc/menu/xonotic/dialog_hudpanel_weapons.c:51
msgid "Bind"
msgstr "Taste"
-#: qcsrc/menu/xonotic/dialog_hudpanel_weapons.c:51
+#: qcsrc/menu/xonotic/dialog_hudpanel_weapons.c:54
msgid "Show Accuracy"
msgstr "Trefferquote zeigen"
-#: qcsrc/menu/xonotic/dialog_hudpanel_weapons.c:52
+#: qcsrc/menu/xonotic/dialog_hudpanel_weapons.c:55
msgid "Show Ammo"
msgstr "Munition zeigen"
-#: qcsrc/menu/xonotic/dialog_hudpanel_weapons.c:55
+#: qcsrc/menu/xonotic/dialog_hudpanel_weapons.c:58
msgid "Ammo bar color:"
msgstr "Muntionsleistenfarbe:"
-#: qcsrc/menu/xonotic/dialog_hudpanel_weapons.c:61
+#: qcsrc/menu/xonotic/dialog_hudpanel_weapons.c:64
msgid "Ammo bar alpha:"
msgstr "Munitionsleistenalpha:"
msgid "Panel background defaults:"
msgstr "Panel-Standardhintergrund:"
-#: qcsrc/menu/xonotic/dialog_hudsetup_exit.c:23 qcsrc/menu/xonotic/util.qc:575
+#: qcsrc/menu/xonotic/dialog_hudsetup_exit.c:23 qcsrc/menu/xonotic/util.qc:587
msgid "Background:"
msgstr "Hintergrund:"
#: qcsrc/menu/xonotic/dialog_hudsetup_exit.c:25
#: qcsrc/menu/xonotic/dialog_hudsetup_exit.c:37
#: qcsrc/menu/xonotic/dialog_hudsetup_exit.c:52
-#: qcsrc/menu/xonotic/dialog_hudsetup_exit.c:91 qcsrc/menu/xonotic/util.qc:578
-#: qcsrc/menu/xonotic/util.qc:594 qcsrc/menu/xonotic/util.qc:611
+#: qcsrc/menu/xonotic/dialog_hudsetup_exit.c:91 qcsrc/menu/xonotic/util.qc:590
+#: qcsrc/menu/xonotic/util.qc:606 qcsrc/menu/xonotic/util.qc:623
msgid "Disable"
msgstr "Aus"
#: qcsrc/menu/xonotic/dialog_hudsetup_exit.c:30
-#: qcsrc/menu/xonotic/dialog_hudsetup_exit.c:77 qcsrc/menu/xonotic/util.qc:583
+#: qcsrc/menu/xonotic/dialog_hudsetup_exit.c:77 qcsrc/menu/xonotic/util.qc:595
msgid "Color:"
msgstr "Farbe:"
-#: qcsrc/menu/xonotic/dialog_hudsetup_exit.c:35 qcsrc/menu/xonotic/util.qc:591
+#: qcsrc/menu/xonotic/dialog_hudsetup_exit.c:35 qcsrc/menu/xonotic/util.qc:603
msgid "Border size:"
msgstr "Rahmengröße:"
msgid "Team color:"
msgstr "Teamfarbe:"
-#: qcsrc/menu/xonotic/dialog_hudsetup_exit.c:58 qcsrc/menu/xonotic/util.qc:617
+#: qcsrc/menu/xonotic/dialog_hudsetup_exit.c:58 qcsrc/menu/xonotic/util.qc:629
msgid "Test team color in configure mode"
msgstr "Teamfarbe bei Konfiguration testen"
-#: qcsrc/menu/xonotic/dialog_hudsetup_exit.c:61 qcsrc/menu/xonotic/util.qc:620
+#: qcsrc/menu/xonotic/dialog_hudsetup_exit.c:61 qcsrc/menu/xonotic/util.qc:632
msgid "Padding:"
msgstr "Abstand:"
msgid "Game types:"
msgstr "Spieltyp:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create_mapinfo.c:119
+#: qcsrc/menu/xonotic/dialog_multiplayer_create_mapinfo.c:118
#: qcsrc/menu/xonotic/dialog_multiplayer_join_serverinfo.c:314
msgid "Close"
msgstr "Schließen"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create_mapinfo.c:122
-#: qcsrc/menu/xonotic/dialog_multiplayer_demo.c:46
-msgid "Play"
+#: qcsrc/menu/xonotic/dialog_multiplayer_create_mapinfo.c:121
+msgid "MAP^Play"
msgstr "Start"
#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:7
msgid "Timedemo"
msgstr "Timedemo"
+#: qcsrc/menu/xonotic/dialog_multiplayer_demo.c:46
+msgid "DEMO^Play"
+msgstr "Abspielen"
+
#: qcsrc/menu/xonotic/dialog_multiplayer_join.c:4
msgid "Join"
msgstr "Verbinden"
#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:195
#: qcsrc/menu/xonotic/dialog_settings_audio.c:173
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:193
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:194
+#: qcsrc/menu/xonotic/dialog_settings_input.c:74
#: qcsrc/menu/xonotic/dialog_settings_misc.c:30
#: qcsrc/menu/xonotic/dialog_settings_misc.c:41
#: qcsrc/menu/xonotic/dialog_settings_video.c:109
msgid "Draw 1st person weapon model"
msgstr "Waffe in 3D anzeigen"
-#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup_weapons.c:50
-msgid "Center"
-msgstr "Mittig"
-
#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup_weapons.c:55
msgid "Flip view horizontally"
msgstr "3D-Ansicht spiegeln"
msgstr "Bewegungsunschärfe:"
#: qcsrc/menu/xonotic/dialog_settings_effects.c:189
-msgid "Damage & water blur"
-msgstr "Schadens-Unschärfe"
-
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:190
-msgid "Powerup sharpen"
-msgstr "Bonus-Schärfe"
+msgid "Blur and sharpen postprocessing"
+msgstr "Schärfeeffekte"
#: qcsrc/menu/xonotic/dialog_settings_input.c:26
msgid "Key bindings:"
msgid "\"enter console\" also closes"
msgstr "\"Konsole öffnen\" schließt auch"
+#: qcsrc/menu/xonotic/dialog_settings_input.c:72
+msgid "Holding jump key keeps jumping"
+msgstr "Festhalten der Springen-Taste springt weiter"
+
#: qcsrc/menu/xonotic/dialog_settings_input_userbind.c:5
msgid "User defined key bind"
msgstr "Benutzerdefinierte Tastenbelegung"
msgid "Singleplayer"
msgstr "Einzelspieler"
-#: qcsrc/menu/xonotic/dialog_singleplayer.c:59
+#: qcsrc/menu/xonotic/dialog_singleplayer.c:116
msgid "Instant action! (random map with bots)"
msgstr "Sofortstart! (zufällige Map mit Bots)"
-#: qcsrc/menu/xonotic/dialog_singleplayer.c:80
+#: qcsrc/menu/xonotic/dialog_singleplayer.c:137
msgid "Start Singleplayer!"
msgstr "Spiel starten!"
msgid "Bookmark"
msgstr "Speichern"
-#: qcsrc/menu/xonotic/serverlist.c:523
+#: qcsrc/menu/xonotic/serverlist.c:527
msgid "Ping"
msgstr "Ping"
-#: qcsrc/menu/xonotic/serverlist.c:524
+#: qcsrc/menu/xonotic/serverlist.c:528
msgid "Host name"
msgstr "Servername"
-#: qcsrc/menu/xonotic/serverlist.c:525
+#: qcsrc/menu/xonotic/serverlist.c:529
msgid "Map"
msgstr "Map"
-#: qcsrc/menu/xonotic/serverlist.c:526
+#: qcsrc/menu/xonotic/serverlist.c:530
msgid "Type"
msgstr "Typ"
-#: qcsrc/menu/xonotic/serverlist.c:527
+#: qcsrc/menu/xonotic/serverlist.c:531
msgid "Players"
msgstr "Spieler"
msgid "<AUTHOR>"
msgstr "<AUTOR>"
-#: qcsrc/menu/xonotic/skinlist.c:163
-#, c-format
-msgid "%s: %s"
-msgstr "%s: %s"
-
#: qcsrc/menu/xonotic/slider_decibels.c:50
msgid "VOL^OFF"
msgstr "AUS"
msgid "%dx%d"
msgstr "%dx%d"
-#: qcsrc/menu/xonotic/util.qc:270
+#: qcsrc/menu/xonotic/util.qc:271
#, c-format
msgid "Received HTTP request data for an invalid id %d.\n"
msgstr "HTTP-Antwort für ungültige ID %d erhalten.\n"
-#: qcsrc/menu/xonotic/util.qc:285
+#: qcsrc/menu/xonotic/util.qc:286
#, c-format
msgid "error receiving update notification: status is %d\n"
msgstr "Fehler beim Empfang von Update-Information (Status: %d)\n"
-#: qcsrc/menu/xonotic/util.qc:290
+#: qcsrc/menu/xonotic/util.qc:291
msgid "error: received HTML instead of an update notification\n"
msgstr "Fehler: HTML statt Update-Information erhalten\n"
-#: qcsrc/menu/xonotic/util.qc:295
+#: qcsrc/menu/xonotic/util.qc:296
msgid "error: received carriage returns from update notification server\n"
msgstr "Fehler: Carriage-Returns in Update-Information enthalten\n"
-#: qcsrc/menu/xonotic/util.qc:316
+#: qcsrc/menu/xonotic/util.qc:317
#, c-format
msgid ""
"Update can be downloaded at:\n"
"%s\n"
"heruntergeladen werden.\n"
-#: qcsrc/menu/xonotic/util.qc:337
+#: qcsrc/menu/xonotic/util.qc:340
msgid "Autogenerating mapinfo for newly added maps..."
msgstr "Automatische Generierung von mapinfo-Dateien..."
-#: qcsrc/menu/xonotic/util.qc:367
+#: qcsrc/menu/xonotic/util.qc:370
#, c-format
msgid "^1%s TEST BUILD"
msgstr "^1%s TESTVERSION"
-#: qcsrc/menu/xonotic/util.qc:432
+#: qcsrc/menu/xonotic/util.qc:428
#, c-format
msgid "Update to %s now!"
msgstr "Jetzt auf %s updaten!"
-#: qcsrc/menu/xonotic/util.qc:501
+#: qcsrc/menu/xonotic/util.qc:513
msgid ""
"^1ERROR: Texture compression is required but not supported.\n"
"^1Expect visual problems.\n"
"^1FEHLER: Texturekompression ist notwendig aber nicht unterstützt.\n"
"^1Darstellungsprobleme sind zu erwarten.\n"
-#: qcsrc/menu/xonotic/util.qc:523
+#: qcsrc/menu/xonotic/util.qc:535
msgid "Arena"
msgstr "Arena"
-#: qcsrc/menu/xonotic/util.qc:524
+#: qcsrc/menu/xonotic/util.qc:536
msgid "Assault"
msgstr "Assault"
-#: qcsrc/menu/xonotic/util.qc:525
+#: qcsrc/menu/xonotic/util.qc:537
msgid "Capture The Flag"
msgstr "Capture The Flag"
-#: qcsrc/menu/xonotic/util.qc:526
+#: qcsrc/menu/xonotic/util.qc:538
msgid "Clan Arena"
msgstr "Clan Arena"
-#: qcsrc/menu/xonotic/util.qc:527
+#: qcsrc/menu/xonotic/util.qc:539
msgid "Deathmatch"
msgstr "Deathmatch"
-#: qcsrc/menu/xonotic/util.qc:528
+#: qcsrc/menu/xonotic/util.qc:540
msgid "Domination"
msgstr "Domination"
-#: qcsrc/menu/xonotic/util.qc:529
+#: qcsrc/menu/xonotic/util.qc:541
msgid "Freeze Tag"
msgstr "Freeze Tag"
-#: qcsrc/menu/xonotic/util.qc:530
+#: qcsrc/menu/xonotic/util.qc:542
msgid "Keepaway"
msgstr "Keepaway"
-#: qcsrc/menu/xonotic/util.qc:531
+#: qcsrc/menu/xonotic/util.qc:543
msgid "Key Hunt"
msgstr "Key Hunt"
-#: qcsrc/menu/xonotic/util.qc:532
+#: qcsrc/menu/xonotic/util.qc:544
msgid "Last Man Standing"
msgstr "Last Man Standing"
-#: qcsrc/menu/xonotic/util.qc:533
+#: qcsrc/menu/xonotic/util.qc:545
msgid "Nexball"
msgstr "Nexball"
-#: qcsrc/menu/xonotic/util.qc:534
+#: qcsrc/menu/xonotic/util.qc:546
msgid "Onslaught"
msgstr "Onslaught"
-#: qcsrc/menu/xonotic/util.qc:535
+#: qcsrc/menu/xonotic/util.qc:547
msgid "Race"
msgstr "Race"
-#: qcsrc/menu/xonotic/util.qc:536
+#: qcsrc/menu/xonotic/util.qc:548
msgid "Race CTS"
msgstr "Race CTS"
-#: qcsrc/menu/xonotic/util.qc:537
+#: qcsrc/menu/xonotic/util.qc:549
msgid "Runematch"
msgstr "Runematch"
-#: qcsrc/menu/xonotic/util.qc:538
+#: qcsrc/menu/xonotic/util.qc:550
msgid "Team Deathmatch"
msgstr "Team Deathmatch"
-#: qcsrc/menu/xonotic/util.qc:557
+#: qcsrc/menu/xonotic/util.qc:569
#, c-format
msgid "@!#%'n Tuba Throwing"
msgstr "@!#%'n Tuba-Werfen"
-#: qcsrc/menu/xonotic/util.qc:577 qcsrc/menu/xonotic/util.qc:593
-#: qcsrc/menu/xonotic/util.qc:602 qcsrc/menu/xonotic/util.qc:610
-#: qcsrc/menu/xonotic/util.qc:622
+#: qcsrc/menu/xonotic/util.qc:589 qcsrc/menu/xonotic/util.qc:605
+#: qcsrc/menu/xonotic/util.qc:614 qcsrc/menu/xonotic/util.qc:622
+#: qcsrc/menu/xonotic/util.qc:634
msgid "Default"
msgstr "Standard"
-#: qcsrc/menu/xonotic/util.qc:588
+#: qcsrc/menu/xonotic/util.qc:600
msgid "Use default"
msgstr "Standard verwenden"
-#: qcsrc/menu/xonotic/util.qc:608
+#: qcsrc/menu/xonotic/util.qc:620
msgid "Team Color:"
msgstr "Teamfarbe:"
msgid "Crylink"
msgstr "Crylink"
-#: qcsrc/server/w_crylink.qc:664
+#: qcsrc/server/w_crylink.qc:666
#, c-format
msgid "%s succeeded at self-destructing themself with the Crylink"
msgstr "%s zerstörte sich selbst erfolgreich mit der Crylink"
-#: qcsrc/server/w_crylink.qc:669
+#: qcsrc/server/w_crylink.qc:671
#, c-format
msgid "%s could not hide from %s's Crylink"
msgstr "%s konnte sich nicht vor %ss Crylink verstecken"
-#: qcsrc/server/w_crylink.qc:671
+#: qcsrc/server/w_crylink.qc:673
#, c-format
msgid "%s was too close to %s's Crylink"
msgstr "%s trat %ss Crylink zu nahe"
-#: qcsrc/server/w_crylink.qc:673
+#: qcsrc/server/w_crylink.qc:675
#, c-format
msgid "%s took a close look at %s's Crylink"
msgstr "%s schaute sich %ss Crylink sehr genau an"
msgid "Hagar"
msgstr "Hagar"
-#: qcsrc/server/w_hagar.qc:382 qcsrc/server/w_seeker.qc:655
+#: qcsrc/server/w_hagar.qc:395 qcsrc/server/w_seeker.qc:655
#, c-format
msgid "%s played with tiny rockets"
msgstr "%s hat mit kleinen Raketen gespielt"
-#: qcsrc/server/w_hagar.qc:386
+#: qcsrc/server/w_hagar.qc:399
#, c-format
msgid "%s hoped %s's missiles wouldn't bounce"
msgstr "%s hat gehofft, dass %ss Raketen nicht von Wänden abprallen"
-#: qcsrc/server/w_hagar.qc:388 qcsrc/server/w_seeker.qc:661
+#: qcsrc/server/w_hagar.qc:401 qcsrc/server/w_seeker.qc:661
#, c-format
msgid "%s was pummeled by %s"
msgstr "^1%s^1 wurde von %s^1 erwischt"
#: qcsrc/server/w_hook.qc:2
msgid "Grappling Hook"
-msgstr "Grappling Hook"
+msgstr "Enterhaken"
#: qcsrc/server/w_hook.qc:266 qcsrc/server/w_porto.qc:296
#, c-format
msgid "MinstaNex"
msgstr "MinstaNex"
-#: qcsrc/server/w_minstanex.qc:290 qcsrc/server/w_nex.qc:253
-#: qcsrc/server/w_shotgun.qc:209 qcsrc/server/w_uzi.qc:317
+#: qcsrc/server/w_minstanex.qc:293 qcsrc/server/w_nex.qc:253
+#: qcsrc/server/w_shotgun.qc:215 qcsrc/server/w_uzi.qc:317
#, c-format
msgid "%s is now thinking with portals"
msgstr "%s kann jetzt mit Portalen denken"
-#: qcsrc/server/w_minstanex.qc:292 qcsrc/server/w_nex.qc:255
+#: qcsrc/server/w_minstanex.qc:295 qcsrc/server/w_nex.qc:255
#, c-format
msgid "%s has been vaporized by %s"
msgstr "^1%s^1 wurde von %s^1 vernichtet"
msgid "Shotgun"
msgstr "Shotgun"
-#: qcsrc/server/w_shotgun.qc:213
+#: qcsrc/server/w_shotgun.qc:219
#, c-format
msgid "%2$s ^7slapped %1$s ^7around a bit with a large ^2shotgun"
msgstr "%2$1s ^7hat %1$s ^7ein wenig mit einer großen Schrotflinte geschlagen"
-#: qcsrc/server/w_shotgun.qc:215
+#: qcsrc/server/w_shotgun.qc:221
#, c-format
msgid "%s was gunned by %s"
msgstr "^1%s^1 wurde von %s^1 erschossen"
#, c-format
msgid "%s was riddled full of holes by %s"
msgstr "%s ist von %s durchlöchert worden wie ein Schweizer Käse"
+
+#~ msgid "Damage & water blur"
+#~ msgstr "Schadens-Unschärfe"
+
+#~ msgid "Powerup sharpen"
+#~ msgstr "Bonus-Schärfe"
msgstr ""
"Project-Id-Version: Xonotic 0.1preview\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2011-06-27 18:26+0200\n"
+"POT-Creation-Date: 2011-09-02 07:51+0200\n"
"Last-Translator: Rodrigo Mouton Laudin <ratogenesis@gmail.com>\n"
"Language: es\n"
"MIME-Version: 1.0\n"
"Content-Transfer-Encoding: 8bit\n"
"PO-Revisión-Date: 2011-03-24 19:40+0100\n"
+#: qcsrc/common/mapinfo.qc:1092 qcsrc/menu/xonotic/skinlist.c:163
+#, c-format
+msgid "%s: %s"
+msgstr "%s: %s"
+
#: qcsrc/menu/gamecommand.qc:47
#, c-format
msgid "error: status is %d\n"
#: qcsrc/menu/gamecommand.qc:239
msgid "Invalid command. For a list of supported commands, try menu_cmd help.\n"
msgstr ""
-"Comando no valido. Para una lista de comandos soportados, teclea menu_cmd "
+"Comando no válido. Para una lista de comandos soportados, escriba menu_cmd "
"help\n"
#: qcsrc/menu/item/gecko.c:49
msgid "Browser not initialized!"
-msgstr "navegador no inicializado!"
+msgstr "¡Navegador no inicializado!"
#: qcsrc/menu/item/label.c:63
#, c-format
msgstr "Personalizado"
#: qcsrc/menu/menu.qc:29
-#, fuzzy, c-format
+#, c-format
msgid "^4MQC Build information: ^1%s\n"
msgstr "^4MQC Información de compilación/build %s\n"
#: qcsrc/menu/xonotic/campaign.c:284
-#: qcsrc/menu/xonotic/dialog_singleplayer.c:66
+#: qcsrc/menu/xonotic/dialog_singleplayer.c:134
msgid "???"
msgstr "???"
"player name to get started. You can change these options later through the "
"menu system."
msgstr ""
-"Bienvenido a Xonotic, por favor seleccióne su Lenguaje preferido y luego "
+"Bienvenido a Xonotic, por favor seleccióne su lenguaje preferido y luego "
"ingrese su nombre de jugador. Estas opciones pueden ser modificadas luego "
"utilizando el menú de configuración"
#: qcsrc/menu/xonotic/dialog_hudpanel_ammo.c:4
msgid "Ammo Panel"
-msgstr "panel de munición"
+msgstr "Panel de munición"
#: qcsrc/menu/xonotic/dialog_hudpanel_ammo.c:22
msgid "Ammunition display:"
#: qcsrc/menu/xonotic/dialog_hudpanel_ammo.c:28
msgid "Align icon:"
-msgstr ""
+msgstr "Alinear ícono"
#: qcsrc/menu/xonotic/dialog_hudpanel_ammo.c:29
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:36
#: qcsrc/menu/xonotic/dialog_hudpanel_healtharmor.c:28
#: qcsrc/menu/xonotic/dialog_hudpanel_healtharmor.c:40
#: qcsrc/menu/xonotic/dialog_hudpanel_powerups.c:28
msgstr "Izquierda"
#: qcsrc/menu/xonotic/dialog_hudpanel_ammo.c:30
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:38
#: qcsrc/menu/xonotic/dialog_hudpanel_healtharmor.c:30
#: qcsrc/menu/xonotic/dialog_hudpanel_healtharmor.c:41
#: qcsrc/menu/xonotic/dialog_hudpanel_powerups.c:30
msgid "Right"
msgstr "Derecha"
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:4
+msgid "Centerprint"
+msgstr "Mensaje centrado"
+
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:23
+msgid "Message duration:"
+msgstr "Duración del mensaje:"
+
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:27
+msgid "Fade time:"
+msgstr "Tiempo hasta desaparecer:"
+
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:31
+msgid "Flip messages order"
+msgstr "Intercambiar orden de mensajes"
+
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:33
+msgid "Text alignment:"
+msgstr "Alineado de texto"
+
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:37
+#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup_weapons.c:50
+msgid "Center"
+msgstr "Centro"
+
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:41
+msgid "Font scale:"
+msgstr "Escala de fuente:"
+
#: qcsrc/menu/xonotic/dialog_hudpanel_chat.c:4
msgid "Chat Panel"
msgstr "Panel de chat"
msgstr "Desaparecimento de la entrada:"
#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:4
-#, fuzzy
msgid "Physics Panel"
-msgstr "Panel de chat"
+msgstr "Panel de Física"
-#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:23
+#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:22
#: qcsrc/menu/xonotic/dialog_hudpanel_pressedkeys.c:21
#: qcsrc/menu/xonotic/dialog_hudpanel_radar.c:21
msgid "Panel disabled"
msgstr "Panel desactivado"
+#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:23
+msgid "Panel enabled"
+msgstr "Panel habilitado"
+
#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:24
-#, fuzzy
-msgid "Panel enabled if not observing"
-msgstr "Panel activado cuando este espectador"
+msgid "Panel enabled even observing"
+msgstr "Panel activado aún como espectador"
#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:25
-#: qcsrc/menu/xonotic/dialog_hudpanel_pressedkeys.c:23
-#: qcsrc/menu/xonotic/dialog_hudpanel_radar.c:23
-msgid "Panel always enabled"
-msgstr "Panel sempre activado"
+msgid "Panel enabled only in Race/CTS"
+msgstr "Panel activo en modo Race/CTS"
#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:31
-#, fuzzy
msgid "Status bar"
-msgstr "Activar barra de estado"
+msgstr "Barra de estado"
#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:33
#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup_weapons.c:48
msgstr "Alinear a la derecha"
#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:35
-#, fuzzy
msgid "Inward align"
-msgstr "Dentro"
+msgstr "Alineado interior"
#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:36
-#, fuzzy
msgid "Outward align"
-msgstr "Fuera"
+msgstr "Alineado exterior"
#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:40
-#, fuzzy
msgid "Flip speed/acceleration positions"
-msgstr "Intercambiar la posición de vida y armadura"
+msgstr "Intercambiar la posición de velocidad/aceleración"
#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:44
-#, fuzzy
msgid "Speed:"
-msgstr "Velocidad (kB/s):"
+msgstr "Velocidad:"
#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:45
msgid "Include vertical speed"
-msgstr ""
+msgstr "Incluir velocidad vertical"
#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:56
msgid "Speed unit:"
-msgstr ""
+msgstr "Unidad de velocidad"
#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:58
msgid "qu/s"
msgstr "nudos"
#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:64
-#, fuzzy
msgid "Show"
-msgstr "Mostrar munición"
+msgstr "Mostrar"
#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:67
-#, fuzzy
msgid "Top speed"
-msgstr "Velocidad de zoom:"
+msgstr "Máxima velocidad:"
#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:73
-#, fuzzy
msgid "Acceleration:"
-msgstr "Reflejos:"
+msgstr "Aceleración:"
#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:74
msgid "Include vertical acceleration"
-msgstr ""
+msgstr "Incluir aceleración vertical"
#: qcsrc/menu/xonotic/dialog_hudpanel_powerups.c:4
msgid "Powerups Panel"
msgid "Panel enabled when spectating"
msgstr "Panel activado cuando este espectador"
+#: qcsrc/menu/xonotic/dialog_hudpanel_pressedkeys.c:23
+#: qcsrc/menu/xonotic/dialog_hudpanel_radar.c:23
+msgid "Panel always enabled"
+msgstr "Panel sempre activado"
+
#: qcsrc/menu/xonotic/dialog_hudpanel_pressedkeys.c:30
msgid "Forced aspect:"
msgstr "Forzar aspecto:"
#: qcsrc/menu/xonotic/dialog_hudpanel_score.c:22
msgid "Score:"
-msgstr ""
+msgstr "Puntaje"
#: qcsrc/menu/xonotic/dialog_hudpanel_score.c:25
msgid "Rankings:"
-msgstr ""
+msgstr "Posiciones:"
#: qcsrc/menu/xonotic/dialog_hudpanel_score.c:26
-#, fuzzy
msgid "Off"
msgstr "Desactivado"
#: qcsrc/menu/xonotic/dialog_hudpanel_score.c:27
msgid "And me"
-msgstr ""
+msgstr "Y yo"
#: qcsrc/menu/xonotic/dialog_hudpanel_score.c:28
msgid "Pure"
-msgstr ""
+msgstr "Puro"
#: qcsrc/menu/xonotic/dialog_hudpanel_timer.c:4
msgid "Timer Panel"
msgstr "Efecto de desvanecimento"
#: qcsrc/menu/xonotic/dialog_hudpanel_weapons.c:35
-#, fuzzy
msgid "EF^None"
msgstr "Ninguno"
msgstr "Transparencia"
#: qcsrc/menu/xonotic/dialog_hudpanel_weapons.c:38
-#, fuzzy
msgid "EF^Both"
msgstr "Ambos"
msgstr "Mostra ID de arma como:"
#: qcsrc/menu/xonotic/dialog_hudpanel_weapons.c:46
-#, fuzzy
msgid "SHOWAS^None"
-msgstr "Nenhum"
+msgstr "Ninguno"
#: qcsrc/menu/xonotic/dialog_hudpanel_weapons.c:47
msgid "Number"
msgstr "Muelle de HUD:"
#: qcsrc/menu/xonotic/dialog_hudsetup_exit.c:70
-#, fuzzy
msgid "DOCK^Disabled"
msgstr "Desactivado"
#: qcsrc/menu/xonotic/dialog_hudsetup_exit.c:71
-#, fuzzy
msgid "DOCK^Small"
-msgstr "Pequeno"
+msgstr "Chico"
#: qcsrc/menu/xonotic/dialog_hudsetup_exit.c:72
-#, fuzzy
msgid "DOCK^Medium"
msgstr "Medio"
#: qcsrc/menu/xonotic/dialog_hudsetup_exit.c:73
-#, fuzzy
msgid "DOCK^Large"
msgstr "Grande"
msgid "Player Setup"
msgstr "Jugador"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:35
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:34
msgid "Game type:"
msgstr "Tipo de juego:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:47
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:46
msgid "Match settings:"
msgstr "Configuración del encuentro:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:50
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:49
msgid "Time limit:"
msgstr "Limite de tiempo:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:54
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:62
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:53
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:61
msgid "Use map specified default"
msgstr "Usar definicion especifica del mapa"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:57
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:56
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:155
#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:156
#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:157
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:158
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:161
#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:162
#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:163
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:164
msgid "Point limit:"
msgstr "Limite de puntos:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:65
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:64
msgid "Player slots:"
msgstr "Slots de Jugadores:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:68
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:67
msgid "Number of bots:"
msgstr "Número de bots:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:72
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:71
msgid "Bot skill:"
msgstr "Dificultad del bot:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:75
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:74
msgid "Botlike"
msgstr "Bot"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:76
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:75
msgid "Beginner"
msgstr "Iniciado"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:77
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:76
msgid "You will win"
msgstr "Ganaras"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:78
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:77
msgid "You can win"
msgstr "Puedes ganar"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:79
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:78
msgid "You might win"
msgstr "Podrias ganar ganar"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:80
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:79
msgid "Advanced"
msgstr "Avanzado"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:81
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:80
msgid "Expert"
msgstr "Experto"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:82
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:81
msgid "Pro"
msgstr "Profesional"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:83
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:82
msgid "Assassin"
msgstr "Asesino"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:84
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:83
msgid "Unhuman"
msgstr "No humano"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:85
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:84
msgid "Godlike"
msgstr "Semi-dios"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:89
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:88
msgid "Mutators..."
msgstr "Mutators..."
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:98
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:97
#: qcsrc/menu/xonotic/dialog_settings_misc.c:57
msgid "Advanced settings..."
msgstr "Configuración avanzada..."
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:105
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:104
msgid "Map list:"
msgstr "Lista de mapas:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:111
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:110
msgid "Select all"
msgstr "Seleccionar todos"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:114
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:113
msgid "Select none"
msgstr "Seleccionar ninguno"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:120
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:119
msgid "Start Multiplayer!"
-msgstr "Comenzar Multijugador!"
+msgstr "¡Comenzar Multijugador!"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:155
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:154
msgid "Capture limit:"
msgstr "Limite de capturas:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:159
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:158
msgid "Lives:"
msgstr "Vidas:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:160
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:159
msgid "Laps:"
msgstr "Vueltas:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:161
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:160
msgid "Goals:"
msgstr "Metas:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:165
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:164
msgid "Frag limit:"
msgstr "Limite de Frags:"
#: qcsrc/menu/xonotic/dialog_multiplayer_create_advanced.c:28
msgid "Allow spectating"
-msgstr "Permitir espectador"
+msgstr "Permitir espectadores"
#: qcsrc/menu/xonotic/dialog_multiplayer_create_advanced.c:31
msgid "Spawn shield:"
-msgstr "Proteccion del colocado:"
+msgstr "Tiempo de protección al resucitar:"
#: qcsrc/menu/xonotic/dialog_multiplayer_create_advanced.c:36
msgid "Game speed:"
msgid "Game types:"
msgstr "Modos de juego:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create_mapinfo.c:119
+#: qcsrc/menu/xonotic/dialog_multiplayer_create_mapinfo.c:118
#: qcsrc/menu/xonotic/dialog_multiplayer_join_serverinfo.c:314
msgid "Close"
msgstr "Cerrar"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create_mapinfo.c:122
-#: qcsrc/menu/xonotic/dialog_multiplayer_demo.c:46
-msgid "Play"
+#: qcsrc/menu/xonotic/dialog_multiplayer_create_mapinfo.c:121
+msgid "MAP^Play"
msgstr "Jugar"
#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:7
#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:74
#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:205
msgid "Rocket Flying"
-msgstr "Vuelo de cohete"
+msgstr "Volar con Cohetes"
#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:78
#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:264
#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:86
#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:173
msgid "Midair"
-msgstr "aire"
+msgstr "No saltes"
#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:88
#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:176
msgstr "Jetpack"
#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:98
-#, fuzzy
msgid "MUT^None"
msgstr "Ninguno"
msgid "Timedemo"
msgstr "Demo temporizado"
+#: qcsrc/menu/xonotic/dialog_multiplayer_demo.c:46
+#, fuzzy
+msgid "DEMO^Play"
+msgstr "Jugar"
+
#: qcsrc/menu/xonotic/dialog_multiplayer_join.c:4
msgid "Join"
msgstr "Ingresar"
#: qcsrc/menu/xonotic/dialog_multiplayer_join.c:36
-#, fuzzy
msgid "SRVS^Empty"
msgstr "Vacío"
#: qcsrc/menu/xonotic/dialog_multiplayer_join.c:40
-#, fuzzy
msgid "SRVS^Full"
msgstr "Completo"
#: qcsrc/menu/xonotic/dialog_multiplayer_join.c:72
#: qcsrc/menu/xonotic/dialog_multiplayer_join_serverinfo.c:317
msgid "Join!"
-msgstr "Ingresar!"
+msgstr "¡Ingresar!"
#: qcsrc/menu/xonotic/dialog_multiplayer_join_serverinfo.c:5
msgid "Server Information"
#: qcsrc/menu/xonotic/dialog_multiplayer_join_serverinfo.c:158
#, c-format
msgid "%d/%d, %d free player slots"
-msgstr ""
+msgstr "%d/%d, %d lugares para jugar disponibles"
#: qcsrc/menu/xonotic/dialog_multiplayer_join_serverinfo.c:172
#, c-format
#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:92
msgid "View bobbing:"
-msgstr "Ver flotando:"
+msgstr "Vista flotante:"
#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:96
msgid "Zoom factor:"
#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:130
msgid "Crosshair size:"
-msgstr "Tamaño da mira:"
+msgstr "Tamaño de mira:"
#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:134
msgid "Crosshair alpha:"
-msgstr "Transparencia da mira:"
+msgstr "Transparencia de mira:"
#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:138
msgid "Crosshair color:"
#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:140
msgid "By health"
-msgstr ""
+msgstr "Por salud"
#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:143
-#, fuzzy
msgid "Custom"
msgstr "Personalizado"
msgstr "Test de tiro:"
#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:159
-#, fuzzy
msgid "HTST^None"
msgstr "Ninguno"
msgstr "Forzar modelos:"
#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:175
-#, fuzzy
msgid "MDL^None"
msgstr "Ninguno"
#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:176
-#, fuzzy
msgid "MDL^Custom"
-msgstr "Modificado"
+msgstr "Personalizado"
#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:177
-#, fuzzy
msgid "MDL^All"
msgstr "Todos"
msgstr "Gibs:"
#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:184
-#, fuzzy
msgid "GIBS^None"
msgstr "Ninguno"
msgstr "Pocas"
#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:186
-#, fuzzy
msgid "GIBS^Many"
-msgstr "Muchas"
+msgstr "Muchos"
#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:187
-#, fuzzy
msgid "GIBS^Lots"
msgstr "Abundante"
msgstr "Daño colateral:"
#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:195
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:178
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:191
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:173
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:194
#: qcsrc/menu/xonotic/dialog_settings_misc.c:30
#: qcsrc/menu/xonotic/dialog_settings_misc.c:41
#: qcsrc/menu/xonotic/dialog_settings_video.c:109
msgid "Apply immediately"
-msgstr "Aplicar imediatamente"
+msgstr "Aplicar inmediatamente"
#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup_waypoint.c:5
msgid "Waypoints"
msgid "Draw 1st person weapon model"
msgstr "Dibujar modelo de arma en primera persona"
-#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup_weapons.c:50
-msgid "Center"
-msgstr ""
-
#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup_weapons.c:55
msgid "Flip view horizontally"
msgstr "Invertir vista horizontalmente"
msgid "Music:"
msgstr "Musica:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:40
-#, fuzzy
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:41
msgid "VOL^Ambient:"
msgstr "Ambiente:"
msgid "Info:"
msgstr "Información:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:57
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:55
msgid "Items:"
msgstr "Items:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:65
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:62
msgid "Pain:"
msgstr "Dolor:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:73
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:69
msgid "Player:"
msgstr "Jugador:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:81
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:76
msgid "Shots:"
msgstr "Disparos:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:88
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:83
msgid "Voice:"
msgstr "Voz:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:96
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:91
msgid "Weapons:"
msgstr "Armas:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:103
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:161
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:98
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:156
msgid "Frequency:"
msgstr "Frecuencia:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:105
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:100
msgid "8 kHz"
msgstr "8 kHz"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:106
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:101
msgid "11.025 kHz"
msgstr "11.025 kHz"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:107
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:102
msgid "16 kHz"
msgstr "16 kHz"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:108
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:103
msgid "22.05 kHz"
msgstr "22.05 kHz"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:109
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:104
msgid "24 kHz"
msgstr "24 kHz"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:110
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:105
msgid "32 kHz"
msgstr "32 kHz"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:111
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:106
msgid "44.1 kHz"
msgstr "44.1 kHz"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:112
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:107
msgid "48 kHz"
msgstr "48 kHz"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:115
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:110
msgid "Channels:"
msgstr "Canales:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:117
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:112
msgid "Mono"
msgstr "Mono"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:118
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:113
msgid "Stereo"
msgstr "Stereo"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:119
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:114
msgid "2.1"
msgstr "2.1"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:120
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:115
msgid "4"
msgstr "4"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:121
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:116
msgid "5"
msgstr "5"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:122
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:117
msgid "5.1"
msgstr "5.1"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:123
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:118
msgid "6.1"
msgstr "6.1"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:124
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:119
msgid "7.1"
msgstr "7.1"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:128
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:123
msgid "Swap Stereo"
msgstr "Intercambiar Stereo"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:132
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:127
msgid "Headphone friendly mode"
msgstr "Modo para auricular"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:136
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:131
msgid "Spatial voices:"
msgstr "Voces espaciales:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:137
-#, fuzzy
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:132
msgid "VOCS^None"
msgstr "Ninguno"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:138
-#, fuzzy
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:133
msgid "VOCS^Taunts"
-msgstr "bromas"
+msgstr "Provocaciones"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:139
-#, fuzzy
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:134
msgid "VOCS^All"
msgstr "Todos"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:142
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:137
msgid "Taunt range:"
msgstr "Nivel de taunts:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:145
-#, fuzzy
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:140
msgid "RNG^Very short"
-msgstr "Bien corto"
+msgstr "Muy corto"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:146
-#, fuzzy
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:141
msgid "RNG^Short"
msgstr "Corto"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:147
-#, fuzzy
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:142
msgid "RNG^Normal"
msgstr "Normal"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:148
-#, fuzzy
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:143
msgid "RNG^Long"
msgstr "Alto"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:149
-#, fuzzy
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:144
msgid "RNG^Full"
msgstr "Total"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:156
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:151
msgid "Automatic taunts"
msgstr "Taunts Automatico"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:165
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:160
msgid "Time warning:"
msgstr "Aviso de tiempo:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:167
-#, fuzzy
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:162
msgid "WRN^None"
msgstr "Ninguno"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:168
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:163
msgid "1 minute"
msgstr "1 minuto"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:169
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:164
msgid "5 minutes"
msgstr "5 minutos"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:170
-#, fuzzy
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:165
msgid "WRN^Both"
msgstr "Ambos"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:173
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:168
msgid "Hit indicator"
msgstr "Indicador de tiro acertado"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:175
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:170
msgid "Menu sounds"
msgstr "Sonidos del menú"
msgstr "Predefinición de calidad:"
#: qcsrc/menu/xonotic/dialog_settings_effects.c:41
-#, fuzzy
msgid "PRE^OMG!"
msgstr "OMG!"
#: qcsrc/menu/xonotic/dialog_settings_effects.c:42
-#, fuzzy
msgid "PRE^Low"
msgstr "Bajo"
#: qcsrc/menu/xonotic/dialog_settings_effects.c:43
-#, fuzzy
msgid "PRE^Medium"
msgstr "Media"
#: qcsrc/menu/xonotic/dialog_settings_effects.c:44
-#, fuzzy
msgid "PRE^Normal"
msgstr "Normal"
#: qcsrc/menu/xonotic/dialog_settings_effects.c:45
-#, fuzzy
msgid "PRE^High"
msgstr "Alta"
#: qcsrc/menu/xonotic/dialog_settings_effects.c:46
-#, fuzzy
msgid "PRE^Ultra"
msgstr "Ultra"
#: qcsrc/menu/xonotic/dialog_settings_effects.c:48
-#, fuzzy
msgid "PRE^Ultimate"
msgstr "Máxima"
msgstr "Detalles geométricos:"
#: qcsrc/menu/xonotic/dialog_settings_effects.c:54
-#, fuzzy
msgid "DET^Lowest"
msgstr "Mínimo"
#: qcsrc/menu/xonotic/dialog_settings_effects.c:55
-#, fuzzy
msgid "DET^Low"
msgstr "Bajo"
#: qcsrc/menu/xonotic/dialog_settings_effects.c:56
-#, fuzzy
msgid "DET^Normal"
msgstr "Normal"
#: qcsrc/menu/xonotic/dialog_settings_effects.c:57
-#, fuzzy
msgid "DET^Good"
msgstr "Bueno"
#: qcsrc/menu/xonotic/dialog_settings_effects.c:58
-#, fuzzy
msgid "DET^Best"
msgstr "Mejor"
#: qcsrc/menu/xonotic/dialog_settings_effects.c:59
-#, fuzzy
msgid "DET^Insane"
msgstr "Insano"
msgstr "Antialiasing:"
#: qcsrc/menu/xonotic/dialog_settings_effects.c:64
-#, fuzzy
msgid "AA^Disabled"
msgstr "Deshabilitado"
msgstr "Resolución de textura:"
#: qcsrc/menu/xonotic/dialog_settings_effects.c:73
-#, fuzzy
msgid "RES^Leet"
msgstr "Leet"
#: qcsrc/menu/xonotic/dialog_settings_effects.c:74
-#, fuzzy
msgid "RES^Lowest"
msgstr "Mínimo"
#: qcsrc/menu/xonotic/dialog_settings_effects.c:75
-#, fuzzy
msgid "RES^Low"
msgstr "Bajo"
#: qcsrc/menu/xonotic/dialog_settings_effects.c:76
-#, fuzzy
msgid "RES^Normal"
msgstr "Normal"
#: qcsrc/menu/xonotic/dialog_settings_effects.c:77
-#, fuzzy
msgid "RES^Good"
msgstr "Bueno"
#: qcsrc/menu/xonotic/dialog_settings_effects.c:78
-#, fuzzy
msgid "RES^Best"
msgstr "Mejor"
msgstr "Filtro Anisotrópico:"
#: qcsrc/menu/xonotic/dialog_settings_effects.c:102
-#, fuzzy
msgid "ANISO^Disabled"
msgstr "Deshabilitado"
msgid "Decals"
msgstr "Símbolos"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:120
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:118
+msgid "Decals on models"
+msgstr "Marcas en los jugadores"
+
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:122
msgid "Distance:"
msgstr "Distancia:"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:126
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:128
msgid "Time:"
msgstr "Tiempo:"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:132
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:134
msgid "Use lightmaps"
msgstr "Usar lightmaps"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:133
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:135
msgid "Deluxe mapping"
msgstr "Mapeado Deluxe"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:135
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:137
msgid "Gloss"
msgstr "Brillo"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:138
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:140
msgid "Offset mapping"
msgstr "Despl. de mapeado"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:140
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:142
msgid "Relief mapping"
msgstr "Mapeado Relief"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:143
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:145
msgid "Reflections:"
msgstr "Reflejos:"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:146
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:148
msgid "Blurred"
msgstr "Borroso"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:147
-#, fuzzy
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:149
msgid "REFL^Good"
msgstr "Bueno"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:148
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:150
msgid "Sharp"
msgstr "Ajustado"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:153
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:155
msgid "Show surfaces"
msgstr "Mostrar superficies"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:155
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:157
msgid "No dynamic lighting"
msgstr "Sin iluminación dinámica"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:157
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:159
msgid "Flash blend approximation"
msgstr "Aproximación de flash mezclado"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:159
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:161
msgid "Realtime dynamic lighting"
msgstr "Iluminación dinámica en tiempo real"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:160
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:164
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:162
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:166
msgid "Shadows"
msgstr "Sombras"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:163
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:165
msgid "Realtime world lighting"
msgstr "Iluminación del mundo en tiempo real"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:168
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:170
msgid "Use normal maps"
msgstr "Usar mapa de normales"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:170
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:172
msgid "Soft shadows"
msgstr "Sombras Suaves"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:173
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:175
msgid "Coronas"
msgstr "Coronas"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:174
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:176
msgid "Use Occlusion Queries"
msgstr "Usar consultas de oclusion"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:176
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:178
msgid "Bloom"
msgstr "Bloom"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:178
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:180
msgid "High Dynamic Range (HDR)"
msgstr "High Dynamic Range (HDR)"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:182
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:184
msgid "Motion blur:"
-msgstr "Distorsión p/ movimiento:"
-
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:187
-#, fuzzy
-msgid "Damage & water blur"
-msgstr "Distorsión por daño:"
+msgstr "Difuminado p/ movimiento:"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:188
-#, fuzzy
-msgid "Powerup sharpen"
-msgstr "Panel de Poderes"
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:189
+msgid "Blur and sharpen postprocessing"
+msgstr "Difuminado y postprocesamiento ajustado"
#: qcsrc/menu/xonotic/dialog_settings_input.c:26
msgid "Key bindings:"
msgstr "Tamaño de Font/UI:"
#: qcsrc/menu/xonotic/dialog_settings_video.c:31
-#, fuzzy
msgid "SZ^Unreadable"
msgstr "Ilegible"
#: qcsrc/menu/xonotic/dialog_settings_video.c:32
-#, fuzzy
msgid "SZ^Tiny"
msgstr "Minuscula"
#: qcsrc/menu/xonotic/dialog_settings_video.c:33
-#, fuzzy
msgid "SZ^Little"
msgstr "Muy pequeña"
#: qcsrc/menu/xonotic/dialog_settings_video.c:34
-#, fuzzy
msgid "SZ^Small"
msgstr "Pequeña"
#: qcsrc/menu/xonotic/dialog_settings_video.c:35
-#, fuzzy
msgid "SZ^Medium"
msgstr "Media"
#: qcsrc/menu/xonotic/dialog_settings_video.c:36
-#, fuzzy
msgid "SZ^Large"
msgstr "Grande"
#: qcsrc/menu/xonotic/dialog_settings_video.c:37
-#, fuzzy
msgid "SZ^Huge"
msgstr "Enorme"
#: qcsrc/menu/xonotic/dialog_settings_video.c:38
-#, fuzzy
msgid "SZ^Gigantic"
msgstr "Gigante"
#: qcsrc/menu/xonotic/dialog_settings_video.c:39
-#, fuzzy
msgid "SZ^Colossal"
msgstr "Colossal"
msgstr "Vertex Buffer Objects (VBOs)"
#: qcsrc/menu/xonotic/dialog_settings_video.c:59
-#, fuzzy
msgid "VBO^Off"
msgstr "Desactivado"
msgstr "Profundidad primero:"
#: qcsrc/menu/xonotic/dialog_settings_video.c:69
-#, fuzzy
msgid "DF^Disabled"
msgstr "Desactivado"
#: qcsrc/menu/xonotic/dialog_settings_video.c:70
-#, fuzzy
msgid "DF^World"
msgstr "Mundo"
#: qcsrc/menu/xonotic/dialog_settings_video.c:71
-#, fuzzy
msgid "DF^All"
msgstr "Todos"
msgstr "Saturacion de color:"
#: qcsrc/menu/xonotic/dialog_settings_video.c:102
-#, fuzzy
msgid "LIT^Ambient:"
msgstr "Ambiente:"
msgid "Singleplayer"
msgstr "Jugador"
-#: qcsrc/menu/xonotic/dialog_singleplayer.c:59
+#: qcsrc/menu/xonotic/dialog_singleplayer.c:127
msgid "Instant action! (random map with bots)"
-msgstr "Accion instantanea! (Mapa aleatorio con bots)"
+msgstr "¡Accion instantanea! (Mapa aleatorio con bots)"
-#: qcsrc/menu/xonotic/dialog_singleplayer.c:80
+#: qcsrc/menu/xonotic/dialog_singleplayer.c:148
msgid "Start Singleplayer!"
-msgstr "Comenzar!"
+msgstr "¡Comenzar!"
#: qcsrc/menu/xonotic/dialog_singleplayer_winner.c:4
msgid "Winner"
#: qcsrc/menu/xonotic/mainwindow.c:35 qcsrc/menu/xonotic/mainwindow.c:38
msgid "Do not press this button again!"
-msgstr "No vuelva a presionar este boton!"
+msgstr "¡No vuelva a presionar este boton!"
#: qcsrc/menu/xonotic/maplist.c:278
msgid ""
msgid "Bookmark"
msgstr "Marcador"
-#: qcsrc/menu/xonotic/serverlist.c:523
+#: qcsrc/menu/xonotic/serverlist.c:527
msgid "Ping"
msgstr "Ping"
-#: qcsrc/menu/xonotic/serverlist.c:524
+#: qcsrc/menu/xonotic/serverlist.c:528
msgid "Host name"
msgstr "Nombre del Host"
-#: qcsrc/menu/xonotic/serverlist.c:525
+#: qcsrc/menu/xonotic/serverlist.c:529
msgid "Map"
msgstr "Mapa"
-#: qcsrc/menu/xonotic/serverlist.c:526
+#: qcsrc/menu/xonotic/serverlist.c:530
msgid "Type"
msgstr "Tipo"
-#: qcsrc/menu/xonotic/serverlist.c:527
+#: qcsrc/menu/xonotic/serverlist.c:531
msgid "Players"
msgstr "Jugadores"
msgid "<AUTHOR>"
msgstr "<AUTOR>"
-#: qcsrc/menu/xonotic/skinlist.c:163
-#, c-format
-msgid "%s: %s"
-msgstr "%s: %s"
-
#: qcsrc/menu/xonotic/slider_decibels.c:50
-#, fuzzy
msgid "VOL^OFF"
msgstr "DESACTIVADO"
#: qcsrc/menu/xonotic/slider_decibels.c:52
-#, fuzzy
msgid "VOL^MAX"
msgstr "MAXIMO"
#: qcsrc/menu/xonotic/util.qc:367
#, c-format
msgid "^1%s TEST BUILD"
-msgstr ""
+msgstr "^1%s TEST BUILD"
#: qcsrc/menu/xonotic/util.qc:432
#, c-format
msgid "Update to %s now!"
-msgstr "Actualizar para %s ahora!"
+msgstr "¡Actualizar para %s ahora!"
#: qcsrc/menu/xonotic/util.qc:501
msgid ""
msgid "Crylink"
msgstr "Crylink"
-#: qcsrc/server/w_crylink.qc:664
+#: qcsrc/server/w_crylink.qc:666
#, c-format
msgid "%s succeeded at self-destructing themself with the Crylink"
msgstr "%s logró autodestruirse con el Crylink"
-#: qcsrc/server/w_crylink.qc:669
+#: qcsrc/server/w_crylink.qc:671
#, c-format
msgid "%s could not hide from %s's Crylink"
msgstr "%s no se pudo esconder del Crylink de %s"
-#: qcsrc/server/w_crylink.qc:671
+#: qcsrc/server/w_crylink.qc:673
#, c-format
msgid "%s was too close to %s's Crylink"
msgstr "%s estuvo demasiado cerca del Crylink de %s"
-#: qcsrc/server/w_crylink.qc:673
+#: qcsrc/server/w_crylink.qc:675
#, c-format
msgid "%s took a close look at %s's Crylink"
msgstr "%s miró de cerca al Crylink de %s"
msgid "Electro"
msgstr "Electro"
-#: qcsrc/server/w_electro.qc:577
+#: qcsrc/server/w_electro.qc:574
#, c-format
msgid "%s could not remember where they put plasma"
msgstr "%s no pudo recordar donde dejó su plasma la última vez"
-#: qcsrc/server/w_electro.qc:579
+#: qcsrc/server/w_electro.qc:576
#, c-format
msgid "%s played with plasma"
msgstr "%s jugó con plasma"
-#: qcsrc/server/w_electro.qc:586
+#: qcsrc/server/w_electro.qc:583
#, c-format
msgid "%s just noticed %s's blue ball"
msgstr "%s acaba de percatarse de la bola azul de %s"
-#: qcsrc/server/w_electro.qc:588
+#: qcsrc/server/w_electro.qc:585
#, c-format
msgid "%s got in touch with %s's blue ball"
msgstr "%s tuvo un encuentro cercano con la bola azul de %s"
-#: qcsrc/server/w_electro.qc:593
+#: qcsrc/server/w_electro.qc:590
#, c-format
msgid "%s felt the electrifying air of %s's combo"
msgstr "%s sintió el aire electrificante del combo de %s"
-#: qcsrc/server/w_electro.qc:595
+#: qcsrc/server/w_electro.qc:592
#, c-format
msgid "%s got too close to %s's blue beam"
msgstr "%s estuvo demasiado cerca del rayo azul de %s"
-#: qcsrc/server/w_electro.qc:597
+#: qcsrc/server/w_electro.qc:594
#, c-format
msgid "%s was blasted by %s's blue beam"
msgstr "%s estuvo en estado critico por el rayo azul de %s"
msgid "Mortar"
msgstr "Mortero"
-#: qcsrc/server/w_grenadelauncher.qc:379
+#: qcsrc/server/w_grenadelauncher.qc:383
#, c-format
msgid "%s tried out his own grenade"
msgstr "%s probó su propia granada"
-#: qcsrc/server/w_grenadelauncher.qc:381
+#: qcsrc/server/w_grenadelauncher.qc:385
#, c-format
msgid "%s detonated"
msgstr "%s ha detonado"
-#: qcsrc/server/w_grenadelauncher.qc:387
+#: qcsrc/server/w_grenadelauncher.qc:391
#, c-format
msgid "%s didn't see %s's grenade"
msgstr "%s no vió la granada de %s"
-#: qcsrc/server/w_grenadelauncher.qc:389
+#: qcsrc/server/w_grenadelauncher.qc:393
#, c-format
msgid "%s almost dodged %s's grenade"
msgstr "%s casi esquivó la granada de %s"
-#: qcsrc/server/w_grenadelauncher.qc:391
+#: qcsrc/server/w_grenadelauncher.qc:395
#, c-format
msgid "%s ate %s's grenade"
msgstr "%s se comió la granada de %s"
msgid "Hagar"
msgstr "Hagar"
-#: qcsrc/server/w_hagar.qc:382 qcsrc/server/w_seeker.qc:655
+#: qcsrc/server/w_hagar.qc:395 qcsrc/server/w_seeker.qc:655
#, c-format
msgid "%s played with tiny rockets"
msgstr "%s jugó con pequeños cohetes"
-#: qcsrc/server/w_hagar.qc:386
+#: qcsrc/server/w_hagar.qc:399
#, c-format
msgid "%s hoped %s's missiles wouldn't bounce"
msgstr "%s esperó que no le reboten misiles de %s"
-#: qcsrc/server/w_hagar.qc:388 qcsrc/server/w_seeker.qc:661
+#: qcsrc/server/w_hagar.qc:401 qcsrc/server/w_seeker.qc:661
#, c-format
msgid "%s was pummeled by %s"
msgstr "%s fue molido por %s"
msgid "MinstaNex"
msgstr "MinstaNex"
-#: qcsrc/server/w_minstanex.qc:290 qcsrc/server/w_nex.qc:253
-#: qcsrc/server/w_shotgun.qc:209 qcsrc/server/w_uzi.qc:317
+#: qcsrc/server/w_minstanex.qc:293 qcsrc/server/w_nex.qc:253
+#: qcsrc/server/w_shotgun.qc:215 qcsrc/server/w_uzi.qc:317
#, c-format
msgid "%s is now thinking with portals"
-msgstr ""
+msgstr "%s ahora está \"thinking with portals\""
-#: qcsrc/server/w_minstanex.qc:292 qcsrc/server/w_nex.qc:255
+#: qcsrc/server/w_minstanex.qc:295 qcsrc/server/w_nex.qc:255
#, c-format
msgid "%s has been vaporized by %s"
msgstr "%s ha sido vaporizado por %s"
#: qcsrc/server/w_rifle.qc:2
msgid "Rifle"
-msgstr ""
+msgstr "Rifle"
#: qcsrc/server/w_rifle.qc:233
#, c-format
msgid "Shotgun"
msgstr "Escopeta"
-#: qcsrc/server/w_shotgun.qc:213
+#: qcsrc/server/w_shotgun.qc:219
#, c-format
msgid "%2$s ^7slapped %1$s ^7around a bit with a large ^2shotgun"
msgstr "%2$s ^7abofeteó %1$s ^7con una gran ^2shotgun"
-#: qcsrc/server/w_shotgun.qc:215
+#: qcsrc/server/w_shotgun.qc:221
#, c-format
msgid "%s was gunned by %s"
msgstr "%s fue tiroteado por %s"
msgid "@!#%'n Tuba"
msgstr "@!#%'n Tuba"
-#: qcsrc/server/w_tuba.qc:263
+#: qcsrc/server/w_tuba.qc:252
#, c-format
msgid "%s hurt his own ears with the @!#%%'n Tuba"
msgstr "%s se lastimó sus propios oídos con la Tuba de @!#%%"
-#: qcsrc/server/w_tuba.qc:267
+#: qcsrc/server/w_tuba.qc:256
#, c-format
msgid "%s died of %s's great playing on the @!#%%'n Tuba"
msgstr "%s murió por la gran interpretación de Tuba de @!#%%"
#, c-format
msgid "%s was riddled full of holes by %s"
msgstr "%s fue totalmente acribillado por %s"
-
-#~ msgid "Speedometer"
-#~ msgstr "Medidor de Velocidad"
-
-#~ msgid "qu/s (hidden)"
-#~ msgstr "qu/s (escondido)"
-
-#~ msgid "Show accelerometer"
-#~ msgstr "Mostrar acelerómetro"
-
-#~ msgid "Accelerometer scale:"
-#~ msgstr "Escala del acelerómetro:"
-
-#~ msgid "Sniper Rifle"
-#~ msgstr "Sniper Rifle"
-
-#~ msgid "%s ran into %s's flac"
-#~ msgstr "%s se cruzó con el flac de %s"
-
-#~ msgid "Waypoint settings:"
-#~ msgstr "configuración de puntos de camino:"
-
-#~ msgid "%d/%d"
-#~ msgstr "%d/%d"
msgstr ""
"Project-Id-Version: 0.1preview\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2011-06-27 18:26+0200\n"
+"POT-Creation-Date: 2011-09-02 07:51+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: Henry 'Exitium' Sanmark <henry.sanmark@gmail.com>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
+#: qcsrc/common/mapinfo.qc:1092 qcsrc/menu/xonotic/skinlist.c:163
+#, c-format
+msgid "%s: %s"
+msgstr "%s: %s"
+
#: qcsrc/menu/gamecommand.qc:47
#, c-format
msgid "error: status is %d\n"
msgstr "omavalintainen"
#: qcsrc/menu/menu.qc:29
-#, fuzzy, c-format
+#, c-format
msgid "^4MQC Build information: ^1%s\n"
-msgstr "^4MQC Version tiedot: %s\n"
+msgstr "^4MQC Version tiedot: ^1%s\n"
#: qcsrc/menu/xonotic/campaign.c:284
-#: qcsrc/menu/xonotic/dialog_singleplayer.c:66
+#: qcsrc/menu/xonotic/dialog_singleplayer.c:134
msgid "???"
msgstr "???"
"player name to get started. You can change these options later through the "
"menu system."
msgstr ""
+"Tervetuloa pelaamaan Xonoticcia! Valitse haluamasi kieli ja pelaajanimesi "
+"aloittaaksesi. Voit vaihtaa näitä asetuksia jälkikäteen pelin asetuksista."
#: qcsrc/menu/xonotic/dialog_firstrun.c:38
#: qcsrc/menu/xonotic/dialog_settings_misc.c:35
#: qcsrc/menu/xonotic/dialog_hudpanel_ammo.c:28
msgid "Align icon:"
-msgstr ""
+msgstr "Kuvakkeen kohdistus:"
#: qcsrc/menu/xonotic/dialog_hudpanel_ammo.c:29
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:36
#: qcsrc/menu/xonotic/dialog_hudpanel_healtharmor.c:28
#: qcsrc/menu/xonotic/dialog_hudpanel_healtharmor.c:40
#: qcsrc/menu/xonotic/dialog_hudpanel_powerups.c:28
msgstr "Vasen"
#: qcsrc/menu/xonotic/dialog_hudpanel_ammo.c:30
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:38
#: qcsrc/menu/xonotic/dialog_hudpanel_healtharmor.c:30
#: qcsrc/menu/xonotic/dialog_hudpanel_healtharmor.c:41
#: qcsrc/menu/xonotic/dialog_hudpanel_powerups.c:30
msgid "Right"
msgstr "Oikea"
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:4
+msgid "Centerprint"
+msgstr "Keskeiskirjoitus"
+
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:23
+msgid "Message duration:"
+msgstr "Viestien kesto:"
+
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:27
+msgid "Fade time:"
+msgstr "Sisääntulon häivennyksen kesto"
+
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:31
+msgid "Flip messages order"
+msgstr "Käännä ilmoitusjärjestys"
+
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:33
+msgid "Text alignment:"
+msgstr "Tekstin kohdistus:"
+
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:37
+#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup_weapons.c:50
+msgid "Center"
+msgstr "Keskus"
+
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:41
+msgid "Font scale:"
+msgstr "Fontin skaala:"
+
#: qcsrc/menu/xonotic/dialog_hudpanel_chat.c:4
msgid "Chat Panel"
msgstr "Keskustelupaneeli"
msgstr "Sisääntulon häivennyksen kesto"
#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:4
-#, fuzzy
msgid "Physics Panel"
-msgstr "Keskustelupaneeli"
+msgstr "Fysiikkapaneeli"
-#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:23
+#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:22
#: qcsrc/menu/xonotic/dialog_hudpanel_pressedkeys.c:21
#: qcsrc/menu/xonotic/dialog_hudpanel_radar.c:21
msgid "Panel disabled"
msgstr "Paneeli pois päältä"
+#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:23
+msgid "Panel enabled"
+msgstr "Paneeli päälle"
+
#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:24
-#, fuzzy
-msgid "Panel enabled if not observing"
+msgid "Panel enabled even observing"
msgstr "Paneeli päällä kun katsojana"
#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:25
-#: qcsrc/menu/xonotic/dialog_hudpanel_pressedkeys.c:23
-#: qcsrc/menu/xonotic/dialog_hudpanel_radar.c:23
-msgid "Panel always enabled"
-msgstr "Paneeli aina päällä"
+msgid "Panel enabled only in Race/CTS"
+msgstr "Paneeli käytössä vain kilpajuoksuissa"
#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:31
-#, fuzzy
msgid "Status bar"
-msgstr "Ota tilapalkki käyttöön"
+msgstr "Tilapalkki"
#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:33
#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup_weapons.c:48
msgstr "Oikea tasaus"
#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:35
-#, fuzzy
msgid "Inward align"
-msgstr "Sisäänpäin"
+msgstr "Sisäänpäin kohditus"
#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:36
-#, fuzzy
msgid "Outward align"
-msgstr "Ulospäin"
+msgstr "Ulospäin kohdistus"
#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:40
-#, fuzzy
msgid "Flip speed/acceleration positions"
-msgstr "Vaihda elämän ja panssarin paikkaa"
+msgstr "Vaihda nopeuden/kiihtyvyyden paikkaa"
#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:44
-#, fuzzy
msgid "Speed:"
-msgstr "Nopeus (kb/s)"
+msgstr "Nopeus:"
#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:45
msgid "Include vertical speed"
-msgstr ""
+msgstr "Huomioi pystysuora nopeus"
#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:56
msgid "Speed unit:"
-msgstr ""
+msgstr "Nopeuden mittayksikkö:"
#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:58
msgid "qu/s"
msgstr "knots"
#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:64
-#, fuzzy
msgid "Show"
-msgstr "Näytä panokset"
+msgstr "Näytä"
#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:67
-#, fuzzy
msgid "Top speed"
-msgstr "Tarkennuksen nopeus:"
+msgstr "Huippunopeus"
#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:73
-#, fuzzy
msgid "Acceleration:"
-msgstr "Heijastukset:"
+msgstr "Kiihtyvyys:"
#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:74
msgid "Include vertical acceleration"
-msgstr ""
+msgstr "Huomioi pystysuora kiihtyvyys"
#: qcsrc/menu/xonotic/dialog_hudpanel_powerups.c:4
msgid "Powerups Panel"
msgid "Panel enabled when spectating"
msgstr "Paneeli päällä kun katsojana"
+#: qcsrc/menu/xonotic/dialog_hudpanel_pressedkeys.c:23
+#: qcsrc/menu/xonotic/dialog_hudpanel_radar.c:23
+msgid "Panel always enabled"
+msgstr "Paneeli aina päällä"
+
#: qcsrc/menu/xonotic/dialog_hudpanel_pressedkeys.c:30
msgid "Forced aspect:"
msgstr "Pakotettu näkymä:"
#: qcsrc/menu/xonotic/dialog_hudpanel_score.c:22
msgid "Score:"
-msgstr ""
+msgstr "Tulos:"
#: qcsrc/menu/xonotic/dialog_hudpanel_score.c:25
msgid "Rankings:"
-msgstr ""
+msgstr "Tilastot:"
#: qcsrc/menu/xonotic/dialog_hudpanel_score.c:26
-#, fuzzy
msgid "Off"
-msgstr "VBO^Pois"
+msgstr "Pois päältä"
#: qcsrc/menu/xonotic/dialog_hudpanel_score.c:27
msgid "And me"
-msgstr ""
+msgstr "Ja minä"
#: qcsrc/menu/xonotic/dialog_hudpanel_score.c:28
msgid "Pure"
-msgstr ""
+msgstr "Muokkaamaton"
#: qcsrc/menu/xonotic/dialog_hudpanel_timer.c:4
msgid "Timer Panel"
msgstr "Alpha"
#: qcsrc/menu/xonotic/dialog_hudpanel_weapons.c:38
-#, fuzzy
msgid "EF^Both"
-msgstr "WRN^Molemmat"
+msgstr "EF^Molemmat"
#: qcsrc/menu/xonotic/dialog_hudpanel_weapons.c:42
msgid "Weapon icons:"
msgid "Player Setup"
msgstr "Pelaajan asetukset"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:35
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:34
msgid "Game type:"
msgstr "Pelityyppi"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:47
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:46
msgid "Match settings:"
msgstr "Ottelun asetukset"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:50
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:49
msgid "Time limit:"
msgstr "Aikaraja"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:54
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:62
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:53
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:61
msgid "Use map specified default"
msgstr "Käytä kartan omaa oletusarvoa"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:57
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:56
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:155
#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:156
#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:157
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:158
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:161
#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:162
#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:163
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:164
msgid "Point limit:"
msgstr "Pisteraja:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:65
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:64
msgid "Player slots:"
msgstr "Pelaajamäärä:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:68
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:67
msgid "Number of bots:"
msgstr "Bottien lukumäärä:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:72
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:71
msgid "Bot skill:"
msgstr "Bottien taitotaso:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:75
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:74
msgid "Botlike"
msgstr "Typerä kone"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:76
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:75
msgid "Beginner"
msgstr "Aloittelija"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:77
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:76
msgid "You will win"
msgstr "Helppo voitto"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:78
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:77
msgid "You can win"
msgstr "Helpohko"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:79
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:78
msgid "You might win"
msgstr "Keskitaso"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:80
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:79
msgid "Advanced"
msgstr "Kehittynyt"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:81
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:80
msgid "Expert"
msgstr "Ekspertti"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:82
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:81
msgid "Pro"
msgstr "Mestari"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:83
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:82
msgid "Assassin"
msgstr "Murhaaja"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:84
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:83
msgid "Unhuman"
msgstr "Epäinhimillinen"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:85
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:84
msgid "Godlike"
msgstr "Jumalainen"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:89
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:88
msgid "Mutators..."
msgstr "Muokkaukset..."
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:98
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:97
#: qcsrc/menu/xonotic/dialog_settings_misc.c:57
msgid "Advanced settings..."
msgstr "Edistyneet asetukset..."
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:105
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:104
msgid "Map list:"
msgstr "Karttalista"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:111
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:110
msgid "Select all"
msgstr "Valitse kaikki"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:114
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:113
msgid "Select none"
msgstr "Poista kaikki valinnat"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:120
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:119
msgid "Start Multiplayer!"
msgstr "Aloita moninpeli!"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:155
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:154
msgid "Capture limit:"
msgstr "Lipunryöstöraja"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:159
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:158
msgid "Lives:"
msgstr "Elämät:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:160
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:159
msgid "Laps:"
msgstr "Kierrokset:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:161
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:160
msgid "Goals:"
msgstr "Maalit:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:165
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:164
msgid "Frag limit:"
msgstr "Tapporaja:"
#: qcsrc/menu/xonotic/dialog_multiplayer_create_advanced.c:47
msgid "Virtual friendly fire (effect only)"
-msgstr "Virtuaalinen joukkuevahinko (vain effekti)"
+msgstr "Virtuaalinen joukkuevahinko (vain efekti)"
#: qcsrc/menu/xonotic/dialog_multiplayer_create_advanced.c:50
msgid "Friendly fire penalty:"
#: qcsrc/menu/xonotic/dialog_multiplayer_create_advanced.c:54
msgid "Virtual penalty (effect only)"
-msgstr "Virtuaalinen rangaistus (vain effekti)"
+msgstr "Virtuaalinen rangaistus (vain efekti)"
#: qcsrc/menu/xonotic/dialog_multiplayer_create_advanced.c:57
msgid "Teams:"
msgid "Game types:"
msgstr "Pelityypit:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create_mapinfo.c:119
+#: qcsrc/menu/xonotic/dialog_multiplayer_create_mapinfo.c:118
#: qcsrc/menu/xonotic/dialog_multiplayer_join_serverinfo.c:314
msgid "Close"
msgstr "Sulje"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create_mapinfo.c:122
-#: qcsrc/menu/xonotic/dialog_multiplayer_demo.c:46
-msgid "Play"
+#: qcsrc/menu/xonotic/dialog_multiplayer_create_mapinfo.c:121
+msgid "MAP^Play"
msgstr "Pelaa"
#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:7
msgid "Timedemo"
msgstr "Aikademo"
+#: qcsrc/menu/xonotic/dialog_multiplayer_demo.c:46
+msgid "DEMO^Play"
+msgstr "Pelaa"
+
#: qcsrc/menu/xonotic/dialog_multiplayer_join.c:4
msgid "Join"
msgstr "Liity"
#: qcsrc/menu/xonotic/dialog_multiplayer_join_serverinfo.c:158
#, c-format
msgid "%d/%d, %d free player slots"
-msgstr ""
+msgstr "%d/%d, %d vapaata pelaajapaikkaa"
#: qcsrc/menu/xonotic/dialog_multiplayer_join_serverinfo.c:172
#, c-format
msgid "%d modified settings"
-msgstr "%d muokatut asetukset"
+msgstr "%d muokattua asetusta"
#: qcsrc/menu/xonotic/dialog_multiplayer_join_serverinfo.c:172
msgid "Official settings"
#: qcsrc/menu/xonotic/dialog_multiplayer_join_serverinfo.c:295
msgid "CA:"
-msgstr "Lipunryöstö (CTF)"
+msgstr "CA:"
#: qcsrc/menu/xonotic/dialog_multiplayer_join_serverinfo.c:301
msgid "Key:"
-msgstr "Avain (Key)"
+msgstr "Avain:"
#: qcsrc/menu/xonotic/dialog_multiplayer_join_serverinfo.c:307
msgid "Encryption:"
#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:63
msgid "Model:"
-msgstr "Malli:"
+msgstr "Hahmo:"
#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:88
msgid "Field of view:"
#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:140
msgid "By health"
-msgstr ""
+msgstr "Elämän mukaan"
#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:143
-#, fuzzy
msgid "Custom"
-msgstr "omavalintainen"
+msgstr "Omavalintainen"
#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:148
msgid "Enable center dot"
-msgstr "Ota keskipiste käyttöön"
+msgstr "Ota tähtäin käyttöön"
#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:151
msgid "Size:"
#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:169
msgid "Enter HUD editor"
-msgstr "Mene näkymän muokkaimeen"
+msgstr "Muokkaa näkymää"
#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:174
msgid "Force models:"
#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:191
msgid "Damage splash:"
-msgstr "Vahinkoroiskeet"
+msgstr "Veriroiskeet"
#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:195
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:178
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:191
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:173
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:194
#: qcsrc/menu/xonotic/dialog_settings_misc.c:30
#: qcsrc/menu/xonotic/dialog_settings_misc.c:41
#: qcsrc/menu/xonotic/dialog_settings_video.c:109
#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup_waypoint.c:5
msgid "Waypoints"
-msgstr "Välimatkat"
+msgstr "Välietapit"
#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup_waypoint.c:23
msgid "Show base waypoints"
-msgstr "Näytä päämäärien välimatkat"
+msgstr "Näytä tukikohtien välimatkat"
#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup_waypoint.c:25
msgid "Waypoint scale:"
-msgstr "Välimatkan skaala:"
+msgstr "Välietappien skaala:"
#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup_waypoint.c:29
msgid "Waypoint alpha:"
-msgstr "Välimatkojen alpha:"
+msgstr "Välietappien alpha:"
#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup_waypoint.c:34
msgid "Show names:"
msgid "Draw 1st person weapon model"
msgstr "Piirrä ensimmäisen persoonan asemalli"
-#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup_weapons.c:50
-msgid "Center"
-msgstr ""
-
#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup_weapons.c:55
msgid "Flip view horizontally"
msgstr "Käännä näkymä horisontaalisesti"
msgid "Music:"
msgstr "Musiikki:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:40
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:41
msgid "VOL^Ambient:"
msgstr "VOL^Ympäristö:"
msgid "Info:"
msgstr "Tiedoitukset:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:57
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:55
msgid "Items:"
msgstr "Esineet:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:65
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:62
msgid "Pain:"
msgstr "Kipu:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:73
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:69
msgid "Player:"
msgstr "Pelaaja:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:81
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:76
msgid "Shots:"
msgstr "Laukaukset:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:88
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:83
msgid "Voice:"
msgstr "Puhe:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:96
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:91
msgid "Weapons:"
msgstr "Aseet:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:103
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:161
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:98
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:156
msgid "Frequency:"
msgstr "Taajuus:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:105
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:100
msgid "8 kHz"
msgstr "8 kHz"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:106
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:101
msgid "11.025 kHz"
msgstr "11.025 kHz"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:107
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:102
msgid "16 kHz"
msgstr "16 kHz"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:108
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:103
msgid "22.05 kHz"
msgstr "22.05 Khz"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:109
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:104
msgid "24 kHz"
msgstr "24 kHz"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:110
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:105
msgid "32 kHz"
msgstr "32 kHz"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:111
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:106
msgid "44.1 kHz"
msgstr "44.1 kHz"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:112
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:107
msgid "48 kHz"
msgstr "48 kHz"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:115
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:110
msgid "Channels:"
msgstr "Kanavat:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:117
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:112
msgid "Mono"
msgstr "Mono"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:118
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:113
msgid "Stereo"
msgstr "Stereo"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:119
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:114
msgid "2.1"
msgstr "2.1"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:120
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:115
msgid "4"
msgstr "4"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:121
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:116
msgid "5"
-msgstr ""
+msgstr "5"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:122
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:117
msgid "5.1"
msgstr "5.1"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:123
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:118
msgid "6.1"
msgstr "6.1"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:124
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:119
msgid "7.1"
msgstr "7.1"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:128
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:123
msgid "Swap Stereo"
msgstr "Vaihda stereoäänilähteiden paikkaa"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:132
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:127
msgid "Headphone friendly mode"
msgstr "Kuulokeystävällinen tila"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:136
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:131
msgid "Spatial voices:"
msgstr "Tilanneäänet:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:137
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:132
msgid "VOCS^None"
msgstr "VOCS^Ei mitään"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:138
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:133
msgid "VOCS^Taunts"
msgstr "VOCS^Huudahdukset"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:139
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:134
msgid "VOCS^All"
msgstr "VOCS^Kaikki"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:142
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:137
msgid "Taunt range:"
msgstr "Huudahduksen kantama"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:145
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:140
msgid "RNG^Very short"
msgstr "RNG^Hyvin lyhyt"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:146
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:141
msgid "RNG^Short"
msgstr "RNG^Lyhyt"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:147
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:142
msgid "RNG^Normal"
msgstr "RNG^Normaali"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:148
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:143
msgid "RNG^Long"
msgstr "RNG^Pitkä"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:149
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:144
msgid "RNG^Full"
msgstr "RNG^Täysi"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:156
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:151
msgid "Automatic taunts"
msgstr "Automaattiset huudahdukset"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:165
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:160
msgid "Time warning:"
msgstr "Aikavaroitus:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:167
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:162
msgid "WRN^None"
msgstr "WRN^Ei mitään"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:168
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:163
msgid "1 minute"
msgstr "1 minuutti"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:169
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:164
msgid "5 minutes"
msgstr "5 minuuttia"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:170
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:165
msgid "WRN^Both"
msgstr "WRN^Molemmat"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:173
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:168
msgid "Hit indicator"
msgstr "Osumailmaisin"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:175
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:170
msgid "Menu sounds"
msgstr "Valikon äänet"
msgid "Decals"
msgstr "Siirtokuvat"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:120
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:118
+msgid "Decals on models"
+msgstr "Hahmojen siirtokuvat"
+
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:122
msgid "Distance:"
msgstr "Etäisyys:"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:126
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:128
msgid "Time:"
-msgstr "Aika:"
+msgstr "Kesto:"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:132
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:134
msgid "Use lightmaps"
msgstr "Käytä valaistuksia"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:133
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:135
msgid "Deluxe mapping"
msgstr "Pikselikohtainen valaistus"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:135
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:137
msgid "Gloss"
msgstr "Kiilto"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:138
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:140
msgid "Offset mapping"
msgstr "Korosta tekstuurien kuhmuja"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:140
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:142
msgid "Relief mapping"
msgstr "Tehokas tekstuurien kuhmujen korostus"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:143
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:145
msgid "Reflections:"
msgstr "Heijastukset:"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:146
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:148
msgid "Blurred"
msgstr "Sumea"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:147
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:149
msgid "REFL^Good"
msgstr "REFL^Hyvä"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:148
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:150
msgid "Sharp"
msgstr "Terävä"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:153
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:155
msgid "Show surfaces"
msgstr "Näytä pinnat"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:155
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:157
msgid "No dynamic lighting"
msgstr "Ei dynaamista valaistusta"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:157
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:159
msgid "Flash blend approximation"
msgstr "Yksinkertaiset valot"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:159
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:161
msgid "Realtime dynamic lighting"
msgstr "Reaaliaikainen dynaaminen valaitus"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:160
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:164
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:162
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:166
msgid "Shadows"
msgstr "Varjot"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:163
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:165
msgid "Realtime world lighting"
msgstr "Reaaliaikainen ympäristön valaistus"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:168
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:170
msgid "Use normal maps"
msgstr "Käytä tekstuurien suunnattua varjostamista"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:170
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:172
msgid "Soft shadows"
msgstr "Pehmeät varjot"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:173
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:175
msgid "Coronas"
msgstr "Valokehät"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:174
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:176
msgid "Use Occlusion Queries"
msgstr "Käytä Occlusion Queryä"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:176
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:178
msgid "Bloom"
msgstr "Hehku"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:178
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:180
msgid "High Dynamic Range (HDR)"
msgstr "HDR"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:182
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:184
msgid "Motion blur:"
msgstr "Liikesumeus:"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:187
-#, fuzzy
-msgid "Damage & water blur"
-msgstr "Vahinkosumeus:"
-
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:188
-#, fuzzy
-msgid "Powerup sharpen"
-msgstr "Tehonlisäyspaneeli"
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:189
+msgid "Blur and sharpen postprocessing"
+msgstr "Sumenna ja terävöitä jälkikäsittelyä"
#: qcsrc/menu/xonotic/dialog_settings_input.c:26
msgid "Key bindings:"
#: qcsrc/menu/xonotic/dialog_settings_video.c:46
msgid "Vertical Synchronization"
-msgstr "VSYNC"
+msgstr "Pystytahdistus (VSYNC)"
#: qcsrc/menu/xonotic/dialog_settings_video.c:49
msgid "Use OpenGL 2.0 shaders (GLSL)"
#: qcsrc/menu/xonotic/dialog_settings_video.c:67
msgid "Depth first:"
-msgstr "Syvyys ensin (Depth First):"
+msgstr "Syvyyssuuntainen renderöinti:"
#: qcsrc/menu/xonotic/dialog_settings_video.c:69
msgid "DF^Disabled"
msgid "Singleplayer"
msgstr "Yksinpeli"
-#: qcsrc/menu/xonotic/dialog_singleplayer.c:59
+#: qcsrc/menu/xonotic/dialog_singleplayer.c:127
msgid "Instant action! (random map with bots)"
msgstr "Suoraan taisteluun! (satunnainen kartta bottien kera)"
-#: qcsrc/menu/xonotic/dialog_singleplayer.c:80
+#: qcsrc/menu/xonotic/dialog_singleplayer.c:148
msgid "Start Singleplayer!"
msgstr "Aloita yksinpeli!"
msgid "Bookmark"
msgstr "Kirjanmerkki"
-#: qcsrc/menu/xonotic/serverlist.c:523
+#: qcsrc/menu/xonotic/serverlist.c:527
msgid "Ping"
msgstr "Viive"
-#: qcsrc/menu/xonotic/serverlist.c:524
+#: qcsrc/menu/xonotic/serverlist.c:528
msgid "Host name"
msgstr "Palvelimen nimi"
-#: qcsrc/menu/xonotic/serverlist.c:525
+#: qcsrc/menu/xonotic/serverlist.c:529
msgid "Map"
msgstr "Kartta"
-#: qcsrc/menu/xonotic/serverlist.c:526
+#: qcsrc/menu/xonotic/serverlist.c:530
msgid "Type"
msgstr "Tyyppi"
-#: qcsrc/menu/xonotic/serverlist.c:527
+#: qcsrc/menu/xonotic/serverlist.c:531
msgid "Players"
msgstr "Pelaajat"
msgid "<AUTHOR>"
msgstr "<AUTHOR>"
-#: qcsrc/menu/xonotic/skinlist.c:163
-#, c-format
-msgid "%s: %s"
-msgstr "%s: %s"
-
#: qcsrc/menu/xonotic/slider_decibels.c:50
msgid "VOL^OFF"
msgstr "VOL^OFF"
#: qcsrc/menu/xonotic/util.qc:367
#, c-format
msgid "^1%s TEST BUILD"
-msgstr ""
+msgstr "^1%s TESTIVERSIO"
#: qcsrc/menu/xonotic/util.qc:432
#, c-format
#: qcsrc/menu/xonotic/util.qc:523
msgid "Arena"
-msgstr "Areena"
+msgstr "Areena (Arena)"
#: qcsrc/menu/xonotic/util.qc:524
msgid "Assault"
#: qcsrc/menu/xonotic/util.qc:531
msgid "Key Hunt"
-msgstr "Avaimenmetsästys (Key Hunt)"
+msgstr "Avaimenetsintä (Key Hunt)"
#: qcsrc/menu/xonotic/util.qc:532
msgid "Last Man Standing"
#: qcsrc/menu/xonotic/util.qc:536
msgid "Race CTS"
-msgstr "Kilpailu CTS"
+msgstr "Kilpailu CTS (RACE CTS)"
#: qcsrc/menu/xonotic/util.qc:537
msgid "Runematch"
#: qcsrc/server/w_crylink.qc:2
msgid "Crylink"
-msgstr ""
+msgstr "Crylink"
-#: qcsrc/server/w_crylink.qc:664
+#: qcsrc/server/w_crylink.qc:666
#, c-format
msgid "%s succeeded at self-destructing themself with the Crylink"
-msgstr ""
+msgstr "%s hautoi itsetuhoisia ajatuksia Crylink kädessä"
-#: qcsrc/server/w_crylink.qc:669
+#: qcsrc/server/w_crylink.qc:671
#, c-format
msgid "%s could not hide from %s's Crylink"
-msgstr ""
+msgstr "%s ei kyennyt pakenemaan pelaajan %s Crylinkkiä"
-#: qcsrc/server/w_crylink.qc:671
+#: qcsrc/server/w_crylink.qc:673
#, c-format
msgid "%s was too close to %s's Crylink"
-msgstr ""
+msgstr "%s oli liian lähellä pelaajan %s ampumarataa"
-#: qcsrc/server/w_crylink.qc:673
+#: qcsrc/server/w_crylink.qc:675
#, c-format
msgid "%s took a close look at %s's Crylink"
-msgstr ""
+msgstr "%s pääsi tutustumaan lähemmin pelaajan %s kauniiseen Crylinkkiin"
#: qcsrc/server/w_electro.qc:2
msgid "Electro"
-msgstr ""
+msgstr "Electro"
-#: qcsrc/server/w_electro.qc:577
+#: qcsrc/server/w_electro.qc:574
#, c-format
msgid "%s could not remember where they put plasma"
-msgstr ""
+msgstr "%s ei sattunut muistamaan minne se plasma oikein kuuluikaan"
-#: qcsrc/server/w_electro.qc:579
+#: qcsrc/server/w_electro.qc:576
#, c-format
msgid "%s played with plasma"
-msgstr ""
+msgstr "%s leikki plasmalla, ei hyvä"
-#: qcsrc/server/w_electro.qc:586
+#: qcsrc/server/w_electro.qc:583
#, c-format
msgid "%s just noticed %s's blue ball"
-msgstr ""
+msgstr "%s näki pelaajan %s sinisen pallon"
-#: qcsrc/server/w_electro.qc:588
+#: qcsrc/server/w_electro.qc:585
#, c-format
msgid "%s got in touch with %s's blue ball"
-msgstr ""
+msgstr "%s pääsi tutustumaan pelaajan %s siniseen palloon"
-#: qcsrc/server/w_electro.qc:593
+#: qcsrc/server/w_electro.qc:590
#, c-format
msgid "%s felt the electrifying air of %s's combo"
-msgstr ""
+msgstr "%s tunsi sähköä ilmassa pelaajan %s tulituksen jälkeen"
-#: qcsrc/server/w_electro.qc:595
+#: qcsrc/server/w_electro.qc:592
#, c-format
msgid "%s got too close to %s's blue beam"
-msgstr ""
+msgstr "%s joutui liian lähelle pelaajan %s sinistä sädettä"
-#: qcsrc/server/w_electro.qc:597
+#: qcsrc/server/w_electro.qc:594
#, c-format
msgid "%s was blasted by %s's blue beam"
-msgstr ""
+msgstr "%s posahti pelaajan %s siniseen säteeseen"
#: qcsrc/server/w_fireball.qc:2
-#, fuzzy
msgid "Fireball"
-msgstr "Nexpallo (Nexball)"
+msgstr "Fireball"
#: qcsrc/server/w_fireball.qc:417
#, c-format
msgid "%s forgot about some firemine"
-msgstr ""
+msgstr "%s unohti tulimiinansa"
#: qcsrc/server/w_fireball.qc:419 qcsrc/server/w_hlac.qc:240
#, c-format
msgid "%s should have used a smaller gun"
-msgstr ""
+msgstr "%s olisi pitänyt käyttää pienempää asetta"
#: qcsrc/server/w_fireball.qc:426
#, c-format
msgid "%s tried to catch %s's firemine"
-msgstr ""
+msgstr "%s koetti napata pelaajan %s tulimiinan"
#: qcsrc/server/w_fireball.qc:428
#, c-format
msgid "%s fatefully ignored %s's firemine"
-msgstr ""
+msgstr "%s kohtalokkaasti tutustui pelaajan %s tulimiinaan"
#: qcsrc/server/w_fireball.qc:435
#, c-format
msgid "%s could not hide from %s's fireball"
-msgstr ""
+msgstr "%s ei kyennyt pakenemaan pelaajan %s tulipalloa"
#: qcsrc/server/w_fireball.qc:437
#, c-format
msgid "%s saw the pretty lights of %s's fireball"
-msgstr ""
+msgstr "&s näki kauniita valoja pelaajan %s tulipallosta"
#: qcsrc/server/w_fireball.qc:440
#, c-format
msgid "%s got too close to %s's fireball"
-msgstr ""
+msgstr "%s joutui turhan lähelle pelaajan %s tulipalloa"
#: qcsrc/server/w_fireball.qc:442
#, c-format
msgid "%s tasted %s's fireball"
-msgstr ""
+msgstr "%s maistoi pelaajan %s tulipalloa"
#: qcsrc/server/w_grenadelauncher.qc:2
msgid "Mortar"
-msgstr ""
+msgstr "Mortar"
-#: qcsrc/server/w_grenadelauncher.qc:379
+#: qcsrc/server/w_grenadelauncher.qc:383
#, c-format
msgid "%s tried out his own grenade"
-msgstr ""
+msgstr "%s testasi räjähtääkö oma kranaatti"
-#: qcsrc/server/w_grenadelauncher.qc:381
+#: qcsrc/server/w_grenadelauncher.qc:385
#, c-format
msgid "%s detonated"
-msgstr ""
+msgstr "%s pössähti"
-#: qcsrc/server/w_grenadelauncher.qc:387
+#: qcsrc/server/w_grenadelauncher.qc:391
#, c-format
msgid "%s didn't see %s's grenade"
-msgstr ""
+msgstr "%s ei nähnyt pelaajan %s kranaattia"
-#: qcsrc/server/w_grenadelauncher.qc:389
+#: qcsrc/server/w_grenadelauncher.qc:393
#, c-format
msgid "%s almost dodged %s's grenade"
-msgstr ""
+msgstr "%s väisti melkein pelaajan %s kranaatin"
-#: qcsrc/server/w_grenadelauncher.qc:391
+#: qcsrc/server/w_grenadelauncher.qc:395
#, c-format
msgid "%s ate %s's grenade"
-msgstr ""
+msgstr "%s söi pelaajan %s kranaatin"
#: qcsrc/server/w_hagar.qc:2
msgid "Hagar"
-msgstr ""
+msgstr "Hagar"
-#: qcsrc/server/w_hagar.qc:382 qcsrc/server/w_seeker.qc:655
+#: qcsrc/server/w_hagar.qc:395 qcsrc/server/w_seeker.qc:655
#, c-format
msgid "%s played with tiny rockets"
-msgstr ""
+msgstr "%s leikki pienien rakettien kanssa"
-#: qcsrc/server/w_hagar.qc:386
+#: qcsrc/server/w_hagar.qc:399
#, c-format
msgid "%s hoped %s's missiles wouldn't bounce"
-msgstr ""
+msgstr "%s toivoi ettei pelaajan %s raketit olisi kimmonneet"
-#: qcsrc/server/w_hagar.qc:388 qcsrc/server/w_seeker.qc:661
+#: qcsrc/server/w_hagar.qc:401 qcsrc/server/w_seeker.qc:661
#, c-format
msgid "%s was pummeled by %s"
-msgstr ""
+msgstr "%s joutui pelaajan %s nuijimaksi"
#: qcsrc/server/w_hlac.qc:2
msgid "Heavy Laser Assault Cannon"
-msgstr ""
+msgstr "HLAC"
#: qcsrc/server/w_hlac.qc:242
#, c-format
msgid "%s was cut down by %s"
-msgstr ""
+msgstr "%s joutui pelaajan %s niittämäksi"
#: qcsrc/server/w_hook.qc:2
-#, fuzzy
msgid "Grappling Hook"
-msgstr "Köysi"
+msgstr "Grabbling Hook"
#: qcsrc/server/w_hook.qc:266 qcsrc/server/w_porto.qc:296
#, c-format
msgid "%s did the impossible"
-msgstr ""
+msgstr "%s teki mahdottomat"
#: qcsrc/server/w_hook.qc:268
#, c-format
msgid "%s has run into %s's gravity bomb"
-msgstr ""
+msgstr "%s juoksi pelaajan %s pommiin"
#: qcsrc/server/w_laser.qc:2
msgid "Laser"
-msgstr ""
+msgstr "Laser"
#: qcsrc/server/w_laser.qc:311
#, c-format
msgid "%s lasered themself to hell"
-msgstr ""
+msgstr "%s lähetti itsensä laserilla helvettiin"
#: qcsrc/server/w_laser.qc:315
#, c-format
msgid "%s was cut in half by %s's gauntlet"
-msgstr ""
+msgstr "%s leikkaantui kahtia pelaajan %s taisteluhansikkaaseen"
#: qcsrc/server/w_laser.qc:317
#, c-format
msgid "%s was lasered to death by %s"
-msgstr ""
+msgstr "%s kuoli pelaajan %s laseriin"
#: qcsrc/server/w_minelayer.qc:2
-#, fuzzy
msgid "Mine Layer"
-msgstr "Yksinpeli"
+msgstr "Mine Layer"
#: qcsrc/server/w_minelayer.qc:523 qcsrc/server/w_rocketlauncher.qc:501
#, c-format
msgid "%s exploded"
-msgstr ""
+msgstr "%s räjähti"
#: qcsrc/server/w_minelayer.qc:527
#, c-format
msgid "%s got too close to %s's mine"
-msgstr ""
+msgstr "%s joutui liian lähelle pelaajan %s miinaa"
#: qcsrc/server/w_minelayer.qc:529
#, c-format
msgid "%s almost dodged %s's mine"
-msgstr ""
+msgstr "%s miltein väisti pelaajan %s miinan"
#: qcsrc/server/w_minelayer.qc:531
#, c-format
msgid "%s stepped on %s's mine"
-msgstr ""
+msgstr "%s astui pelaajan %s miinaan"
#: qcsrc/server/w_minstanex.qc:2
-#, fuzzy
msgid "MinstaNex"
-msgstr "MinstaGib"
+msgstr "MinstaNex"
-#: qcsrc/server/w_minstanex.qc:290 qcsrc/server/w_nex.qc:253
-#: qcsrc/server/w_shotgun.qc:209 qcsrc/server/w_uzi.qc:317
+#: qcsrc/server/w_minstanex.qc:293 qcsrc/server/w_nex.qc:253
+#: qcsrc/server/w_shotgun.qc:215 qcsrc/server/w_uzi.qc:317
#, c-format
msgid "%s is now thinking with portals"
-msgstr ""
+msgstr "%s kokee portaalit"
-#: qcsrc/server/w_minstanex.qc:292 qcsrc/server/w_nex.qc:255
+#: qcsrc/server/w_minstanex.qc:295 qcsrc/server/w_nex.qc:255
#, c-format
msgid "%s has been vaporized by %s"
-msgstr ""
+msgstr "%s höyrystyi pelaajan %s toimesta"
#: qcsrc/server/w_nex.qc:2
-#, fuzzy
msgid "Nex"
-msgstr "Nexpallo (Nexball)"
+msgstr "Nex"
#: qcsrc/server/w_porto.qc:2
msgid "Port-O-Launch"
-msgstr ""
+msgstr "Port-O-Launch"
#: qcsrc/server/w_porto.qc:298
#, c-format
msgid "%s felt %s doing the impossible to him"
-msgstr ""
+msgstr "%s tunsi kuinka pelaaja %s teki hänelle mahdottoman tempun"
#: qcsrc/server/w_rifle.qc:2
msgid "Rifle"
-msgstr ""
+msgstr "Rifle"
#: qcsrc/server/w_rifle.qc:233
#, c-format
msgid "%s shot themself automatically"
-msgstr ""
+msgstr "%s ampui itsensä täysin omatoimisesti"
#: qcsrc/server/w_rifle.qc:235
#, c-format
msgid "%s sniped themself somehow"
-msgstr ""
+msgstr "%s onnistui jotenkin ampumaan omaan jalkaansa"
#: qcsrc/server/w_rifle.qc:242
#, c-format
msgid "%s failed to hide from %s's bullet hail"
-msgstr ""
+msgstr "%s ei kyennyt pakenemaan pelaajan %s luotisadetta"
#: qcsrc/server/w_rifle.qc:244
#, c-format
msgid "%s died in %s's bullet hail"
-msgstr ""
+msgstr "%s kuoli pelaajan %s luotisateeseen"
#: qcsrc/server/w_rifle.qc:251
#, c-format
msgid "%s failed to hide from %s's rifle"
-msgstr ""
+msgstr "%s ei kyennyt piiloutumaan pelaajan %s kivääriä"
#: qcsrc/server/w_rifle.qc:256
#, c-format
msgid "%s got hit in the head by %s"
-msgstr ""
+msgstr "%s sai päähänsä reiän pelaajan %s toimesta"
#: qcsrc/server/w_rifle.qc:258 qcsrc/server/w_uzi.qc:321
#, c-format
msgid "%s was sniped by %s"
-msgstr ""
+msgstr "%s ammuttiin alas, kuolonlaukauksen tarjosi %s"
#: qcsrc/server/w_rocketlauncher.qc:2
msgid "Rocket Launcher"
-msgstr ""
+msgstr "Rocket Launcher"
#: qcsrc/server/w_rocketlauncher.qc:505
#, c-format
msgid "%s got too close to %s's rocket"
-msgstr ""
+msgstr "%s joutui liian lähelle pelaajan %s rakettia"
#: qcsrc/server/w_rocketlauncher.qc:507
#, c-format
msgid "%s almost dodged %s's rocket"
-msgstr ""
+msgstr "%s miltein väisti pelaajan %s raketin"
#: qcsrc/server/w_rocketlauncher.qc:509
#, c-format
msgid "%s ate %s's rocket"
-msgstr ""
+msgstr "%s söi pelaajan %s raketin"
#: qcsrc/server/w_seeker.qc:2
msgid "T.A.G. Seeker"
-msgstr ""
+msgstr "T.A.G. Seeker"
#: qcsrc/server/w_seeker.qc:659
#, c-format
msgid "%s was tagged by %s"
-msgstr ""
+msgstr "%s joutui pelaajan %s leimaamaksi ja tuhoamaksi"
#: qcsrc/server/w_shotgun.qc:2
-#, fuzzy
msgid "Shotgun"
-msgstr "Laukaukset:"
+msgstr "Shotgun"
-#: qcsrc/server/w_shotgun.qc:213
+#: qcsrc/server/w_shotgun.qc:219
#, c-format
msgid "%2$s ^7slapped %1$s ^7around a bit with a large ^2shotgun"
-msgstr ""
+msgstr "%2$s ^7murjoi pelaajaa %1$s ^2haulikon tylpällä päällä"
-#: qcsrc/server/w_shotgun.qc:215
+#: qcsrc/server/w_shotgun.qc:221
#, c-format
msgid "%s was gunned by %s"
-msgstr ""
+msgstr "%s ammuttiin alas pelaajan %s toimesta"
#: qcsrc/server/w_tuba.qc:2
-#, fuzzy, c-format
+#, c-format
msgid "@!#%'n Tuba"
-msgstr "@!#% tuubanheitto!"
+msgstr "@!#% tuuba"
-#: qcsrc/server/w_tuba.qc:263
+#: qcsrc/server/w_tuba.qc:252
#, c-format
msgid "%s hurt his own ears with the @!#%%'n Tuba"
-msgstr ""
+msgstr "%s tärykalvot räjähti, kun hän soitteli @!#%% tuubaa"
-#: qcsrc/server/w_tuba.qc:267
+#: qcsrc/server/w_tuba.qc:256
#, c-format
msgid "%s died of %s's great playing on the @!#%%'n Tuba"
msgstr ""
+"%s kuoli ihastuksesta kuullessaan pelaajan %s kaunista @!#%% tuubansoittoa"
#: qcsrc/server/w_uzi.qc:2
msgid "Machine Gun"
-msgstr ""
+msgstr "Machine Gun"
#: qcsrc/server/w_uzi.qc:323
#, c-format
msgid "%s was riddled full of holes by %s"
-msgstr ""
-
-#~ msgid "Speedometer"
-#~ msgstr "Nopeusmittari"
-
-#~ msgid "qu/s (hidden)"
-#~ msgstr "qu/s (kätketty)"
-
-#~ msgid "Show accelerometer"
-#~ msgstr "Näytä kiihtyvyysmittari"
-
-#~ msgid "Accelerometer scale:"
-#~ msgstr "Kiihtyvyysmittarin skaala:"
-
-#~ msgid "Waypoint settings:"
-#~ msgstr "Välimatkojen asetukset:"
-
-#~ msgid ""
-#~ "Please answer a few initial questions to enhance the game experience."
-#~ msgstr ""
-#~ "Ole hyvä ja vastaa muutamaan alustavaan kysymykseen parantaaksesi "
-#~ "pelikokemustasi."
-
-#~ msgid "%d/%d"
-#~ msgstr "%d/%d"
+msgstr "%s sai muutaman uuden ilmanvaihtoreiän, kun %s tarjosi niitä"
msgstr ""
"Project-Id-Version: Xonotic 0.1preview\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2011-06-27 18:26+0200\n"
-"PO-Revision-Date: 2011-03-09 15:48-0500\n"
-"Last-Translator: Maxime Paradis <taximus.micro@gmail.com>\n"
-"Language-Team: French <kde-i18n-doc@kde.org>\n"
+"POT-Creation-Date: 2011-09-02 07:51+0200\n"
+"PO-Revision-Date: 2011-08-23 18:51-0400\n"
+"Last-Translator: \n"
+"Language-Team: \n"
"Language: fr\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"X-Generator: Lokalize 1.2\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
+#: qcsrc/common/mapinfo.qc:1092 qcsrc/menu/xonotic/skinlist.c:163
+#, c-format
+msgid "%s: %s"
+msgstr "%s: %s"
+
#: qcsrc/menu/gamecommand.qc:47
#, c-format
msgid "error: status is %d\n"
msgstr "personnalisé"
#: qcsrc/menu/menu.qc:29
-#, fuzzy, c-format
+#, c-format
msgid "^4MQC Build information: ^1%s\n"
-msgstr "^4MQC Build information : %s (français)\n"
+msgstr "^4MQC Information de version : %s (français)\n"
#: qcsrc/menu/xonotic/campaign.c:284
-#: qcsrc/menu/xonotic/dialog_singleplayer.c:66
+#: qcsrc/menu/xonotic/dialog_singleplayer.c:134
msgid "???"
msgstr "???"
#: qcsrc/menu/xonotic/dialog_hudpanel_ammo.c:28
msgid "Align icon:"
-msgstr ""
+msgstr "Aligner l'icône"
#: qcsrc/menu/xonotic/dialog_hudpanel_ammo.c:29
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:36
#: qcsrc/menu/xonotic/dialog_hudpanel_healtharmor.c:28
#: qcsrc/menu/xonotic/dialog_hudpanel_healtharmor.c:40
#: qcsrc/menu/xonotic/dialog_hudpanel_powerups.c:28
msgstr "Gauche"
#: qcsrc/menu/xonotic/dialog_hudpanel_ammo.c:30
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:38
#: qcsrc/menu/xonotic/dialog_hudpanel_healtharmor.c:30
#: qcsrc/menu/xonotic/dialog_hudpanel_healtharmor.c:41
#: qcsrc/menu/xonotic/dialog_hudpanel_powerups.c:30
msgid "Right"
msgstr "Droite"
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:4
+msgid "Centerprint"
+msgstr "Écriture du centre"
+
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:23
+msgid "Message duration:"
+msgstr "Durée du message:"
+
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:27
+msgid "Fade time:"
+msgstr "Temps d'effacement d'une entrée:"
+
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:31
+msgid "Flip messages order"
+msgstr "Inverser l'ordre des notifications"
+
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:33
+msgid "Text alignment:"
+msgstr "Alignement icônes:"
+
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:37
+#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup_weapons.c:50
+msgid "Center"
+msgstr "Centre"
+
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:41
+msgid "Font scale:"
+msgstr "Taille de police:"
+
#: qcsrc/menu/xonotic/dialog_hudpanel_chat.c:4
msgid "Chat Panel"
msgstr "Panneau de Chat"
msgstr "Temps d'effacement d'une entrée:"
#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:4
-#, fuzzy
msgid "Physics Panel"
-msgstr "Panneau de Chat"
+msgstr "Panneau d'effets physiques"
-#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:23
+#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:22
#: qcsrc/menu/xonotic/dialog_hudpanel_pressedkeys.c:21
#: qcsrc/menu/xonotic/dialog_hudpanel_radar.c:21
msgid "Panel disabled"
msgstr "Panneau désactivé"
+#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:23
+msgid "Panel enabled"
+msgstr "Panneau activé"
+
#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:24
-#, fuzzy
-msgid "Panel enabled if not observing"
-msgstr "Panneau activé en spectateur"
+msgid "Panel enabled even observing"
+msgstr "Panneau activé même en spectateur"
#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:25
-#: qcsrc/menu/xonotic/dialog_hudpanel_pressedkeys.c:23
-#: qcsrc/menu/xonotic/dialog_hudpanel_radar.c:23
-msgid "Panel always enabled"
-msgstr "Panneau toujours activé"
+msgid "Panel enabled only in Race/CTS"
+msgstr "Panneau activé seulement en Race/CTS"
#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:31
-#, fuzzy
msgid "Status bar"
-msgstr "Activer jauges"
+msgstr "Barre de statut"
#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:33
#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup_weapons.c:48
msgstr "À droite"
#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:35
-#, fuzzy
msgid "Inward align"
-msgstr "Intérieur"
+msgstr "Aligner vers l'intérieur"
#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:36
-#, fuzzy
msgid "Outward align"
-msgstr "Extérieur"
+msgstr "Aligner vers l'extérieur"
#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:40
-#, fuzzy
msgid "Flip speed/acceleration positions"
-msgstr "Échanger positions Santé/Armure"
+msgstr "Échanger positions Vitesse/Accélération"
#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:44
-#, fuzzy
msgid "Speed:"
-msgstr "Vitesse (Ko/seconde):"
+msgstr "Vitesse:"
#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:45
msgid "Include vertical speed"
-msgstr ""
+msgstr "Inclure vitesse verticale"
#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:56
msgid "Speed unit:"
-msgstr ""
+msgstr "Unité de vitesse"
#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:58
msgid "qu/s"
msgstr "noeuds"
#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:64
-#, fuzzy
msgid "Show"
-msgstr "Montrer barre de munitions"
+msgstr "Montrer"
#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:67
-#, fuzzy
msgid "Top speed"
-msgstr "Vitesse de Zoom:"
+msgstr "Vitesse maximale:"
#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:73
-#, fuzzy
msgid "Acceleration:"
-msgstr "Réflexions:"
+msgstr "Accélération:"
#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:74
msgid "Include vertical acceleration"
-msgstr ""
+msgstr "Inclure accélération verticale"
#: qcsrc/menu/xonotic/dialog_hudpanel_powerups.c:4
msgid "Powerups Panel"
msgid "Panel enabled when spectating"
msgstr "Panneau activé en spectateur"
+#: qcsrc/menu/xonotic/dialog_hudpanel_pressedkeys.c:23
+#: qcsrc/menu/xonotic/dialog_hudpanel_radar.c:23
+msgid "Panel always enabled"
+msgstr "Panneau toujours activé"
+
#: qcsrc/menu/xonotic/dialog_hudpanel_pressedkeys.c:30
msgid "Forced aspect:"
msgstr "Aspect forcé:"
#: qcsrc/menu/xonotic/dialog_hudpanel_score.c:22
msgid "Score:"
-msgstr ""
+msgstr "Score:"
#: qcsrc/menu/xonotic/dialog_hudpanel_score.c:25
msgid "Rankings:"
-msgstr ""
+msgstr "Rangs:"
#: qcsrc/menu/xonotic/dialog_hudpanel_score.c:26
-#, fuzzy
msgid "Off"
msgstr "Désactivé"
#: qcsrc/menu/xonotic/dialog_hudpanel_score.c:27
msgid "And me"
-msgstr ""
+msgstr "Et moi"
#: qcsrc/menu/xonotic/dialog_hudpanel_score.c:28
msgid "Pure"
-msgstr ""
+msgstr "Pure"
#: qcsrc/menu/xonotic/dialog_hudpanel_timer.c:4
msgid "Timer Panel"
msgstr "Opacité"
#: qcsrc/menu/xonotic/dialog_hudpanel_weapons.c:38
-#, fuzzy
msgid "EF^Both"
msgstr "Les deux"
msgstr "Contour interface:"
#: qcsrc/menu/xonotic/dialog_hudsetup_exit.c:70
-#, fuzzy
msgid "DOCK^Disabled"
msgstr "Désactivé"
#: qcsrc/menu/xonotic/dialog_hudsetup_exit.c:71
-#, fuzzy
msgid "DOCK^Small"
msgstr "Petit"
#: qcsrc/menu/xonotic/dialog_hudsetup_exit.c:72
-#, fuzzy
msgid "DOCK^Medium"
msgstr "Moyen"
#: qcsrc/menu/xonotic/dialog_hudsetup_exit.c:73
-#, fuzzy
msgid "DOCK^Large"
msgstr "Grand"
msgid "Player Setup"
msgstr "Paramètres Joueur"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:35
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:34
msgid "Game type:"
msgstr "Mode de jeu:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:47
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:46
msgid "Match settings:"
msgstr "Paramètres match:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:50
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:49
msgid "Time limit:"
msgstr "Limite de temps:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:54
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:62
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:53
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:61
msgid "Use map specified default"
msgstr "Utiliser le paramètre de carte"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:57
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:56
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:155
#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:156
#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:157
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:158
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:161
#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:162
#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:163
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:164
msgid "Point limit:"
msgstr "Limite de points:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:65
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:64
msgid "Player slots:"
msgstr "Nombre de joueurs max.:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:68
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:67
msgid "Number of bots:"
msgstr "Nombre de robots:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:72
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:71
msgid "Bot skill:"
msgstr "Difficulté robot:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:75
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:74
msgid "Botlike"
msgstr "Nul"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:76
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:75
msgid "Beginner"
msgstr "Jeu d'enfant"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:77
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:76
msgid "You will win"
msgstr "Très Facile"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:78
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:77
msgid "You can win"
msgstr "Facile"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:79
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:78
msgid "You might win"
msgstr "Assez Facile"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:80
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:79
msgid "Advanced"
msgstr "Avancé"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:81
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:80
msgid "Expert"
msgstr "Expert"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:82
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:81
msgid "Pro"
msgstr "Professionnel"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:83
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:82
msgid "Assassin"
msgstr "Assassin"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:84
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:83
msgid "Unhuman"
msgstr "Inhumain"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:85
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:84
msgid "Godlike"
msgstr "Dieu"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:89
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:88
msgid "Mutators..."
msgstr "Spéciales..."
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:98
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:97
#: qcsrc/menu/xonotic/dialog_settings_misc.c:57
msgid "Advanced settings..."
msgstr "Paramètres avancés..."
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:105
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:104
msgid "Map list:"
msgstr "Liste de cartes:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:111
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:110
msgid "Select all"
msgstr "Tout sélectionner"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:114
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:113
msgid "Select none"
msgstr "Ne rien sélectionner"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:120
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:119
msgid "Start Multiplayer!"
msgstr "Démarrer!"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:155
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:154
msgid "Capture limit:"
msgstr "Limite de captures:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:159
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:158
msgid "Lives:"
msgstr "Vies:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:160
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:159
msgid "Laps:"
msgstr "Tours:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:161
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:160
msgid "Goals:"
msgstr "Buts:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:165
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:164
msgid "Frag limit:"
msgstr "Limite de tués:"
msgid "Game types:"
msgstr "Modes de jeux:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create_mapinfo.c:119
+#: qcsrc/menu/xonotic/dialog_multiplayer_create_mapinfo.c:118
#: qcsrc/menu/xonotic/dialog_multiplayer_join_serverinfo.c:314
msgid "Close"
msgstr "Fermer"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create_mapinfo.c:122
-#: qcsrc/menu/xonotic/dialog_multiplayer_demo.c:46
-msgid "Play"
+#: qcsrc/menu/xonotic/dialog_multiplayer_create_mapinfo.c:121
+msgid "MAP^Play"
msgstr "Jouer"
#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:7
msgid "Timedemo"
msgstr "Test Performance"
+#: qcsrc/menu/xonotic/dialog_multiplayer_demo.c:46
+msgid "DEMO^Play"
+msgstr "Jouer"
+
#: qcsrc/menu/xonotic/dialog_multiplayer_join.c:4
msgid "Join"
msgstr "Joindre"
#: qcsrc/menu/xonotic/dialog_multiplayer_join_serverinfo.c:158
#, c-format
msgid "%d/%d, %d free player slots"
-msgstr ""
+msgstr "%d/%d, %d Emplacements libres"
#: qcsrc/menu/xonotic/dialog_multiplayer_join_serverinfo.c:172
#, c-format
#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:140
msgid "By health"
-msgstr ""
+msgstr "Par vie"
#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:143
-#, fuzzy
msgid "Custom"
-msgstr "personnalisé"
+msgstr "Personnalisé"
#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:148
msgid "Enable center dot"
msgstr "Effet santé faible:"
#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:195
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:178
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:191
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:173
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:194
#: qcsrc/menu/xonotic/dialog_settings_misc.c:30
#: qcsrc/menu/xonotic/dialog_settings_misc.c:41
#: qcsrc/menu/xonotic/dialog_settings_video.c:109
msgid "Draw 1st person weapon model"
msgstr "Afficher l'arme à la première personne"
-#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup_weapons.c:50
-msgid "Center"
-msgstr ""
-
#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup_weapons.c:55
msgid "Flip view horizontally"
msgstr "Vue Miroir"
msgid "Music:"
msgstr "Musique:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:40
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:41
msgid "VOL^Ambient:"
msgstr "Ambiance:"
msgid "Info:"
msgstr "Information:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:57
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:55
msgid "Items:"
msgstr "Objets:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:65
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:62
msgid "Pain:"
msgstr "Douleur:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:73
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:69
msgid "Player:"
msgstr "Joueur:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:81
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:76
msgid "Shots:"
msgstr "Tirs:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:88
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:83
msgid "Voice:"
msgstr "Voix:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:96
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:91
msgid "Weapons:"
msgstr "Armes:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:103
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:161
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:98
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:156
msgid "Frequency:"
msgstr "Fréquence:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:105
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:100
msgid "8 kHz"
msgstr "8 kHz"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:106
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:101
msgid "11.025 kHz"
msgstr "11.025 kHz"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:107
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:102
msgid "16 kHz"
msgstr "16 kHz"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:108
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:103
msgid "22.05 kHz"
msgstr "22.05 kHz"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:109
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:104
msgid "24 kHz"
msgstr "24 kHz"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:110
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:105
msgid "32 kHz"
msgstr "32 kHz"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:111
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:106
msgid "44.1 kHz"
msgstr "44.1 kHz"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:112
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:107
msgid "48 kHz"
msgstr "48 kHz"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:115
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:110
msgid "Channels:"
msgstr "Canaux:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:117
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:112
msgid "Mono"
msgstr "Mono"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:118
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:113
msgid "Stereo"
msgstr "Stéréo"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:119
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:114
msgid "2.1"
msgstr "2.1"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:120
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:115
msgid "4"
msgstr "4"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:121
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:116
msgid "5"
msgstr "5"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:122
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:117
msgid "5.1"
msgstr "5.1"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:123
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:118
msgid "6.1"
msgstr "6.1"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:124
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:119
msgid "7.1"
msgstr "7.1"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:128
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:123
msgid "Swap Stereo"
msgstr "Échanger les canaux Stéréo"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:132
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:127
msgid "Headphone friendly mode"
msgstr "Mode casque audio"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:136
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:131
msgid "Spatial voices:"
msgstr "Voix personnages:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:137
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:132
msgid "VOCS^None"
msgstr "Aucun"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:138
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:133
msgid "VOCS^Taunts"
msgstr "Voix"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:139
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:134
msgid "VOCS^All"
msgstr "Tout"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:142
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:137
msgid "Taunt range:"
msgstr "Distance voix:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:145
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:140
msgid "RNG^Very short"
msgstr "Très court"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:146
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:141
msgid "RNG^Short"
msgstr "Court"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:147
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:142
msgid "RNG^Normal"
msgstr "Normal"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:148
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:143
msgid "RNG^Long"
msgstr "Long"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:149
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:144
msgid "RNG^Full"
msgstr "Tout"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:156
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:151
msgid "Automatic taunts"
msgstr "Voix automatiques"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:165
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:160
msgid "Time warning:"
msgstr "Avertissement temps:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:167
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:162
msgid "WRN^None"
msgstr "Aucun"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:168
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:163
msgid "1 minute"
msgstr "1 minute"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:169
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:164
msgid "5 minutes"
msgstr "5 minutes"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:170
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:165
msgid "WRN^Both"
msgstr "Les deux"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:173
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:168
msgid "Hit indicator"
msgstr "Son tir réussi"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:175
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:170
msgid "Menu sounds"
msgstr "Sons du menu"
msgid "Decals"
msgstr "Marques impacts"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:120
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:118
+msgid "Decals on models"
+msgstr "Décalques sur les modèles"
+
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:122
msgid "Distance:"
msgstr "Distance max.:"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:126
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:128
msgid "Time:"
msgstr "Temps:"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:132
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:134
msgid "Use lightmaps"
msgstr "Utiliser les lightmaps"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:133
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:135
msgid "Deluxe mapping"
msgstr "Textures Deluxe"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:135
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:137
msgid "Gloss"
msgstr "Brillance textures"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:138
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:140
msgid "Offset mapping"
msgstr "Textures relief"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:140
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:142
msgid "Relief mapping"
msgstr "Textures relief avancé"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:143
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:145
msgid "Reflections:"
msgstr "Réflexions:"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:146
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:148
msgid "Blurred"
msgstr "Flou"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:147
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:149
msgid "REFL^Good"
msgstr "Bon"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:148
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:150
msgid "Sharp"
msgstr "Net"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:153
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:155
msgid "Show surfaces"
msgstr "Textures unies"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:155
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:157
msgid "No dynamic lighting"
msgstr "Pas de lumières dynamiques"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:157
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:159
msgid "Flash blend approximation"
msgstr "Lumières dynamiques rapides"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:159
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:161
msgid "Realtime dynamic lighting"
msgstr "Lumières dynamiques en temps réel"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:160
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:164
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:162
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:166
msgid "Shadows"
msgstr "Ombres"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:163
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:165
msgid "Realtime world lighting"
msgstr "Lumières carte en temps réel"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:168
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:170
msgid "Use normal maps"
msgstr "Lumières Deluxe"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:170
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:172
msgid "Soft shadows"
msgstr "Ombres avancées"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:173
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:175
msgid "Coronas"
msgstr "Brillance Lumière"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:174
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:176
msgid "Use Occlusion Queries"
msgstr "Utiliser l'Occlusion du rendu"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:176
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:178
msgid "Bloom"
msgstr "Effets d'éblouissement"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:178
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:180
msgid "High Dynamic Range (HDR)"
msgstr "High Dynamic Range (HDR)"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:182
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:184
msgid "Motion blur:"
msgstr "Flou de vitesse:"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:187
-#, fuzzy
-msgid "Damage & water blur"
-msgstr "Flou de dégâts:"
-
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:188
-#, fuzzy
-msgid "Powerup sharpen"
-msgstr "Panneau des Pouvoirs"
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:189
+msgid "Blur and sharpen postprocessing"
+msgstr "Flou et netteté post-processeur"
#: qcsrc/menu/xonotic/dialog_settings_input.c:26
msgid "Key bindings:"
msgstr "Utiliser GLSL pour gérer les couleurs"
#: qcsrc/menu/xonotic/dialog_settings_video.c:56
-#, fuzzy
msgid "Vertex Buffer Objects (VBOs)"
msgstr "Objets en tampon mémoire (VBOs)"
#: qcsrc/menu/xonotic/dialog_settings_video.c:59
-#, fuzzy
msgid "VBO^Off"
msgstr "Désactivé"
msgstr "Points et Triangles"
#: qcsrc/menu/xonotic/dialog_settings_video.c:67
-#, fuzzy
msgid "Depth first:"
-msgstr "Fixeur profondeur:"
+msgstr "Profondeur d'abord:"
#: qcsrc/menu/xonotic/dialog_settings_video.c:69
-#, fuzzy
msgid "DF^Disabled"
msgstr "Désactivé"
#: qcsrc/menu/xonotic/dialog_settings_video.c:70
-#, fuzzy
msgid "DF^World"
-msgstr "Carte"
+msgstr "Monde"
#: qcsrc/menu/xonotic/dialog_settings_video.c:71
-#, fuzzy
msgid "DF^All"
msgstr "Tout"
msgid "Singleplayer"
msgstr "Monojoueur"
-#: qcsrc/menu/xonotic/dialog_singleplayer.c:59
+#: qcsrc/menu/xonotic/dialog_singleplayer.c:127
msgid "Instant action! (random map with bots)"
msgstr "Instant action! (map aléatoire avec bots)"
-#: qcsrc/menu/xonotic/dialog_singleplayer.c:80
+#: qcsrc/menu/xonotic/dialog_singleplayer.c:148
msgid "Start Singleplayer!"
msgstr "Démarrer !"
msgid "Bookmark"
msgstr "Marque-page"
-#: qcsrc/menu/xonotic/serverlist.c:523
+#: qcsrc/menu/xonotic/serverlist.c:527
msgid "Ping"
msgstr "Latence"
-#: qcsrc/menu/xonotic/serverlist.c:524
+#: qcsrc/menu/xonotic/serverlist.c:528
msgid "Host name"
msgstr "Nom d'Hôte"
-#: qcsrc/menu/xonotic/serverlist.c:525
+#: qcsrc/menu/xonotic/serverlist.c:529
msgid "Map"
msgstr "Carte"
-#: qcsrc/menu/xonotic/serverlist.c:526
+#: qcsrc/menu/xonotic/serverlist.c:530
msgid "Type"
msgstr "Mode"
-#: qcsrc/menu/xonotic/serverlist.c:527
+#: qcsrc/menu/xonotic/serverlist.c:531
msgid "Players"
msgstr "Joueurs"
msgid "<AUTHOR>"
msgstr "<AUTEUR>"
-#: qcsrc/menu/xonotic/skinlist.c:163
-#, c-format
-msgid "%s: %s"
-msgstr "%s: %s"
-
#: qcsrc/menu/xonotic/slider_decibels.c:50
msgid "VOL^OFF"
msgstr "OFF"
#: qcsrc/menu/xonotic/util.qc:367
#, c-format
msgid "^1%s TEST BUILD"
-msgstr ""
+msgstr "VERSION DE TEST ^1%s"
#: qcsrc/menu/xonotic/util.qc:432
#, c-format
msgid "Crylink"
msgstr "Crylink"
-#: qcsrc/server/w_crylink.qc:664
+#: qcsrc/server/w_crylink.qc:666
#, c-format
msgid "%s succeeded at self-destructing themself with the Crylink"
msgstr "%s a réussi à se suicider avec le Crylink"
-#: qcsrc/server/w_crylink.qc:669
+#: qcsrc/server/w_crylink.qc:671
#, c-format
msgid "%s could not hide from %s's Crylink"
msgstr "%s n'a pas pu se cacher du Crylink de %s"
-#: qcsrc/server/w_crylink.qc:671
+#: qcsrc/server/w_crylink.qc:673
#, c-format
msgid "%s was too close to %s's Crylink"
msgstr "%s a été trop près du Crylink de %s"
-#: qcsrc/server/w_crylink.qc:673
+#: qcsrc/server/w_crylink.qc:675
#, c-format
msgid "%s took a close look at %s's Crylink"
msgstr "%s a voulu voir se qui se trouvait dans le Crylink de %s"
msgid "Electro"
msgstr "Electro"
-#: qcsrc/server/w_electro.qc:577
+#: qcsrc/server/w_electro.qc:574
#, c-format
msgid "%s could not remember where they put plasma"
msgstr "%s ne se souvenait pas où il a tiré du plasma"
-#: qcsrc/server/w_electro.qc:579
+#: qcsrc/server/w_electro.qc:576
#, c-format
msgid "%s played with plasma"
msgstr "%s a joué avec du plasma"
-#: qcsrc/server/w_electro.qc:586
+#: qcsrc/server/w_electro.qc:583
#, c-format
msgid "%s just noticed %s's blue ball"
msgstr "%s vient de remarquer la boule plasma de %s"
-#: qcsrc/server/w_electro.qc:588
+#: qcsrc/server/w_electro.qc:585
#, c-format
msgid "%s got in touch with %s's blue ball"
msgstr "%s s'est fait toucher par la boule plasma de %s"
-#: qcsrc/server/w_electro.qc:593
+#: qcsrc/server/w_electro.qc:590
#, c-format
msgid "%s felt the electrifying air of %s's combo"
msgstr "%s se sent électrisé par le combo de %s"
-#: qcsrc/server/w_electro.qc:595
+#: qcsrc/server/w_electro.qc:592
#, c-format
msgid "%s got too close to %s's blue beam"
msgstr "%s a été trop près du rayon plasma de %s"
-#: qcsrc/server/w_electro.qc:597
+#: qcsrc/server/w_electro.qc:594
#, c-format
msgid "%s was blasted by %s's blue beam"
msgstr "%s a été désintégré à cause du rayon plasma de %s"
#: qcsrc/server/w_fireball.qc:2
-#, fuzzy
msgid "Fireball"
-msgstr "Fireball"
+msgstr "Boule de Feu"
#: qcsrc/server/w_fireball.qc:417
#, c-format
msgid "Mortar"
msgstr "Mortier"
-#: qcsrc/server/w_grenadelauncher.qc:379
+#: qcsrc/server/w_grenadelauncher.qc:383
#, c-format
msgid "%s tried out his own grenade"
msgstr "%s a mangé sa propre grenade"
-#: qcsrc/server/w_grenadelauncher.qc:381
+#: qcsrc/server/w_grenadelauncher.qc:385
#, c-format
msgid "%s detonated"
msgstr "%s a fait boum"
-#: qcsrc/server/w_grenadelauncher.qc:387
+#: qcsrc/server/w_grenadelauncher.qc:391
#, c-format
msgid "%s didn't see %s's grenade"
msgstr "%s n'a pas vu la grenade de %s"
-#: qcsrc/server/w_grenadelauncher.qc:389
+#: qcsrc/server/w_grenadelauncher.qc:393
#, c-format
msgid "%s almost dodged %s's grenade"
msgstr "%s a presque réussi à esquiver la grenade de %s"
-#: qcsrc/server/w_grenadelauncher.qc:391
+#: qcsrc/server/w_grenadelauncher.qc:395
#, c-format
msgid "%s ate %s's grenade"
msgstr "%s a mangé la grenade de %s"
msgid "Hagar"
msgstr "Hagar"
-#: qcsrc/server/w_hagar.qc:382 qcsrc/server/w_seeker.qc:655
+#: qcsrc/server/w_hagar.qc:395 qcsrc/server/w_seeker.qc:655
#, c-format
msgid "%s played with tiny rockets"
msgstr "%s a joué avec des petits missiles"
-#: qcsrc/server/w_hagar.qc:386
+#: qcsrc/server/w_hagar.qc:399
#, c-format
msgid "%s hoped %s's missiles wouldn't bounce"
msgstr "%s a pensé que les petits missiles de %s ne rebondissaient pas"
-#: qcsrc/server/w_hagar.qc:388 qcsrc/server/w_seeker.qc:661
+#: qcsrc/server/w_hagar.qc:401 qcsrc/server/w_seeker.qc:661
#, c-format
msgid "%s was pummeled by %s"
msgstr "%s a trop mangé de mini-missiles de la part de %s"
msgstr "%s s'est fait couper par %s"
#: qcsrc/server/w_hook.qc:2
-#, fuzzy
msgid "Grappling Hook"
msgstr "Grappin"
msgstr "%s a été désintégré par le laser de %s"
#: qcsrc/server/w_minelayer.qc:2
-#, fuzzy
msgid "Mine Layer"
msgstr "Lance-Mines"
msgstr "%s a marché sur la mine de %s"
#: qcsrc/server/w_minstanex.qc:2
-#, fuzzy
msgid "MinstaNex"
msgstr "MinstaNex"
-#: qcsrc/server/w_minstanex.qc:290 qcsrc/server/w_nex.qc:253
-#: qcsrc/server/w_shotgun.qc:209 qcsrc/server/w_uzi.qc:317
+#: qcsrc/server/w_minstanex.qc:293 qcsrc/server/w_nex.qc:253
+#: qcsrc/server/w_shotgun.qc:215 qcsrc/server/w_uzi.qc:317
#, c-format
msgid "%s is now thinking with portals"
-msgstr ""
+msgstr "%s pense maintenant avec les portails"
-#: qcsrc/server/w_minstanex.qc:292 qcsrc/server/w_nex.qc:255
+#: qcsrc/server/w_minstanex.qc:295 qcsrc/server/w_nex.qc:255
#, c-format
msgid "%s has been vaporized by %s"
msgstr "%s s'est fait vaporiser par %s"
#: qcsrc/server/w_nex.qc:2
-#, fuzzy
msgid "Nex"
msgstr "Nex"
#: qcsrc/server/w_rifle.qc:2
msgid "Rifle"
-msgstr ""
+msgstr "Fusil"
#: qcsrc/server/w_rifle.qc:233
#, c-format
msgstr "%s s'est fait tagguer par %s"
#: qcsrc/server/w_shotgun.qc:2
-#, fuzzy
msgid "Shotgun"
msgstr "Fusil"
-#: qcsrc/server/w_shotgun.qc:213
+#: qcsrc/server/w_shotgun.qc:219
#, c-format
msgid "%2$s ^7slapped %1$s ^7around a bit with a large ^2shotgun"
msgstr "%2$s ^7a baffé %1$s ^7avec un ^2fusil"
-#: qcsrc/server/w_shotgun.qc:215
+#: qcsrc/server/w_shotgun.qc:221
#, c-format
msgid "%s was gunned by %s"
msgstr "%s s'est fait fusiller par %s"
#: qcsrc/server/w_tuba.qc:2
-#, fuzzy, c-format
+#, c-format
msgid "@!#%'n Tuba"
-msgstr "@!#%'n Tuba"
+msgstr "@!#% Tuba"
-#: qcsrc/server/w_tuba.qc:263
+#: qcsrc/server/w_tuba.qc:252
#, c-format
msgid "%s hurt his own ears with the @!#%%'n Tuba"
msgstr "%s s'est fait casser les tympans par son propre tuba"
-#: qcsrc/server/w_tuba.qc:267
+#: qcsrc/server/w_tuba.qc:256
#, c-format
msgid "%s died of %s's great playing on the @!#%%'n Tuba"
msgstr "%s n'a pas aimé la musique de %s et en est mort"
msgid "%s was riddled full of holes by %s"
msgstr "%s s'est fait trouer par %s"
-#~ msgid "Speedometer"
-#~ msgstr "Speedomètre"
-
-#~ msgid "qu/s (hidden)"
-#~ msgstr "qu/s (caché)"
-
-#~ msgid "Show accelerometer"
-#~ msgstr "Montrer l'accéléromètre"
-
-#~ msgid "Accelerometer scale:"
-#~ msgstr "Taille accéléromètre:"
-
-#~ msgid "Sniper Rifle"
-#~ msgstr "Fusil Sniper"
-
-#~ msgid "%s ran into %s's flac"
-#~ msgstr "%s n'a pas eu peur des missiles de %s"
-
-#~ msgid "Waypoint settings:"
-#~ msgstr "Paramètres Waypoint (flèches 3D sur la carte):"
+#~ msgid "Damage & water blur"
+#~ msgstr "Flou de d�g�ts:"
-#~ msgid "%d/%d"
-#~ msgstr "%d/%d"
+#~ msgid "Powerup sharpen"
+#~ msgstr "Panneau des Pouvoirs"
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2011-06-27 18:26+0200\n"
+"POT-Creation-Date: 2011-09-02 07:51+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
+#: qcsrc/common/mapinfo.qc:1092 qcsrc/menu/xonotic/skinlist.c:163
+#, c-format
+msgid "%s: %s"
+msgstr "%s: %s"
+
#: qcsrc/menu/gamecommand.qc:47
#, c-format
msgid "error: status is %d\n"
msgstr "^4MQC Épitési információ: %s\n"
#: qcsrc/menu/xonotic/campaign.c:284
-#: qcsrc/menu/xonotic/dialog_singleplayer.c:66
+#: qcsrc/menu/xonotic/dialog_singleplayer.c:134
msgid "???"
msgstr "???"
msgstr ""
#: qcsrc/menu/xonotic/dialog_hudpanel_ammo.c:29
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:36
#: qcsrc/menu/xonotic/dialog_hudpanel_healtharmor.c:28
#: qcsrc/menu/xonotic/dialog_hudpanel_healtharmor.c:40
#: qcsrc/menu/xonotic/dialog_hudpanel_powerups.c:28
msgstr "Bal"
#: qcsrc/menu/xonotic/dialog_hudpanel_ammo.c:30
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:38
#: qcsrc/menu/xonotic/dialog_hudpanel_healtharmor.c:30
#: qcsrc/menu/xonotic/dialog_hudpanel_healtharmor.c:41
#: qcsrc/menu/xonotic/dialog_hudpanel_powerups.c:30
msgid "Right"
msgstr "Jobb"
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:4
+msgid "Centerprint"
+msgstr ""
+
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:23
+#, fuzzy
+msgid "Message duration:"
+msgstr "Színtelítettség:"
+
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:27
+#, fuzzy
+msgid "Fade time:"
+msgstr "Bejegyzés halványulási idő:"
+
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:31
+#, fuzzy
+msgid "Flip messages order"
+msgstr "Értesítés rend megfordítás"
+
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:33
+#, fuzzy
+msgid "Text alignment:"
+msgstr "Ikon igazítás:"
+
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:37
+#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup_weapons.c:50
+msgid "Center"
+msgstr ""
+
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:41
+#, fuzzy
+msgid "Font scale:"
+msgstr "Útpont részletesség:"
+
#: qcsrc/menu/xonotic/dialog_hudpanel_chat.c:4
msgid "Chat Panel"
msgstr "Csevely Panel"
msgid "Physics Panel"
msgstr "Csevely Panel"
-#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:23
+#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:22
#: qcsrc/menu/xonotic/dialog_hudpanel_pressedkeys.c:21
#: qcsrc/menu/xonotic/dialog_hudpanel_radar.c:21
msgid "Panel disabled"
msgstr "Panel kikapcsolva"
+#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:23
+#, fuzzy
+msgid "Panel enabled"
+msgstr "Panel kikapcsolva"
+
#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:24
#, fuzzy
-msgid "Panel enabled if not observing"
+msgid "Panel enabled even observing"
msgstr "Panel engedélyezett, ha csak néző vagy"
#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:25
-#: qcsrc/menu/xonotic/dialog_hudpanel_pressedkeys.c:23
-#: qcsrc/menu/xonotic/dialog_hudpanel_radar.c:23
-msgid "Panel always enabled"
-msgstr "Panel mindig látható"
+#, fuzzy
+msgid "Panel enabled only in Race/CTS"
+msgstr "Panel engedélyezve a csapatjátékokban"
#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:31
#, fuzzy
msgid "Panel enabled when spectating"
msgstr "Panel engedélyezett, ha csak néző vagy"
+#: qcsrc/menu/xonotic/dialog_hudpanel_pressedkeys.c:23
+#: qcsrc/menu/xonotic/dialog_hudpanel_radar.c:23
+msgid "Panel always enabled"
+msgstr "Panel mindig látható"
+
#: qcsrc/menu/xonotic/dialog_hudpanel_pressedkeys.c:30
msgid "Forced aspect:"
msgstr ""
msgid "Player Setup"
msgstr "Játékos beállítás"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:35
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:34
msgid "Game type:"
msgstr "Játék típus:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:47
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:46
msgid "Match settings:"
msgstr "Meccs beállítások:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:50
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:49
msgid "Time limit:"
msgstr "Idő határ:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:54
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:62
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:53
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:61
msgid "Use map specified default"
msgstr "Térképhez tartozó alapérték használata"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:57
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:56
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:155
#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:156
#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:157
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:158
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:161
#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:162
#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:163
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:164
msgid "Point limit:"
msgstr "Pont határ:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:65
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:64
msgid "Player slots:"
msgstr "Összes játékos:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:68
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:67
msgid "Number of bots:"
msgstr "Botok száma:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:72
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:71
msgid "Bot skill:"
msgstr "Botok szintje"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:75
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:74
msgid "Botlike"
msgstr "Béna"
# :)))
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:76
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:75
msgid "Beginner"
msgstr "Kezdő"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:77
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:76
msgid "You will win"
msgstr "Biztosan te nyersz"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:78
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:77
msgid "You can win"
msgstr "Nyerhetsz"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:79
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:78
msgid "You might win"
msgstr "Még legyőzheted"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:80
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:79
msgid "Advanced"
msgstr "Rutinos"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:81
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:80
msgid "Expert"
msgstr "Tapasztalt"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:82
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:81
msgid "Pro"
msgstr "Hivatásos"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:83
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:82
msgid "Assassin"
msgstr "Orgyilkos"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:84
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:83
msgid "Unhuman"
msgstr "Embertelen"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:85
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:84
msgid "Godlike"
msgstr "Isteni"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:89
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:88
msgid "Mutators..."
msgstr "Mutatorok..."
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:98
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:97
#: qcsrc/menu/xonotic/dialog_settings_misc.c:57
msgid "Advanced settings..."
msgstr "Különleges beállítások ..."
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:105
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:104
msgid "Map list:"
msgstr "Térkép lista:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:111
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:110
msgid "Select all"
msgstr "Az összes kiválasztása"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:114
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:113
msgid "Select none"
msgstr "Egyik sem"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:120
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:119
msgid "Start Multiplayer!"
msgstr "Többjátékos indítása"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:155
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:154
msgid "Capture limit:"
msgstr "Rablás határérték:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:159
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:158
msgid "Lives:"
msgstr "Életek:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:160
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:159
msgid "Laps:"
msgstr "Körök:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:161
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:160
msgid "Goals:"
msgstr "Célok:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:165
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:164
msgid "Frag limit:"
msgstr "Frag határérték:"
msgid "Game types:"
msgstr "Játék típusok:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create_mapinfo.c:119
+#: qcsrc/menu/xonotic/dialog_multiplayer_create_mapinfo.c:118
#: qcsrc/menu/xonotic/dialog_multiplayer_join_serverinfo.c:314
msgid "Close"
msgstr "Zárt"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create_mapinfo.c:122
-#: qcsrc/menu/xonotic/dialog_multiplayer_demo.c:46
-msgid "Play"
+#: qcsrc/menu/xonotic/dialog_multiplayer_create_mapinfo.c:121
+#, fuzzy
+msgid "MAP^Play"
msgstr "Játék"
#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:7
msgid "Timedemo"
msgstr "Demó időmérés"
+#: qcsrc/menu/xonotic/dialog_multiplayer_demo.c:46
+#, fuzzy
+msgid "DEMO^Play"
+msgstr "Játék"
+
#: qcsrc/menu/xonotic/dialog_multiplayer_join.c:4
msgid "Join"
msgstr "Csatlakozás"
msgstr "Sérülés szórás:"
#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:195
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:178
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:191
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:173
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:194
#: qcsrc/menu/xonotic/dialog_settings_misc.c:30
#: qcsrc/menu/xonotic/dialog_settings_misc.c:41
#: qcsrc/menu/xonotic/dialog_settings_video.c:109
msgid "Draw 1st person weapon model"
msgstr "1.személyű fegyver modell kirajzolása"
-#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup_weapons.c:50
-msgid "Center"
-msgstr ""
-
#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup_weapons.c:55
msgid "Flip view horizontally"
msgstr "A nézet horizontális döntése"
msgid "Music:"
msgstr "Zene:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:40
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:41
msgid "VOL^Ambient:"
msgstr "VOL^Környezet:"
msgid "Info:"
msgstr "Információ:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:57
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:55
msgid "Items:"
msgstr "Tárgyak:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:65
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:62
msgid "Pain:"
msgstr "Fájdalom:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:73
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:69
msgid "Player:"
msgstr "Játékos:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:81
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:76
msgid "Shots:"
msgstr "Lövések:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:88
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:83
msgid "Voice:"
msgstr "Hang:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:96
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:91
msgid "Weapons:"
msgstr "Fegyverek:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:103
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:161
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:98
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:156
msgid "Frequency:"
msgstr "Frekvencia:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:105
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:100
msgid "8 kHz"
msgstr "8 kHz"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:106
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:101
msgid "11.025 kHz"
msgstr "11,025 kHz"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:107
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:102
msgid "16 kHz"
msgstr "16 kHz"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:108
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:103
msgid "22.05 kHz"
msgstr "22,05 kHz"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:109
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:104
msgid "24 kHz"
msgstr "24 kHz"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:110
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:105
msgid "32 kHz"
msgstr "32 kHz"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:111
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:106
msgid "44.1 kHz"
msgstr "44,1 kHz"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:112
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:107
msgid "48 kHz"
msgstr "48 kHz"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:115
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:110
msgid "Channels:"
msgstr "Csatornák:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:117
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:112
msgid "Mono"
msgstr "Monó"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:118
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:113
msgid "Stereo"
msgstr "Sztereó"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:119
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:114
msgid "2.1"
msgstr "2.1"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:120
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:115
msgid "4"
msgstr "4"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:121
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:116
msgid "5"
msgstr "5"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:122
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:117
msgid "5.1"
msgstr "5.1"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:123
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:118
msgid "6.1"
msgstr "6.1"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:124
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:119
msgid "7.1"
msgstr "7.1"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:128
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:123
msgid "Swap Stereo"
msgstr "Sztereó megcserélése"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:132
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:127
msgid "Headphone friendly mode"
msgstr "Fejhallgató barát mód"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:136
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:131
msgid "Spatial voices:"
msgstr "Térbeli hangok:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:137
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:132
msgid "VOCS^None"
msgstr "VOCS^Nincs"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:138
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:133
msgid "VOCS^Taunts"
msgstr "VOCS^Bekiabálások"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:139
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:134
msgid "VOCS^All"
msgstr "VOCS^Minden"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:142
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:137
msgid "Taunt range:"
msgstr "Bekiabálás terület:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:145
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:140
msgid "RNG^Very short"
msgstr "RNG^Nagyon rövid"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:146
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:141
msgid "RNG^Short"
msgstr "RNG^Rövid"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:147
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:142
msgid "RNG^Normal"
msgstr "RNG^Normál"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:148
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:143
msgid "RNG^Long"
msgstr "RNG^Hosszú"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:149
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:144
msgid "RNG^Full"
msgstr "RNG^Teljes"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:156
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:151
msgid "Automatic taunts"
msgstr "Automatikus bekiabálások"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:165
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:160
msgid "Time warning:"
msgstr "Idő figyelmeztetés:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:167
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:162
msgid "WRN^None"
msgstr "Nincs"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:168
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:163
msgid "1 minute"
msgstr "1 perc"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:169
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:164
msgid "5 minutes"
msgstr "5 perc"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:170
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:165
msgid "WRN^Both"
msgstr "Mindkettő"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:173
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:168
msgid "Hit indicator"
msgstr "Találat jelző"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:175
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:170
msgid "Menu sounds"
msgstr "Menü hangok"
msgid "Decals"
msgstr "Dekorációk"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:120
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:118
+msgid "Decals on models"
+msgstr ""
+
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:122
msgid "Distance:"
msgstr "Távolság:"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:126
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:128
msgid "Time:"
msgstr "Idő:"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:132
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:134
msgid "Use lightmaps"
msgstr "Fénytérképek használata"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:133
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:135
msgid "Deluxe mapping"
msgstr "Deluxe mapping"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:135
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:137
msgid "Gloss"
msgstr "Fényes"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:138
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:140
msgid "Offset mapping"
msgstr "Offset mapping"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:140
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:142
msgid "Relief mapping"
msgstr "Relief mapping"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:143
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:145
msgid "Reflections:"
msgstr "Tükrözödés:"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:146
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:148
msgid "Blurred"
msgstr "Homályos"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:147
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:149
msgid "REFL^Good"
msgstr "Refl^Jó"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:148
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:150
msgid "Sharp"
msgstr "Éles"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:153
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:155
msgid "Show surfaces"
msgstr "Felületek megjelenítése"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:155
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:157
msgid "No dynamic lighting"
msgstr "Nincsenek dinamikus fények"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:157
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:159
msgid "Flash blend approximation"
msgstr "Közelítő villanás keverés"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:159
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:161
msgid "Realtime dynamic lighting"
msgstr "Valós idejű dinamikus fények"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:160
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:164
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:162
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:166
msgid "Shadows"
msgstr "Árnyékok"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:163
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:165
msgid "Realtime world lighting"
msgstr "Valós idejű világ fényhatások"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:168
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:170
msgid "Use normal maps"
msgstr "Normál map használata"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:170
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:172
msgid "Soft shadows"
msgstr "Lágy árnyékok"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:173
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:175
msgid "Coronas"
msgstr "Fénykörök"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:174
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:176
msgid "Use Occlusion Queries"
msgstr "Use Occlusion Queries"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:176
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:178
msgid "Bloom"
msgstr "Virágzás"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:178
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:180
msgid "High Dynamic Range (HDR)"
msgstr "Magas dinamika tartomány (HDR)"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:182
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:184
msgid "Motion blur:"
msgstr "Mozgási elmosás:"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:187
-#, fuzzy
-msgid "Damage & water blur"
-msgstr "Sérülés elmosás:"
-
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:188
-#, fuzzy
-msgid "Powerup sharpen"
-msgstr "Powerups Panel"
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:189
+msgid "Blur and sharpen postprocessing"
+msgstr ""
#: qcsrc/menu/xonotic/dialog_settings_input.c:26
msgid "Key bindings:"
msgid "Singleplayer"
msgstr "Egyjátékos"
-#: qcsrc/menu/xonotic/dialog_singleplayer.c:59
+#: qcsrc/menu/xonotic/dialog_singleplayer.c:127
msgid "Instant action! (random map with bots)"
msgstr "Azonnali játék (véletlenszerű pálya botokkal)"
-#: qcsrc/menu/xonotic/dialog_singleplayer.c:80
+#: qcsrc/menu/xonotic/dialog_singleplayer.c:148
msgid "Start Singleplayer!"
msgstr "Egyjátékos mód indítása"
msgid "Bookmark"
msgstr "Könyvjelző"
-#: qcsrc/menu/xonotic/serverlist.c:523
+#: qcsrc/menu/xonotic/serverlist.c:527
msgid "Ping"
msgstr "Ping"
-#: qcsrc/menu/xonotic/serverlist.c:524
+#: qcsrc/menu/xonotic/serverlist.c:528
msgid "Host name"
msgstr "Gazda név"
-#: qcsrc/menu/xonotic/serverlist.c:525
+#: qcsrc/menu/xonotic/serverlist.c:529
msgid "Map"
msgstr "Térkép"
-#: qcsrc/menu/xonotic/serverlist.c:526
+#: qcsrc/menu/xonotic/serverlist.c:530
msgid "Type"
msgstr "Típus"
-#: qcsrc/menu/xonotic/serverlist.c:527
+#: qcsrc/menu/xonotic/serverlist.c:531
msgid "Players"
msgstr "Játékosok"
msgid "<AUTHOR>"
msgstr "<SZERZŐ>"
-#: qcsrc/menu/xonotic/skinlist.c:163
-#, c-format
-msgid "%s: %s"
-msgstr "%s: %s"
-
#: qcsrc/menu/xonotic/slider_decibels.c:50
msgid "VOL^OFF"
msgstr "Hangerő ki"
msgid "Crylink"
msgstr ""
-#: qcsrc/server/w_crylink.qc:664
+#: qcsrc/server/w_crylink.qc:666
#, c-format
msgid "%s succeeded at self-destructing themself with the Crylink"
msgstr ""
-#: qcsrc/server/w_crylink.qc:669
+#: qcsrc/server/w_crylink.qc:671
#, c-format
msgid "%s could not hide from %s's Crylink"
msgstr ""
-#: qcsrc/server/w_crylink.qc:671
+#: qcsrc/server/w_crylink.qc:673
#, c-format
msgid "%s was too close to %s's Crylink"
msgstr ""
-#: qcsrc/server/w_crylink.qc:673
+#: qcsrc/server/w_crylink.qc:675
#, c-format
msgid "%s took a close look at %s's Crylink"
msgstr ""
msgid "Electro"
msgstr ""
-#: qcsrc/server/w_electro.qc:577
+#: qcsrc/server/w_electro.qc:574
#, c-format
msgid "%s could not remember where they put plasma"
msgstr ""
-#: qcsrc/server/w_electro.qc:579
+#: qcsrc/server/w_electro.qc:576
#, c-format
msgid "%s played with plasma"
msgstr ""
-#: qcsrc/server/w_electro.qc:586
+#: qcsrc/server/w_electro.qc:583
#, c-format
msgid "%s just noticed %s's blue ball"
msgstr ""
-#: qcsrc/server/w_electro.qc:588
+#: qcsrc/server/w_electro.qc:585
#, c-format
msgid "%s got in touch with %s's blue ball"
msgstr ""
-#: qcsrc/server/w_electro.qc:593
+#: qcsrc/server/w_electro.qc:590
#, c-format
msgid "%s felt the electrifying air of %s's combo"
msgstr ""
-#: qcsrc/server/w_electro.qc:595
+#: qcsrc/server/w_electro.qc:592
#, c-format
msgid "%s got too close to %s's blue beam"
msgstr ""
-#: qcsrc/server/w_electro.qc:597
+#: qcsrc/server/w_electro.qc:594
#, c-format
msgid "%s was blasted by %s's blue beam"
msgstr ""
msgid "Mortar"
msgstr "Előre"
-#: qcsrc/server/w_grenadelauncher.qc:379
+#: qcsrc/server/w_grenadelauncher.qc:383
#, c-format
msgid "%s tried out his own grenade"
msgstr ""
-#: qcsrc/server/w_grenadelauncher.qc:381
+#: qcsrc/server/w_grenadelauncher.qc:385
#, fuzzy, c-format
msgid "%s detonated"
msgstr "néző"
-#: qcsrc/server/w_grenadelauncher.qc:387
+#: qcsrc/server/w_grenadelauncher.qc:391
#, c-format
msgid "%s didn't see %s's grenade"
msgstr ""
-#: qcsrc/server/w_grenadelauncher.qc:389
+#: qcsrc/server/w_grenadelauncher.qc:393
#, c-format
msgid "%s almost dodged %s's grenade"
msgstr ""
-#: qcsrc/server/w_grenadelauncher.qc:391
+#: qcsrc/server/w_grenadelauncher.qc:395
#, c-format
msgid "%s ate %s's grenade"
msgstr ""
msgid "Hagar"
msgstr ""
-#: qcsrc/server/w_hagar.qc:382 qcsrc/server/w_seeker.qc:655
+#: qcsrc/server/w_hagar.qc:395 qcsrc/server/w_seeker.qc:655
#, c-format
msgid "%s played with tiny rockets"
msgstr ""
-#: qcsrc/server/w_hagar.qc:386
+#: qcsrc/server/w_hagar.qc:399
#, c-format
msgid "%s hoped %s's missiles wouldn't bounce"
msgstr ""
-#: qcsrc/server/w_hagar.qc:388 qcsrc/server/w_seeker.qc:661
+#: qcsrc/server/w_hagar.qc:401 qcsrc/server/w_seeker.qc:661
#, c-format
msgid "%s was pummeled by %s"
msgstr ""
msgid "MinstaNex"
msgstr "MinstaGib"
-#: qcsrc/server/w_minstanex.qc:290 qcsrc/server/w_nex.qc:253
-#: qcsrc/server/w_shotgun.qc:209 qcsrc/server/w_uzi.qc:317
+#: qcsrc/server/w_minstanex.qc:293 qcsrc/server/w_nex.qc:253
+#: qcsrc/server/w_shotgun.qc:215 qcsrc/server/w_uzi.qc:317
#, c-format
msgid "%s is now thinking with portals"
msgstr ""
-#: qcsrc/server/w_minstanex.qc:292 qcsrc/server/w_nex.qc:255
+#: qcsrc/server/w_minstanex.qc:295 qcsrc/server/w_nex.qc:255
#, c-format
msgid "%s has been vaporized by %s"
msgstr ""
msgid "Shotgun"
msgstr "Lövések:"
-#: qcsrc/server/w_shotgun.qc:213
+#: qcsrc/server/w_shotgun.qc:219
#, c-format
msgid "%2$s ^7slapped %1$s ^7around a bit with a large ^2shotgun"
msgstr ""
-#: qcsrc/server/w_shotgun.qc:215
+#: qcsrc/server/w_shotgun.qc:221
#, c-format
msgid "%s was gunned by %s"
msgstr ""
msgid "@!#%'n Tuba"
msgstr "@!#%'n Tuba Dobás"
-#: qcsrc/server/w_tuba.qc:263
+#: qcsrc/server/w_tuba.qc:252
#, c-format
msgid "%s hurt his own ears with the @!#%%'n Tuba"
msgstr ""
-#: qcsrc/server/w_tuba.qc:267
+#: qcsrc/server/w_tuba.qc:256
#, c-format
msgid "%s died of %s's great playing on the @!#%%'n Tuba"
msgstr ""
msgid "%s was riddled full of holes by %s"
msgstr ""
+#, fuzzy
+#~ msgid "Damage & water blur"
+#~ msgstr "Sérülés elmosás:"
+
+#, fuzzy
+#~ msgid "Powerup sharpen"
+#~ msgstr "Powerups Panel"
+
#~ msgid "Speedometer"
#~ msgstr "Sebességmérő"
# Xonotic Menu
-# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# Copyright (C) 2011 Team Xonotic
# This file is distributed under the same license as the PACKAGE package.
# Felice Sallustio <fel.sallustio@gmail.com>, 2011.
# Antonio 'terencehill' Piu <piuntn@gmail.com>, 2011.
msgstr ""
"Project-Id-Version: 0.1preview\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2011-07-06 20:54+0200\n"
-"PO-Revision-Date: 2011-08-02 09:20+0100\n"
-"Last-Translator: Felice Sallustio <fel.sallustio@gmail.com>\n"
-"Language-Team: \n"
+"POT-Creation-Date: 2011-09-02 07:51+0200\n"
+"PO-Revision-Date: 2011-09-04 01:40+0100\n"
+"Last-Translator: Antonio 'terencehill' Piu <piuntn@gmail.com>\n"
+"Language-Team: Antonio 'terencehill' Piu <piuntn@gmail.com>\n"
+"Language: it\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"Language: \n"
"X-Poedit-Language: Italian\n"
+#: qcsrc/common/mapinfo.qc:1092 qcsrc/menu/xonotic/skinlist.c:163
+#, c-format
+msgid "%s: %s"
+msgstr "%s: %s"
+
#: qcsrc/menu/gamecommand.qc:47
#, c-format
msgid "error: status is %d\n"
#: qcsrc/menu/gamecommand.qc:65
msgid "Usage: menu_cmd command..., where possible commands are:\n"
-msgstr "Uso: menu_cmd command..., dove i possibili comandi sono:\n"
+msgstr "Uso: menu_cmd comando..., dove i possibili comandi sono:\n"
#: qcsrc/menu/gamecommand.qc:66
msgid " sync - reloads all cvars on the current menu page\n"
#: qcsrc/menu/gamecommand.qc:239
msgid "Invalid command. For a list of supported commands, try menu_cmd help.\n"
-msgstr "Comando non valido. Per una lista dei comandi supportati, prova menu_cmd help.\n"
+msgstr ""
+"Comando non valido. Per una lista dei comandi supportati, prova menu_cmd "
+"help.\n"
#: qcsrc/menu/item/gecko.c:49
msgid "Browser not initialized!"
#: qcsrc/menu/item/label.c:63
#, c-format
msgid "NOTE: label text %s too wide for label, condensed by factor %f\n"
-msgstr "NOTA: testo dell'etichetta %s troppo grande per l'etichetta, compresso di un fattore %f\n"
+msgstr ""
+"NOTA: testo dell'etichetta %s troppo grande per l'etichetta, compresso di un "
+"fattore %f\n"
#: qcsrc/menu/item/listbox.c:300
#, c-format
msgid "%d (%s)"
msgstr "%d (%s)"
-#: qcsrc/menu/item/textslider.c:29
-#: qcsrc/menu/item/textslider.c:31
+#: qcsrc/menu/item/textslider.c:29 qcsrc/menu/item/textslider.c:31
msgid "custom"
msgstr "personalizzato"
msgstr "^4MQC Build information: ^1%s\n"
#: qcsrc/menu/xonotic/campaign.c:284
-#: qcsrc/menu/xonotic/dialog_singleplayer.c:66
+#: qcsrc/menu/xonotic/dialog_singleplayer.c:134
msgid "???"
msgstr "???"
msgstr "Benvenuto"
#: qcsrc/menu/xonotic/dialog_firstrun.c:33
-msgid "Welcome to Xonotic, please select your language preference and enter your player name to get started. You can change these options later through the menu system."
-msgstr "Benvenuto in Xonotic, per favore selezione la tua lingua e inserisci il tuo nome come giocatore per iniziare. Puoi cambiare queste opzioni più tardi tramite il menu."
+msgid ""
+"Welcome to Xonotic, please select your language preference and enter your "
+"player name to get started. You can change these options later through the "
+"menu system."
+msgstr ""
+"Benvenuto in Xonotic, per favore selezione la tua lingua e inserisci il tuo "
+"nome come giocatore per iniziare. Puoi cambiare queste opzioni più tardi "
+"tramite il menu."
#: qcsrc/menu/xonotic/dialog_firstrun.c:38
#: qcsrc/menu/xonotic/dialog_settings_misc.c:35
msgid "Text language:"
-msgstr "Lingua testo:"
+msgstr "Lingua di testo:"
#: qcsrc/menu/xonotic/dialog_firstrun.c:47
#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:40
#: qcsrc/menu/xonotic/dialog_hudpanel_ammo.c:28
msgid "Align icon:"
-msgstr "Allineamento icone:"
+msgstr "Allinea icone:"
#: qcsrc/menu/xonotic/dialog_hudpanel_ammo.c:29
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:36
#: qcsrc/menu/xonotic/dialog_hudpanel_healtharmor.c:28
#: qcsrc/menu/xonotic/dialog_hudpanel_healtharmor.c:40
#: qcsrc/menu/xonotic/dialog_hudpanel_powerups.c:28
msgstr "Sinistra"
#: qcsrc/menu/xonotic/dialog_hudpanel_ammo.c:30
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:38
#: qcsrc/menu/xonotic/dialog_hudpanel_healtharmor.c:30
#: qcsrc/menu/xonotic/dialog_hudpanel_healtharmor.c:41
#: qcsrc/menu/xonotic/dialog_hudpanel_powerups.c:30
msgid "Right"
msgstr "Destra"
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:4
+msgid "Centerprint"
+msgstr "Centerprint"
+
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:23
+msgid "Message duration:"
+msgstr "Durata messaggi:"
+
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:27
+msgid "Fade time:"
+msgstr "Durata dissolvenza:"
+
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:31
+msgid "Flip messages order"
+msgstr "Inverti ordine messaggi"
+
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:33
+msgid "Text alignment:"
+msgstr "Allineamento testo:"
+
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:37
+#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup_weapons.c:50
+msgid "Center"
+msgstr "Centro"
+
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:41
+msgid "Font scale:"
+msgstr "Scala testo:"
+
#: qcsrc/menu/xonotic/dialog_hudpanel_chat.c:4
msgid "Chat Panel"
msgstr "Pannello Chat"
msgid "Physics Panel"
msgstr "Pannello Fisica"
-#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:23
+#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:22
#: qcsrc/menu/xonotic/dialog_hudpanel_pressedkeys.c:21
#: qcsrc/menu/xonotic/dialog_hudpanel_radar.c:21
msgid "Panel disabled"
msgstr "Pannello disabilitato"
+#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:23
+msgid "Panel enabled"
+msgstr "Pannello abilitato"
+
#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:24
-msgid "Panel enabled if not observing"
-msgstr "Pannello abilitato se non si sta osservando"
+msgid "Panel enabled even observing"
+msgstr "Pannello abilitato anche osservando"
#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:25
-#: qcsrc/menu/xonotic/dialog_hudpanel_pressedkeys.c:23
-#: qcsrc/menu/xonotic/dialog_hudpanel_radar.c:23
-msgid "Panel always enabled"
-msgstr "Pannello sempre abilitato"
+msgid "Panel enabled only in Race/CTS"
+msgstr "Pannello abilitato solo in Corsa/CTS"
#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:31
msgid "Status bar"
#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:35
msgid "Inward align"
-msgstr "Allineamento interno"
+msgstr "Allinea all'interno"
#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:36
msgid "Outward align"
-msgstr "Allineamento esterno"
+msgstr "Allinea all'esterno"
#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:40
msgid "Flip speed/acceleration positions"
#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:56
msgid "Speed unit:"
-msgstr "Unità di misura velocità:"
+msgstr "Unità di velocità:"
#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:58
msgid "qu/s"
#: qcsrc/menu/xonotic/dialog_hudpanel_pressedkeys.c:22
msgid "Panel enabled when spectating"
-msgstr "Pannello abilitato in modalità spettatore"
+msgstr "Pannello abilitato quando spettatore"
+
+#: qcsrc/menu/xonotic/dialog_hudpanel_pressedkeys.c:23
+#: qcsrc/menu/xonotic/dialog_hudpanel_radar.c:23
+msgid "Panel always enabled"
+msgstr "Pannello sempre abilitato"
#: qcsrc/menu/xonotic/dialog_hudpanel_pressedkeys.c:30
msgid "Forced aspect:"
#: qcsrc/menu/xonotic/dialog_hudpanel_score.c:25
msgid "Rankings:"
-msgstr "Posizioni:"
+msgstr "Classifica:"
#: qcsrc/menu/xonotic/dialog_hudpanel_score.c:26
msgid "Off"
#: qcsrc/menu/xonotic/dialog_hudpanel_weapons.c:48
msgid "Bind"
-msgstr "Bind"
+msgstr "Tasto"
#: qcsrc/menu/xonotic/dialog_hudpanel_weapons.c:51
msgid "Show Accuracy"
#: qcsrc/menu/xonotic/dialog_hudsetup_exit.c:21
msgid "Panel background defaults:"
-msgstr "Sfondo del pannello predefinito:"
+msgstr "Predefiniti dello sfondo del pannello:"
-#: qcsrc/menu/xonotic/dialog_hudsetup_exit.c:23
-#: qcsrc/menu/xonotic/util.qc:575
+#: qcsrc/menu/xonotic/dialog_hudsetup_exit.c:23 qcsrc/menu/xonotic/util.qc:575
msgid "Background:"
msgstr "Sfondo:"
#: qcsrc/menu/xonotic/dialog_hudsetup_exit.c:25
#: qcsrc/menu/xonotic/dialog_hudsetup_exit.c:37
#: qcsrc/menu/xonotic/dialog_hudsetup_exit.c:52
-#: qcsrc/menu/xonotic/dialog_hudsetup_exit.c:91
-#: qcsrc/menu/xonotic/util.qc:578
-#: qcsrc/menu/xonotic/util.qc:594
-#: qcsrc/menu/xonotic/util.qc:611
+#: qcsrc/menu/xonotic/dialog_hudsetup_exit.c:91 qcsrc/menu/xonotic/util.qc:578
+#: qcsrc/menu/xonotic/util.qc:594 qcsrc/menu/xonotic/util.qc:611
msgid "Disable"
msgstr "Disabilita"
#: qcsrc/menu/xonotic/dialog_hudsetup_exit.c:30
-#: qcsrc/menu/xonotic/dialog_hudsetup_exit.c:77
-#: qcsrc/menu/xonotic/util.qc:583
+#: qcsrc/menu/xonotic/dialog_hudsetup_exit.c:77 qcsrc/menu/xonotic/util.qc:583
msgid "Color:"
msgstr "Colore:"
-#: qcsrc/menu/xonotic/dialog_hudsetup_exit.c:35
-#: qcsrc/menu/xonotic/util.qc:591
+#: qcsrc/menu/xonotic/dialog_hudsetup_exit.c:35 qcsrc/menu/xonotic/util.qc:591
msgid "Border size:"
-msgstr "Dimensioni del bordo:"
+msgstr "Dimensioni bordo:"
#: qcsrc/menu/xonotic/dialog_hudsetup_exit.c:50
#: qcsrc/menu/xonotic/dialog_hudsetup_exit.c:89
msgid "Team color:"
msgstr "Colore team:"
-#: qcsrc/menu/xonotic/dialog_hudsetup_exit.c:58
-#: qcsrc/menu/xonotic/util.qc:617
+#: qcsrc/menu/xonotic/dialog_hudsetup_exit.c:58 qcsrc/menu/xonotic/util.qc:617
msgid "Test team color in configure mode"
msgstr "Prova colore team in modalità configurazione"
-#: qcsrc/menu/xonotic/dialog_hudsetup_exit.c:61
-#: qcsrc/menu/xonotic/util.qc:620
+#: qcsrc/menu/xonotic/dialog_hudsetup_exit.c:61 qcsrc/menu/xonotic/util.qc:620
msgid "Padding:"
msgstr "Riempimento:"
msgid "Player Setup"
msgstr "Setup giocatore"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:35
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:34
msgid "Game type:"
msgstr "Tipo di gioco:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:47
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:46
msgid "Match settings:"
msgstr "Impostazioni partita:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:50
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:49
msgid "Time limit:"
msgstr "Limite di tempo:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:54
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:62
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:53
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:61
msgid "Use map specified default"
msgstr "Usa le impostazioni di default della mappa"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:57
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:56
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:155
#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:156
#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:157
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:158
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:161
#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:162
#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:163
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:164
msgid "Point limit:"
-msgstr "Limiti di punteggio:"
+msgstr "Limite di punteggio:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:65
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:64
msgid "Player slots:"
msgstr "Posti per giocatori:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:68
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:67
msgid "Number of bots:"
msgstr "Numero di bot:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:72
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:71
msgid "Bot skill:"
msgstr "Abilità bot:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:75
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:74
msgid "Botlike"
msgstr "\"Come un bot\""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:76
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:75
msgid "Beginner"
msgstr "Principiante"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:77
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:76
msgid "You will win"
msgstr "Vincerai"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:78
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:77
msgid "You can win"
msgstr "Puoi vincere"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:79
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:78
msgid "You might win"
msgstr "Potresti vincere"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:80
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:79
msgid "Advanced"
msgstr "Avanzato"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:81
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:80
msgid "Expert"
msgstr "Esperto"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:82
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:81
msgid "Pro"
msgstr "Pro"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:83
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:82
msgid "Assassin"
msgstr "Assassino"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:84
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:83
msgid "Unhuman"
msgstr "Inumano"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:85
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:84
msgid "Godlike"
msgstr "\"Come un Dio\""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:89
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:88
msgid "Mutators..."
msgstr "Mutatori..."
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:98
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:97
#: qcsrc/menu/xonotic/dialog_settings_misc.c:57
msgid "Advanced settings..."
msgstr "Impostazioni avanzate..."
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:105
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:104
msgid "Map list:"
msgstr "Lista delle mappe:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:111
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:110
msgid "Select all"
msgstr "Seleziona tutto"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:114
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:113
msgid "Select none"
msgstr "Deseleziona tutto"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:120
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:119
msgid "Start Multiplayer!"
msgstr "Inizia Multiplayer!"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:155
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:154
msgid "Capture limit:"
msgstr "Limite catture:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:159
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:158
msgid "Lives:"
msgstr "Vite:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:160
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:159
msgid "Laps:"
msgstr "Giri:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:161
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:160
msgid "Goals:"
msgstr "Goal:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:165
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:164
msgid "Frag limit:"
-msgstr "Limiti di frag:"
+msgstr "Limite di frag:"
#: qcsrc/menu/xonotic/dialog_multiplayer_create_advanced.c:6
msgid "Advanced server settings"
msgid "Game types:"
msgstr "Tipi di gioco:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create_mapinfo.c:119
+#: qcsrc/menu/xonotic/dialog_multiplayer_create_mapinfo.c:118
#: qcsrc/menu/xonotic/dialog_multiplayer_join_serverinfo.c:314
msgid "Close"
msgstr "Chiudi"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create_mapinfo.c:122
-#: qcsrc/menu/xonotic/dialog_multiplayer_demo.c:46
-msgid "Play"
-msgstr "Riproduci"
+#: qcsrc/menu/xonotic/dialog_multiplayer_create_mapinfo.c:121
+msgid "MAP^Play"
+msgstr "Gioca"
#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:7
msgid "Mutators"
#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:68
#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:167
msgid "Dodging"
-msgstr "Dodging"
+msgstr "Schivamento"
#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:70
#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:250
#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:74
#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:205
msgid "Rocket Flying"
-msgstr "Razzo volante"
+msgstr "Volando coi razzi"
#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:78
#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:264
msgid "Timedemo"
msgstr "Timedemo"
+#: qcsrc/menu/xonotic/dialog_multiplayer_demo.c:46
+msgid "DEMO^Play"
+msgstr "Riproduci"
+
#: qcsrc/menu/xonotic/dialog_multiplayer_join.c:4
msgid "Join"
msgstr "Entra"
#: qcsrc/menu/xonotic/dialog_multiplayer_join_serverinfo.c:189
#: qcsrc/menu/xonotic/dialog_multiplayer_join_serverinfo.c:199
msgid "N/A"
-msgstr "N/A"
+msgstr "N/D"
#: qcsrc/menu/xonotic/dialog_multiplayer_join_serverinfo.c:158
#, c-format
#: qcsrc/menu/xonotic/dialog_multiplayer_join_serverinfo.c:197
msgid "N/A (can't connect)"
-msgstr "N/A (impossibile connettersi)"
+msgstr "N/D (impossibile connettersi)"
#: qcsrc/menu/xonotic/dialog_multiplayer_join_serverinfo.c:205
msgid "not supported (can't connect)"
#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:195
#: qcsrc/menu/xonotic/dialog_settings_audio.c:173
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:191
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:194
#: qcsrc/menu/xonotic/dialog_settings_misc.c:30
#: qcsrc/menu/xonotic/dialog_settings_misc.c:41
#: qcsrc/menu/xonotic/dialog_settings_video.c:109
msgid "Draw 1st person weapon model"
msgstr "Mostra modello arma in 1ª persona"
-#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup_weapons.c:50
-msgid "Center"
-msgstr "Centro"
-
#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup_weapons.c:55
msgid "Flip view horizontally"
msgstr "Capovolgi la vista orizzontalmente"
#: qcsrc/menu/xonotic/dialog_settings_effects.c:110
msgid "Particle quality:"
-msgstr "Qualità dei particolari:"
+msgstr "Qualità particelle:"
#: qcsrc/menu/xonotic/dialog_settings_effects.c:113
msgid "Particle distance:"
-msgstr "Distanza dei particolari:"
+msgstr "Distanza particelle:"
#: qcsrc/menu/xonotic/dialog_settings_effects.c:117
msgid "Decals"
-msgstr "Segni"
+msgstr "Decal"
+
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:118
+msgid "Decals on models"
+msgstr "Decal sui modelli"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:120
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:122
msgid "Distance:"
msgstr "Distanza:"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:126
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:128
msgid "Time:"
msgstr "Tempo:"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:132
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:134
msgid "Use lightmaps"
-msgstr "Usa lightmaps"
+msgstr "Usa mappe di luce"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:133
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:135
msgid "Deluxe mapping"
msgstr "Mappaggio Deluxe"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:135
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:137
msgid "Gloss"
msgstr "Lucentezza"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:138
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:140
msgid "Offset mapping"
msgstr "Mappaggio in offset"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:140
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:142
msgid "Relief mapping"
msgstr "Mappaggio in rilievo"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:143
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:145
msgid "Reflections:"
msgstr "Riflessioni:"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:146
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:148
msgid "Blurred"
msgstr "Sfocate"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:147
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:149
msgid "REFL^Good"
msgstr "REFL^Buone"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:148
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:150
msgid "Sharp"
msgstr "Nitide"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:153
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:155
msgid "Show surfaces"
msgstr "Mostra superfici"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:155
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:157
msgid "No dynamic lighting"
msgstr "Nessuna illuminazione dinamica"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:157
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:159
msgid "Flash blend approximation"
msgstr "Approssimazione Flash blend"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:159
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:161
msgid "Realtime dynamic lighting"
msgstr "Illuminazione dinamica in tempo reale"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:160
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:164
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:162
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:166
msgid "Shadows"
msgstr "Ombre"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:163
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:165
msgid "Realtime world lighting"
msgstr "Illuminazione globale in tempo reale"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:168
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:170
msgid "Use normal maps"
msgstr "Usa mappe normali"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:170
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:172
msgid "Soft shadows"
msgstr "Ombre morbide"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:173
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:175
msgid "Coronas"
msgstr "Corone"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:174
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:176
msgid "Use Occlusion Queries"
msgstr "Usa le Occlusion Queries"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:176
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:178
msgid "Bloom"
msgstr "Bloom"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:178
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:180
msgid "High Dynamic Range (HDR)"
msgstr "High Dynamic Range (HDR)"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:182
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:184
msgid "Motion blur:"
msgstr "Sfocatura movimento:"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:187
-msgid "Damage & water blur"
-msgstr "Sfocatura da danno & acqua:"
-
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:188
-msgid "Powerup sharpen"
-msgstr "Powerup nitido"
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:189
+msgid "Blur and sharpen postprocessing"
+msgstr "Postprocessa per sfocatura e nitidezza"
#: qcsrc/menu/xonotic/dialog_settings_input.c:26
msgid "Key bindings:"
#: qcsrc/menu/xonotic/dialog_settings_network.c:42
msgid "Input packets/s:"
-msgstr "Pacchetti/sec in entrata:"
+msgstr "Pacchetti/s in entrata:"
#: qcsrc/menu/xonotic/dialog_settings_network.c:46
msgid "HTTP downloads:"
msgid "Singleplayer"
msgstr "Giocatore singolo"
-#: qcsrc/menu/xonotic/dialog_singleplayer.c:59
+#: qcsrc/menu/xonotic/dialog_singleplayer.c:127
msgid "Instant action! (random map with bots)"
msgstr "Inizia ora! (mappa casuale con bot)"
-#: qcsrc/menu/xonotic/dialog_singleplayer.c:80
+#: qcsrc/menu/xonotic/dialog_singleplayer.c:148
msgid "Start Singleplayer!"
msgstr "Inizia modalità Giocatore Singolo!"
msgid "spectate"
msgstr "spettatore"
-#: qcsrc/menu/xonotic/mainwindow.c:35
-#: qcsrc/menu/xonotic/mainwindow.c:38
+#: qcsrc/menu/xonotic/mainwindow.c:35 qcsrc/menu/xonotic/mainwindow.c:38
msgid "Do not press this button again!"
msgstr "Non premere questo tasto di nuovo!"
#: qcsrc/menu/xonotic/maplist.c:278
-msgid "Huh? Can't play this (m is NULL). Refiltering so this won't happen again.\n"
-msgstr "Huh? Can't play this (m is NULL). Refiltering so this won't happen again.\n"
+msgid ""
+"Huh? Can't play this (m is NULL). Refiltering so this won't happen again.\n"
+msgstr ""
+"Huh? Can't play this (m is NULL). Refiltering so this won't happen again.\n"
#: qcsrc/menu/xonotic/maplist.c:286
#, c-format
msgstr "Server Xonotic di %s"
#: qcsrc/menu/xonotic/maplist.c:291
-msgid "Huh? Can't play this (invalid game type). Refiltering so this won't happen again.\n"
-msgstr "Huh? Can't play this (invalid game type). Refiltering so this won't happen again.\n"
+msgid ""
+"Huh? Can't play this (invalid game type). Refiltering so this won't happen "
+"again.\n"
+msgstr ""
+"Huh? Can't play this (invalid game type). Refiltering so this won't happen "
+"again.\n"
#: qcsrc/menu/xonotic/playermodel.c:174
msgid "<no model found>"
msgid "Bookmark"
msgstr "Aggiungi tra i preferiti"
-#: qcsrc/menu/xonotic/serverlist.c:523
+#: qcsrc/menu/xonotic/serverlist.c:527
msgid "Ping"
msgstr "Ping"
-#: qcsrc/menu/xonotic/serverlist.c:524
+#: qcsrc/menu/xonotic/serverlist.c:528
msgid "Host name"
msgstr "Nome dell'host"
-#: qcsrc/menu/xonotic/serverlist.c:525
+#: qcsrc/menu/xonotic/serverlist.c:529
msgid "Map"
msgstr "Mappa"
-#: qcsrc/menu/xonotic/serverlist.c:526
+#: qcsrc/menu/xonotic/serverlist.c:530
msgid "Type"
msgstr "Tipo"
-#: qcsrc/menu/xonotic/serverlist.c:527
+#: qcsrc/menu/xonotic/serverlist.c:531
msgid "Players"
msgstr "Giocatori"
msgid "<AUTHOR>"
msgstr "<AUTORE>"
-#: qcsrc/menu/xonotic/skinlist.c:163
-#, c-format
-msgid "%s: %s"
-msgstr "%s: %s"
-
#: qcsrc/menu/xonotic/slider_decibels.c:50
msgid "VOL^OFF"
msgstr "VOL^OFF"
#: qcsrc/menu/xonotic/util.qc:285
#, c-format
msgid "error receiving update notification: status is %d\n"
-msgstr "errore durante la notifica d'aggiornamento: lo stato è impostato su %d\n"
+msgstr ""
+"errore durante la notifica d'aggiornamento: lo stato è impostato su %d\n"
#: qcsrc/menu/xonotic/util.qc:290
msgid "error: received HTML instead of an update notification\n"
msgid "@!#%'n Tuba Throwing"
msgstr "@!#%'n Tuba Throwing"
-#: qcsrc/menu/xonotic/util.qc:577
-#: qcsrc/menu/xonotic/util.qc:593
-#: qcsrc/menu/xonotic/util.qc:602
-#: qcsrc/menu/xonotic/util.qc:610
+#: qcsrc/menu/xonotic/util.qc:577 qcsrc/menu/xonotic/util.qc:593
+#: qcsrc/menu/xonotic/util.qc:602 qcsrc/menu/xonotic/util.qc:610
#: qcsrc/menu/xonotic/util.qc:622
msgid "Default"
msgstr "Predefinito"
msgid "Crylink"
msgstr "Crylink"
-#: qcsrc/server/w_crylink.qc:664
+#: qcsrc/server/w_crylink.qc:666
#, c-format
msgid "%s succeeded at self-destructing themself with the Crylink"
-msgstr "%s è riuscito ad autodistrugersi col Crylink"
+msgstr "%s è riuscito ad autodistruggersi col Crylink"
-#: qcsrc/server/w_crylink.qc:669
+#: qcsrc/server/w_crylink.qc:671
#, c-format
msgid "%s could not hide from %s's Crylink"
msgstr "%s non s'è potuto nascondere dal Crylink di %s"
-#: qcsrc/server/w_crylink.qc:671
+#: qcsrc/server/w_crylink.qc:673
#, c-format
msgid "%s was too close to %s's Crylink"
msgstr "%s era troppo vicino al Crylink di %s"
-#: qcsrc/server/w_crylink.qc:673
+#: qcsrc/server/w_crylink.qc:675
#, c-format
msgid "%s took a close look at %s's Crylink"
msgstr "%s ha visto da vicino il Crylink di %s"
msgid "%s forgot about some firemine"
msgstr "%s s'è dimenticato di alcune mine infuocate"
-#: qcsrc/server/w_fireball.qc:419
-#: qcsrc/server/w_hlac.qc:240
+#: qcsrc/server/w_fireball.qc:419 qcsrc/server/w_hlac.qc:240
#, c-format
msgid "%s should have used a smaller gun"
msgstr "%s avrebbe dovuto usare un'arma più piccola"
msgid "Mortar"
msgstr "Mortar"
-#: qcsrc/server/w_grenadelauncher.qc:379
+#: qcsrc/server/w_grenadelauncher.qc:383
#, c-format
msgid "%s tried out his own grenade"
msgstr "%s ha provato da solo la propria granata"
-#: qcsrc/server/w_grenadelauncher.qc:381
+#: qcsrc/server/w_grenadelauncher.qc:385
#, c-format
msgid "%s detonated"
msgstr "%s è detonato"
-#: qcsrc/server/w_grenadelauncher.qc:387
+#: qcsrc/server/w_grenadelauncher.qc:391
#, c-format
msgid "%s didn't see %s's grenade"
msgstr "%s non ha visto la granata di %s"
-#: qcsrc/server/w_grenadelauncher.qc:389
+#: qcsrc/server/w_grenadelauncher.qc:393
#, c-format
msgid "%s almost dodged %s's grenade"
msgstr "%s ha quasi schivato la granata di %s"
-#: qcsrc/server/w_grenadelauncher.qc:391
+#: qcsrc/server/w_grenadelauncher.qc:395
#, c-format
msgid "%s ate %s's grenade"
msgstr "%s ha mangiato la granata di %s"
msgid "Hagar"
msgstr "Hagar"
-#: qcsrc/server/w_hagar.qc:382
-#: qcsrc/server/w_seeker.qc:655
+#: qcsrc/server/w_hagar.qc:395 qcsrc/server/w_seeker.qc:655
#, c-format
msgid "%s played with tiny rockets"
msgstr "%s ha giocato con piccoli razzi"
-#: qcsrc/server/w_hagar.qc:386
+#: qcsrc/server/w_hagar.qc:399
#, c-format
msgid "%s hoped %s's missiles wouldn't bounce"
-msgstr "%s ha sperato che il missile di %s non rimbalzasse"
+msgstr "%s ha sperato che i missili di %s non rimbalzassero"
-#: qcsrc/server/w_hagar.qc:388
-#: qcsrc/server/w_seeker.qc:661
+#: qcsrc/server/w_hagar.qc:401 qcsrc/server/w_seeker.qc:661
#, c-format
msgid "%s was pummeled by %s"
msgstr "%s è stato preso a pugni da %s"
msgid "Grappling Hook"
msgstr "Grappling Hook"
-#: qcsrc/server/w_hook.qc:266
-#: qcsrc/server/w_porto.qc:296
+#: qcsrc/server/w_hook.qc:266 qcsrc/server/w_porto.qc:296
#, c-format
msgid "%s did the impossible"
msgstr "%s ha fatto l'impossibile"
#: qcsrc/server/w_hook.qc:268
#, c-format
msgid "%s has run into %s's gravity bomb"
-msgstr "%s è corso nella bomba di gravità di %s"
+msgstr "%s si è imbattuto nella bomba di gravità di %s"
#: qcsrc/server/w_laser.qc:2
msgid "Laser"
#: qcsrc/server/w_laser.qc:317
#, c-format
msgid "%s was lasered to death by %s"
-msgstr "%s è stato \"laserato\" alla morte da %s"
+msgstr "%s è stato \"laserato\" a morte da %s"
#: qcsrc/server/w_minelayer.qc:2
msgid "Mine Layer"
msgstr "Mine Layer"
-#: qcsrc/server/w_minelayer.qc:523
-#: qcsrc/server/w_rocketlauncher.qc:501
+#: qcsrc/server/w_minelayer.qc:523 qcsrc/server/w_rocketlauncher.qc:501
#, c-format
msgid "%s exploded"
msgstr "%s è esploso"
msgid "MinstaNex"
msgstr "MinstaNex"
-#: qcsrc/server/w_minstanex.qc:290
-#: qcsrc/server/w_nex.qc:253
-#: qcsrc/server/w_shotgun.qc:209
-#: qcsrc/server/w_uzi.qc:317
+#: qcsrc/server/w_minstanex.qc:293 qcsrc/server/w_nex.qc:253
+#: qcsrc/server/w_shotgun.qc:215 qcsrc/server/w_uzi.qc:317
#, c-format
msgid "%s is now thinking with portals"
msgstr "%s sta ora pensando con i portali"
-#: qcsrc/server/w_minstanex.qc:292
-#: qcsrc/server/w_nex.qc:255
+#: qcsrc/server/w_minstanex.qc:295 qcsrc/server/w_nex.qc:255
#, c-format
msgid "%s has been vaporized by %s"
msgstr "%s è stato vaporizzato da %s"
msgid "%s got hit in the head by %s"
msgstr "%s ha preso un colpo in testa da %s"
-#: qcsrc/server/w_rifle.qc:258
-#: qcsrc/server/w_uzi.qc:321
+#: qcsrc/server/w_rifle.qc:258 qcsrc/server/w_uzi.qc:321
#, c-format
msgid "%s was sniped by %s"
msgstr "%s è stato fucilato da %s"
msgid "Shotgun"
msgstr "Shotgun"
-#: qcsrc/server/w_shotgun.qc:213
+#: qcsrc/server/w_shotgun.qc:219
#, c-format
msgid "%2$s ^7slapped %1$s ^7around a bit with a large ^2shotgun"
msgstr "%2$s ^7ha schiaffeggiato %1$s ^7un pò con un grosso ^2shotgun"
-#: qcsrc/server/w_shotgun.qc:215
+#: qcsrc/server/w_shotgun.qc:221
#, c-format
msgid "%s was gunned by %s"
msgstr "%s è stato sparato da %s"
msgid "@!#%'n Tuba"
msgstr "@!#%'n Tuba"
-#: qcsrc/server/w_tuba.qc:253
+#: qcsrc/server/w_tuba.qc:252
#, c-format
msgid "%s hurt his own ears with the @!#%%'n Tuba"
msgstr "%s s'è fatto male alle orecchie con la @!#%%'n Tuba"
-#: qcsrc/server/w_tuba.qc:257
+#: qcsrc/server/w_tuba.qc:256
#, c-format
msgid "%s died of %s's great playing on the @!#%%'n Tuba"
msgstr "%s è morto nella gran esibizione di %s con la @!#%%'n Tuba"
msgid "%s was riddled full of holes by %s"
msgstr "%s è stato riempito di buchi da %s"
+#~ msgid "Damage & water blur"
+#~ msgstr "Sfocatura da danno & acqua:"
+
+#~ msgid "Powerup sharpen"
+#~ msgstr "Powerup nitido"
+
#~ msgid "Waypoint settings:"
#~ msgstr "Impostazioni dei waypoint"
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2011-06-27 18:26+0200\n"
+"POT-Creation-Date: 2011-09-02 07:51+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
+#: qcsrc/common/mapinfo.qc:1092 qcsrc/menu/xonotic/skinlist.c:163
+#, c-format
+msgid "%s: %s"
+msgstr "%s: %s"
+
#: qcsrc/menu/gamecommand.qc:47
#, c-format
msgid "error: status is %d\n"
msgstr "^4MQC Versie informatie: %s\n"
#: qcsrc/menu/xonotic/campaign.c:284
-#: qcsrc/menu/xonotic/dialog_singleplayer.c:66
+#: qcsrc/menu/xonotic/dialog_singleplayer.c:134
msgid "???"
msgstr "???"
msgstr ""
#: qcsrc/menu/xonotic/dialog_hudpanel_ammo.c:29
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:36
#: qcsrc/menu/xonotic/dialog_hudpanel_healtharmor.c:28
#: qcsrc/menu/xonotic/dialog_hudpanel_healtharmor.c:40
#: qcsrc/menu/xonotic/dialog_hudpanel_powerups.c:28
msgstr "Links"
#: qcsrc/menu/xonotic/dialog_hudpanel_ammo.c:30
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:38
#: qcsrc/menu/xonotic/dialog_hudpanel_healtharmor.c:30
#: qcsrc/menu/xonotic/dialog_hudpanel_healtharmor.c:41
#: qcsrc/menu/xonotic/dialog_hudpanel_powerups.c:30
msgid "Right"
msgstr "Rechts"
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:4
+msgid "Centerprint"
+msgstr ""
+
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:23
+#, fuzzy
+msgid "Message duration:"
+msgstr "Verzadiging:"
+
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:27
+#, fuzzy
+msgid "Fade time:"
+msgstr "Post vervaagtijd:"
+
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:31
+#, fuzzy
+msgid "Flip messages order"
+msgstr "Notificatievolgorde omdraaien"
+
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:33
+#, fuzzy
+msgid "Text alignment:"
+msgstr "Icoon positie:"
+
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:37
+#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup_weapons.c:50
+msgid "Center"
+msgstr ""
+
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:41
+#, fuzzy
+msgid "Font scale:"
+msgstr "Wegwijzer schaal:"
+
#: qcsrc/menu/xonotic/dialog_hudpanel_chat.c:4
msgid "Chat Panel"
msgstr "Chat Paneel"
msgid "Physics Panel"
msgstr "Chat Paneel"
-#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:23
+#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:22
#: qcsrc/menu/xonotic/dialog_hudpanel_pressedkeys.c:21
#: qcsrc/menu/xonotic/dialog_hudpanel_radar.c:21
msgid "Panel disabled"
msgstr "Paneel uitgeschakeld"
+#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:23
+#, fuzzy
+msgid "Panel enabled"
+msgstr "Paneel uitgeschakeld"
+
#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:24
#, fuzzy
-msgid "Panel enabled if not observing"
+msgid "Panel enabled even observing"
msgstr "Paneel activeren tijdens observeren"
#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:25
-#: qcsrc/menu/xonotic/dialog_hudpanel_pressedkeys.c:23
-#: qcsrc/menu/xonotic/dialog_hudpanel_radar.c:23
-msgid "Panel always enabled"
-msgstr "Paneel altijd actief"
+#, fuzzy
+msgid "Panel enabled only in Race/CTS"
+msgstr "Paneel actief in teammodus"
#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:31
#, fuzzy
msgid "Panel enabled when spectating"
msgstr "Paneel activeren tijdens observeren"
+#: qcsrc/menu/xonotic/dialog_hudpanel_pressedkeys.c:23
+#: qcsrc/menu/xonotic/dialog_hudpanel_radar.c:23
+msgid "Panel always enabled"
+msgstr "Paneel altijd actief"
+
#: qcsrc/menu/xonotic/dialog_hudpanel_pressedkeys.c:30
msgid "Forced aspect:"
msgstr "Aspect ratio:"
msgid "Player Setup"
msgstr "Speler Instellingen"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:35
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:34
msgid "Game type:"
msgstr "Game modus"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:47
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:46
msgid "Match settings:"
msgstr "Match instellingen:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:50
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:49
msgid "Time limit:"
msgstr "Tijdslimiet:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:54
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:62
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:53
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:61
msgid "Use map specified default"
msgstr "Gebruik map specificaties"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:57
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:56
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:155
#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:156
#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:157
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:158
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:161
#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:162
#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:163
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:164
msgid "Point limit:"
msgstr "Punten limiet:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:65
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:64
msgid "Player slots:"
msgstr "Aantal spelers:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:68
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:67
msgid "Number of bots:"
msgstr "Aantal bots"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:72
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:71
msgid "Bot skill:"
msgstr "Bot vaardigheid"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:75
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:74
msgid "Botlike"
msgstr "Botlike"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:76
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:75
msgid "Beginner"
msgstr "Beginner"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:77
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:76
msgid "You will win"
msgstr "Je zal winnen"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:78
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:77
msgid "You can win"
msgstr "Je kan winnen"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:79
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:78
msgid "You might win"
msgstr "Je zou kunnen winnen"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:80
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:79
msgid "Advanced"
msgstr "Geavanceerd"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:81
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:80
msgid "Expert"
msgstr "Expert"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:82
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:81
msgid "Pro"
msgstr "Pro"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:83
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:82
msgid "Assassin"
msgstr "Sluipmoordenaar"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:84
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:83
msgid "Unhuman"
msgstr "Onmenselijk"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:85
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:84
msgid "Godlike"
msgstr "Goddelijk"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:89
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:88
msgid "Mutators..."
msgstr "Mutaties..."
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:98
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:97
#: qcsrc/menu/xonotic/dialog_settings_misc.c:57
msgid "Advanced settings..."
msgstr "Geavanceerde instellingen..."
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:105
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:104
msgid "Map list:"
msgstr "Map lijst:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:111
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:110
msgid "Select all"
msgstr "Selecteer alles"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:114
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:113
msgid "Select none"
msgstr "Selecteer niets"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:120
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:119
msgid "Start Multiplayer!"
msgstr "Start Multiplayer!"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:155
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:154
msgid "Capture limit:"
msgstr "Vlaggen limiet:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:159
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:158
msgid "Lives:"
msgstr "Levens:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:160
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:159
msgid "Laps:"
msgstr "Rondes:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:161
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:160
msgid "Goals:"
msgstr "Goals:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:165
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:164
msgid "Frag limit:"
msgstr "Frag limiet:"
msgid "Game types:"
msgstr "Game modus:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create_mapinfo.c:119
+#: qcsrc/menu/xonotic/dialog_multiplayer_create_mapinfo.c:118
#: qcsrc/menu/xonotic/dialog_multiplayer_join_serverinfo.c:314
msgid "Close"
msgstr "Dichtdoen"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create_mapinfo.c:122
-#: qcsrc/menu/xonotic/dialog_multiplayer_demo.c:46
-msgid "Play"
+#: qcsrc/menu/xonotic/dialog_multiplayer_create_mapinfo.c:121
+#, fuzzy
+msgid "MAP^Play"
msgstr "Speel"
#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:7
msgid "Timedemo"
msgstr "Benchmark demo"
+#: qcsrc/menu/xonotic/dialog_multiplayer_demo.c:46
+#, fuzzy
+msgid "DEMO^Play"
+msgstr "Speel"
+
#: qcsrc/menu/xonotic/dialog_multiplayer_join.c:4
msgid "Join"
msgstr "Meedoen"
msgstr "Pijn spatten:"
#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:195
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:178
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:191
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:173
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:194
#: qcsrc/menu/xonotic/dialog_settings_misc.c:30
#: qcsrc/menu/xonotic/dialog_settings_misc.c:41
#: qcsrc/menu/xonotic/dialog_settings_video.c:109
msgid "Draw 1st person weapon model"
msgstr "Wapen positie"
-#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup_weapons.c:50
-msgid "Center"
-msgstr ""
-
#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup_weapons.c:55
msgid "Flip view horizontally"
msgstr "Spiegel zicht horizontaal"
msgid "Music:"
msgstr "Muziek:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:40
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:41
msgid "VOL^Ambient:"
msgstr "VOL^Achtergrond:"
msgid "Info:"
msgstr "Info:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:57
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:55
msgid "Items:"
msgstr "Items:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:65
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:62
msgid "Pain:"
msgstr "Pijn:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:73
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:69
msgid "Player:"
msgstr "Speler:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:81
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:76
msgid "Shots:"
msgstr "Schoten:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:88
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:83
msgid "Voice:"
msgstr "Spraak:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:96
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:91
msgid "Weapons:"
msgstr "Wapens:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:103
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:161
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:98
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:156
msgid "Frequency:"
msgstr "Frequentie:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:105
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:100
msgid "8 kHz"
msgstr "8 kHz"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:106
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:101
msgid "11.025 kHz"
msgstr "11.025 kHz"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:107
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:102
msgid "16 kHz"
msgstr "16 kHz"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:108
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:103
msgid "22.05 kHz"
msgstr "22.05 kHz"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:109
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:104
msgid "24 kHz"
msgstr "24 kHz"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:110
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:105
msgid "32 kHz"
msgstr "32 kHz"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:111
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:106
msgid "44.1 kHz"
msgstr "44.1 kHz"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:112
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:107
msgid "48 kHz"
msgstr "48 kHz"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:115
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:110
msgid "Channels:"
msgstr "Kanalen:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:117
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:112
msgid "Mono"
msgstr "Mono"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:118
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:113
msgid "Stereo"
msgstr "Stereo"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:119
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:114
msgid "2.1"
msgstr "2.1"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:120
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:115
msgid "4"
msgstr "4"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:121
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:116
msgid "5"
msgstr "5"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:122
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:117
msgid "5.1"
msgstr "5.1"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:123
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:118
msgid "6.1"
msgstr "6.1"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:124
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:119
msgid "7.1"
msgstr "7.1"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:128
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:123
msgid "Swap Stereo"
msgstr "Stereo omwisselen"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:132
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:127
msgid "Headphone friendly mode"
msgstr "Koptelefoon modus"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:136
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:131
msgid "Spatial voices:"
msgstr "Ruimtelijke stemmen:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:137
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:132
msgid "VOCS^None"
msgstr "VOCS^Geen"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:138
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:133
msgid "VOCS^Taunts"
msgstr "VOCS^Honen"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:139
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:134
msgid "VOCS^All"
msgstr "VOCS^Alles"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:142
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:137
msgid "Taunt range:"
msgstr "Hoon afstand:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:145
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:140
msgid "RNG^Very short"
msgstr "RNG^Erg kort"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:146
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:141
msgid "RNG^Short"
msgstr "RNG^Kort"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:147
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:142
msgid "RNG^Normal"
msgstr "RNG^Normaal"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:148
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:143
msgid "RNG^Long"
msgstr "RNG^Lang"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:149
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:144
msgid "RNG^Full"
msgstr "RNG^Vol"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:156
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:151
msgid "Automatic taunts"
msgstr "Automatisch honen"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:165
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:160
msgid "Time warning:"
msgstr "Tijd notificatie:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:167
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:162
msgid "WRN^None"
msgstr "WRN^Geen"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:168
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:163
msgid "1 minute"
msgstr "1 minuut"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:169
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:164
msgid "5 minutes"
msgstr "5 minuten"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:170
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:165
msgid "WRN^Both"
msgstr "WRN^Beiden"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:173
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:168
msgid "Hit indicator"
msgstr "Tref indicator"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:175
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:170
msgid "Menu sounds"
msgstr "Menu geluiden"
msgid "Decals"
msgstr "Decals"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:120
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:118
+msgid "Decals on models"
+msgstr ""
+
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:122
msgid "Distance:"
msgstr "Afstand:"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:126
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:128
msgid "Time:"
msgstr "Tijd:"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:132
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:134
msgid "Use lightmaps"
msgstr "Gebuik "
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:133
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:135
msgid "Deluxe mapping"
msgstr "Deluxe mapping"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:135
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:137
msgid "Gloss"
msgstr "Glans"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:138
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:140
msgid "Offset mapping"
msgstr "Offset mapping"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:140
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:142
msgid "Relief mapping"
msgstr "Relief mapping"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:143
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:145
msgid "Reflections:"
msgstr "Reflecties"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:146
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:148
msgid "Blurred"
msgstr "Vervaagd"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:147
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:149
msgid "REFL^Good"
msgstr "REFL^Goed"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:148
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:150
msgid "Sharp"
msgstr "Scherp"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:153
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:155
msgid "Show surfaces"
msgstr "Laat oppervlaktes zien"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:155
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:157
msgid "No dynamic lighting"
msgstr "Geen dynamische verlichting"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:157
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:159
msgid "Flash blend approximation"
msgstr "Flash blend approximation"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:159
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:161
msgid "Realtime dynamic lighting"
msgstr "Real-time dynamische verlichting"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:160
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:164
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:162
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:166
msgid "Shadows"
msgstr "Schaduwen"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:163
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:165
msgid "Realtime world lighting"
msgstr "Real-time wereld verlichting"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:168
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:170
msgid "Use normal maps"
msgstr "Gebruik normal maps"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:170
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:172
msgid "Soft shadows"
msgstr "Zachte schaduwen"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:173
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:175
msgid "Coronas"
msgstr "Coronas"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:174
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:176
msgid "Use Occlusion Queries"
msgstr "Gebruik Occlusion Queries"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:176
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:178
msgid "Bloom"
msgstr "Bloom"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:178
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:180
msgid "High Dynamic Range (HDR)"
msgstr "Hoog dynamisch bereik (HDR)"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:182
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:184
msgid "Motion blur:"
msgstr "Bewegingsonscherpte:"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:187
-#, fuzzy
-msgid "Damage & water blur"
-msgstr "Schadeonscherpte"
-
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:188
-#, fuzzy
-msgid "Powerup sharpen"
-msgstr "Powerups paneel"
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:189
+msgid "Blur and sharpen postprocessing"
+msgstr ""
#: qcsrc/menu/xonotic/dialog_settings_input.c:26
msgid "Key bindings:"
msgid "Singleplayer"
msgstr "Singleplayer"
-#: qcsrc/menu/xonotic/dialog_singleplayer.c:59
+#: qcsrc/menu/xonotic/dialog_singleplayer.c:127
msgid "Instant action! (random map with bots)"
msgstr "Instant actie! (random map met bots)"
-#: qcsrc/menu/xonotic/dialog_singleplayer.c:80
+#: qcsrc/menu/xonotic/dialog_singleplayer.c:148
msgid "Start Singleplayer!"
msgstr "Start Singleplayer!"
msgid "Bookmark"
msgstr "Bookmark"
-#: qcsrc/menu/xonotic/serverlist.c:523
+#: qcsrc/menu/xonotic/serverlist.c:527
msgid "Ping"
msgstr "Ping"
-#: qcsrc/menu/xonotic/serverlist.c:524
+#: qcsrc/menu/xonotic/serverlist.c:528
msgid "Host name"
msgstr "Server naam"
-#: qcsrc/menu/xonotic/serverlist.c:525
+#: qcsrc/menu/xonotic/serverlist.c:529
msgid "Map"
msgstr "Map"
-#: qcsrc/menu/xonotic/serverlist.c:526
+#: qcsrc/menu/xonotic/serverlist.c:530
msgid "Type"
msgstr "Type"
-#: qcsrc/menu/xonotic/serverlist.c:527
+#: qcsrc/menu/xonotic/serverlist.c:531
msgid "Players"
msgstr "Spelers"
msgid "<AUTHOR>"
msgstr "<AUTEUR>"
-#: qcsrc/menu/xonotic/skinlist.c:163
-#, c-format
-msgid "%s: %s"
-msgstr "%s: %s"
-
#: qcsrc/menu/xonotic/slider_decibels.c:50
msgid "VOL^OFF"
msgstr "VOL^UIT"
msgid "Crylink"
msgstr "Crylink"
-#: qcsrc/server/w_crylink.qc:664
+#: qcsrc/server/w_crylink.qc:666
#, c-format
msgid "%s succeeded at self-destructing themself with the Crylink"
msgstr ""
-#: qcsrc/server/w_crylink.qc:669
+#: qcsrc/server/w_crylink.qc:671
#, c-format
msgid "%s could not hide from %s's Crylink"
msgstr ""
-#: qcsrc/server/w_crylink.qc:671
+#: qcsrc/server/w_crylink.qc:673
#, c-format
msgid "%s was too close to %s's Crylink"
msgstr ""
-#: qcsrc/server/w_crylink.qc:673
+#: qcsrc/server/w_crylink.qc:675
#, c-format
msgid "%s took a close look at %s's Crylink"
msgstr ""
msgid "Electro"
msgstr "Electro"
-#: qcsrc/server/w_electro.qc:577
+#: qcsrc/server/w_electro.qc:574
#, c-format
msgid "%s could not remember where they put plasma"
msgstr ""
-#: qcsrc/server/w_electro.qc:579
+#: qcsrc/server/w_electro.qc:576
#, c-format
msgid "%s played with plasma"
msgstr ""
-#: qcsrc/server/w_electro.qc:586
+#: qcsrc/server/w_electro.qc:583
#, c-format
msgid "%s just noticed %s's blue ball"
msgstr ""
-#: qcsrc/server/w_electro.qc:588
+#: qcsrc/server/w_electro.qc:585
#, c-format
msgid "%s got in touch with %s's blue ball"
msgstr ""
-#: qcsrc/server/w_electro.qc:593
+#: qcsrc/server/w_electro.qc:590
#, c-format
msgid "%s felt the electrifying air of %s's combo"
msgstr ""
-#: qcsrc/server/w_electro.qc:595
+#: qcsrc/server/w_electro.qc:592
#, c-format
msgid "%s got too close to %s's blue beam"
msgstr ""
-#: qcsrc/server/w_electro.qc:597
+#: qcsrc/server/w_electro.qc:594
#, c-format
msgid "%s was blasted by %s's blue beam"
msgstr ""
msgid "Mortar"
msgstr "Mortar"
-#: qcsrc/server/w_grenadelauncher.qc:379
+#: qcsrc/server/w_grenadelauncher.qc:383
#, c-format
msgid "%s tried out his own grenade"
msgstr ""
-#: qcsrc/server/w_grenadelauncher.qc:381
+#: qcsrc/server/w_grenadelauncher.qc:385
#, c-format
msgid "%s detonated"
msgstr ""
-#: qcsrc/server/w_grenadelauncher.qc:387
+#: qcsrc/server/w_grenadelauncher.qc:391
#, c-format
msgid "%s didn't see %s's grenade"
msgstr ""
-#: qcsrc/server/w_grenadelauncher.qc:389
+#: qcsrc/server/w_grenadelauncher.qc:393
#, c-format
msgid "%s almost dodged %s's grenade"
msgstr ""
-#: qcsrc/server/w_grenadelauncher.qc:391
+#: qcsrc/server/w_grenadelauncher.qc:395
#, c-format
msgid "%s ate %s's grenade"
msgstr ""
msgid "Hagar"
msgstr "Hagar"
-#: qcsrc/server/w_hagar.qc:382 qcsrc/server/w_seeker.qc:655
+#: qcsrc/server/w_hagar.qc:395 qcsrc/server/w_seeker.qc:655
#, c-format
msgid "%s played with tiny rockets"
msgstr ""
-#: qcsrc/server/w_hagar.qc:386
+#: qcsrc/server/w_hagar.qc:399
#, c-format
msgid "%s hoped %s's missiles wouldn't bounce"
msgstr ""
-#: qcsrc/server/w_hagar.qc:388 qcsrc/server/w_seeker.qc:661
+#: qcsrc/server/w_hagar.qc:401 qcsrc/server/w_seeker.qc:661
#, c-format
msgid "%s was pummeled by %s"
msgstr ""
msgid "MinstaNex"
msgstr "MinstaNex"
-#: qcsrc/server/w_minstanex.qc:290 qcsrc/server/w_nex.qc:253
-#: qcsrc/server/w_shotgun.qc:209 qcsrc/server/w_uzi.qc:317
+#: qcsrc/server/w_minstanex.qc:293 qcsrc/server/w_nex.qc:253
+#: qcsrc/server/w_shotgun.qc:215 qcsrc/server/w_uzi.qc:317
#, c-format
msgid "%s is now thinking with portals"
msgstr ""
-#: qcsrc/server/w_minstanex.qc:292 qcsrc/server/w_nex.qc:255
+#: qcsrc/server/w_minstanex.qc:295 qcsrc/server/w_nex.qc:255
#, c-format
msgid "%s has been vaporized by %s"
msgstr ""
msgid "Shotgun"
msgstr "Shotgun"
-#: qcsrc/server/w_shotgun.qc:213
+#: qcsrc/server/w_shotgun.qc:219
#, c-format
msgid "%2$s ^7slapped %1$s ^7around a bit with a large ^2shotgun"
msgstr ""
-#: qcsrc/server/w_shotgun.qc:215
+#: qcsrc/server/w_shotgun.qc:221
#, c-format
msgid "%s was gunned by %s"
msgstr ""
msgid "@!#%'n Tuba"
msgstr "@!#%'n Tuba"
-#: qcsrc/server/w_tuba.qc:263
+#: qcsrc/server/w_tuba.qc:252
#, c-format
msgid "%s hurt his own ears with the @!#%%'n Tuba"
msgstr ""
-#: qcsrc/server/w_tuba.qc:267
+#: qcsrc/server/w_tuba.qc:256
#, c-format
msgid "%s died of %s's great playing on the @!#%%'n Tuba"
msgstr ""
msgid "%s was riddled full of holes by %s"
msgstr ""
+#, fuzzy
+#~ msgid "Damage & water blur"
+#~ msgstr "Schadeonscherpte"
+
+#, fuzzy
+#~ msgid "Powerup sharpen"
+#~ msgstr "Powerups paneel"
+
#~ msgid "Speedometer"
#~ msgstr "Snelheidsmeter"
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2011-06-27 18:26+0200\n"
+"POT-Creation-Date: 2011-09-12 12:24+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-#: qcsrc/menu/xonotic/dialog_hudpanel_engineinfo.c:4
-msgid "Engine Info Panel"
-msgstr ""
-
-#: qcsrc/menu/xonotic/dialog_hudpanel_engineinfo.c:22
-msgid "Engine info:"
+#: qcsrc/menu/menu.qc:29
+#, c-format
+msgid "^4MQC Build information: ^1%s\n"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_hudpanel_engineinfo.c:25
-msgid "Use an averaging algorithm for fps"
+#: qcsrc/menu/item/slider.c:64
+#, c-format
+msgid "%d (%s)"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_singleplayer.c:4
-msgid "Singleplayer"
+#: qcsrc/menu/item/label.c:63
+#, c-format
+msgid "NOTE: label text %s too wide for label, condensed by factor %f\n"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_singleplayer.c:59
-msgid "Instant action! (random map with bots)"
+#: qcsrc/menu/item/textslider.c:29 qcsrc/menu/item/textslider.c:31
+msgid "custom"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_singleplayer.c:66
-#: qcsrc/menu/xonotic/campaign.c:284
-msgid "???"
+#: qcsrc/menu/item/gecko.c:49
+msgid "Browser not initialized!"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_singleplayer.c:80
-msgid "Start Singleplayer!"
+#: qcsrc/menu/item/listbox.c:300
+#, c-format
+msgid "Item %d"
msgstr ""
-#: qcsrc/menu/xonotic/util.qc:270
+#: qcsrc/menu/gamecommand.qc:47
#, c-format
-msgid "Received HTTP request data for an invalid id %d.\n"
+msgid "error: status is %d\n"
msgstr ""
-#: qcsrc/menu/xonotic/util.qc:285
-#, c-format
-msgid "error receiving update notification: status is %d\n"
+#: qcsrc/menu/gamecommand.qc:65
+msgid "Usage: menu_cmd command..., where possible commands are:\n"
msgstr ""
-#: qcsrc/menu/xonotic/util.qc:290
-msgid "error: received HTML instead of an update notification\n"
+#: qcsrc/menu/gamecommand.qc:66
+msgid " sync - reloads all cvars on the current menu page\n"
msgstr ""
-#: qcsrc/menu/xonotic/util.qc:295
-msgid "error: received carriage returns from update notification server\n"
+#: qcsrc/menu/gamecommand.qc:67
+msgid " directmenu ITEM - select a menu item as main item\n"
msgstr ""
-#: qcsrc/menu/xonotic/util.qc:316
-#, c-format
-msgid ""
-"Update can be downloaded at:\n"
-"%s\n"
+#: qcsrc/menu/gamecommand.qc:193
+msgid "error creating curl handle\n"
msgstr ""
-#: qcsrc/menu/xonotic/util.qc:337
-msgid "Autogenerating mapinfo for newly added maps..."
+#: qcsrc/menu/gamecommand.qc:239
+msgid "Invalid command. For a list of supported commands, try menu_cmd help.\n"
msgstr ""
-#: qcsrc/menu/xonotic/util.qc:367
-#, c-format
-msgid "^1%s TEST BUILD"
+#: qcsrc/menu/xonotic/dialog_settings_video.c:4
+#: qcsrc/menu/xonotic/dialog_settings.c:19
+msgid "Video"
msgstr ""
-#: qcsrc/menu/xonotic/util.qc:432
-#, c-format
-msgid "Update to %s now!"
+#: qcsrc/menu/xonotic/dialog_settings_video.c:26
+msgid "Resolution:"
msgstr ""
-#: qcsrc/menu/xonotic/util.qc:501
-msgid ""
-"^1ERROR: Texture compression is required but not supported.\n"
-"^1Expect visual problems.\n"
+#: qcsrc/menu/xonotic/dialog_settings_video.c:29
+msgid "Font/UI size:"
msgstr ""
-#: qcsrc/menu/xonotic/util.qc:523
-msgid "Arena"
+#: qcsrc/menu/xonotic/dialog_settings_video.c:31
+msgid "SZ^Unreadable"
msgstr ""
-#: qcsrc/menu/xonotic/util.qc:524
-msgid "Assault"
+#: qcsrc/menu/xonotic/dialog_settings_video.c:32
+msgid "SZ^Tiny"
msgstr ""
-#: qcsrc/menu/xonotic/util.qc:525
-msgid "Capture The Flag"
+#: qcsrc/menu/xonotic/dialog_settings_video.c:33
+msgid "SZ^Little"
msgstr ""
-#: qcsrc/menu/xonotic/util.qc:526
-msgid "Clan Arena"
+#: qcsrc/menu/xonotic/dialog_settings_video.c:34
+msgid "SZ^Small"
msgstr ""
-#: qcsrc/menu/xonotic/util.qc:527
-msgid "Deathmatch"
+#: qcsrc/menu/xonotic/dialog_settings_video.c:35
+msgid "SZ^Medium"
msgstr ""
-#: qcsrc/menu/xonotic/util.qc:528
-msgid "Domination"
+#: qcsrc/menu/xonotic/dialog_settings_video.c:36
+msgid "SZ^Large"
msgstr ""
-#: qcsrc/menu/xonotic/util.qc:529
-msgid "Freeze Tag"
+#: qcsrc/menu/xonotic/dialog_settings_video.c:37
+msgid "SZ^Huge"
msgstr ""
-#: qcsrc/menu/xonotic/util.qc:530
-msgid "Keepaway"
+#: qcsrc/menu/xonotic/dialog_settings_video.c:38
+msgid "SZ^Gigantic"
msgstr ""
-#: qcsrc/menu/xonotic/util.qc:531
-msgid "Key Hunt"
+#: qcsrc/menu/xonotic/dialog_settings_video.c:39
+msgid "SZ^Colossal"
msgstr ""
-#: qcsrc/menu/xonotic/util.qc:532
-msgid "Last Man Standing"
+#: qcsrc/menu/xonotic/dialog_settings_video.c:42
+msgid "Color depth:"
msgstr ""
-#: qcsrc/menu/xonotic/util.qc:533
-msgid "Nexball"
+#: qcsrc/menu/xonotic/dialog_settings_video.c:45
+msgid "Full screen"
msgstr ""
-#: qcsrc/menu/xonotic/util.qc:534
-msgid "Onslaught"
+#: qcsrc/menu/xonotic/dialog_settings_video.c:46
+msgid "Vertical Synchronization"
msgstr ""
-#: qcsrc/menu/xonotic/util.qc:535
-msgid "Race"
+#: qcsrc/menu/xonotic/dialog_settings_video.c:49
+msgid "Use OpenGL 2.0 shaders (GLSL)"
msgstr ""
-#: qcsrc/menu/xonotic/util.qc:536
-msgid "Race CTS"
+#: qcsrc/menu/xonotic/dialog_settings_video.c:52
+msgid "Use GLSL to handle color control"
msgstr ""
-#: qcsrc/menu/xonotic/util.qc:537
-msgid "Runematch"
+#: qcsrc/menu/xonotic/dialog_settings_video.c:56
+msgid "Vertex Buffer Objects (VBOs)"
msgstr ""
-#: qcsrc/menu/xonotic/util.qc:538
-msgid "Team Deathmatch"
+#: qcsrc/menu/xonotic/dialog_settings_video.c:59
+msgid "VBO^Off"
msgstr ""
-#: qcsrc/menu/xonotic/util.qc:557
-#, c-format
-msgid "@!#%'n Tuba Throwing"
+#: qcsrc/menu/xonotic/dialog_settings_video.c:60
+msgid "Vertices, some Tris (compatible)"
msgstr ""
-#: qcsrc/menu/xonotic/util.qc:575 qcsrc/menu/xonotic/dialog_hudsetup_exit.c:23
-msgid "Background:"
+#: qcsrc/menu/xonotic/dialog_settings_video.c:63
+msgid "Vertices"
msgstr ""
-#: qcsrc/menu/xonotic/util.qc:577 qcsrc/menu/xonotic/util.qc:593
-#: qcsrc/menu/xonotic/util.qc:602 qcsrc/menu/xonotic/util.qc:610
-#: qcsrc/menu/xonotic/util.qc:622
-msgid "Default"
+#: qcsrc/menu/xonotic/dialog_settings_video.c:64
+msgid "Vertices and Triangles"
msgstr ""
-#: qcsrc/menu/xonotic/util.qc:578 qcsrc/menu/xonotic/util.qc:594
-#: qcsrc/menu/xonotic/util.qc:611 qcsrc/menu/xonotic/dialog_hudsetup_exit.c:25
-#: qcsrc/menu/xonotic/dialog_hudsetup_exit.c:37
-#: qcsrc/menu/xonotic/dialog_hudsetup_exit.c:52
-#: qcsrc/menu/xonotic/dialog_hudsetup_exit.c:91
-msgid "Disable"
+#: qcsrc/menu/xonotic/dialog_settings_video.c:67
+msgid "Depth first:"
msgstr ""
-#: qcsrc/menu/xonotic/util.qc:583 qcsrc/menu/xonotic/dialog_hudsetup_exit.c:30
-#: qcsrc/menu/xonotic/dialog_hudsetup_exit.c:77
-msgid "Color:"
+#: qcsrc/menu/xonotic/dialog_settings_video.c:69
+msgid "DF^Disabled"
msgstr ""
-#: qcsrc/menu/xonotic/util.qc:588
-msgid "Use default"
+#: qcsrc/menu/xonotic/dialog_settings_video.c:70
+msgid "DF^World"
msgstr ""
-#: qcsrc/menu/xonotic/util.qc:591 qcsrc/menu/xonotic/dialog_hudsetup_exit.c:35
-msgid "Border size:"
+#: qcsrc/menu/xonotic/dialog_settings_video.c:71
+msgid "DF^All"
msgstr ""
-#: qcsrc/menu/xonotic/util.qc:600 qcsrc/menu/xonotic/dialog_hudsetup_exit.c:43
-#: qcsrc/menu/xonotic/dialog_hudsetup_exit.c:82
-#: qcsrc/menu/xonotic/dialog_hudpanel_radar.c:32
-#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:154
-msgid "Alpha:"
+#: qcsrc/menu/xonotic/dialog_settings_video.c:75
+msgid "Disable multithreaded OpenGL"
msgstr ""
-#: qcsrc/menu/xonotic/util.qc:608
-msgid "Team Color:"
+#: qcsrc/menu/xonotic/dialog_settings_video.c:77
+msgid "Wait for GPU to finish each frame"
msgstr ""
-#: qcsrc/menu/xonotic/util.qc:617 qcsrc/menu/xonotic/dialog_hudsetup_exit.c:58
-msgid "Test team color in configure mode"
+#: qcsrc/menu/xonotic/dialog_settings_video.c:80
+msgid "Brightness:"
msgstr ""
-#: qcsrc/menu/xonotic/util.qc:620 qcsrc/menu/xonotic/dialog_hudsetup_exit.c:61
-msgid "Padding:"
+#: qcsrc/menu/xonotic/dialog_settings_video.c:83
+msgid "Contrast:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_news.c:4
-msgid "News"
+#: qcsrc/menu/xonotic/dialog_settings_video.c:86
+msgid "Gamma:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_news.c:18
-msgid "http://www.xonotic.org/team/blog/"
+#: qcsrc/menu/xonotic/dialog_settings_video.c:91
+msgid "Contrast boost:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_hudpanel_weapons.c:4
-msgid "Weapons Panel"
+#: qcsrc/menu/xonotic/dialog_settings_video.c:96
+msgid "Saturation:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_hudpanel_weapons.c:24
-msgid "Fade out after:"
+#: qcsrc/menu/xonotic/dialog_settings_video.c:102
+msgid "LIT^Ambient:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_hudpanel_weapons.c:26
-#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup_waypoint.c:36
-msgid "Never"
+#: qcsrc/menu/xonotic/dialog_settings_video.c:105
+msgid "Intensity:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_hudpanel_weapons.c:28
-#, c-format
-msgid "%ds"
+#: qcsrc/menu/xonotic/dialog_settings_video.c:109
+#: qcsrc/menu/xonotic/dialog_settings_input.c:74
+#: qcsrc/menu/xonotic/dialog_settings_misc.c:30
+#: qcsrc/menu/xonotic/dialog_settings_misc.c:41
+#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:195
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:194
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:173
+msgid "Apply immediately"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_hudpanel_weapons.c:32
-msgid "Fade effect:"
+#: qcsrc/menu/xonotic/dialog_hudsetup_exit.c:4
+msgid "Panel HUD Setup"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_hudpanel_weapons.c:35
-msgid "EF^None"
+#: qcsrc/menu/xonotic/dialog_hudsetup_exit.c:21
+msgid "Panel background defaults:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_hudpanel_weapons.c:36
-msgid "Slide"
+#: qcsrc/menu/xonotic/dialog_hudsetup_exit.c:23 qcsrc/menu/xonotic/util.qc:587
+msgid "Background:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_hudpanel_weapons.c:37
-msgid "Alpha"
+#: qcsrc/menu/xonotic/dialog_hudsetup_exit.c:25
+#: qcsrc/menu/xonotic/dialog_hudsetup_exit.c:37
+#: qcsrc/menu/xonotic/dialog_hudsetup_exit.c:52
+#: qcsrc/menu/xonotic/dialog_hudsetup_exit.c:91 qcsrc/menu/xonotic/util.qc:590
+#: qcsrc/menu/xonotic/util.qc:606 qcsrc/menu/xonotic/util.qc:623
+msgid "Disable"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_hudpanel_weapons.c:38
-msgid "EF^Both"
+#: qcsrc/menu/xonotic/dialog_hudsetup_exit.c:30
+#: qcsrc/menu/xonotic/dialog_hudsetup_exit.c:77 qcsrc/menu/xonotic/util.qc:595
+msgid "Color:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_hudpanel_weapons.c:42
-msgid "Weapon icons:"
+#: qcsrc/menu/xonotic/dialog_hudsetup_exit.c:35 qcsrc/menu/xonotic/util.qc:603
+msgid "Border size:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_hudpanel_weapons.c:45
-msgid "Show weapon ID as:"
+#: qcsrc/menu/xonotic/dialog_hudsetup_exit.c:43
+#: qcsrc/menu/xonotic/dialog_hudsetup_exit.c:82
+#: qcsrc/menu/xonotic/dialog_hudpanel_radar.c:32
+#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:154
+#: qcsrc/menu/xonotic/util.qc:612
+msgid "Alpha:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_hudpanel_weapons.c:46
-msgid "SHOWAS^None"
+#: qcsrc/menu/xonotic/dialog_hudsetup_exit.c:50
+#: qcsrc/menu/xonotic/dialog_hudsetup_exit.c:89
+msgid "Team color:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_hudpanel_weapons.c:47
-msgid "Number"
+#: qcsrc/menu/xonotic/dialog_hudsetup_exit.c:58 qcsrc/menu/xonotic/util.qc:629
+msgid "Test team color in configure mode"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_hudpanel_weapons.c:48
-msgid "Bind"
+#: qcsrc/menu/xonotic/dialog_hudsetup_exit.c:61 qcsrc/menu/xonotic/util.qc:632
+msgid "Padding:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_hudpanel_weapons.c:51
-msgid "Show Accuracy"
+#: qcsrc/menu/xonotic/dialog_hudsetup_exit.c:68
+msgid "HUD Dock:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_hudpanel_weapons.c:52
-msgid "Show Ammo"
+#: qcsrc/menu/xonotic/dialog_hudsetup_exit.c:70
+msgid "DOCK^Disabled"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_hudpanel_weapons.c:55
-msgid "Ammo bar color:"
+#: qcsrc/menu/xonotic/dialog_hudsetup_exit.c:71
+msgid "DOCK^Small"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_hudpanel_weapons.c:61
-msgid "Ammo bar alpha:"
+#: qcsrc/menu/xonotic/dialog_hudsetup_exit.c:72
+msgid "DOCK^Medium"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_join_serverinfo.c:5
-msgid "Server Information"
+#: qcsrc/menu/xonotic/dialog_hudsetup_exit.c:73
+msgid "DOCK^Large"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_join_serverinfo.c:115
-#: qcsrc/menu/xonotic/dialog_multiplayer_join_serverinfo.c:116
-#: qcsrc/menu/xonotic/dialog_multiplayer_join_serverinfo.c:183
-#: qcsrc/menu/xonotic/dialog_multiplayer_join_serverinfo.c:189
-#: qcsrc/menu/xonotic/dialog_multiplayer_join_serverinfo.c:199
-msgid "N/A"
+#: qcsrc/menu/xonotic/dialog_hudsetup_exit.c:96
+msgid "Grid settings:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_join_serverinfo.c:158
-#, c-format
-msgid "%d/%d, %d free player slots"
+#: qcsrc/menu/xonotic/dialog_hudsetup_exit.c:99
+msgid "Snap panels to grid"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_join_serverinfo.c:172
-msgid "Official settings"
-msgstr ""
-
-#: qcsrc/menu/xonotic/dialog_multiplayer_join_serverinfo.c:172
-#, c-format
-msgid "%d modified settings"
-msgstr ""
-
-#: qcsrc/menu/xonotic/dialog_multiplayer_join_serverinfo.c:197
-msgid "N/A (can't connect)"
-msgstr ""
-
-#: qcsrc/menu/xonotic/dialog_multiplayer_join_serverinfo.c:205
-msgid "not supported (can't connect)"
-msgstr ""
-
-#: qcsrc/menu/xonotic/dialog_multiplayer_join_serverinfo.c:207
-msgid "not supported (won't encrypt)"
-msgstr ""
-
-#: qcsrc/menu/xonotic/dialog_multiplayer_join_serverinfo.c:211
-msgid "supported (will encrypt)"
-msgstr ""
-
-#: qcsrc/menu/xonotic/dialog_multiplayer_join_serverinfo.c:213
-msgid "supported (won't encrypt)"
+#: qcsrc/menu/xonotic/dialog_hudsetup_exit.c:102
+msgid "Grid size:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_join_serverinfo.c:217
-msgid "requested (will encrypt)"
+#: qcsrc/menu/xonotic/dialog_hudsetup_exit.c:103
+msgid "X:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_join_serverinfo.c:219
-msgid "requested (won't encrypt)"
+#: qcsrc/menu/xonotic/dialog_hudsetup_exit.c:109
+msgid "Y:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_join_serverinfo.c:223
-msgid "required (can't connect)"
+#: qcsrc/menu/xonotic/dialog_hudsetup_exit.c:117
+msgid "Exit setup"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_join_serverinfo.c:225
-msgid "required (will encrypt)"
+#: qcsrc/menu/xonotic/dialog_hudpanel_vote.c:4
+msgid "Vote Panel"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_join_serverinfo.c:246
-#: qcsrc/menu/xonotic/dialog_multiplayer_join_serverinfo.c:269
-msgid "Players:"
+#: qcsrc/menu/xonotic/dialog_hudpanel_vote.c:22
+msgid "Alpha after voting:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_join_serverinfo.c:254
-#: qcsrc/menu/xonotic/dialog_settings_misc_cvars.c:38
-msgid "Type:"
+#: qcsrc/menu/xonotic/dialog_hudpanel_modicons.c:4
+msgid "Mod Icons Panel"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_join_serverinfo.c:259
-msgid "Map:"
+#: qcsrc/menu/xonotic/dialog_hudpanel_infomessages.c:4
+msgid "Info Messages Panel"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_join_serverinfo.c:264
-msgid "Gameplay:"
+#: qcsrc/menu/xonotic/dialog_hudpanel_infomessages.c:22
+msgid "Info messages:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_join_serverinfo.c:274
-msgid "Bots:"
+#: qcsrc/menu/xonotic/dialog_hudpanel_infomessages.c:25
+msgid "Flip align"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_join_serverinfo.c:279
-msgid "Mod:"
+#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup_waypoint.c:5
+msgid "Waypoints"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_join_serverinfo.c:284
-msgid "Version:"
+#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup_waypoint.c:23
+msgid "Show base waypoints"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_join_serverinfo.c:289
-msgid "Ping:"
+#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup_waypoint.c:25
+msgid "Waypoint scale:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_join_serverinfo.c:295
-msgid "CA:"
+#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup_waypoint.c:29
+msgid "Waypoint alpha:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_join_serverinfo.c:301
-msgid "Key:"
+#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup_waypoint.c:34
+msgid "Show names:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_join_serverinfo.c:307
-msgid "Encryption:"
+#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup_waypoint.c:36
+#: qcsrc/menu/xonotic/dialog_hudpanel_weapons.c:26
+msgid "Never"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_join_serverinfo.c:314
-#: qcsrc/menu/xonotic/dialog_multiplayer_create_mapinfo.c:119
-msgid "Close"
+#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup_waypoint.c:37
+msgid "Teammates"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_join_serverinfo.c:317
-#: qcsrc/menu/xonotic/dialog_multiplayer_join.c:72
-msgid "Join!"
+#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup_waypoint.c:38
+msgid "All players"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup_weapons.c:6
-msgid "Weapon settings"
+#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup_waypoint.c:41
+#: qcsrc/menu/xonotic/dialog_credits.c:21
+#: qcsrc/menu/xonotic/dialog_settings_misc_cvars.c:61
+#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:269
+#: qcsrc/menu/xonotic/dialog_singleplayer_winner.c:21
+#: qcsrc/menu/xonotic/dialog_multiplayer_create_advanced.c:82
+#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup_weapons.c:57
+msgid "OK"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup_weapons.c:29
-msgid "Weapon priority list:"
+#: qcsrc/menu/xonotic/dialog_credits.c:5
+msgid "Credits"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup_weapons.c:34
-msgid "Up"
+#: qcsrc/menu/xonotic/dialog_settings_misc_cvars.c:5
+msgid "Advanced settings"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup_weapons.c:37
-msgid "Down"
+#: qcsrc/menu/xonotic/dialog_settings_misc_cvars.c:23
+msgid "Cvar filter:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup_weapons.c:41
-msgid "Use priority list for weapon cycling"
+#: qcsrc/menu/xonotic/dialog_settings_misc_cvars.c:24
+#: qcsrc/menu/xonotic/dialog_settings_input.c:41
+#: qcsrc/menu/xonotic/dialog_multiplayer_join.c:29
+#: qcsrc/menu/xonotic/dialog_multiplayer_demo.c:33
+msgid "Clear"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup_weapons.c:43
-msgid "Auto switch weapons on pickup"
+#: qcsrc/menu/xonotic/dialog_settings_misc_cvars.c:34
+msgid "Setting:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup_weapons.c:45
-msgid "Draw 1st person weapon model"
+#: qcsrc/menu/xonotic/dialog_settings_misc_cvars.c:38
+#: qcsrc/menu/xonotic/dialog_multiplayer_join_serverinfo.c:254
+msgid "Type:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup_weapons.c:48
-#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:33
-msgid "Left align"
+#: qcsrc/menu/xonotic/dialog_settings_misc_cvars.c:42
+msgid "Value:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup_weapons.c:50
-msgid "Center"
+#: qcsrc/menu/xonotic/dialog_settings_misc_cvars.c:56
+msgid "Description:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup_weapons.c:52
-#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:34
-msgid "Right align"
+#: qcsrc/menu/xonotic/dialog_hudpanel_pressedkeys.c:4
+msgid "Pressed Keys Panel"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup_weapons.c:55
-msgid "Flip view horizontally"
+#: qcsrc/menu/xonotic/dialog_hudpanel_pressedkeys.c:21
+#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:22
+#: qcsrc/menu/xonotic/dialog_hudpanel_radar.c:21
+msgid "Panel disabled"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup_weapons.c:57
-#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:269
-#: qcsrc/menu/xonotic/dialog_multiplayer_create_advanced.c:82
-#: qcsrc/menu/xonotic/dialog_settings_misc_cvars.c:61
-#: qcsrc/menu/xonotic/dialog_credits.c:21
-#: qcsrc/menu/xonotic/dialog_singleplayer_winner.c:21
-#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup_waypoint.c:41
-msgid "OK"
+#: qcsrc/menu/xonotic/dialog_hudpanel_pressedkeys.c:22
+msgid "Panel enabled when spectating"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_hudsetup_exit.c:4
-msgid "Panel HUD Setup"
+#: qcsrc/menu/xonotic/dialog_hudpanel_pressedkeys.c:23
+#: qcsrc/menu/xonotic/dialog_hudpanel_radar.c:23
+msgid "Panel always enabled"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_hudsetup_exit.c:21
-msgid "Panel background defaults:"
+#: qcsrc/menu/xonotic/dialog_hudpanel_pressedkeys.c:30
+msgid "Forced aspect:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_hudsetup_exit.c:50
-#: qcsrc/menu/xonotic/dialog_hudsetup_exit.c:89
-msgid "Team color:"
+#: qcsrc/menu/xonotic/dialog_teamselect.c:5
+msgid "Team Selection"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_hudsetup_exit.c:68
-msgid "HUD Dock:"
+#: qcsrc/menu/xonotic/dialog_teamselect.c:41
+msgid "join 'best' team (auto-select)"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_hudsetup_exit.c:70
-msgid "DOCK^Disabled"
+#: qcsrc/menu/xonotic/dialog_teamselect.c:45
+msgid "red"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_hudsetup_exit.c:71
-msgid "DOCK^Small"
+#: qcsrc/menu/xonotic/dialog_teamselect.c:46
+msgid "blue"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_hudsetup_exit.c:72
-msgid "DOCK^Medium"
+#: qcsrc/menu/xonotic/dialog_teamselect.c:47
+msgid "yellow"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_hudsetup_exit.c:73
-msgid "DOCK^Large"
+#: qcsrc/menu/xonotic/dialog_teamselect.c:48
+msgid "pink"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_hudsetup_exit.c:96
-msgid "Grid settings:"
+#: qcsrc/menu/xonotic/dialog_teamselect.c:51
+msgid "spectate"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_hudsetup_exit.c:99
-msgid "Snap panels to grid"
+#: qcsrc/menu/xonotic/slider_resolution.c:65
+#, c-format
+msgid "%dx%d"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_hudsetup_exit.c:102
-msgid "Grid size:"
+#: qcsrc/menu/xonotic/dialog_settings.c:4
+msgid "Settings"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_hudsetup_exit.c:103
-msgid "X:"
+#: qcsrc/menu/xonotic/dialog_settings.c:18
+#: qcsrc/menu/xonotic/dialog_settings_input.c:4
+msgid "Input"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_hudsetup_exit.c:109
-msgid "Y:"
+#: qcsrc/menu/xonotic/dialog_settings.c:20
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:4
+msgid "Effects"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_hudsetup_exit.c:117
-msgid "Exit setup"
+#: qcsrc/menu/xonotic/dialog_settings.c:21
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:4
+msgid "Audio"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create_mapinfo.c:5
-msgid "Map Information"
+#: qcsrc/menu/xonotic/dialog_settings.c:22
+#: qcsrc/menu/xonotic/dialog_settings_network.c:4
+msgid "Network"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create_mapinfo.c:49
-msgid "Full item placement"
+#: qcsrc/menu/xonotic/dialog_settings.c:23
+#: qcsrc/menu/xonotic/dialog_settings_misc.c:4
+msgid "Misc"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create_mapinfo.c:49
-msgid "MinstaGib only"
+#: qcsrc/menu/xonotic/dialog_firstrun.c:4
+msgid "Welcome"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create_mapinfo.c:78
-msgid "Title:"
+#: qcsrc/menu/xonotic/dialog_firstrun.c:33
+msgid ""
+"Welcome to Xonotic, please select your language preference and enter your "
+"player name to get started. You can change these options later through the "
+"menu system."
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create_mapinfo.c:84
-msgid "Author:"
+#: qcsrc/menu/xonotic/dialog_firstrun.c:38
+#: qcsrc/menu/xonotic/dialog_settings_misc.c:35
+msgid "Text language:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create_mapinfo.c:90
-msgid "Features:"
+#: qcsrc/menu/xonotic/dialog_firstrun.c:47
+#: qcsrc/menu/xonotic/dialog_settings_input_userbind.c:39
+#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:40
+msgid "Name:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create_mapinfo.c:95
-msgid "Game types:"
+#: qcsrc/menu/xonotic/dialog_firstrun.c:69
+msgid "Save settings"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create_mapinfo.c:122
-#: qcsrc/menu/xonotic/dialog_multiplayer_demo.c:46
-msgid "Play"
+#: qcsrc/menu/xonotic/campaign.c:284
+#: qcsrc/menu/xonotic/dialog_singleplayer.c:123
+msgid "???"
msgstr ""
#: qcsrc/menu/xonotic/campaign.c:285
msgid "Level %d: %s"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_hudpanel_healtharmor.c:4
-msgid "Health/Armor Panel"
-msgstr ""
-
-#: qcsrc/menu/xonotic/dialog_hudpanel_healtharmor.c:22
-#: qcsrc/menu/xonotic/dialog_hudpanel_powerups.c:22
-msgid "Enable status bar"
-msgstr ""
-
-#: qcsrc/menu/xonotic/dialog_hudpanel_healtharmor.c:24
-#: qcsrc/menu/xonotic/dialog_hudpanel_powerups.c:24
-msgid "Status bar alignment:"
-msgstr ""
-
-#: qcsrc/menu/xonotic/dialog_hudpanel_healtharmor.c:28
-#: qcsrc/menu/xonotic/dialog_hudpanel_healtharmor.c:40
-#: qcsrc/menu/xonotic/dialog_hudpanel_ammo.c:29
-#: qcsrc/menu/xonotic/dialog_hudpanel_powerups.c:28
-#: qcsrc/menu/xonotic/dialog_hudpanel_powerups.c:40
-msgid "Left"
-msgstr ""
-
-#: qcsrc/menu/xonotic/dialog_hudpanel_healtharmor.c:30
-#: qcsrc/menu/xonotic/dialog_hudpanel_healtharmor.c:41
-#: qcsrc/menu/xonotic/dialog_hudpanel_ammo.c:30
-#: qcsrc/menu/xonotic/dialog_hudpanel_powerups.c:30
-#: qcsrc/menu/xonotic/dialog_hudpanel_powerups.c:41
-msgid "Right"
-msgstr ""
-
-#: qcsrc/menu/xonotic/dialog_hudpanel_healtharmor.c:32
-#: qcsrc/menu/xonotic/dialog_hudpanel_healtharmor.c:42
-#: qcsrc/menu/xonotic/dialog_hudpanel_powerups.c:32
-#: qcsrc/menu/xonotic/dialog_hudpanel_powerups.c:42
-msgid "Inward"
-msgstr ""
-
-#: qcsrc/menu/xonotic/dialog_hudpanel_healtharmor.c:34
-#: qcsrc/menu/xonotic/dialog_hudpanel_healtharmor.c:43
-#: qcsrc/menu/xonotic/dialog_hudpanel_powerups.c:34
-#: qcsrc/menu/xonotic/dialog_hudpanel_powerups.c:43
-msgid "Outward"
-msgstr ""
-
-#: qcsrc/menu/xonotic/dialog_hudpanel_healtharmor.c:37
-#: qcsrc/menu/xonotic/dialog_hudpanel_powerups.c:37
-msgid "Icon alignment:"
-msgstr ""
-
-#: qcsrc/menu/xonotic/dialog_hudpanel_healtharmor.c:45
-msgid "Flip health and armor positions"
+#: qcsrc/menu/xonotic/dialog_settings_input.c:26
+msgid "Key bindings:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_demo.c:4
-msgid "Demo"
+#: qcsrc/menu/xonotic/dialog_settings_input.c:31
+msgid "Change key..."
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_demo.c:28
-msgid "Record demos while playing"
+#: qcsrc/menu/xonotic/dialog_settings_input.c:35
+msgid "Edit..."
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_demo.c:32
-#: qcsrc/menu/xonotic/dialog_multiplayer_join.c:28
-msgid "Filter:"
+#: qcsrc/menu/xonotic/dialog_settings_input.c:46
+msgid "Sensitivity:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_demo.c:33
-#: qcsrc/menu/xonotic/dialog_settings_misc_cvars.c:24
-#: qcsrc/menu/xonotic/dialog_multiplayer_join.c:29
-#: qcsrc/menu/xonotic/dialog_settings_input.c:41
-msgid "Clear"
+#: qcsrc/menu/xonotic/dialog_settings_input.c:51
+msgid "UI mouse speed:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_demo.c:43
-msgid "Timedemo"
+#: qcsrc/menu/xonotic/dialog_settings_input.c:55
+msgid "Mouse filter"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_hudpanel_pressedkeys.c:4
-msgid "Pressed Keys Panel"
+#: qcsrc/menu/xonotic/dialog_settings_input.c:57
+msgid "Invert mouse"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_hudpanel_pressedkeys.c:21
-#: qcsrc/menu/xonotic/dialog_hudpanel_radar.c:21
-#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:23
-msgid "Panel disabled"
+#: qcsrc/menu/xonotic/dialog_settings_input.c:60
+#: qcsrc/menu/xonotic/dialog_settings_input.c:62
+msgid "Use joystick input"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_hudpanel_pressedkeys.c:22
-msgid "Panel enabled when spectating"
+#: qcsrc/menu/xonotic/dialog_settings_input.c:65
+#: qcsrc/menu/xonotic/dialog_settings_input.c:67
+msgid "Turn off OS mouse acceleration"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_hudpanel_pressedkeys.c:23
-#: qcsrc/menu/xonotic/dialog_hudpanel_radar.c:23
-#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:25
-msgid "Panel always enabled"
+#: qcsrc/menu/xonotic/dialog_settings_input.c:69
+msgid "\"enter console\" also closes"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_hudpanel_pressedkeys.c:30
-msgid "Forced aspect:"
+#: qcsrc/menu/xonotic/dialog_settings_input.c:72
+msgid "Holding jump key keeps jumping"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_teamselect.c:5
-msgid "Team Selection"
+#: qcsrc/menu/xonotic/dialog_hudpanel_weapons.c:4
+msgid "Weapons Panel"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_teamselect.c:41
-msgid "join 'best' team (auto-select)"
+#: qcsrc/menu/xonotic/dialog_hudpanel_weapons.c:24
+msgid "Fade out after:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_teamselect.c:45
-msgid "red"
+#: qcsrc/menu/xonotic/dialog_hudpanel_weapons.c:28
+#, c-format
+msgid "%ds"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_teamselect.c:46
-msgid "blue"
+#: qcsrc/menu/xonotic/dialog_hudpanel_weapons.c:32
+msgid "Fade effect:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_teamselect.c:47
-msgid "yellow"
+#: qcsrc/menu/xonotic/dialog_hudpanel_weapons.c:35
+msgid "EF^None"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_teamselect.c:48
-msgid "pink"
+#: qcsrc/menu/xonotic/dialog_hudpanel_weapons.c:36
+msgid "Slide"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_teamselect.c:51
-msgid "spectate"
+#: qcsrc/menu/xonotic/dialog_hudpanel_weapons.c:37
+msgid "Alpha"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:7
-msgid "Mutators"
+#: qcsrc/menu/xonotic/dialog_hudpanel_weapons.c:38
+msgid "EF^Both"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:33
-msgid "All Weapons Arena"
+#: qcsrc/menu/xonotic/dialog_hudpanel_weapons.c:42
+msgid "Weapon icons:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:35
-msgid "Most Weapons Arena"
+#: qcsrc/menu/xonotic/dialog_hudpanel_weapons.c:45
+msgid "Show only owned weapons"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:56
-#, c-format
-msgid "%s Arena"
+#: qcsrc/menu/xonotic/dialog_hudpanel_weapons.c:48
+msgid "Show weapon ID as:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:68
-#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:167
-msgid "Dodging"
+#: qcsrc/menu/xonotic/dialog_hudpanel_weapons.c:49
+msgid "SHOWAS^None"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:70
-#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:250
-msgid "MinstaGib"
+#: qcsrc/menu/xonotic/dialog_hudpanel_weapons.c:50
+msgid "Number"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:72
-#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:253
-msgid "NIX"
+#: qcsrc/menu/xonotic/dialog_hudpanel_weapons.c:51
+msgid "Bind"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:74
-#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:205
-msgid "Rocket Flying"
+#: qcsrc/menu/xonotic/dialog_hudpanel_weapons.c:54
+msgid "Show Accuracy"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:78
-#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:264
-msgid "No start weapons"
+#: qcsrc/menu/xonotic/dialog_hudpanel_weapons.c:55
+msgid "Show Ammo"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:80
-#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:189
-msgid "Low gravity"
+#: qcsrc/menu/xonotic/dialog_hudpanel_weapons.c:58
+msgid "Ammo bar color:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:82
-#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:170
-msgid "Cloaked"
+#: qcsrc/menu/xonotic/dialog_hudpanel_weapons.c:64
+msgid "Ammo bar alpha:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:84
-msgid "Hook"
+#: qcsrc/menu/xonotic/mainwindow.c:35 qcsrc/menu/xonotic/mainwindow.c:38
+msgid "Do not press this button again!"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:86
-#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:173
-msgid "Midair"
+#: qcsrc/menu/xonotic/dialog_hudpanel_engineinfo.c:4
+msgid "Engine Info Panel"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:88
-#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:176
-msgid "Vampire"
+#: qcsrc/menu/xonotic/dialog_hudpanel_engineinfo.c:22
+msgid "Engine info:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:90
-#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:208
-msgid "Piñata"
+#: qcsrc/menu/xonotic/dialog_hudpanel_engineinfo.c:25
+msgid "Use an averaging algorithm for fps"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:92
-#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:211
-msgid "Weapons stay"
+#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:4
+msgid "Physics Panel"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:94
-#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:180
-msgid "Blood loss"
+#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:23
+msgid "Panel enabled"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:96
-#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:202
-msgid "Jet pack"
+#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:24
+msgid "Panel enabled even observing"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:98
-msgid "MUT^None"
+#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:25
+msgid "Panel enabled only in Race/CTS"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:164
-msgid "Gameplay mutators:"
+#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:31
+msgid "Status bar"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:196
-msgid "Weapon & item mutators:"
+#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:33
+#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup_weapons.c:48
+msgid "Left align"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:199
-msgid "Grappling hook"
+#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:34
+#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup_weapons.c:52
+msgid "Right align"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:215
-msgid "Weapon arenas:"
+#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:35
+msgid "Inward align"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:218
-msgid "Regular (no arena)"
+#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:36
+msgid "Outward align"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:239
-#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:256
-msgid "with laser"
+#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:40
+msgid "Flip speed/acceleration positions"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:247
-msgid "Special arenas:"
+#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:44
+msgid "Speed:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:260
-msgid "Most weapons"
+#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:45
+msgid "Include vertical speed"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create_advanced.c:6
-msgid "Advanced server settings"
+#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:56
+msgid "Speed unit:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create_advanced.c:25
-msgid "Game settings:"
+#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:58
+msgid "qu/s"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create_advanced.c:28
-msgid "Allow spectating"
+#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:59
+msgid "m/s"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create_advanced.c:31
-msgid "Spawn shield:"
+#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:60
+msgid "km/h"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create_advanced.c:36
-msgid "Game speed:"
+#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:61
+msgid "mph"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create_advanced.c:40
-msgid "Teamplay settings:"
+#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:62
+msgid "knots"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create_advanced.c:43
-msgid "Friendly fire scale:"
+#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:64
+msgid "Show"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create_advanced.c:47
-msgid "Virtual friendly fire (effect only)"
+#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:67
+msgid "Top speed"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create_advanced.c:50
-msgid "Friendly fire penalty:"
+#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:73
+msgid "Acceleration:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create_advanced.c:54
-msgid "Virtual penalty (effect only)"
+#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:74
+msgid "Include vertical acceleration"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create_advanced.c:57
-msgid "Teams:"
+#: qcsrc/menu/xonotic/dialog_quit.c:4
+msgid "Quit"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create_advanced.c:66
-msgid "Map voting:"
+#: qcsrc/menu/xonotic/dialog_quit.c:17
+msgid "Are you sure you want to quit?"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create_advanced.c:68
-msgid "No voting"
+#: qcsrc/menu/xonotic/dialog_quit.c:20
+msgid "Yes"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create_advanced.c:69
-msgid "2 choices"
+#: qcsrc/menu/xonotic/dialog_quit.c:21
+msgid "No"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create_advanced.c:70
-msgid "3 choices"
+#: qcsrc/menu/xonotic/dialog_multiplayer_join.c:4
+msgid "Join"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create_advanced.c:71
-msgid "4 choices"
+#: qcsrc/menu/xonotic/dialog_multiplayer_join.c:28
+#: qcsrc/menu/xonotic/dialog_multiplayer_demo.c:32
+msgid "Filter:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create_advanced.c:72
-msgid "5 choices"
+#: qcsrc/menu/xonotic/dialog_multiplayer_join.c:36
+msgid "SRVS^Empty"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create_advanced.c:73
-msgid "6 choices"
+#: qcsrc/menu/xonotic/dialog_multiplayer_join.c:40
+msgid "SRVS^Full"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create_advanced.c:74
-msgid "7 choices"
+#: qcsrc/menu/xonotic/dialog_multiplayer_join.c:44
+msgid "Pause"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create_advanced.c:75
-msgid "8 choices"
+#: qcsrc/menu/xonotic/dialog_multiplayer_join.c:56
+msgid "Address:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create_advanced.c:76
-msgid "9 choices"
+#: qcsrc/menu/xonotic/dialog_multiplayer_join.c:67
+msgid "Info..."
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create_advanced.c:79
-msgid "Simple majority wins vcall"
+#: qcsrc/menu/xonotic/dialog_multiplayer_join.c:72
+#: qcsrc/menu/xonotic/dialog_multiplayer_join_serverinfo.c:317
+msgid "Join!"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_hudpanel_chat.c:4
-msgid "Chat Panel"
+#: qcsrc/menu/xonotic/dialog_hudpanel_notification.c:4
+msgid "Notification Panel"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_hudpanel_chat.c:22
-msgid "Chat entries:"
+#: qcsrc/menu/xonotic/dialog_hudpanel_notification.c:22
+msgid "Notifications:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_hudpanel_chat.c:25
-msgid "Chat size:"
+#: qcsrc/menu/xonotic/dialog_hudpanel_notification.c:25
+msgid "Also print notifications to the console"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_hudpanel_chat.c:29
-msgid "Chat lifetime:"
+#: qcsrc/menu/xonotic/dialog_hudpanel_notification.c:28
+msgid "Flip notify order"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_hudpanel_chat.c:33
-msgid "Chat beep sound"
+#: qcsrc/menu/xonotic/dialog_hudpanel_notification.c:31
+msgid "Entry lifetime:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_hudpanel_ammo.c:4
-msgid "Ammo Panel"
+#: qcsrc/menu/xonotic/dialog_hudpanel_notification.c:35
+msgid "Entry fadetime:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_hudpanel_ammo.c:22
-msgid "Ammunition display:"
+#: qcsrc/menu/xonotic/util.qh:47
+msgid "Enable panel"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_hudpanel_ammo.c:25
-msgid "Show only current ammo type"
+#: qcsrc/menu/xonotic/dialog_settings_misc.c:26
+msgid "Menu skins:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_hudpanel_ammo.c:28
-msgid "Align icon:"
+#: qcsrc/menu/xonotic/dialog_settings_misc.c:47
+msgid "Show current time"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings.c:4
-msgid "Settings"
+#: qcsrc/menu/xonotic/dialog_settings_misc.c:49
+msgid "Show current date"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings.c:18
-#: qcsrc/menu/xonotic/dialog_settings_input.c:4
-msgid "Input"
+#: qcsrc/menu/xonotic/dialog_settings_misc.c:51
+msgid "Show frames per second"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings.c:19
-#: qcsrc/menu/xonotic/dialog_settings_video.c:4
-msgid "Video"
+#: qcsrc/menu/xonotic/dialog_settings_misc.c:53
+msgid "Minimize input latency"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings.c:20
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:4
-msgid "Effects"
+#: qcsrc/menu/xonotic/dialog_settings_misc.c:57
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:97
+msgid "Advanced settings..."
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings.c:21
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:4
-msgid "Audio"
+#: qcsrc/menu/xonotic/dialog_singleplayer.c:4
+msgid "Singleplayer"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings.c:22
-#: qcsrc/menu/xonotic/dialog_settings_network.c:4
-msgid "Network"
+#: qcsrc/menu/xonotic/dialog_singleplayer.c:116
+msgid "Instant action! (random map with bots)"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings.c:23
-#: qcsrc/menu/xonotic/dialog_settings_misc.c:4
-msgid "Misc"
+#: qcsrc/menu/xonotic/dialog_singleplayer.c:137
+msgid "Start Singleplayer!"
msgstr ""
-#: qcsrc/menu/xonotic/playermodel.c:174
-msgid "<no model found>"
+#: qcsrc/menu/xonotic/skinlist.c:105
+msgid "<TITLE>"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_hudpanel_score.c:4
-msgid "Score Panel"
+#: qcsrc/menu/xonotic/skinlist.c:106
+msgid "<AUTHOR>"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_hudpanel_score.c:22
-msgid "Score:"
+#: qcsrc/menu/xonotic/skinlist.c:163 qcsrc/common/mapinfo.qc:1092
+#, c-format
+msgid "%s: %s"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_hudpanel_score.c:25
-msgid "Rankings:"
+#: qcsrc/menu/xonotic/dialog_news.c:4
+msgid "News"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_hudpanel_score.c:26
-msgid "Off"
+#: qcsrc/menu/xonotic/dialog_news.c:18
+msgid "http://www.xonotic.org/team/blog/"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_hudpanel_score.c:27
-msgid "And me"
+#: qcsrc/menu/xonotic/dialog_multiplayer_join_serverinfo.c:5
+msgid "Server Information"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_hudpanel_score.c:28
-msgid "Pure"
+#: qcsrc/menu/xonotic/dialog_multiplayer_join_serverinfo.c:115
+#: qcsrc/menu/xonotic/dialog_multiplayer_join_serverinfo.c:116
+#: qcsrc/menu/xonotic/dialog_multiplayer_join_serverinfo.c:183
+#: qcsrc/menu/xonotic/dialog_multiplayer_join_serverinfo.c:189
+#: qcsrc/menu/xonotic/dialog_multiplayer_join_serverinfo.c:199
+msgid "N/A"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_hudpanel_modicons.c:4
-msgid "Mod Icons Panel"
+#: qcsrc/menu/xonotic/dialog_multiplayer_join_serverinfo.c:158
+#, c-format
+msgid "%d/%d, %d free player slots"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_misc_cvars.c:5
-msgid "Advanced settings"
+#: qcsrc/menu/xonotic/dialog_multiplayer_join_serverinfo.c:172
+msgid "Official settings"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_misc_cvars.c:23
-msgid "Cvar filter:"
+#: qcsrc/menu/xonotic/dialog_multiplayer_join_serverinfo.c:172
+#, c-format
+msgid "%d modified settings"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_misc_cvars.c:34
-msgid "Setting:"
+#: qcsrc/menu/xonotic/dialog_multiplayer_join_serverinfo.c:197
+msgid "N/A (can't connect)"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_misc_cvars.c:42
-msgid "Value:"
+#: qcsrc/menu/xonotic/dialog_multiplayer_join_serverinfo.c:205
+msgid "not supported (can't connect)"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_misc_cvars.c:56
-msgid "Description:"
+#: qcsrc/menu/xonotic/dialog_multiplayer_join_serverinfo.c:207
+msgid "not supported (won't encrypt)"
msgstr ""
-#: qcsrc/menu/xonotic/slider_decibels.c:50
-msgid "VOL^OFF"
+#: qcsrc/menu/xonotic/dialog_multiplayer_join_serverinfo.c:211
+msgid "supported (will encrypt)"
msgstr ""
-#: qcsrc/menu/xonotic/slider_decibels.c:52
-msgid "VOL^MAX"
+#: qcsrc/menu/xonotic/dialog_multiplayer_join_serverinfo.c:213
+msgid "supported (won't encrypt)"
msgstr ""
-#: qcsrc/menu/xonotic/slider_decibels.c:53
-#, c-format
-msgid "%s dB"
+#: qcsrc/menu/xonotic/dialog_multiplayer_join_serverinfo.c:217
+msgid "requested (will encrypt)"
msgstr ""
-#: qcsrc/menu/xonotic/mainwindow.c:35 qcsrc/menu/xonotic/mainwindow.c:38
-msgid "Do not press this button again!"
+#: qcsrc/menu/xonotic/dialog_multiplayer_join_serverinfo.c:219
+msgid "requested (won't encrypt)"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_video.c:26
-msgid "Resolution:"
+#: qcsrc/menu/xonotic/dialog_multiplayer_join_serverinfo.c:223
+msgid "required (can't connect)"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_video.c:29
-msgid "Font/UI size:"
+#: qcsrc/menu/xonotic/dialog_multiplayer_join_serverinfo.c:225
+msgid "required (will encrypt)"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_video.c:31
-msgid "SZ^Unreadable"
+#: qcsrc/menu/xonotic/dialog_multiplayer_join_serverinfo.c:246
+#: qcsrc/menu/xonotic/dialog_multiplayer_join_serverinfo.c:269
+msgid "Players:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_video.c:32
-msgid "SZ^Tiny"
+#: qcsrc/menu/xonotic/dialog_multiplayer_join_serverinfo.c:259
+msgid "Map:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_video.c:33
-msgid "SZ^Little"
+#: qcsrc/menu/xonotic/dialog_multiplayer_join_serverinfo.c:264
+msgid "Gameplay:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_video.c:34
-msgid "SZ^Small"
+#: qcsrc/menu/xonotic/dialog_multiplayer_join_serverinfo.c:274
+msgid "Bots:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_video.c:35
-msgid "SZ^Medium"
+#: qcsrc/menu/xonotic/dialog_multiplayer_join_serverinfo.c:279
+msgid "Mod:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_video.c:36
-msgid "SZ^Large"
+#: qcsrc/menu/xonotic/dialog_multiplayer_join_serverinfo.c:284
+msgid "Version:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_video.c:37
-msgid "SZ^Huge"
+#: qcsrc/menu/xonotic/dialog_multiplayer_join_serverinfo.c:289
+msgid "Ping:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_video.c:38
-msgid "SZ^Gigantic"
+#: qcsrc/menu/xonotic/dialog_multiplayer_join_serverinfo.c:295
+msgid "CA:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_video.c:39
-msgid "SZ^Colossal"
+#: qcsrc/menu/xonotic/dialog_multiplayer_join_serverinfo.c:301
+msgid "Key:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_video.c:42
-msgid "Color depth:"
+#: qcsrc/menu/xonotic/dialog_multiplayer_join_serverinfo.c:307
+msgid "Encryption:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_video.c:45
-msgid "Full screen"
+#: qcsrc/menu/xonotic/dialog_multiplayer_join_serverinfo.c:314
+#: qcsrc/menu/xonotic/dialog_multiplayer_create_mapinfo.c:118
+msgid "Close"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_video.c:46
-msgid "Vertical Synchronization"
+#: qcsrc/menu/xonotic/slider_decibels.c:50
+msgid "VOL^OFF"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_video.c:49
-msgid "Use OpenGL 2.0 shaders (GLSL)"
+#: qcsrc/menu/xonotic/slider_decibels.c:52
+msgid "VOL^MAX"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_video.c:52
-msgid "Use GLSL to handle color control"
+#: qcsrc/menu/xonotic/slider_decibels.c:53
+#, c-format
+msgid "%s dB"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_video.c:56
-msgid "Vertex Buffer Objects (VBOs)"
+#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:7
+msgid "Mutators"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_video.c:59
-msgid "VBO^Off"
+#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:33
+msgid "All Weapons Arena"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_video.c:60
-msgid "Vertices, some Tris (compatible)"
+#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:35
+msgid "Most Weapons Arena"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_video.c:63
-msgid "Vertices"
+#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:56
+#, c-format
+msgid "%s Arena"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_video.c:64
-msgid "Vertices and Triangles"
+#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:68
+#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:167
+msgid "Dodging"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_video.c:67
-msgid "Depth first:"
+#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:70
+#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:250
+msgid "MinstaGib"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_video.c:69
-msgid "DF^Disabled"
+#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:72
+#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:253
+msgid "NIX"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_video.c:70
-msgid "DF^World"
+#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:74
+#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:205
+msgid "Rocket Flying"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_video.c:71
-msgid "DF^All"
+#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:78
+#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:264
+msgid "No start weapons"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_video.c:75
-msgid "Disable multithreaded OpenGL"
+#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:80
+#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:189
+msgid "Low gravity"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_video.c:77
-msgid "Wait for GPU to finish each frame"
+#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:82
+#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:170
+msgid "Cloaked"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_video.c:80
-msgid "Brightness:"
+#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:84
+msgid "Hook"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_video.c:83
-msgid "Contrast:"
+#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:86
+#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:173
+msgid "Midair"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_video.c:86
-msgid "Gamma:"
+#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:88
+#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:176
+msgid "Vampire"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_video.c:91
-msgid "Contrast boost:"
+#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:90
+#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:208
+msgid "Piñata"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_video.c:96
-msgid "Saturation:"
+#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:92
+#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:211
+msgid "Weapons stay"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_video.c:102
-msgid "LIT^Ambient:"
+#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:94
+#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:180
+msgid "Blood loss"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_video.c:105
-msgid "Intensity:"
+#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:96
+#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:202
+msgid "Jet pack"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_video.c:109
-#: qcsrc/menu/xonotic/dialog_settings_misc.c:30
-#: qcsrc/menu/xonotic/dialog_settings_misc.c:41
-#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:195
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:191
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:178
-msgid "Apply immediately"
+#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:98
+msgid "MUT^None"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_join.c:4
-msgid "Join"
+#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:164
+msgid "Gameplay mutators:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_join.c:36
-msgid "SRVS^Empty"
+#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:196
+msgid "Weapon & item mutators:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_join.c:40
-msgid "SRVS^Full"
+#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:199
+msgid "Grappling hook"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_join.c:44
-msgid "Pause"
+#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:215
+msgid "Weapon arenas:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_join.c:56
-msgid "Address:"
+#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:218
+msgid "Regular (no arena)"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_join.c:67
-msgid "Info..."
+#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:239
+#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:256
+msgid "with laser"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_credits.c:5
-msgid "Credits"
+#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:247
+msgid "Special arenas:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_misc.c:26
-msgid "Menu skins:"
+#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:260
+msgid "Most weapons"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_misc.c:35
-#: qcsrc/menu/xonotic/dialog_firstrun.c:38
-msgid "Text language:"
+#: qcsrc/menu/xonotic/dialog_hudpanel_radar.c:4
+msgid "Radar Panel"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_misc.c:47
-msgid "Show current time"
+#: qcsrc/menu/xonotic/dialog_hudpanel_radar.c:22
+msgid "Panel enabled in teamgames"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_misc.c:49
-msgid "Show current date"
+#: qcsrc/menu/xonotic/dialog_hudpanel_radar.c:29
+msgid "Radar:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_misc.c:51
-msgid "Show frames per second"
+#: qcsrc/menu/xonotic/dialog_hudpanel_radar.c:36
+msgid "Rotation:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_misc.c:53
-msgid "Minimize input latency"
+#: qcsrc/menu/xonotic/dialog_hudpanel_radar.c:38
+msgid "Forward"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_misc.c:57
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:98
-msgid "Advanced settings..."
+#: qcsrc/menu/xonotic/dialog_hudpanel_radar.c:39
+msgid "West"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_hudpanel_notification.c:4
-msgid "Notification Panel"
+#: qcsrc/menu/xonotic/dialog_hudpanel_radar.c:40
+msgid "South"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_hudpanel_notification.c:22
-msgid "Notifications:"
+#: qcsrc/menu/xonotic/dialog_hudpanel_radar.c:41
+msgid "East"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_hudpanel_notification.c:25
-msgid "Also print notifications to the console"
+#: qcsrc/menu/xonotic/dialog_hudpanel_radar.c:42
+msgid "North"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_hudpanel_notification.c:28
-msgid "Flip notify order"
+#: qcsrc/menu/xonotic/dialog_hudpanel_radar.c:46
+msgid "Scale:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_hudpanel_notification.c:31
-msgid "Entry lifetime:"
+#: qcsrc/menu/xonotic/dialog_hudpanel_radar.c:50
+msgid "Zoom mode:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_hudpanel_notification.c:35
-msgid "Entry fadetime:"
+#: qcsrc/menu/xonotic/dialog_hudpanel_radar.c:52
+msgid "Zoomed in"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_input_userbind.c:5
-msgid "User defined key bind"
+#: qcsrc/menu/xonotic/dialog_hudpanel_radar.c:53
+msgid "Zoomed out"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_input_userbind.c:39
-#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:40
-#: qcsrc/menu/xonotic/dialog_firstrun.c:47
-msgid "Name:"
+#: qcsrc/menu/xonotic/dialog_hudpanel_radar.c:54
+msgid "Always zoomed"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_input_userbind.c:42
-msgid "Command when pressed:"
+#: qcsrc/menu/xonotic/dialog_hudpanel_radar.c:55
+msgid "Never zoomed"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_input_userbind.c:45
-msgid "Command when released:"
+#: qcsrc/menu/xonotic/dialog_hudpanel_racetimer.c:4
+msgid "Race Timer Panel"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_input_userbind.c:48
-msgid "Save"
+#: qcsrc/menu/xonotic/dialog_hudpanel_chat.c:4
+msgid "Chat Panel"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_input_userbind.c:51
-msgid "Cancel"
+#: qcsrc/menu/xonotic/dialog_hudpanel_chat.c:22
+msgid "Chat entries:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_hudpanel_vote.c:4
-msgid "Vote Panel"
+#: qcsrc/menu/xonotic/dialog_hudpanel_chat.c:25
+msgid "Chat size:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_hudpanel_vote.c:22
-msgid "Alpha after voting:"
+#: qcsrc/menu/xonotic/dialog_hudpanel_chat.c:29
+msgid "Chat lifetime:"
msgstr ""
-#: qcsrc/menu/xonotic/util.qh:47
-msgid "Enable panel"
+#: qcsrc/menu/xonotic/dialog_hudpanel_chat.c:33
+msgid "Chat beep sound"
msgstr ""
#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:5
msgid "Create"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:35
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:34
msgid "Game type:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:47
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:46
msgid "Match settings:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:50
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:49
msgid "Time limit:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:54
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:62
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:53
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:61
msgid "Use map specified default"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:57
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:56
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:155
#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:156
#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:157
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:158
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:161
#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:162
#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:163
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:164
msgid "Point limit:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:65
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:64
msgid "Player slots:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:68
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:67
msgid "Number of bots:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:72
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:71
msgid "Bot skill:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:75
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:74
msgid "Botlike"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:76
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:75
msgid "Beginner"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:77
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:76
msgid "You will win"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:78
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:77
msgid "You can win"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:79
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:78
msgid "You might win"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:80
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:79
msgid "Advanced"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:81
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:80
msgid "Expert"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:82
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:81
msgid "Pro"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:83
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:82
msgid "Assassin"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:84
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:83
msgid "Unhuman"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:85
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:84
msgid "Godlike"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:89
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:88
msgid "Mutators..."
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:105
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:104
msgid "Map list:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:111
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:110
msgid "Select all"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:114
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:113
msgid "Select none"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:120
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:119
msgid "Start Multiplayer!"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:155
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:154
msgid "Capture limit:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:159
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:158
msgid "Lives:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:160
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:159
msgid "Laps:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:161
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:160
msgid "Goals:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:165
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:164
msgid "Frag limit:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_hudpanel_radar.c:4
-msgid "Radar Panel"
+#: qcsrc/menu/xonotic/dialog_singleplayer_winner.c:4
+msgid "Winner"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_hudpanel_radar.c:22
-msgid "Panel enabled in teamgames"
+#: qcsrc/menu/xonotic/dialog_settings_input_userbind.c:5
+msgid "User defined key bind"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_hudpanel_radar.c:29
-msgid "Radar:"
+#: qcsrc/menu/xonotic/dialog_settings_input_userbind.c:42
+msgid "Command when pressed:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_hudpanel_radar.c:36
-msgid "Rotation:"
+#: qcsrc/menu/xonotic/dialog_settings_input_userbind.c:45
+msgid "Command when released:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_hudpanel_radar.c:38
-msgid "Forward"
+#: qcsrc/menu/xonotic/dialog_settings_input_userbind.c:48
+msgid "Save"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_hudpanel_radar.c:39
-msgid "West"
+#: qcsrc/menu/xonotic/dialog_settings_input_userbind.c:51
+msgid "Cancel"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_hudpanel_radar.c:40
-msgid "South"
+#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:5
+#: qcsrc/menu/xonotic/dialog_multiplayer.c:21
+msgid "Player Setup"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_hudpanel_radar.c:41
-msgid "East"
+#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:63
+msgid "Model:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_hudpanel_radar.c:42
-msgid "North"
+#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:88
+msgid "Field of view:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_hudpanel_radar.c:46
-msgid "Scale:"
+#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:92
+msgid "View bobbing:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_hudpanel_radar.c:50
-msgid "Zoom mode:"
+#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:96
+msgid "Zoom factor:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_hudpanel_radar.c:52
-msgid "Zoomed in"
+#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:100
+msgid "Zoom speed:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_hudpanel_radar.c:53
-msgid "Zoomed out"
+#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:103
+msgid "Weapon settings..."
msgstr ""
-#: qcsrc/menu/xonotic/dialog_hudpanel_radar.c:54
-msgid "Always zoomed"
+#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:110
+msgid "Crosshair:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_hudpanel_radar.c:55
-msgid "Never zoomed"
+#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:111
+#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:139
+msgid "Per weapon"
msgstr ""
-#: qcsrc/menu/xonotic/maplist.c:278
-msgid ""
-"Huh? Can't play this (m is NULL). Refiltering so this won't happen again.\n"
+#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:130
+msgid "Crosshair size:"
msgstr ""
-#: qcsrc/menu/xonotic/maplist.c:286
-#, c-format
-msgid "%s's Xonotic Server"
+#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:134
+msgid "Crosshair alpha:"
msgstr ""
-#: qcsrc/menu/xonotic/maplist.c:291
-msgid ""
-"Huh? Can't play this (invalid game type). Refiltering so this won't happen "
-"again.\n"
+#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:138
+msgid "Crosshair color:"
msgstr ""
-#: qcsrc/menu/xonotic/slider_resolution.c:65
-#, c-format
-msgid "%dx%d"
+#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:140
+msgid "By health"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_quit.c:4
-msgid "Quit"
+#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:143
+msgid "Custom"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_quit.c:17
-msgid "Are you sure you want to quit?"
+#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:148
+msgid "Enable center dot"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_quit.c:20
-msgid "Yes"
+#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:151
+msgid "Size:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_quit.c:21
-msgid "No"
+#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:158
+msgid "Hit test:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_input.c:26
-msgid "Key bindings:"
+#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:159
+msgid "HTST^None"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_input.c:31
-msgid "Change key..."
+#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:160
+msgid "TrueAim"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_input.c:35
-msgid "Edit..."
+#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:161
+msgid "Enemies"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_input.c:46
-msgid "Sensitivity:"
+#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:164
+msgid "Waypoints setup..."
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_input.c:51
-msgid "UI mouse speed:"
+#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:169
+msgid "Enter HUD editor"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_input.c:55
-msgid "Mouse filter"
+#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:174
+msgid "Force models:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_input.c:57
-msgid "Invert mouse"
+#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:175
+msgid "MDL^None"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_input.c:60
-#: qcsrc/menu/xonotic/dialog_settings_input.c:62
-msgid "Use joystick input"
+#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:176
+msgid "MDL^Custom"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_input.c:65
-#: qcsrc/menu/xonotic/dialog_settings_input.c:67
-msgid "Turn off OS mouse acceleration"
+#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:177
+msgid "MDL^All"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_input.c:69
-msgid "\"enter console\" also closes"
+#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:180
+msgid "Disable gore effects"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_network.c:26
-msgid "Client-side movement prediction"
+#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:182
+msgid "Gibs:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_network.c:30
-msgid "Show netgraph"
+#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:184
+msgid "GIBS^None"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_network.c:33
-msgid "Network speed:"
+#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:185
+msgid "GIBS^Few"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_network.c:35
-msgid "56k"
+#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:186
+msgid "GIBS^Many"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_network.c:36
-msgid "ISDN"
+#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:187
+msgid "GIBS^Lots"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_network.c:37
-msgid "Slow ADSL"
+#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:191
+msgid "Damage splash:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_network.c:38
-msgid "Fast ADSL"
+#: qcsrc/menu/xonotic/cvarlist.c:85
+msgid "will be saved to config.cfg"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_network.c:39
-msgid "Broadband"
+#: qcsrc/menu/xonotic/cvarlist.c:87
+msgid "will not be saved"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_network.c:42
-msgid "Input packets/s:"
+#: qcsrc/menu/xonotic/cvarlist.c:89
+msgid "private"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_network.c:46
-msgid "HTTP downloads:"
+#: qcsrc/menu/xonotic/cvarlist.c:91
+msgid "engine setting"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_network.c:49
-msgid "Downloads:"
+#: qcsrc/menu/xonotic/cvarlist.c:93
+msgid "read only"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_network.c:53
-msgid "Speed (kB/s):"
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:4
+msgid "Centerprint"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_network.c:57
-msgid "Client UDP port:"
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:23
+msgid "Message duration:"
+msgstr ""
+
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:27
+msgid "Fade time:"
+msgstr ""
+
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:31
+msgid "Flip messages order"
+msgstr ""
+
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:33
+msgid "Text alignment:"
+msgstr ""
+
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:36
+#: qcsrc/menu/xonotic/dialog_hudpanel_ammo.c:29
+#: qcsrc/menu/xonotic/dialog_hudpanel_powerups.c:28
+#: qcsrc/menu/xonotic/dialog_hudpanel_powerups.c:40
+#: qcsrc/menu/xonotic/dialog_hudpanel_healtharmor.c:28
+#: qcsrc/menu/xonotic/dialog_hudpanel_healtharmor.c:40
+msgid "Left"
+msgstr ""
+
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:37
+#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup_weapons.c:50
+msgid "Center"
+msgstr ""
+
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:38
+#: qcsrc/menu/xonotic/dialog_hudpanel_ammo.c:30
+#: qcsrc/menu/xonotic/dialog_hudpanel_powerups.c:30
+#: qcsrc/menu/xonotic/dialog_hudpanel_powerups.c:41
+#: qcsrc/menu/xonotic/dialog_hudpanel_healtharmor.c:30
+#: qcsrc/menu/xonotic/dialog_hudpanel_healtharmor.c:41
+msgid "Right"
+msgstr ""
+
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:41
+msgid "Font scale:"
msgstr ""
-#: qcsrc/menu/xonotic/cvarlist.c:85
-msgid "will be saved to config.cfg"
+#: qcsrc/menu/xonotic/dialog_hudpanel_score.c:4
+msgid "Score Panel"
msgstr ""
-#: qcsrc/menu/xonotic/cvarlist.c:87
-msgid "will not be saved"
+#: qcsrc/menu/xonotic/dialog_hudpanel_score.c:22
+msgid "Score:"
msgstr ""
-#: qcsrc/menu/xonotic/cvarlist.c:89
-msgid "private"
+#: qcsrc/menu/xonotic/dialog_hudpanel_score.c:25
+msgid "Rankings:"
msgstr ""
-#: qcsrc/menu/xonotic/cvarlist.c:91
-msgid "engine setting"
+#: qcsrc/menu/xonotic/dialog_hudpanel_score.c:26
+msgid "Off"
msgstr ""
-#: qcsrc/menu/xonotic/cvarlist.c:93
-msgid "read only"
+#: qcsrc/menu/xonotic/dialog_hudpanel_score.c:27
+msgid "And me"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_singleplayer_winner.c:4
-msgid "Winner"
+#: qcsrc/menu/xonotic/dialog_hudpanel_score.c:28
+msgid "Pure"
msgstr ""
#: qcsrc/menu/xonotic/dialog_hudpanel_timer.c:4
msgid "Show elapsed time"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:5
-#: qcsrc/menu/xonotic/dialog_multiplayer.c:21
-msgid "Player Setup"
+#: qcsrc/menu/xonotic/dialog_multiplayer_create_mapinfo.c:5
+msgid "Map Information"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:63
-msgid "Model:"
+#: qcsrc/menu/xonotic/dialog_multiplayer_create_mapinfo.c:49
+msgid "Full item placement"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:88
-msgid "Field of view:"
+#: qcsrc/menu/xonotic/dialog_multiplayer_create_mapinfo.c:49
+msgid "MinstaGib only"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:92
-msgid "View bobbing:"
+#: qcsrc/menu/xonotic/dialog_multiplayer_create_mapinfo.c:78
+msgid "Title:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:96
-msgid "Zoom factor:"
+#: qcsrc/menu/xonotic/dialog_multiplayer_create_mapinfo.c:84
+msgid "Author:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:100
-msgid "Zoom speed:"
+#: qcsrc/menu/xonotic/dialog_multiplayer_create_mapinfo.c:90
+msgid "Features:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:103
-msgid "Weapon settings..."
+#: qcsrc/menu/xonotic/dialog_multiplayer_create_mapinfo.c:95
+msgid "Game types:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:110
-msgid "Crosshair:"
+#: qcsrc/menu/xonotic/dialog_multiplayer_create_mapinfo.c:121
+msgid "MAP^Play"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:111
-#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:139
-msgid "Per weapon"
+#: qcsrc/menu/xonotic/dialog_multiplayer_create_advanced.c:6
+msgid "Advanced server settings"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:130
-msgid "Crosshair size:"
+#: qcsrc/menu/xonotic/dialog_multiplayer_create_advanced.c:25
+msgid "Game settings:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:134
-msgid "Crosshair alpha:"
+#: qcsrc/menu/xonotic/dialog_multiplayer_create_advanced.c:28
+msgid "Allow spectating"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:138
-msgid "Crosshair color:"
+#: qcsrc/menu/xonotic/dialog_multiplayer_create_advanced.c:31
+msgid "Spawn shield:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:140
-msgid "By health"
+#: qcsrc/menu/xonotic/dialog_multiplayer_create_advanced.c:36
+msgid "Game speed:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:143
-msgid "Custom"
+#: qcsrc/menu/xonotic/dialog_multiplayer_create_advanced.c:40
+msgid "Teamplay settings:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:148
-msgid "Enable center dot"
+#: qcsrc/menu/xonotic/dialog_multiplayer_create_advanced.c:43
+msgid "Friendly fire scale:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:151
-msgid "Size:"
+#: qcsrc/menu/xonotic/dialog_multiplayer_create_advanced.c:47
+msgid "Virtual friendly fire (effect only)"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:158
-msgid "Hit test:"
+#: qcsrc/menu/xonotic/dialog_multiplayer_create_advanced.c:50
+msgid "Friendly fire penalty:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:159
-msgid "HTST^None"
+#: qcsrc/menu/xonotic/dialog_multiplayer_create_advanced.c:54
+msgid "Virtual penalty (effect only)"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:160
-msgid "TrueAim"
+#: qcsrc/menu/xonotic/dialog_multiplayer_create_advanced.c:57
+msgid "Teams:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:161
-msgid "Enemies"
+#: qcsrc/menu/xonotic/dialog_multiplayer_create_advanced.c:66
+msgid "Map voting:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:164
-msgid "Waypoints setup..."
+#: qcsrc/menu/xonotic/dialog_multiplayer_create_advanced.c:68
+msgid "No voting"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:169
-msgid "Enter HUD editor"
+#: qcsrc/menu/xonotic/dialog_multiplayer_create_advanced.c:69
+msgid "2 choices"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:174
-msgid "Force models:"
+#: qcsrc/menu/xonotic/dialog_multiplayer_create_advanced.c:70
+msgid "3 choices"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:175
-msgid "MDL^None"
+#: qcsrc/menu/xonotic/dialog_multiplayer_create_advanced.c:71
+msgid "4 choices"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:176
-msgid "MDL^Custom"
+#: qcsrc/menu/xonotic/dialog_multiplayer_create_advanced.c:72
+msgid "5 choices"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:177
-msgid "MDL^All"
+#: qcsrc/menu/xonotic/dialog_multiplayer_create_advanced.c:73
+msgid "6 choices"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:180
-msgid "Disable gore effects"
+#: qcsrc/menu/xonotic/dialog_multiplayer_create_advanced.c:74
+msgid "7 choices"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:182
-msgid "Gibs:"
+#: qcsrc/menu/xonotic/dialog_multiplayer_create_advanced.c:75
+msgid "8 choices"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:184
-msgid "GIBS^None"
+#: qcsrc/menu/xonotic/dialog_multiplayer_create_advanced.c:76
+msgid "9 choices"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:185
-msgid "GIBS^Few"
+#: qcsrc/menu/xonotic/dialog_multiplayer_create_advanced.c:79
+msgid "Simple majority wins vcall"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:186
-msgid "GIBS^Many"
+#: qcsrc/menu/xonotic/util.qc:271
+#, c-format
+msgid "Received HTTP request data for an invalid id %d.\n"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:187
-msgid "GIBS^Lots"
+#: qcsrc/menu/xonotic/util.qc:286
+#, c-format
+msgid "error receiving update notification: status is %d\n"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:191
-msgid "Damage splash:"
+#: qcsrc/menu/xonotic/util.qc:291
+msgid "error: received HTML instead of an update notification\n"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_hudpanel_infomessages.c:4
-msgid "Info Messages Panel"
+#: qcsrc/menu/xonotic/util.qc:296
+msgid "error: received carriage returns from update notification server\n"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_hudpanel_infomessages.c:22
-msgid "Info messages:"
+#: qcsrc/menu/xonotic/util.qc:317
+#, c-format
+msgid ""
+"Update can be downloaded at:\n"
+"%s\n"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_hudpanel_infomessages.c:25
-msgid "Flip align"
+#: qcsrc/menu/xonotic/util.qc:340
+msgid "Autogenerating mapinfo for newly added maps..."
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer.c:4
-msgid "Multiplayer"
+#: qcsrc/menu/xonotic/util.qc:370
+#, c-format
+msgid "^1%s TEST BUILD"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer.c:18
-msgid "Servers"
+#: qcsrc/menu/xonotic/util.qc:428
+#, c-format
+msgid "Update to %s now!"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer.c:20
-msgid "Demos"
+#: qcsrc/menu/xonotic/util.qc:513
+msgid ""
+"^1ERROR: Texture compression is required but not supported.\n"
+"^1Expect visual problems.\n"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_hudpanel_racetimer.c:4
-msgid "Race Timer Panel"
+#: qcsrc/menu/xonotic/util.qc:535
+msgid "Arena"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:4
-msgid "Physics Panel"
+#: qcsrc/menu/xonotic/util.qc:536
+msgid "Assault"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:24
-msgid "Panel enabled if not observing"
+#: qcsrc/menu/xonotic/util.qc:537
+msgid "Capture The Flag"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:31
-msgid "Status bar"
+#: qcsrc/menu/xonotic/util.qc:538
+msgid "Clan Arena"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:35
-msgid "Inward align"
+#: qcsrc/menu/xonotic/util.qc:539
+msgid "Deathmatch"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:36
-msgid "Outward align"
+#: qcsrc/menu/xonotic/util.qc:540
+msgid "Domination"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:40
-msgid "Flip speed/acceleration positions"
+#: qcsrc/menu/xonotic/util.qc:541
+msgid "Freeze Tag"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:44
-msgid "Speed:"
+#: qcsrc/menu/xonotic/util.qc:542
+msgid "Keepaway"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:45
-msgid "Include vertical speed"
+#: qcsrc/menu/xonotic/util.qc:543
+msgid "Key Hunt"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:56
-msgid "Speed unit:"
+#: qcsrc/menu/xonotic/util.qc:544
+msgid "Last Man Standing"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:58
-msgid "qu/s"
+#: qcsrc/menu/xonotic/util.qc:545
+msgid "Nexball"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:59
-msgid "m/s"
+#: qcsrc/menu/xonotic/util.qc:546
+msgid "Onslaught"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:60
-msgid "km/h"
+#: qcsrc/menu/xonotic/util.qc:547
+msgid "Race"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:61
-msgid "mph"
+#: qcsrc/menu/xonotic/util.qc:548
+msgid "Race CTS"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:62
-msgid "knots"
+#: qcsrc/menu/xonotic/util.qc:549
+msgid "Runematch"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:64
-msgid "Show"
+#: qcsrc/menu/xonotic/util.qc:550
+msgid "Team Deathmatch"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:67
-msgid "Top speed"
+#: qcsrc/menu/xonotic/util.qc:569
+#, c-format
+msgid "@!#%'n Tuba Throwing"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:73
-msgid "Acceleration:"
+#: qcsrc/menu/xonotic/util.qc:589 qcsrc/menu/xonotic/util.qc:605
+#: qcsrc/menu/xonotic/util.qc:614 qcsrc/menu/xonotic/util.qc:622
+#: qcsrc/menu/xonotic/util.qc:634
+msgid "Default"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:74
-msgid "Include vertical acceleration"
+#: qcsrc/menu/xonotic/util.qc:600
+msgid "Use default"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup_waypoint.c:5
-msgid "Waypoints"
+#: qcsrc/menu/xonotic/util.qc:620
+msgid "Team Color:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup_waypoint.c:23
-msgid "Show base waypoints"
+#: qcsrc/menu/xonotic/playermodel.c:174
+msgid "<no model found>"
+msgstr ""
+
+#: qcsrc/menu/xonotic/dialog_hudpanel_ammo.c:4
+msgid "Ammo Panel"
+msgstr ""
+
+#: qcsrc/menu/xonotic/dialog_hudpanel_ammo.c:22
+msgid "Ammunition display:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup_waypoint.c:25
-msgid "Waypoint scale:"
+#: qcsrc/menu/xonotic/dialog_hudpanel_ammo.c:25
+msgid "Show only current ammo type"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup_waypoint.c:29
-msgid "Waypoint alpha:"
+#: qcsrc/menu/xonotic/dialog_hudpanel_ammo.c:28
+msgid "Align icon:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup_waypoint.c:34
-msgid "Show names:"
+#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup_weapons.c:6
+msgid "Weapon settings"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup_waypoint.c:37
-msgid "Teammates"
+#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup_weapons.c:29
+msgid "Weapon priority list:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup_waypoint.c:38
-msgid "All players"
+#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup_weapons.c:34
+msgid "Up"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_firstrun.c:4
-msgid "Welcome"
+#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup_weapons.c:37
+msgid "Down"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_firstrun.c:33
-msgid ""
-"Welcome to Xonotic, please select your language preference and enter your "
-"player name to get started. You can change these options later through the "
-"menu system."
+#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup_weapons.c:41
+msgid "Use priority list for weapon cycling"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_firstrun.c:69
-msgid "Save settings"
+#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup_weapons.c:43
+msgid "Auto switch weapons on pickup"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_hudpanel_powerups.c:4
-msgid "Powerups Panel"
+#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup_weapons.c:45
+msgid "Draw 1st person weapon model"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_hudpanel_powerups.c:45
-msgid "Flip strength and shield positions"
+#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup_weapons.c:55
+msgid "Flip view horizontally"
msgstr ""
#: qcsrc/menu/xonotic/dialog_settings_effects.c:38
msgid "Decals"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:120
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:118
+msgid "Decals on models"
+msgstr ""
+
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:122
msgid "Distance:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:126
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:128
msgid "Time:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:132
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:134
msgid "Use lightmaps"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:133
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:135
msgid "Deluxe mapping"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:135
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:137
msgid "Gloss"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:138
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:140
msgid "Offset mapping"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:140
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:142
msgid "Relief mapping"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:143
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:145
msgid "Reflections:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:146
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:148
msgid "Blurred"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:147
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:149
msgid "REFL^Good"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:148
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:150
msgid "Sharp"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:153
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:155
msgid "Show surfaces"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:155
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:157
msgid "No dynamic lighting"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:157
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:159
msgid "Flash blend approximation"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:159
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:161
msgid "Realtime dynamic lighting"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:160
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:164
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:162
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:166
msgid "Shadows"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:163
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:165
msgid "Realtime world lighting"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:168
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:170
msgid "Use normal maps"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:170
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:172
msgid "Soft shadows"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:173
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:175
msgid "Coronas"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:174
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:176
msgid "Use Occlusion Queries"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:176
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:178
msgid "Bloom"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:178
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:180
msgid "High Dynamic Range (HDR)"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:182
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:184
msgid "Motion blur:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:187
-msgid "Damage & water blur"
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:189
+msgid "Blur and sharpen postprocessing"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:188
-msgid "Powerup sharpen"
+#: qcsrc/menu/xonotic/dialog_settings_network.c:26
+msgid "Client-side movement prediction"
msgstr ""
-#: qcsrc/menu/xonotic/skinlist.c:105
-msgid "<TITLE>"
+#: qcsrc/menu/xonotic/dialog_settings_network.c:30
+msgid "Show netgraph"
msgstr ""
-#: qcsrc/menu/xonotic/skinlist.c:106
-msgid "<AUTHOR>"
+#: qcsrc/menu/xonotic/dialog_settings_network.c:33
+msgid "Network speed:"
msgstr ""
-#: qcsrc/menu/xonotic/skinlist.c:163
-#, c-format
-msgid "%s: %s"
+#: qcsrc/menu/xonotic/dialog_settings_network.c:35
+msgid "56k"
+msgstr ""
+
+#: qcsrc/menu/xonotic/dialog_settings_network.c:36
+msgid "ISDN"
+msgstr ""
+
+#: qcsrc/menu/xonotic/dialog_settings_network.c:37
+msgid "Slow ADSL"
+msgstr ""
+
+#: qcsrc/menu/xonotic/dialog_settings_network.c:38
+msgid "Fast ADSL"
+msgstr ""
+
+#: qcsrc/menu/xonotic/dialog_settings_network.c:39
+msgid "Broadband"
+msgstr ""
+
+#: qcsrc/menu/xonotic/dialog_settings_network.c:42
+msgid "Input packets/s:"
+msgstr ""
+
+#: qcsrc/menu/xonotic/dialog_settings_network.c:46
+msgid "HTTP downloads:"
+msgstr ""
+
+#: qcsrc/menu/xonotic/dialog_settings_network.c:49
+msgid "Downloads:"
+msgstr ""
+
+#: qcsrc/menu/xonotic/dialog_settings_network.c:53
+msgid "Speed (kB/s):"
+msgstr ""
+
+#: qcsrc/menu/xonotic/dialog_settings_network.c:57
+msgid "Client UDP port:"
msgstr ""
#: qcsrc/menu/xonotic/serverlist.c:185
msgid "Bookmark"
msgstr ""
-#: qcsrc/menu/xonotic/serverlist.c:523
+#: qcsrc/menu/xonotic/serverlist.c:527
msgid "Ping"
msgstr ""
-#: qcsrc/menu/xonotic/serverlist.c:524
+#: qcsrc/menu/xonotic/serverlist.c:528
msgid "Host name"
msgstr ""
-#: qcsrc/menu/xonotic/serverlist.c:525
+#: qcsrc/menu/xonotic/serverlist.c:529
msgid "Map"
msgstr ""
-#: qcsrc/menu/xonotic/serverlist.c:526
+#: qcsrc/menu/xonotic/serverlist.c:530
msgid "Type"
msgstr ""
-#: qcsrc/menu/xonotic/serverlist.c:527
+#: qcsrc/menu/xonotic/serverlist.c:531
msgid "Players"
msgstr ""
+#: qcsrc/menu/xonotic/maplist.c:278
+msgid ""
+"Huh? Can't play this (m is NULL). Refiltering so this won't happen again.\n"
+msgstr ""
+
+#: qcsrc/menu/xonotic/maplist.c:286
+#, c-format
+msgid "%s's Xonotic Server"
+msgstr ""
+
+#: qcsrc/menu/xonotic/maplist.c:291
+msgid ""
+"Huh? Can't play this (invalid game type). Refiltering so this won't happen "
+"again.\n"
+msgstr ""
+
+#: qcsrc/menu/xonotic/dialog_multiplayer_demo.c:4
+msgid "Demo"
+msgstr ""
+
+#: qcsrc/menu/xonotic/dialog_multiplayer_demo.c:28
+msgid "Record demos while playing"
+msgstr ""
+
+#: qcsrc/menu/xonotic/dialog_multiplayer_demo.c:43
+msgid "Timedemo"
+msgstr ""
+
+#: qcsrc/menu/xonotic/dialog_multiplayer_demo.c:46
+msgid "DEMO^Play"
+msgstr ""
+
+#: qcsrc/menu/xonotic/dialog_hudpanel_powerups.c:4
+msgid "Powerups Panel"
+msgstr ""
+
+#: qcsrc/menu/xonotic/dialog_hudpanel_powerups.c:22
+#: qcsrc/menu/xonotic/dialog_hudpanel_healtharmor.c:22
+msgid "Enable status bar"
+msgstr ""
+
+#: qcsrc/menu/xonotic/dialog_hudpanel_powerups.c:24
+#: qcsrc/menu/xonotic/dialog_hudpanel_healtharmor.c:24
+msgid "Status bar alignment:"
+msgstr ""
+
+#: qcsrc/menu/xonotic/dialog_hudpanel_powerups.c:32
+#: qcsrc/menu/xonotic/dialog_hudpanel_powerups.c:42
+#: qcsrc/menu/xonotic/dialog_hudpanel_healtharmor.c:32
+#: qcsrc/menu/xonotic/dialog_hudpanel_healtharmor.c:42
+msgid "Inward"
+msgstr ""
+
+#: qcsrc/menu/xonotic/dialog_hudpanel_powerups.c:34
+#: qcsrc/menu/xonotic/dialog_hudpanel_powerups.c:43
+#: qcsrc/menu/xonotic/dialog_hudpanel_healtharmor.c:34
+#: qcsrc/menu/xonotic/dialog_hudpanel_healtharmor.c:43
+msgid "Outward"
+msgstr ""
+
+#: qcsrc/menu/xonotic/dialog_hudpanel_powerups.c:37
+#: qcsrc/menu/xonotic/dialog_hudpanel_healtharmor.c:37
+msgid "Icon alignment:"
+msgstr ""
+
+#: qcsrc/menu/xonotic/dialog_hudpanel_powerups.c:45
+msgid "Flip strength and shield positions"
+msgstr ""
+
#: qcsrc/menu/xonotic/dialog_settings_audio.c:27
msgid "Master:"
msgstr ""
msgid "Music:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:40
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:41
msgid "VOL^Ambient:"
msgstr ""
msgid "Info:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:57
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:55
msgid "Items:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:65
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:62
msgid "Pain:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:73
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:69
msgid "Player:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:81
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:76
msgid "Shots:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:88
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:83
msgid "Voice:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:96
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:91
msgid "Weapons:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:103
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:161
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:98
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:156
msgid "Frequency:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:105
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:100
msgid "8 kHz"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:106
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:101
msgid "11.025 kHz"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:107
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:102
msgid "16 kHz"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:108
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:103
msgid "22.05 kHz"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:109
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:104
msgid "24 kHz"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:110
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:105
msgid "32 kHz"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:111
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:106
msgid "44.1 kHz"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:112
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:107
msgid "48 kHz"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:115
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:110
msgid "Channels:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:117
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:112
msgid "Mono"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:118
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:113
msgid "Stereo"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:119
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:114
msgid "2.1"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:120
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:115
msgid "4"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:121
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:116
msgid "5"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:122
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:117
msgid "5.1"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:123
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:118
msgid "6.1"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:124
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:119
msgid "7.1"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:128
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:123
msgid "Swap Stereo"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:132
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:127
msgid "Headphone friendly mode"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:136
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:131
msgid "Spatial voices:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:137
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:132
msgid "VOCS^None"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:138
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:133
msgid "VOCS^Taunts"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:139
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:134
msgid "VOCS^All"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:142
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:137
msgid "Taunt range:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:145
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:140
msgid "RNG^Very short"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:146
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:141
msgid "RNG^Short"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:147
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:142
msgid "RNG^Normal"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:148
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:143
msgid "RNG^Long"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:149
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:144
msgid "RNG^Full"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:156
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:151
msgid "Automatic taunts"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:165
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:160
msgid "Time warning:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:167
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:162
msgid "WRN^None"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:168
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:163
msgid "1 minute"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:169
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:164
msgid "5 minutes"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:170
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:165
msgid "WRN^Both"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:173
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:168
msgid "Hit indicator"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:175
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:170
msgid "Menu sounds"
msgstr ""
-#: qcsrc/menu/gamecommand.qc:47
-#, c-format
-msgid "error: status is %d\n"
-msgstr ""
-
-#: qcsrc/menu/gamecommand.qc:65
-msgid "Usage: menu_cmd command..., where possible commands are:\n"
-msgstr ""
-
-#: qcsrc/menu/gamecommand.qc:66
-msgid " sync - reloads all cvars on the current menu page\n"
-msgstr ""
-
-#: qcsrc/menu/gamecommand.qc:67
-msgid " directmenu ITEM - select a menu item as main item\n"
-msgstr ""
-
-#: qcsrc/menu/gamecommand.qc:193
-msgid "error creating curl handle\n"
-msgstr ""
-
-#: qcsrc/menu/gamecommand.qc:239
-msgid "Invalid command. For a list of supported commands, try menu_cmd help.\n"
-msgstr ""
-
-#: qcsrc/menu/menu.qc:29
-#, c-format
-msgid "^4MQC Build information: ^1%s\n"
+#: qcsrc/menu/xonotic/dialog_multiplayer.c:4
+msgid "Multiplayer"
msgstr ""
-#: qcsrc/menu/item/listbox.c:300
-#, c-format
-msgid "Item %d"
+#: qcsrc/menu/xonotic/dialog_multiplayer.c:18
+msgid "Servers"
msgstr ""
-#: qcsrc/menu/item/gecko.c:49
-msgid "Browser not initialized!"
+#: qcsrc/menu/xonotic/dialog_multiplayer.c:20
+msgid "Demos"
msgstr ""
-#: qcsrc/menu/item/label.c:63
-#, c-format
-msgid "NOTE: label text %s too wide for label, condensed by factor %f\n"
+#: qcsrc/menu/xonotic/dialog_hudpanel_healtharmor.c:4
+msgid "Health/Armor Panel"
msgstr ""
-#: qcsrc/menu/item/slider.c:64
-#, c-format
-msgid "%d (%s)"
+#: qcsrc/menu/xonotic/dialog_hudpanel_healtharmor.c:45
+msgid "Flip health and armor positions"
msgstr ""
-#: qcsrc/menu/item/textslider.c:29 qcsrc/menu/item/textslider.c:31
-msgid "custom"
+#: qcsrc/server/w_fireball.qc:2
+msgid "Fireball"
msgstr ""
-#: qcsrc/server/w_rifle.qc:2
-msgid "Rifle"
+#: qcsrc/server/w_fireball.qc:417
+#, c-format
+msgid "%s forgot about some firemine"
msgstr ""
-#: qcsrc/server/w_rifle.qc:233
+#: qcsrc/server/w_fireball.qc:419 qcsrc/server/w_hlac.qc:240
#, c-format
-msgid "%s shot themself automatically"
+msgid "%s should have used a smaller gun"
msgstr ""
-#: qcsrc/server/w_rifle.qc:235
+#: qcsrc/server/w_fireball.qc:426
#, c-format
-msgid "%s sniped themself somehow"
+msgid "%s tried to catch %s's firemine"
msgstr ""
-#: qcsrc/server/w_rifle.qc:242
+#: qcsrc/server/w_fireball.qc:428
#, c-format
-msgid "%s failed to hide from %s's bullet hail"
+msgid "%s fatefully ignored %s's firemine"
msgstr ""
-#: qcsrc/server/w_rifle.qc:244
+#: qcsrc/server/w_fireball.qc:435
#, c-format
-msgid "%s died in %s's bullet hail"
+msgid "%s could not hide from %s's fireball"
msgstr ""
-#: qcsrc/server/w_rifle.qc:251
+#: qcsrc/server/w_fireball.qc:437
#, c-format
-msgid "%s failed to hide from %s's rifle"
+msgid "%s saw the pretty lights of %s's fireball"
msgstr ""
-#: qcsrc/server/w_rifle.qc:256
+#: qcsrc/server/w_fireball.qc:440
#, c-format
-msgid "%s got hit in the head by %s"
+msgid "%s got too close to %s's fireball"
msgstr ""
-#: qcsrc/server/w_rifle.qc:258 qcsrc/server/w_uzi.qc:321
+#: qcsrc/server/w_fireball.qc:442
#, c-format
-msgid "%s was sniped by %s"
+msgid "%s tasted %s's fireball"
msgstr ""
-#: qcsrc/server/w_uzi.qc:2
-msgid "Machine Gun"
+#: qcsrc/server/w_nex.qc:2
+msgid "Nex"
msgstr ""
-#: qcsrc/server/w_uzi.qc:317 qcsrc/server/w_shotgun.qc:209
-#: qcsrc/server/w_minstanex.qc:290 qcsrc/server/w_nex.qc:253
+#: qcsrc/server/w_nex.qc:253 qcsrc/server/w_shotgun.qc:215
+#: qcsrc/server/w_uzi.qc:317 qcsrc/server/w_minstanex.qc:293
#, c-format
msgid "%s is now thinking with portals"
msgstr ""
-#: qcsrc/server/w_uzi.qc:323
+#: qcsrc/server/w_nex.qc:255 qcsrc/server/w_minstanex.qc:295
#, c-format
-msgid "%s was riddled full of holes by %s"
+msgid "%s has been vaporized by %s"
msgstr ""
-#: qcsrc/server/w_rocketlauncher.qc:2
-msgid "Rocket Launcher"
+#: qcsrc/server/w_laser.qc:2
+msgid "Laser"
msgstr ""
-#: qcsrc/server/w_rocketlauncher.qc:501 qcsrc/server/w_minelayer.qc:523
+#: qcsrc/server/w_laser.qc:311
#, c-format
-msgid "%s exploded"
+msgid "%s lasered themself to hell"
msgstr ""
-#: qcsrc/server/w_rocketlauncher.qc:505
+#: qcsrc/server/w_laser.qc:315
#, c-format
-msgid "%s got too close to %s's rocket"
+msgid "%s was cut in half by %s's gauntlet"
msgstr ""
-#: qcsrc/server/w_rocketlauncher.qc:507
+#: qcsrc/server/w_laser.qc:317
#, c-format
-msgid "%s almost dodged %s's rocket"
+msgid "%s was lasered to death by %s"
msgstr ""
-#: qcsrc/server/w_rocketlauncher.qc:509
-#, c-format
-msgid "%s ate %s's rocket"
+#: qcsrc/server/w_shotgun.qc:2
+msgid "Shotgun"
msgstr ""
-#: qcsrc/server/w_porto.qc:2
-msgid "Port-O-Launch"
+#: qcsrc/server/w_shotgun.qc:219
+#, c-format
+msgid "%2$s ^7slapped %1$s ^7around a bit with a large ^2shotgun"
msgstr ""
-#: qcsrc/server/w_porto.qc:296 qcsrc/server/w_hook.qc:266
+#: qcsrc/server/w_shotgun.qc:221
#, c-format
-msgid "%s did the impossible"
+msgid "%s was gunned by %s"
msgstr ""
-#: qcsrc/server/w_porto.qc:298
-#, c-format
-msgid "%s felt %s doing the impossible to him"
+#: qcsrc/server/w_uzi.qc:2
+msgid "Machine Gun"
msgstr ""
-#: qcsrc/server/w_hook.qc:2
-msgid "Grappling Hook"
+#: qcsrc/server/w_uzi.qc:321 qcsrc/server/w_rifle.qc:258
+#, c-format
+msgid "%s was sniped by %s"
msgstr ""
-#: qcsrc/server/w_hook.qc:268
+#: qcsrc/server/w_uzi.qc:323
#, c-format
-msgid "%s has run into %s's gravity bomb"
+msgid "%s was riddled full of holes by %s"
+msgstr ""
+
+#: qcsrc/server/w_minstanex.qc:2
+msgid "MinstaNex"
msgstr ""
#: qcsrc/server/w_electro.qc:2
msgid "Electro"
msgstr ""
-#: qcsrc/server/w_electro.qc:577
+#: qcsrc/server/w_electro.qc:574
#, c-format
msgid "%s could not remember where they put plasma"
msgstr ""
-#: qcsrc/server/w_electro.qc:579
+#: qcsrc/server/w_electro.qc:576
#, c-format
msgid "%s played with plasma"
msgstr ""
-#: qcsrc/server/w_electro.qc:586
+#: qcsrc/server/w_electro.qc:583
#, c-format
msgid "%s just noticed %s's blue ball"
msgstr ""
-#: qcsrc/server/w_electro.qc:588
+#: qcsrc/server/w_electro.qc:585
#, c-format
msgid "%s got in touch with %s's blue ball"
msgstr ""
-#: qcsrc/server/w_electro.qc:593
+#: qcsrc/server/w_electro.qc:590
#, c-format
msgid "%s felt the electrifying air of %s's combo"
msgstr ""
-#: qcsrc/server/w_electro.qc:595
+#: qcsrc/server/w_electro.qc:592
#, c-format
msgid "%s got too close to %s's blue beam"
msgstr ""
-#: qcsrc/server/w_electro.qc:597
+#: qcsrc/server/w_electro.qc:594
#, c-format
msgid "%s was blasted by %s's blue beam"
msgstr ""
-#: qcsrc/server/w_laser.qc:2
-msgid "Laser"
-msgstr ""
-
-#: qcsrc/server/w_laser.qc:311
+#: qcsrc/server/w_tuba.qc:2
#, c-format
-msgid "%s lasered themself to hell"
+msgid "@!#%'n Tuba"
msgstr ""
-#: qcsrc/server/w_laser.qc:315
+#: qcsrc/server/w_tuba.qc:252
#, c-format
-msgid "%s was cut in half by %s's gauntlet"
+msgid "%s hurt his own ears with the @!#%%'n Tuba"
msgstr ""
-#: qcsrc/server/w_laser.qc:317
+#: qcsrc/server/w_tuba.qc:256
#, c-format
-msgid "%s was lasered to death by %s"
+msgid "%s died of %s's great playing on the @!#%%'n Tuba"
msgstr ""
-#: qcsrc/server/w_shotgun.qc:2
-msgid "Shotgun"
+#: qcsrc/server/w_porto.qc:2
+msgid "Port-O-Launch"
msgstr ""
-#: qcsrc/server/w_shotgun.qc:213
+#: qcsrc/server/w_porto.qc:296 qcsrc/server/w_hook.qc:266
#, c-format
-msgid "%2$s ^7slapped %1$s ^7around a bit with a large ^2shotgun"
+msgid "%s did the impossible"
msgstr ""
-#: qcsrc/server/w_shotgun.qc:215
+#: qcsrc/server/w_porto.qc:298
#, c-format
-msgid "%s was gunned by %s"
+msgid "%s felt %s doing the impossible to him"
msgstr ""
-#: qcsrc/server/w_tuba.qc:2
-#, c-format
-msgid "@!#%'n Tuba"
+#: qcsrc/server/w_hagar.qc:2
+msgid "Hagar"
msgstr ""
-#: qcsrc/server/w_tuba.qc:263
+#: qcsrc/server/w_hagar.qc:395 qcsrc/server/w_seeker.qc:655
#, c-format
-msgid "%s hurt his own ears with the @!#%%'n Tuba"
+msgid "%s played with tiny rockets"
msgstr ""
-#: qcsrc/server/w_tuba.qc:267
+#: qcsrc/server/w_hagar.qc:399
#, c-format
-msgid "%s died of %s's great playing on the @!#%%'n Tuba"
-msgstr ""
-
-#: qcsrc/server/w_minstanex.qc:2
-msgid "MinstaNex"
+msgid "%s hoped %s's missiles wouldn't bounce"
msgstr ""
-#: qcsrc/server/w_minstanex.qc:292 qcsrc/server/w_nex.qc:255
+#: qcsrc/server/w_hagar.qc:401 qcsrc/server/w_seeker.qc:661
#, c-format
-msgid "%s has been vaporized by %s"
+msgid "%s was pummeled by %s"
msgstr ""
#: qcsrc/server/w_crylink.qc:2
msgid "Crylink"
msgstr ""
-#: qcsrc/server/w_crylink.qc:664
+#: qcsrc/server/w_crylink.qc:666
#, c-format
msgid "%s succeeded at self-destructing themself with the Crylink"
msgstr ""
-#: qcsrc/server/w_crylink.qc:669
+#: qcsrc/server/w_crylink.qc:671
#, c-format
msgid "%s could not hide from %s's Crylink"
msgstr ""
-#: qcsrc/server/w_crylink.qc:671
+#: qcsrc/server/w_crylink.qc:673
#, c-format
msgid "%s was too close to %s's Crylink"
msgstr ""
-#: qcsrc/server/w_crylink.qc:673
+#: qcsrc/server/w_crylink.qc:675
#, c-format
msgid "%s took a close look at %s's Crylink"
msgstr ""
-#: qcsrc/server/w_hlac.qc:2
-msgid "Heavy Laser Assault Cannon"
+#: qcsrc/server/w_rocketlauncher.qc:2
+msgid "Rocket Launcher"
msgstr ""
-#: qcsrc/server/w_hlac.qc:240 qcsrc/server/w_fireball.qc:419
+#: qcsrc/server/w_rocketlauncher.qc:501 qcsrc/server/w_minelayer.qc:523
#, c-format
-msgid "%s should have used a smaller gun"
+msgid "%s exploded"
msgstr ""
-#: qcsrc/server/w_hlac.qc:242
+#: qcsrc/server/w_rocketlauncher.qc:505
#, c-format
-msgid "%s was cut down by %s"
+msgid "%s got too close to %s's rocket"
msgstr ""
-#: qcsrc/server/w_grenadelauncher.qc:2
-msgid "Mortar"
+#: qcsrc/server/w_rocketlauncher.qc:507
+#, c-format
+msgid "%s almost dodged %s's rocket"
msgstr ""
-#: qcsrc/server/w_grenadelauncher.qc:379
+#: qcsrc/server/w_rocketlauncher.qc:509
#, c-format
-msgid "%s tried out his own grenade"
+msgid "%s ate %s's rocket"
msgstr ""
-#: qcsrc/server/w_grenadelauncher.qc:381
-#, c-format
-msgid "%s detonated"
+#: qcsrc/server/w_hook.qc:2
+msgid "Grappling Hook"
msgstr ""
-#: qcsrc/server/w_grenadelauncher.qc:387
+#: qcsrc/server/w_hook.qc:268
#, c-format
-msgid "%s didn't see %s's grenade"
+msgid "%s has run into %s's gravity bomb"
msgstr ""
-#: qcsrc/server/w_grenadelauncher.qc:389
-#, c-format
-msgid "%s almost dodged %s's grenade"
+#: qcsrc/server/w_minelayer.qc:2
+msgid "Mine Layer"
msgstr ""
-#: qcsrc/server/w_grenadelauncher.qc:391
+#: qcsrc/server/w_minelayer.qc:527
#, c-format
-msgid "%s ate %s's grenade"
+msgid "%s got too close to %s's mine"
msgstr ""
-#: qcsrc/server/w_hagar.qc:2
-msgid "Hagar"
+#: qcsrc/server/w_minelayer.qc:529
+#, c-format
+msgid "%s almost dodged %s's mine"
msgstr ""
-#: qcsrc/server/w_hagar.qc:382 qcsrc/server/w_seeker.qc:655
+#: qcsrc/server/w_minelayer.qc:531
#, c-format
-msgid "%s played with tiny rockets"
+msgid "%s stepped on %s's mine"
msgstr ""
-#: qcsrc/server/w_hagar.qc:386
-#, c-format
-msgid "%s hoped %s's missiles wouldn't bounce"
+#: qcsrc/server/w_rifle.qc:2
+msgid "Rifle"
msgstr ""
-#: qcsrc/server/w_hagar.qc:388 qcsrc/server/w_seeker.qc:661
+#: qcsrc/server/w_rifle.qc:233
#, c-format
-msgid "%s was pummeled by %s"
+msgid "%s shot themself automatically"
msgstr ""
-#: qcsrc/server/w_seeker.qc:2
-msgid "T.A.G. Seeker"
+#: qcsrc/server/w_rifle.qc:235
+#, c-format
+msgid "%s sniped themself somehow"
msgstr ""
-#: qcsrc/server/w_seeker.qc:659
+#: qcsrc/server/w_rifle.qc:242
#, c-format
-msgid "%s was tagged by %s"
+msgid "%s failed to hide from %s's bullet hail"
msgstr ""
-#: qcsrc/server/w_fireball.qc:2
-msgid "Fireball"
+#: qcsrc/server/w_rifle.qc:244
+#, c-format
+msgid "%s died in %s's bullet hail"
msgstr ""
-#: qcsrc/server/w_fireball.qc:417
+#: qcsrc/server/w_rifle.qc:251
#, c-format
-msgid "%s forgot about some firemine"
+msgid "%s failed to hide from %s's rifle"
msgstr ""
-#: qcsrc/server/w_fireball.qc:426
+#: qcsrc/server/w_rifle.qc:256
#, c-format
-msgid "%s tried to catch %s's firemine"
+msgid "%s got hit in the head by %s"
msgstr ""
-#: qcsrc/server/w_fireball.qc:428
-#, c-format
-msgid "%s fatefully ignored %s's firemine"
+#: qcsrc/server/w_seeker.qc:2
+msgid "T.A.G. Seeker"
msgstr ""
-#: qcsrc/server/w_fireball.qc:435
+#: qcsrc/server/w_seeker.qc:659
#, c-format
-msgid "%s could not hide from %s's fireball"
+msgid "%s was tagged by %s"
msgstr ""
-#: qcsrc/server/w_fireball.qc:437
-#, c-format
-msgid "%s saw the pretty lights of %s's fireball"
+#: qcsrc/server/w_grenadelauncher.qc:2
+msgid "Mortar"
msgstr ""
-#: qcsrc/server/w_fireball.qc:440
+#: qcsrc/server/w_grenadelauncher.qc:383
#, c-format
-msgid "%s got too close to %s's fireball"
+msgid "%s tried out his own grenade"
msgstr ""
-#: qcsrc/server/w_fireball.qc:442
+#: qcsrc/server/w_grenadelauncher.qc:385
#, c-format
-msgid "%s tasted %s's fireball"
+msgid "%s detonated"
msgstr ""
-#: qcsrc/server/w_minelayer.qc:2
-msgid "Mine Layer"
+#: qcsrc/server/w_grenadelauncher.qc:391
+#, c-format
+msgid "%s didn't see %s's grenade"
msgstr ""
-#: qcsrc/server/w_minelayer.qc:527
+#: qcsrc/server/w_grenadelauncher.qc:393
#, c-format
-msgid "%s got too close to %s's mine"
+msgid "%s almost dodged %s's grenade"
msgstr ""
-#: qcsrc/server/w_minelayer.qc:529
+#: qcsrc/server/w_grenadelauncher.qc:395
#, c-format
-msgid "%s almost dodged %s's mine"
+msgid "%s ate %s's grenade"
msgstr ""
-#: qcsrc/server/w_minelayer.qc:531
-#, c-format
-msgid "%s stepped on %s's mine"
+#: qcsrc/server/w_hlac.qc:2
+msgid "Heavy Laser Assault Cannon"
msgstr ""
-#: qcsrc/server/w_nex.qc:2
-msgid "Nex"
+#: qcsrc/server/w_hlac.qc:242
+#, c-format
+msgid "%s was cut down by %s"
msgstr ""
msgstr ""
"Project-Id-Version: Xontoic 0.1preview\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2011-06-27 18:26+0200\n"
+"POT-Creation-Date: 2011-09-02 07:51+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: Ricardo 'Hellgardia' Silva <ricardo.mccs@gmail.com>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
+#: qcsrc/common/mapinfo.qc:1092 qcsrc/menu/xonotic/skinlist.c:163
+#, c-format
+msgid "%s: %s"
+msgstr "%s: %s"
+
#: qcsrc/menu/gamecommand.qc:47
#, c-format
msgid "error: status is %d\n"
msgstr "modificado"
#: qcsrc/menu/menu.qc:29
-#, fuzzy, c-format
+#, c-format
msgid "^4MQC Build information: ^1%s\n"
msgstr "^4MQC Informação da Build %s\n"
#: qcsrc/menu/xonotic/campaign.c:284
-#: qcsrc/menu/xonotic/dialog_singleplayer.c:66
+#: qcsrc/menu/xonotic/dialog_singleplayer.c:134
msgid "???"
msgstr "???"
#: qcsrc/menu/xonotic/dialog_hudpanel_ammo.c:28
msgid "Align icon:"
-msgstr ""
+msgstr "Alinhar icones"
#: qcsrc/menu/xonotic/dialog_hudpanel_ammo.c:29
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:36
#: qcsrc/menu/xonotic/dialog_hudpanel_healtharmor.c:28
#: qcsrc/menu/xonotic/dialog_hudpanel_healtharmor.c:40
#: qcsrc/menu/xonotic/dialog_hudpanel_powerups.c:28
msgstr "Esquerda"
#: qcsrc/menu/xonotic/dialog_hudpanel_ammo.c:30
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:38
#: qcsrc/menu/xonotic/dialog_hudpanel_healtharmor.c:30
#: qcsrc/menu/xonotic/dialog_hudpanel_healtharmor.c:41
#: qcsrc/menu/xonotic/dialog_hudpanel_powerups.c:30
msgid "Right"
msgstr "Direita"
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:4
+msgid "Centerprint"
+msgstr "Centro"
+
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:23
+msgid "Message duration:"
+msgstr "Duração da mensagem:"
+
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:27
+msgid "Fade time:"
+msgstr "Desaparecimento de cada entrada:"
+
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:31
+msgid "Flip messages order"
+msgstr "Trocar ordem de notificações"
+
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:33
+msgid "Text alignment:"
+msgstr "Alinhamento do Texto"
+
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:37
+#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup_weapons.c:50
+msgid "Center"
+msgstr "Centro"
+
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:41
+msgid "Font scale:"
+msgstr "Tamanho de letra:"
+
#: qcsrc/menu/xonotic/dialog_hudpanel_chat.c:4
msgid "Chat Panel"
msgstr "Painel de Conversa"
msgstr "Desaparecimento de cada entrada:"
#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:4
-#, fuzzy
msgid "Physics Panel"
-msgstr "Painel de Conversa"
+msgstr "Painel de Física"
-#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:23
+#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:22
#: qcsrc/menu/xonotic/dialog_hudpanel_pressedkeys.c:21
#: qcsrc/menu/xonotic/dialog_hudpanel_radar.c:21
msgid "Panel disabled"
msgstr "Painel desactivado"
+#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:23
+msgid "Panel enabled"
+msgstr "Painel activado"
+
#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:24
-#, fuzzy
-msgid "Panel enabled if not observing"
+msgid "Panel enabled even observing"
msgstr "Painel activado quando espectador"
#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:25
-#: qcsrc/menu/xonotic/dialog_hudpanel_pressedkeys.c:23
-#: qcsrc/menu/xonotic/dialog_hudpanel_radar.c:23
-msgid "Panel always enabled"
-msgstr "Painel sempre activado"
+msgid "Panel enabled only in Race/CTS"
+msgstr "Painel activo apenas em jogos de Corrida/CTS"
#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:31
-#, fuzzy
msgid "Status bar"
-msgstr "Activar barra de estado"
+msgstr "Barra de estado"
#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:33
#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup_weapons.c:48
msgstr "Alinhamento à direita"
#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:35
-#, fuzzy
msgid "Inward align"
msgstr "Para Dentro"
#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:36
-#, fuzzy
msgid "Outward align"
msgstr "Para Fora"
#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:40
-#, fuzzy
msgid "Flip speed/acceleration positions"
-msgstr "Trocar posição da vida e armadura"
+msgstr "Trocar posição da velocidade e aceleração"
#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:44
-#, fuzzy
msgid "Speed:"
-msgstr "Velocidade (kB/s):"
+msgstr "Velocidade:"
#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:45
msgid "Include vertical speed"
-msgstr ""
+msgstr "Incluir velocidade vertical"
#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:56
msgid "Speed unit:"
-msgstr ""
+msgstr "Unidade de velocidade:"
#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:58
msgid "qu/s"
msgstr "nós"
#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:64
-#, fuzzy
msgid "Show"
-msgstr "Mostrar Munições"
+msgstr "Mostrar"
#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:67
-#, fuzzy
msgid "Top speed"
-msgstr "Velocidade de Ampliação (ZOOM):"
+msgstr "Velocidade Máxima:"
#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:73
-#, fuzzy
msgid "Acceleration:"
-msgstr "Reflexos:"
+msgstr "Aceleração:"
#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:74
msgid "Include vertical acceleration"
-msgstr ""
+msgstr "Incluir aceleração vertical"
#: qcsrc/menu/xonotic/dialog_hudpanel_powerups.c:4
msgid "Powerups Panel"
msgid "Panel enabled when spectating"
msgstr "Painel activado quando espectador"
+#: qcsrc/menu/xonotic/dialog_hudpanel_pressedkeys.c:23
+#: qcsrc/menu/xonotic/dialog_hudpanel_radar.c:23
+msgid "Panel always enabled"
+msgstr "Painel sempre activado"
+
#: qcsrc/menu/xonotic/dialog_hudpanel_pressedkeys.c:30
msgid "Forced aspect:"
msgstr "Forçar aspecto:"
#: qcsrc/menu/xonotic/dialog_hudpanel_score.c:22
msgid "Score:"
-msgstr ""
+msgstr "Pontuação:"
#: qcsrc/menu/xonotic/dialog_hudpanel_score.c:25
msgid "Rankings:"
-msgstr ""
+msgstr "Tabela Classficativa:"
#: qcsrc/menu/xonotic/dialog_hudpanel_score.c:26
-#, fuzzy
msgid "Off"
msgstr "Desligado"
#: qcsrc/menu/xonotic/dialog_hudpanel_score.c:27
msgid "And me"
-msgstr ""
+msgstr "E eu"
#: qcsrc/menu/xonotic/dialog_hudpanel_score.c:28
msgid "Pure"
-msgstr ""
+msgstr "Puro"
#: qcsrc/menu/xonotic/dialog_hudpanel_timer.c:4
msgid "Timer Panel"
msgstr "Alfa"
#: qcsrc/menu/xonotic/dialog_hudpanel_weapons.c:38
-#, fuzzy
msgid "EF^Both"
msgstr "Ambos"
msgid "Player Setup"
msgstr "Configuração do Jogador"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:35
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:34
msgid "Game type:"
msgstr "Tipo de jogo:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:47
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:46
msgid "Match settings:"
msgstr "Definições de jogo:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:50
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:49
msgid "Time limit:"
msgstr "Tempo limite:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:54
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:62
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:53
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:61
msgid "Use map specified default"
msgstr "Usar definição específica do mapa"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:57
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:56
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:155
#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:156
#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:157
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:158
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:161
#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:162
#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:163
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:164
msgid "Point limit:"
msgstr "Limite de pontos:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:65
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:64
msgid "Player slots:"
msgstr "Slots para Jogadores:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:68
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:67
msgid "Number of bots:"
msgstr "Número de jogadores controlados pelo computador:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:72
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:71
msgid "Bot skill:"
msgstr "Nível de dificuldade:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:75
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:74
msgid "Botlike"
msgstr "Bot"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:76
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:75
msgid "Beginner"
msgstr "Iniciado"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:77
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:76
msgid "You will win"
msgstr "Vais ganhar"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:78
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:77
msgid "You can win"
msgstr "Podes ganhar"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:79
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:78
msgid "You might win"
msgstr "Talvez ganhes"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:80
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:79
msgid "Advanced"
msgstr "Avançado"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:81
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:80
msgid "Expert"
msgstr "Perito"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:82
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:81
msgid "Pro"
msgstr "Profissional"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:83
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:82
msgid "Assassin"
msgstr "Assassino"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:84
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:83
msgid "Unhuman"
msgstr "Desumano"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:85
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:84
msgid "Godlike"
msgstr "Divinal"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:89
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:88
msgid "Mutators..."
msgstr "Mutators..."
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:98
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:97
#: qcsrc/menu/xonotic/dialog_settings_misc.c:57
msgid "Advanced settings..."
msgstr "Definições avançadas..."
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:105
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:104
msgid "Map list:"
msgstr "Lista de mapas:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:111
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:110
msgid "Select all"
msgstr "Seleccionar todos"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:114
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:113
msgid "Select none"
msgstr "Seleccionar nenhum"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:120
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:119
msgid "Start Multiplayer!"
msgstr "Começar Multijogador!"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:155
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:154
msgid "Capture limit:"
msgstr "Limite de capturas:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:159
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:158
msgid "Lives:"
msgstr "Vidas:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:160
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:159
msgid "Laps:"
msgstr "Voltas:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:161
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:160
msgid "Goals:"
msgstr "Golos:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:165
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:164
msgid "Frag limit:"
msgstr "Limite de Frags:"
msgid "Game types:"
msgstr "Modos de jogo:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create_mapinfo.c:119
+#: qcsrc/menu/xonotic/dialog_multiplayer_create_mapinfo.c:118
#: qcsrc/menu/xonotic/dialog_multiplayer_join_serverinfo.c:314
msgid "Close"
msgstr "Fechar"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create_mapinfo.c:122
-#: qcsrc/menu/xonotic/dialog_multiplayer_demo.c:46
-msgid "Play"
+#: qcsrc/menu/xonotic/dialog_multiplayer_create_mapinfo.c:121
+msgid "MAP^Play"
msgstr "Jogar"
#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:7
msgid "Timedemo"
msgstr "Demo temporizado"
+#: qcsrc/menu/xonotic/dialog_multiplayer_demo.c:46
+#, fuzzy
+msgid "DEMO^Play"
+msgstr "Jogar"
+
#: qcsrc/menu/xonotic/dialog_multiplayer_join.c:4
msgid "Join"
msgstr "Juntar"
msgstr "Dano Colateral:"
#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:195
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:178
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:191
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:173
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:194
#: qcsrc/menu/xonotic/dialog_settings_misc.c:30
#: qcsrc/menu/xonotic/dialog_settings_misc.c:41
#: qcsrc/menu/xonotic/dialog_settings_video.c:109
msgid "Draw 1st person weapon model"
msgstr "Desenhar modelo da arma na 1a pessoa"
-#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup_weapons.c:50
-msgid "Center"
-msgstr ""
-
#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup_weapons.c:55
msgid "Flip view horizontally"
msgstr "Trocar vista horizontal"
msgid "Music:"
msgstr "Música:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:40
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:41
msgid "VOL^Ambient:"
msgstr "Som Ambiente:"
msgid "Info:"
msgstr "Informação:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:57
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:55
msgid "Items:"
msgstr "Items:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:65
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:62
msgid "Pain:"
msgstr "Dor:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:73
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:69
msgid "Player:"
msgstr "Jogador:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:81
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:76
msgid "Shots:"
msgstr "Tiros:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:88
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:83
msgid "Voice:"
msgstr "Voz:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:96
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:91
msgid "Weapons:"
msgstr "Armas:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:103
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:161
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:98
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:156
msgid "Frequency:"
msgstr "Frequência:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:105
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:100
msgid "8 kHz"
msgstr "8 kHz"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:106
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:101
msgid "11.025 kHz"
msgstr "11.025 kHz"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:107
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:102
msgid "16 kHz"
msgstr "16 kHz"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:108
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:103
msgid "22.05 kHz"
msgstr "22.05 kHz"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:109
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:104
msgid "24 kHz"
msgstr "24 kHz"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:110
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:105
msgid "32 kHz"
msgstr "32 kHz"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:111
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:106
msgid "44.1 kHz"
msgstr "44.1 kHz"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:112
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:107
msgid "48 kHz"
msgstr "48 kHz"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:115
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:110
msgid "Channels:"
msgstr "Canais:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:117
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:112
msgid "Mono"
msgstr "Mono"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:118
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:113
msgid "Stereo"
msgstr "Stereo"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:119
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:114
msgid "2.1"
msgstr "2.1"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:120
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:115
msgid "4"
msgstr "4"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:121
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:116
msgid "5"
msgstr "5"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:122
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:117
msgid "5.1"
msgstr "5.1"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:123
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:118
msgid "6.1"
msgstr "6.1"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:124
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:119
msgid "7.1"
msgstr "7.1"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:128
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:123
msgid "Swap Stereo"
msgstr "Trocar Stereo"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:132
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:127
msgid "Headphone friendly mode"
msgstr "Modo de Headphones"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:136
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:131
msgid "Spatial voices:"
msgstr "Vozes espaciais:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:137
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:132
msgid "VOCS^None"
msgstr "Nenhum"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:138
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:133
msgid "VOCS^Taunts"
msgstr "Taunts"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:139
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:134
msgid "VOCS^All"
msgstr "Todos"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:142
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:137
msgid "Taunt range:"
msgstr "Nível dos taunts:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:145
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:140
msgid "RNG^Very short"
msgstr "Muito baixo"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:146
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:141
msgid "RNG^Short"
msgstr "Baixo"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:147
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:142
msgid "RNG^Normal"
msgstr "Normal"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:148
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:143
msgid "RNG^Long"
msgstr "Alto"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:149
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:144
msgid "RNG^Full"
msgstr "Total"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:156
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:151
msgid "Automatic taunts"
msgstr "Taunts Automáticos"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:165
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:160
msgid "Time warning:"
msgstr "Aviso de tempo:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:167
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:162
msgid "WRN^None"
msgstr "Nenhum"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:168
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:163
msgid "1 minute"
msgstr "1 minuto"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:169
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:164
msgid "5 minutes"
msgstr "5 minutos"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:170
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:165
msgid "WRN^Both"
msgstr "Ambos"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:173
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:168
msgid "Hit indicator"
msgstr "Indicador de tiro acertado"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:175
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:170
msgid "Menu sounds"
msgstr "Sons do menu"
msgid "Decals"
msgstr "Símbolos"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:120
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:118
+msgid "Decals on models"
+msgstr "Marcas nos modelos"
+
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:122
msgid "Distance:"
msgstr "Distância:"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:126
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:128
msgid "Time:"
msgstr "Tempo:"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:132
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:134
msgid "Use lightmaps"
msgstr "Usar lightmaps"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:133
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:135
msgid "Deluxe mapping"
msgstr "Mapeamento Deluxe"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:135
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:137
msgid "Gloss"
msgstr "Lustro"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:138
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:140
msgid "Offset mapping"
msgstr "Mapeamento Offset"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:140
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:142
msgid "Relief mapping"
msgstr "Mapeamento Relief"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:143
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:145
msgid "Reflections:"
msgstr "Reflexos:"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:146
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:148
msgid "Blurred"
msgstr "Grau de Blur"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:147
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:149
msgid "REFL^Good"
msgstr "Bom"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:148
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:150
msgid "Sharp"
msgstr "Grau de Definição"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:153
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:155
msgid "Show surfaces"
msgstr "Mostrar superfícies"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:155
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:157
msgid "No dynamic lighting"
msgstr "Iluminação dinâmica desligada"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:157
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:159
msgid "Flash blend approximation"
msgstr "Aproximação Flash Blend"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:159
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:161
msgid "Realtime dynamic lighting"
msgstr "Iluminação dinâmica em tempo real"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:160
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:164
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:162
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:166
msgid "Shadows"
msgstr "Sombras"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:163
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:165
msgid "Realtime world lighting"
msgstr "Iluminação do mundo em tempo real"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:168
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:170
msgid "Use normal maps"
msgstr "Usar mapas normais"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:170
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:172
msgid "Soft shadows"
msgstr "Sombras Suaves"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:173
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:175
msgid "Coronas"
msgstr "Coronas"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:174
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:176
msgid "Use Occlusion Queries"
msgstr "Usar Consultas Oclusão"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:176
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:178
msgid "Bloom"
msgstr "Bloom"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:178
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:180
msgid "High Dynamic Range (HDR)"
msgstr "High Dynamic Range (HDR)"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:182
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:184
msgid "Motion blur:"
msgstr "Distorção por movimento:"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:187
-#, fuzzy
-msgid "Damage & water blur"
-msgstr "Distorção por dano:"
-
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:188
-#, fuzzy
-msgid "Powerup sharpen"
-msgstr "Painel de Powerups"
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:189
+msgid "Blur and sharpen postprocessing"
+msgstr "Blur e postprocessing"
#: qcsrc/menu/xonotic/dialog_settings_input.c:26
msgid "Key bindings:"
msgid "Singleplayer"
msgstr "Um Jogador"
-#: qcsrc/menu/xonotic/dialog_singleplayer.c:59
+#: qcsrc/menu/xonotic/dialog_singleplayer.c:127
msgid "Instant action! (random map with bots)"
msgstr "Acção Instantânea! (Mapa ao acaso contra o computador)"
-#: qcsrc/menu/xonotic/dialog_singleplayer.c:80
+#: qcsrc/menu/xonotic/dialog_singleplayer.c:148
msgid "Start Singleplayer!"
msgstr "Começar Um só Jogador!"
msgid "Bookmark"
msgstr "Marcar"
-#: qcsrc/menu/xonotic/serverlist.c:523
+#: qcsrc/menu/xonotic/serverlist.c:527
msgid "Ping"
msgstr "Ping"
-#: qcsrc/menu/xonotic/serverlist.c:524
+#: qcsrc/menu/xonotic/serverlist.c:528
msgid "Host name"
msgstr "Nome do Host"
-#: qcsrc/menu/xonotic/serverlist.c:525
+#: qcsrc/menu/xonotic/serverlist.c:529
msgid "Map"
msgstr "Mapa"
-#: qcsrc/menu/xonotic/serverlist.c:526
+#: qcsrc/menu/xonotic/serverlist.c:530
msgid "Type"
msgstr "Tipo"
-#: qcsrc/menu/xonotic/serverlist.c:527
+#: qcsrc/menu/xonotic/serverlist.c:531
msgid "Players"
msgstr "Jogadores"
msgid "<AUTHOR>"
msgstr "<AUTOR>"
-#: qcsrc/menu/xonotic/skinlist.c:163
-#, c-format
-msgid "%s: %s"
-msgstr "%s: %s"
-
#: qcsrc/menu/xonotic/slider_decibels.c:50
msgid "VOL^OFF"
msgstr "DESLIGADO"
#: qcsrc/menu/xonotic/util.qc:367
#, c-format
msgid "^1%s TEST BUILD"
-msgstr ""
+msgstr "^1%s VERSAO DE TESTE"
#: qcsrc/menu/xonotic/util.qc:432
#, c-format
msgid "Crylink"
msgstr "Crylink"
-#: qcsrc/server/w_crylink.qc:664
+#: qcsrc/server/w_crylink.qc:666
#, c-format
msgid "%s succeeded at self-destructing themself with the Crylink"
msgstr "%s conseguiu auto-destruir-se com a Crylink"
-#: qcsrc/server/w_crylink.qc:669
+#: qcsrc/server/w_crylink.qc:671
#, c-format
msgid "%s could not hide from %s's Crylink"
msgstr "%s não se conseguiu esconder da Crylink do %s"
-#: qcsrc/server/w_crylink.qc:671
+#: qcsrc/server/w_crylink.qc:673
#, c-format
msgid "%s was too close to %s's Crylink"
msgstr "%s estava demasiado perto da Crylink do %s"
-#: qcsrc/server/w_crylink.qc:673
+#: qcsrc/server/w_crylink.qc:675
#, c-format
msgid "%s took a close look at %s's Crylink"
msgstr "%s pode ver de perto a Crylink do %s"
msgid "Electro"
msgstr "Electro"
-#: qcsrc/server/w_electro.qc:577
+#: qcsrc/server/w_electro.qc:574
#, c-format
msgid "%s could not remember where they put plasma"
msgstr "%s não se conseguiu lembrar onde pôs a plasma"
-#: qcsrc/server/w_electro.qc:579
+#: qcsrc/server/w_electro.qc:576
#, c-format
msgid "%s played with plasma"
msgstr "%s brincou com plasma"
-#: qcsrc/server/w_electro.qc:586
+#: qcsrc/server/w_electro.qc:583
#, c-format
msgid "%s just noticed %s's blue ball"
msgstr "%s acabou de reparar na bola azul de %s"
-#: qcsrc/server/w_electro.qc:588
+#: qcsrc/server/w_electro.qc:585
#, c-format
msgid "%s got in touch with %s's blue ball"
msgstr "%s esteve em contacto com a bola azul de %s"
-#: qcsrc/server/w_electro.qc:593
+#: qcsrc/server/w_electro.qc:590
#, c-format
msgid "%s felt the electrifying air of %s's combo"
msgstr "%s sentiu o ar electrizante do combo de %s"
-#: qcsrc/server/w_electro.qc:595
+#: qcsrc/server/w_electro.qc:592
#, c-format
msgid "%s got too close to %s's blue beam"
msgstr "%s estava perto demais do raio azul de %s"
-#: qcsrc/server/w_electro.qc:597
+#: qcsrc/server/w_electro.qc:594
#, c-format
msgid "%s was blasted by %s's blue beam"
msgstr "%s foi atingido pelo raio azul de %s"
msgid "Mortar"
msgstr "Mortar"
-#: qcsrc/server/w_grenadelauncher.qc:379
+#: qcsrc/server/w_grenadelauncher.qc:383
#, c-format
msgid "%s tried out his own grenade"
msgstr "%s experimentou a sua própria granada"
-#: qcsrc/server/w_grenadelauncher.qc:381
+#: qcsrc/server/w_grenadelauncher.qc:385
#, c-format
msgid "%s detonated"
msgstr "%s foi detonado"
-#: qcsrc/server/w_grenadelauncher.qc:387
+#: qcsrc/server/w_grenadelauncher.qc:391
#, c-format
msgid "%s didn't see %s's grenade"
msgstr "%s não viu a granada de %s"
-#: qcsrc/server/w_grenadelauncher.qc:389
+#: qcsrc/server/w_grenadelauncher.qc:393
#, c-format
msgid "%s almost dodged %s's grenade"
msgstr "%s quase se desviou da granada de %s"
-#: qcsrc/server/w_grenadelauncher.qc:391
+#: qcsrc/server/w_grenadelauncher.qc:395
#, c-format
msgid "%s ate %s's grenade"
msgstr "%s comeu a granada de %s"
msgid "Hagar"
msgstr "Hagar"
-#: qcsrc/server/w_hagar.qc:382 qcsrc/server/w_seeker.qc:655
+#: qcsrc/server/w_hagar.qc:395 qcsrc/server/w_seeker.qc:655
#, c-format
msgid "%s played with tiny rockets"
msgstr "%s brincou com pequenos foguetes"
-#: qcsrc/server/w_hagar.qc:386
+#: qcsrc/server/w_hagar.qc:399
#, c-format
msgid "%s hoped %s's missiles wouldn't bounce"
msgstr "%s rezou para que os misseis de %s não resaltassem"
-#: qcsrc/server/w_hagar.qc:388 qcsrc/server/w_seeker.qc:661
+#: qcsrc/server/w_hagar.qc:401 qcsrc/server/w_seeker.qc:661
#, c-format
msgid "%s was pummeled by %s"
msgstr "%s foi serrado por %s"
msgid "MinstaNex"
msgstr "MinstaNex"
-#: qcsrc/server/w_minstanex.qc:290 qcsrc/server/w_nex.qc:253
-#: qcsrc/server/w_shotgun.qc:209 qcsrc/server/w_uzi.qc:317
+#: qcsrc/server/w_minstanex.qc:293 qcsrc/server/w_nex.qc:253
+#: qcsrc/server/w_shotgun.qc:215 qcsrc/server/w_uzi.qc:317
#, c-format
msgid "%s is now thinking with portals"
-msgstr ""
+msgstr "%s está agora a pensar com portais"
-#: qcsrc/server/w_minstanex.qc:292 qcsrc/server/w_nex.qc:255
+#: qcsrc/server/w_minstanex.qc:295 qcsrc/server/w_nex.qc:255
#, c-format
msgid "%s has been vaporized by %s"
msgstr "%s foi vaporizado por %s"
#: qcsrc/server/w_rifle.qc:2
msgid "Rifle"
-msgstr ""
+msgstr "Espingarda"
#: qcsrc/server/w_rifle.qc:233
#, c-format
msgid "Shotgun"
msgstr "Shotgun"
-#: qcsrc/server/w_shotgun.qc:213
+#: qcsrc/server/w_shotgun.qc:219
#, c-format
msgid "%2$s ^7slapped %1$s ^7around a bit with a large ^2shotgun"
msgstr "%2$s ^7maltratou %1$s ^7com uma grande ^2caçadeira"
-#: qcsrc/server/w_shotgun.qc:215
+#: qcsrc/server/w_shotgun.qc:221
#, c-format
msgid "%s was gunned by %s"
msgstr "%s foi atingido por %s"
msgid "@!#%'n Tuba"
msgstr "@!#%'n Tuba"
-#: qcsrc/server/w_tuba.qc:263
+#: qcsrc/server/w_tuba.qc:252
#, c-format
msgid "%s hurt his own ears with the @!#%%'n Tuba"
msgstr "%s magoou-se a si próprio com a Tuba"
-#: qcsrc/server/w_tuba.qc:267
+#: qcsrc/server/w_tuba.qc:256
#, c-format
msgid "%s died of %s's great playing on the @!#%%'n Tuba"
msgstr "%s morreu por causa da grande actuação de %s"
#, c-format
msgid "%s was riddled full of holes by %s"
msgstr "%s foi enchido de buracos por %s"
-
-#~ msgid "Speedometer"
-#~ msgstr "Medidor de Velocidade"
-
-#~ msgid "qu/s (hidden)"
-#~ msgstr "qu/s (escondido)"
-
-#~ msgid "Show accelerometer"
-#~ msgstr "Mostrar accelerómetro"
-
-#~ msgid "Accelerometer scale:"
-#~ msgstr "Escala do accelerómetro:"
-
-#~ msgid "Sniper Rifle"
-#~ msgstr "Sniper Rifle"
-
-#~ msgid "%d/%d"
-#~ msgstr "%d/%d"
-
-#~ msgid "Waypoint settings:"
-#~ msgstr "Definições dos caminhos:"
msgstr ""
"Project-Id-Version: Xonotic 0.1preview\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2011-06-27 18:26+0200\n"
+"POT-Creation-Date: 2011-09-02 07:51+0200\n"
"PO-Revision-Date: 2011-01-18 11:53+0100\t\n"
"Last-Translator: MirceaKitsune <sonichedgehog_hyperblast00@yahoo.com>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
+#: qcsrc/common/mapinfo.qc:1092 qcsrc/menu/xonotic/skinlist.c:163
+#, c-format
+msgid "%s: %s"
+msgstr "%s: %s"
+
#: qcsrc/menu/gamecommand.qc:47
#, c-format
msgid "error: status is %d\n"
msgstr "^4MQC Informatii compilare: %s\n"
#: qcsrc/menu/xonotic/campaign.c:284
-#: qcsrc/menu/xonotic/dialog_singleplayer.c:66
+#: qcsrc/menu/xonotic/dialog_singleplayer.c:134
msgid "???"
msgstr "???"
#: qcsrc/menu/xonotic/dialog_hudpanel_ammo.c:28
msgid "Align icon:"
-msgstr ""
+msgstr "Aliniere icon:"
#: qcsrc/menu/xonotic/dialog_hudpanel_ammo.c:29
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:36
#: qcsrc/menu/xonotic/dialog_hudpanel_healtharmor.c:28
#: qcsrc/menu/xonotic/dialog_hudpanel_healtharmor.c:40
#: qcsrc/menu/xonotic/dialog_hudpanel_powerups.c:28
msgstr "Stanga"
#: qcsrc/menu/xonotic/dialog_hudpanel_ammo.c:30
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:38
#: qcsrc/menu/xonotic/dialog_hudpanel_healtharmor.c:30
#: qcsrc/menu/xonotic/dialog_hudpanel_healtharmor.c:41
#: qcsrc/menu/xonotic/dialog_hudpanel_powerups.c:30
msgid "Right"
msgstr "Dreapta"
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:4
+msgid "Centerprint"
+msgstr "Text centru"
+
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:23
+msgid "Message duration:"
+msgstr "Durata mesaj:"
+
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:27
+msgid "Fade time:"
+msgstr "Durata atenuare:"
+
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:31
+msgid "Flip messages order"
+msgstr "Inversare ordine mesaje"
+
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:33
+msgid "Text alignment:"
+msgstr "Aliniere text:"
+
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:37
+#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup_weapons.c:50
+msgid "Center"
+msgstr "Centru:"
+
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:41
+msgid "Font scale:"
+msgstr "Marime font:"
+
#: qcsrc/menu/xonotic/dialog_hudpanel_chat.c:4
msgid "Chat Panel"
msgstr "Fereastra Chat"
msgstr "Durata atenuare notificatie:"
#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:4
-#, fuzzy
msgid "Physics Panel"
-msgstr "Fereastra Chat"
+msgstr "Panou Fizici"
-#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:23
+#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:22
#: qcsrc/menu/xonotic/dialog_hudpanel_pressedkeys.c:21
#: qcsrc/menu/xonotic/dialog_hudpanel_radar.c:21
msgid "Panel disabled"
msgstr "Dezactivata"
+#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:23
+msgid "Panel enabled"
+msgstr "Panou activ"
+
#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:24
-#, fuzzy
-msgid "Panel enabled if not observing"
-msgstr "Activa pentru spectatori"
+msgid "Panel enabled even observing"
+msgstr "Panou activ si spectatorilor"
#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:25
-#: qcsrc/menu/xonotic/dialog_hudpanel_pressedkeys.c:23
-#: qcsrc/menu/xonotic/dialog_hudpanel_radar.c:23
-msgid "Panel always enabled"
-msgstr "Mereu activa"
+msgid "Panel enabled only in Race/CTS"
+msgstr "Panou activ numai in Cursa/CTS"
#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:31
-#, fuzzy
msgid "Status bar"
-msgstr "Activare bara de statut"
+msgstr "Bara statut"
#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:33
#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup_weapons.c:48
msgstr "Aliniere dreapta"
#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:35
-#, fuzzy
msgid "Inward align"
-msgstr "Interior"
+msgstr "Aliniere interioara"
#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:36
-#, fuzzy
msgid "Outward align"
-msgstr "Exterior"
+msgstr "Aliniere exterioara"
#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:40
-#, fuzzy
msgid "Flip speed/acceleration positions"
-msgstr "Oglindire pozitie viata/armura"
+msgstr "Inversare pozitie viteza/acceleratie"
#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:44
-#, fuzzy
msgid "Speed:"
-msgstr "Viteza (kB/s):"
+msgstr "Viteza:"
#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:45
msgid "Include vertical speed"
-msgstr ""
+msgstr "Include viteza verticala"
#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:56
msgid "Speed unit:"
-msgstr ""
+msgstr "Unitate viteza"
#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:58
msgid "qu/s"
msgstr "noduri"
#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:64
-#, fuzzy
msgid "Show"
-msgstr "Afisaj Munitie"
+msgstr "Afiseaza"
#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:67
-#, fuzzy
msgid "Top speed"
-msgstr "Viteza Zoom:"
+msgstr "Viteza maxima:"
#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:73
-#, fuzzy
msgid "Acceleration:"
-msgstr "Reflectii:"
+msgstr "Acceleratie:"
#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:74
msgid "Include vertical acceleration"
-msgstr ""
+msgstr "Include acceleratia verticala"
#: qcsrc/menu/xonotic/dialog_hudpanel_powerups.c:4
msgid "Powerups Panel"
msgid "Panel enabled when spectating"
msgstr "Activa pentru spectatori"
+#: qcsrc/menu/xonotic/dialog_hudpanel_pressedkeys.c:23
+#: qcsrc/menu/xonotic/dialog_hudpanel_radar.c:23
+msgid "Panel always enabled"
+msgstr "Mereu activa"
+
#: qcsrc/menu/xonotic/dialog_hudpanel_pressedkeys.c:30
msgid "Forced aspect:"
msgstr "Aspect fortat:"
#: qcsrc/menu/xonotic/dialog_hudpanel_score.c:22
msgid "Score:"
-msgstr ""
+msgstr "Scor:"
#: qcsrc/menu/xonotic/dialog_hudpanel_score.c:25
msgid "Rankings:"
-msgstr ""
+msgstr "Clasificari:"
#: qcsrc/menu/xonotic/dialog_hudpanel_score.c:26
-#, fuzzy
msgid "Off"
msgstr "Dezactivat"
#: qcsrc/menu/xonotic/dialog_hudpanel_score.c:27
msgid "And me"
-msgstr ""
+msgstr "Si eu"
#: qcsrc/menu/xonotic/dialog_hudpanel_score.c:28
msgid "Pure"
-msgstr ""
+msgstr "Pur"
#: qcsrc/menu/xonotic/dialog_hudpanel_timer.c:4
msgid "Timer Panel"
msgstr "Opacitate"
#: qcsrc/menu/xonotic/dialog_hudpanel_weapons.c:38
-#, fuzzy
msgid "EF^Both"
msgstr "Ambele"
msgid "Player Setup"
msgstr "Setari Jucator"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:35
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:34
msgid "Game type:"
msgstr "Mod joc:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:47
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:46
msgid "Match settings:"
msgstr "Setari meci:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:50
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:49
msgid "Time limit:"
msgstr "Limita de timp:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:54
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:62
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:53
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:61
msgid "Use map specified default"
msgstr "Utilizare setari harta"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:57
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:56
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:155
#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:156
#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:157
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:158
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:161
#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:162
#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:163
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:164
msgid "Point limit:"
msgstr "Limita de puncte:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:65
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:64
msgid "Player slots:"
msgstr "Numar maxim jucatori:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:68
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:67
msgid "Number of bots:"
msgstr "Numar boti:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:72
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:71
msgid "Bot skill:"
msgstr "Dificultate boti:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:75
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:74
msgid "Botlike"
msgstr "Nula"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:76
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:75
msgid "Beginner"
msgstr "Incepator"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:77
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:76
msgid "You will win"
msgstr "Vei castiga"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:78
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:77
msgid "You can win"
msgstr "Poti castiga"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:79
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:78
msgid "You might win"
msgstr "Ai putea castiga"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:80
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:79
msgid "Advanced"
msgstr "Avansat"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:81
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:80
msgid "Expert"
msgstr "Expert"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:82
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:81
msgid "Pro"
msgstr "Profesional"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:83
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:82
msgid "Assassin"
msgstr "Asasin"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:84
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:83
msgid "Unhuman"
msgstr "Inuman"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:85
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:84
msgid "Godlike"
msgstr "Dumnezeiesc"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:89
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:88
msgid "Mutators..."
msgstr "Modificari speciale..."
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:98
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:97
#: qcsrc/menu/xonotic/dialog_settings_misc.c:57
msgid "Advanced settings..."
msgstr "Setari avansate..."
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:105
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:104
msgid "Map list:"
msgstr "Lista harti:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:111
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:110
msgid "Select all"
msgstr "Selecteaza totul"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:114
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:113
msgid "Select none"
msgstr "Golire selectie"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:120
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:119
msgid "Start Multiplayer!"
msgstr "Pornire Joc Multiplayer!"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:155
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:154
msgid "Capture limit:"
msgstr "Limita de capturi:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:159
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:158
msgid "Lives:"
msgstr "Vieti:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:160
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:159
msgid "Laps:"
msgstr "Ture:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:161
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:160
msgid "Goals:"
msgstr "Goluri:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:165
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:164
msgid "Frag limit:"
msgstr "Limita de omoruri:"
msgid "Game types:"
msgstr "Moduri de joc:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create_mapinfo.c:119
+#: qcsrc/menu/xonotic/dialog_multiplayer_create_mapinfo.c:118
#: qcsrc/menu/xonotic/dialog_multiplayer_join_serverinfo.c:314
msgid "Close"
msgstr "Inchidere"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create_mapinfo.c:122
-#: qcsrc/menu/xonotic/dialog_multiplayer_demo.c:46
-msgid "Play"
+#: qcsrc/menu/xonotic/dialog_multiplayer_create_mapinfo.c:121
+msgid "MAP^Play"
msgstr "Joaca"
#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:7
msgid "Timedemo"
msgstr "Timedemo"
+#: qcsrc/menu/xonotic/dialog_multiplayer_demo.c:46
+msgid "DEMO^Play"
+msgstr "Vizualizare"
+
#: qcsrc/menu/xonotic/dialog_multiplayer_join.c:4
msgid "Join"
msgstr "Alaturare"
msgstr "Efect ranire:"
#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:195
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:178
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:191
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:173
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:194
#: qcsrc/menu/xonotic/dialog_settings_misc.c:30
#: qcsrc/menu/xonotic/dialog_settings_misc.c:41
#: qcsrc/menu/xonotic/dialog_settings_video.c:109
msgid "Draw 1st person weapon model"
msgstr "Afisaj model 1st person"
-#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup_weapons.c:50
-msgid "Center"
-msgstr ""
-
#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup_weapons.c:55
msgid "Flip view horizontally"
msgstr "Oglindire orizontala ecran"
msgid "Music:"
msgstr "Muzica:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:40
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:41
msgid "VOL^Ambient:"
msgstr "Ambianta:"
msgid "Info:"
msgstr "Informatii:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:57
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:55
msgid "Items:"
msgstr "Obiecte:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:65
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:62
msgid "Pain:"
msgstr "Durere:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:73
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:69
msgid "Player:"
msgstr "Jucator:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:81
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:76
msgid "Shots:"
msgstr "Focuri de arma:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:88
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:83
msgid "Voice:"
msgstr "Voci:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:96
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:91
msgid "Weapons:"
msgstr "Arme:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:103
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:161
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:98
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:156
msgid "Frequency:"
msgstr "Frecventa:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:105
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:100
msgid "8 kHz"
msgstr "8 kHz"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:106
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:101
msgid "11.025 kHz"
msgstr "11.025 kHz"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:107
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:102
msgid "16 kHz"
msgstr "16 kHz"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:108
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:103
msgid "22.05 kHz"
msgstr "22.05 kHz"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:109
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:104
msgid "24 kHz"
msgstr "24 kHz"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:110
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:105
msgid "32 kHz"
msgstr "32 kHz"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:111
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:106
msgid "44.1 kHz"
msgstr "44.1 kHz"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:112
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:107
msgid "48 kHz"
msgstr "48 kHz"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:115
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:110
msgid "Channels:"
msgstr "Canale:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:117
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:112
msgid "Mono"
msgstr "Mono"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:118
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:113
msgid "Stereo"
msgstr "Stereo"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:119
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:114
msgid "2.1"
msgstr "2.1"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:120
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:115
msgid "4"
msgstr "4"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:121
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:116
msgid "5"
msgstr "5"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:122
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:117
msgid "5.1"
msgstr "5.1"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:123
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:118
msgid "6.1"
msgstr "6.1"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:124
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:119
msgid "7.1"
msgstr "7.1"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:128
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:123
msgid "Swap Stereo"
msgstr "Inversare canale stereo"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:132
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:127
msgid "Headphone friendly mode"
msgstr "Mod casti audio"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:136
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:131
msgid "Spatial voices:"
msgstr "Voci spatializate:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:137
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:132
msgid "VOCS^None"
msgstr "Nici una"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:138
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:133
msgid "VOCS^Taunts"
msgstr "Glume"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:139
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:134
msgid "VOCS^All"
msgstr "Toate"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:142
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:137
msgid "Taunt range:"
msgstr "Distanta voci:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:145
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:140
msgid "RNG^Very short"
msgstr "Foarte scurta"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:146
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:141
msgid "RNG^Short"
msgstr "Scurta"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:147
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:142
msgid "RNG^Normal"
msgstr "Normala"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:148
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:143
msgid "RNG^Long"
msgstr "Lunga"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:149
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:144
msgid "RNG^Full"
msgstr "Toate"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:156
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:151
msgid "Automatic taunts"
msgstr "Glume automate"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:165
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:160
msgid "Time warning:"
msgstr "Avertisment timp:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:167
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:162
msgid "WRN^None"
msgstr "Nici una"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:168
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:163
msgid "1 minute"
msgstr "1 minut"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:169
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:164
msgid "5 minutes"
msgstr "5 minute"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:170
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:165
msgid "WRN^Both"
msgstr "Ambele"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:173
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:168
msgid "Hit indicator"
msgstr "Indicator lovituri"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:175
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:170
msgid "Menu sounds"
msgstr "Sunete meniu"
msgid "Decals"
msgstr "Semne"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:120
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:118
+msgid "Decals on models"
+msgstr "Semne pe modele"
+
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:122
msgid "Distance:"
msgstr "Distanta:"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:126
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:128
msgid "Time:"
msgstr "Durata:"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:132
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:134
msgid "Use lightmaps"
msgstr "Utilizare lightmap"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:133
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:135
msgid "Deluxe mapping"
msgstr "Texturi Deluxe"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:135
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:137
msgid "Gloss"
msgstr "Suprafete lucioase"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:138
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:140
msgid "Offset mapping"
msgstr "Relief"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:140
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:142
msgid "Relief mapping"
msgstr "Detaliu relief"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:143
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:145
msgid "Reflections:"
msgstr "Reflectii:"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:146
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:148
msgid "Blurred"
msgstr "Blurate"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:147
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:149
msgid "REFL^Good"
msgstr "Bune"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:148
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:150
msgid "Sharp"
msgstr "Ascutite"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:153
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:155
msgid "Show surfaces"
msgstr "Afisaj suprafete"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:155
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:157
msgid "No dynamic lighting"
msgstr "Luminozitate dinamica dezactivata"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:157
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:159
msgid "Flash blend approximation"
msgstr "Luminozitate dinamica rapida"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:159
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:161
msgid "Realtime dynamic lighting"
msgstr "Luminozitate dinamica in timp real"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:160
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:164
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:162
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:166
msgid "Shadows"
msgstr "Umbre"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:163
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:165
msgid "Realtime world lighting"
msgstr "Luminozitate ambienta in timp real"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:168
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:170
msgid "Use normal maps"
msgstr "Utilizare texturi normale"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:170
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:172
msgid "Soft shadows"
msgstr "Umbre fine"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:173
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:175
msgid "Coronas"
msgstr "Coroane lumini"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:174
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:176
msgid "Use Occlusion Queries"
msgstr "Utilizare Ocluzii"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:176
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:178
msgid "Bloom"
msgstr "Luminozitate moale"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:178
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:180
msgid "High Dynamic Range (HDR)"
msgstr "Distanta Dinamica Inalta (HDR)"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:182
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:184
msgid "Motion blur:"
msgstr "Blurare viteza:"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:187
-#, fuzzy
-msgid "Damage & water blur"
-msgstr "Blurare ranire:"
-
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:188
-#, fuzzy
-msgid "Powerup sharpen"
-msgstr "Fereastra Powerup"
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:189
+msgid "Blur and sharpen postprocessing"
+msgstr "Postprocesare blurare si ascutire"
#: qcsrc/menu/xonotic/dialog_settings_input.c:26
msgid "Key bindings:"
msgid "Singleplayer"
msgstr "Joc singular"
-#: qcsrc/menu/xonotic/dialog_singleplayer.c:59
+#: qcsrc/menu/xonotic/dialog_singleplayer.c:127
msgid "Instant action! (random map with bots)"
msgstr "Actiune instanta! (harta aleatorie cu boti)"
-#: qcsrc/menu/xonotic/dialog_singleplayer.c:80
+#: qcsrc/menu/xonotic/dialog_singleplayer.c:148
msgid "Start Singleplayer!"
msgstr "Pornire Joc Singular!"
msgid "Bookmark"
msgstr "Favorit"
-#: qcsrc/menu/xonotic/serverlist.c:523
+#: qcsrc/menu/xonotic/serverlist.c:527
msgid "Ping"
msgstr "Latenta"
-#: qcsrc/menu/xonotic/serverlist.c:524
+#: qcsrc/menu/xonotic/serverlist.c:528
msgid "Host name"
msgstr "Nume server"
-#: qcsrc/menu/xonotic/serverlist.c:525
+#: qcsrc/menu/xonotic/serverlist.c:529
msgid "Map"
msgstr "Harta"
-#: qcsrc/menu/xonotic/serverlist.c:526
+#: qcsrc/menu/xonotic/serverlist.c:530
msgid "Type"
msgstr "Mod"
-#: qcsrc/menu/xonotic/serverlist.c:527
+#: qcsrc/menu/xonotic/serverlist.c:531
msgid "Players"
msgstr "Jucatori"
msgid "<AUTHOR>"
msgstr "<AUTOR>"
-#: qcsrc/menu/xonotic/skinlist.c:163
-#, c-format
-msgid "%s: %s"
-msgstr "%s: %s"
-
#: qcsrc/menu/xonotic/slider_decibels.c:50
msgid "VOL^OFF"
msgstr "OPRIT"
#: qcsrc/menu/xonotic/util.qc:367
#, c-format
msgid "^1%s TEST BUILD"
-msgstr ""
+msgstr "^1%s VERSIUNE TESTARE"
#: qcsrc/menu/xonotic/util.qc:432
#, c-format
msgid "Crylink"
msgstr "Crylink"
-#: qcsrc/server/w_crylink.qc:664
+#: qcsrc/server/w_crylink.qc:666
#, c-format
msgid "%s succeeded at self-destructing themself with the Crylink"
msgstr "%s a reusit sa se auto-distruga cu Crylink-ul"
-#: qcsrc/server/w_crylink.qc:669
+#: qcsrc/server/w_crylink.qc:671
#, c-format
msgid "%s could not hide from %s's Crylink"
msgstr "%s nu s-a putut ascunde de Crylink-ul lui %s"
-#: qcsrc/server/w_crylink.qc:671
+#: qcsrc/server/w_crylink.qc:673
#, c-format
msgid "%s was too close to %s's Crylink"
msgstr "%s s-a apropiat prea mult de Crylink-ul lui %s"
-#: qcsrc/server/w_crylink.qc:673
+#: qcsrc/server/w_crylink.qc:675
#, c-format
msgid "%s took a close look at %s's Crylink"
msgstr "%s s-a uitat in deaproape la Crylink-ul lui %s"
msgid "Electro"
msgstr "Electro"
-#: qcsrc/server/w_electro.qc:577
+#: qcsrc/server/w_electro.qc:574
#, c-format
msgid "%s could not remember where they put plasma"
msgstr "%s a uitat unde a pus plasma"
-#: qcsrc/server/w_electro.qc:579
+#: qcsrc/server/w_electro.qc:576
#, c-format
msgid "%s played with plasma"
msgstr "%s s-a jucat cu plasma"
-#: qcsrc/server/w_electro.qc:586
+#: qcsrc/server/w_electro.qc:583
#, c-format
msgid "%s just noticed %s's blue ball"
msgstr "%s tocmai a observat bilele albastre ale lui %s"
-#: qcsrc/server/w_electro.qc:588
+#: qcsrc/server/w_electro.qc:585
#, c-format
msgid "%s got in touch with %s's blue ball"
msgstr "%s a intrat in contact cu bila albastra a lui %s"
-#: qcsrc/server/w_electro.qc:593
+#: qcsrc/server/w_electro.qc:590
#, c-format
msgid "%s felt the electrifying air of %s's combo"
msgstr "%s a simtit forta electrica a combinatiei lui %s"
-#: qcsrc/server/w_electro.qc:595
+#: qcsrc/server/w_electro.qc:592
#, c-format
msgid "%s got too close to %s's blue beam"
msgstr "%s s-a apropiat prea mult de raza albastra a lui %s"
-#: qcsrc/server/w_electro.qc:597
+#: qcsrc/server/w_electro.qc:594
#, c-format
msgid "%s was blasted by %s's blue beam"
msgstr "%s a fost lovit de raza albastra a lui %s"
msgid "Mortar"
msgstr "Mortar"
-#: qcsrc/server/w_grenadelauncher.qc:379
+#: qcsrc/server/w_grenadelauncher.qc:383
#, c-format
msgid "%s tried out his own grenade"
msgstr "%s si-a incercat propria grenada"
-#: qcsrc/server/w_grenadelauncher.qc:381
+#: qcsrc/server/w_grenadelauncher.qc:385
#, c-format
msgid "%s detonated"
msgstr "%s a detonat"
-#: qcsrc/server/w_grenadelauncher.qc:387
+#: qcsrc/server/w_grenadelauncher.qc:391
#, c-format
msgid "%s didn't see %s's grenade"
msgstr "%s nu a vazut grenada lui %s"
-#: qcsrc/server/w_grenadelauncher.qc:389
+#: qcsrc/server/w_grenadelauncher.qc:393
#, c-format
msgid "%s almost dodged %s's grenade"
msgstr "%s aproape ca s-a ferit de grenada lui %s"
-#: qcsrc/server/w_grenadelauncher.qc:391
+#: qcsrc/server/w_grenadelauncher.qc:395
#, c-format
msgid "%s ate %s's grenade"
msgstr "%s a mancat grenada lui %s"
msgid "Hagar"
msgstr "Hagar"
-#: qcsrc/server/w_hagar.qc:382 qcsrc/server/w_seeker.qc:655
+#: qcsrc/server/w_hagar.qc:395 qcsrc/server/w_seeker.qc:655
#, c-format
msgid "%s played with tiny rockets"
msgstr "%s s-a jucat cu rachete"
-#: qcsrc/server/w_hagar.qc:386
+#: qcsrc/server/w_hagar.qc:399
#, c-format
msgid "%s hoped %s's missiles wouldn't bounce"
msgstr "%s a sperat ca rachetele lui %s nu vor ricosa"
-#: qcsrc/server/w_hagar.qc:388 qcsrc/server/w_seeker.qc:661
+#: qcsrc/server/w_hagar.qc:401 qcsrc/server/w_seeker.qc:661
#, c-format
msgid "%s was pummeled by %s"
msgstr "%s a fost batut mar de %s"
msgid "MinstaNex"
msgstr "MinstaNex"
-#: qcsrc/server/w_minstanex.qc:290 qcsrc/server/w_nex.qc:253
-#: qcsrc/server/w_shotgun.qc:209 qcsrc/server/w_uzi.qc:317
+#: qcsrc/server/w_minstanex.qc:293 qcsrc/server/w_nex.qc:253
+#: qcsrc/server/w_shotgun.qc:215 qcsrc/server/w_uzi.qc:317
#, c-format
msgid "%s is now thinking with portals"
-msgstr ""
+msgstr "%s gandeste acum cu portaluri"
-#: qcsrc/server/w_minstanex.qc:292 qcsrc/server/w_nex.qc:255
+#: qcsrc/server/w_minstanex.qc:295 qcsrc/server/w_nex.qc:255
#, c-format
msgid "%s has been vaporized by %s"
msgstr "%s a fost vaporizat de %s"
#: qcsrc/server/w_rifle.qc:2
msgid "Rifle"
-msgstr ""
+msgstr "Luneta"
#: qcsrc/server/w_rifle.qc:233
#, c-format
msgid "Shotgun"
msgstr "Shotgun"
-#: qcsrc/server/w_shotgun.qc:213
+#: qcsrc/server/w_shotgun.qc:219
#, c-format
msgid "%2$s ^7slapped %1$s ^7around a bit with a large ^2shotgun"
msgstr "%2$s ^7l-a plesnit pe %1$s ^7cu o ^2Pusca ^7foarte mare"
-#: qcsrc/server/w_shotgun.qc:215
+#: qcsrc/server/w_shotgun.qc:221
#, c-format
msgid "%s was gunned by %s"
msgstr "%s a fost impuscat de %s"
msgid "@!#%'n Tuba"
msgstr "@!#%'n Tuba"
-#: qcsrc/server/w_tuba.qc:263
+#: qcsrc/server/w_tuba.qc:252
#, c-format
msgid "%s hurt his own ears with the @!#%%'n Tuba"
msgstr "%s si-a spart urechile cu propria @!#%%'n Tuba"
-#: qcsrc/server/w_tuba.qc:267
+#: qcsrc/server/w_tuba.qc:256
#, c-format
msgid "%s died of %s's great playing on the @!#%%'n Tuba"
msgstr "%s a murit de la cantecul lui %s cu @!#%%'n Tuba"
msgid "%s was riddled full of holes by %s"
msgstr "%s a fost gaurit de %s"
-#~ msgid "Speedometer"
-#~ msgstr "Vitezometru"
+#~ msgid "%d/%d"
+#~ msgstr "%d/%d"
-#~ msgid "qu/s (hidden)"
-#~ msgstr "qu/s (ascuns)"
+#~ msgid "Waypoint settings:"
+#~ msgstr "Setari indicatoare:"
-#~ msgid "Show accelerometer"
-#~ msgstr "Afisaj metru acceleratie"
+#~ msgid "Sniper Rifle"
+#~ msgstr "Sniper Rifle"
#~ msgid "Accelerometer scale:"
#~ msgstr "Marime metru acceleratie:"
-#~ msgid "Sniper Rifle"
-#~ msgstr "Sniper Rifle"
+#~ msgid "Show accelerometer"
+#~ msgstr "Afisaj metru acceleratie"
-#~ msgid "Waypoint settings:"
-#~ msgstr "Setari indicatoare:"
+#~ msgid "qu/s (hidden)"
+#~ msgstr "qu/s (ascuns)"
-#~ msgid "%d/%d"
-#~ msgstr "%d/%d"
+#~ msgid "Speedometer"
+#~ msgstr "Vitezometru"
+
+#~ msgid "Damage & water blur"
+#~ msgstr "Blurare ranire & apa:"
+
+#~ msgid "Powerup sharpen"
+#~ msgstr "Ascutire powerup"
+
+#, fuzzy
+#~ msgid "Panel enabled if not observing"
+#~ msgstr "Activa pentru spectatori"
msgstr ""
"Project-Id-Version: 0.1preview\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2011-06-27 18:26+0200\n"
+"POT-Creation-Date: 2011-09-02 07:51+0200\n"
"PO-Revision-Date: 2011-01-20 13:16+0300\n"
"Last-Translator: Nikoli <nikoli@lavabit.com>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
+#: qcsrc/common/mapinfo.qc:1092 qcsrc/menu/xonotic/skinlist.c:163
+#, c-format
+msgid "%s: %s"
+msgstr "%s: %s"
+
#: qcsrc/menu/gamecommand.qc:47
#, c-format
msgid "error: status is %d\n"
msgstr "^4Сведения о сборке MQC: %s\n"
#: qcsrc/menu/xonotic/campaign.c:284
-#: qcsrc/menu/xonotic/dialog_singleplayer.c:66
+#: qcsrc/menu/xonotic/dialog_singleplayer.c:134
msgid "???"
msgstr "???"
msgstr ""
#: qcsrc/menu/xonotic/dialog_hudpanel_ammo.c:29
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:36
#: qcsrc/menu/xonotic/dialog_hudpanel_healtharmor.c:28
#: qcsrc/menu/xonotic/dialog_hudpanel_healtharmor.c:40
#: qcsrc/menu/xonotic/dialog_hudpanel_powerups.c:28
msgstr "Слева"
#: qcsrc/menu/xonotic/dialog_hudpanel_ammo.c:30
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:38
#: qcsrc/menu/xonotic/dialog_hudpanel_healtharmor.c:30
#: qcsrc/menu/xonotic/dialog_hudpanel_healtharmor.c:41
#: qcsrc/menu/xonotic/dialog_hudpanel_powerups.c:30
msgid "Right"
msgstr "Справа"
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:4
+msgid "Centerprint"
+msgstr ""
+
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:23
+#, fuzzy
+msgid "Message duration:"
+msgstr "Насыщенность:"
+
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:27
+#, fuzzy
+msgid "Fade time:"
+msgstr "Время исчезновения:"
+
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:31
+#, fuzzy
+msgid "Flip messages order"
+msgstr "Обратить порядок уведомлений"
+
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:33
+#, fuzzy
+msgid "Text alignment:"
+msgstr "Выравнивание иконок:"
+
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:37
+#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup_weapons.c:50
+msgid "Center"
+msgstr ""
+
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:41
+#, fuzzy
+msgid "Font scale:"
+msgstr "Размер отметок:"
+
#: qcsrc/menu/xonotic/dialog_hudpanel_chat.c:4
msgid "Chat Panel"
msgstr "Панель чата"
msgid "Physics Panel"
msgstr "Панель чата"
-#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:23
+#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:22
#: qcsrc/menu/xonotic/dialog_hudpanel_pressedkeys.c:21
#: qcsrc/menu/xonotic/dialog_hudpanel_radar.c:21
msgid "Panel disabled"
msgstr "Отключена"
+#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:23
+#, fuzzy
+msgid "Panel enabled"
+msgstr "Отключена"
+
#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:24
#, fuzzy
-msgid "Panel enabled if not observing"
+msgid "Panel enabled even observing"
msgstr "Включена при наблюдении"
#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:25
-#: qcsrc/menu/xonotic/dialog_hudpanel_pressedkeys.c:23
-#: qcsrc/menu/xonotic/dialog_hudpanel_radar.c:23
-msgid "Panel always enabled"
-msgstr "Всегда включена"
+#, fuzzy
+msgid "Panel enabled only in Race/CTS"
+msgstr "Панель включена в командных играх"
#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:31
#, fuzzy
msgid "Panel enabled when spectating"
msgstr "Включена при наблюдении"
+#: qcsrc/menu/xonotic/dialog_hudpanel_pressedkeys.c:23
+#: qcsrc/menu/xonotic/dialog_hudpanel_radar.c:23
+msgid "Panel always enabled"
+msgstr "Всегда включена"
+
#: qcsrc/menu/xonotic/dialog_hudpanel_pressedkeys.c:30
msgid "Forced aspect:"
msgstr "Соотношение:"
msgid "Player Setup"
msgstr "Настройки игрока"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:35
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:34
msgid "Game type:"
msgstr "Вид игры:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:47
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:46
msgid "Match settings:"
msgstr "Настройки состязания:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:50
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:49
msgid "Time limit:"
msgstr "Предел времени:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:54
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:62
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:53
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:61
msgid "Use map specified default"
msgstr "Исп. предел карты"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:57
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:56
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:155
#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:156
#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:157
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:158
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:161
#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:162
#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:163
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:164
msgid "Point limit:"
msgstr "Предел очков:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:65
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:64
msgid "Player slots:"
msgstr "Кол-во игроков:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:68
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:67
msgid "Number of bots:"
msgstr "Кол-во ботов:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:72
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:71
msgid "Bot skill:"
msgstr "Уровень ботов:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:75
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:74
msgid "Botlike"
msgstr "Ботоподобный"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:76
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:75
msgid "Beginner"
msgstr "Новичок"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:77
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:76
msgid "You will win"
msgstr "Легко победить"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:78
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:77
msgid "You can win"
msgstr "Можно победить"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:79
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:78
msgid "You might win"
msgstr "Возможно победить"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:80
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:79
msgid "Advanced"
msgstr "Продвинутый"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:81
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:80
msgid "Expert"
msgstr "Опытный"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:82
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:81
msgid "Pro"
msgstr "Профессионал"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:83
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:82
msgid "Assassin"
msgstr "Убийца"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:84
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:83
msgid "Unhuman"
msgstr "Сверхчеловек"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:85
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:84
msgid "Godlike"
msgstr "Богоподобный"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:89
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:88
msgid "Mutators..."
msgstr "Мутаторы..."
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:98
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:97
#: qcsrc/menu/xonotic/dialog_settings_misc.c:57
msgid "Advanced settings..."
msgstr "Доп. настройки..."
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:105
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:104
msgid "Map list:"
msgstr "Список карт:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:111
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:110
msgid "Select all"
msgstr "Выбрать все"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:114
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:113
msgid "Select none"
msgstr "Снять выделение"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:120
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:119
msgid "Start Multiplayer!"
msgstr "Начать игру по сети"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:155
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:154
msgid "Capture limit:"
msgstr "Предел захватов:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:159
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:158
msgid "Lives:"
msgstr "Жизни:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:160
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:159
msgid "Laps:"
msgstr "Круги:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:161
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:160
msgid "Goals:"
msgstr "Цели:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:165
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:164
msgid "Frag limit:"
msgstr "Предел убийств:"
msgid "Game types:"
msgstr "Режимы игры:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create_mapinfo.c:119
+#: qcsrc/menu/xonotic/dialog_multiplayer_create_mapinfo.c:118
#: qcsrc/menu/xonotic/dialog_multiplayer_join_serverinfo.c:314
msgid "Close"
msgstr "Закрыть"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create_mapinfo.c:122
-#: qcsrc/menu/xonotic/dialog_multiplayer_demo.c:46
-msgid "Play"
+#: qcsrc/menu/xonotic/dialog_multiplayer_create_mapinfo.c:121
+#, fuzzy
+msgid "MAP^Play"
msgstr "Играть"
#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:7
msgid "Timedemo"
msgstr "Проверка производительности"
+#: qcsrc/menu/xonotic/dialog_multiplayer_demo.c:46
+#, fuzzy
+msgid "DEMO^Play"
+msgstr "Играть"
+
#: qcsrc/menu/xonotic/dialog_multiplayer_join.c:4
msgid "Join"
msgstr "Присоединиться"
msgstr "Изображ. урона"
#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:195
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:178
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:191
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:173
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:194
#: qcsrc/menu/xonotic/dialog_settings_misc.c:30
#: qcsrc/menu/xonotic/dialog_settings_misc.c:41
#: qcsrc/menu/xonotic/dialog_settings_video.c:109
msgid "Draw 1st person weapon model"
msgstr "Показывать модель оружия в руках"
-#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup_weapons.c:50
-msgid "Center"
-msgstr ""
-
#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup_weapons.c:55
msgid "Flip view horizontally"
msgstr "Перевернуть изображение по горизонтали"
msgid "Music:"
msgstr "Музыка:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:40
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:41
msgid "VOL^Ambient:"
msgstr "Фоновые звуки:"
msgid "Info:"
msgstr "Инфо:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:57
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:55
msgid "Items:"
msgstr "Предметы:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:65
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:62
msgid "Pain:"
msgstr "Боль:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:73
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:69
msgid "Player:"
msgstr "Игрок:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:81
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:76
msgid "Shots:"
msgstr "Выстрелы:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:88
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:83
msgid "Voice:"
msgstr "Голос:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:96
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:91
msgid "Weapons:"
msgstr "Оружие:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:103
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:161
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:98
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:156
msgid "Frequency:"
msgstr "Частота:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:105
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:100
msgid "8 kHz"
msgstr "8 кГц"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:106
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:101
msgid "11.025 kHz"
msgstr "11.025 кГц"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:107
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:102
msgid "16 kHz"
msgstr "16 кГц"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:108
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:103
msgid "22.05 kHz"
msgstr "22.05 кГц"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:109
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:104
msgid "24 kHz"
msgstr "24 кГц"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:110
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:105
msgid "32 kHz"
msgstr "32 кГц"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:111
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:106
msgid "44.1 kHz"
msgstr "44.1 кГц"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:112
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:107
msgid "48 kHz"
msgstr "48 кГц"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:115
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:110
msgid "Channels:"
msgstr "Каналы:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:117
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:112
msgid "Mono"
msgstr "Моно"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:118
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:113
msgid "Stereo"
msgstr "Стерео"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:119
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:114
msgid "2.1"
msgstr "2.1"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:120
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:115
msgid "4"
msgstr "4"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:121
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:116
msgid "5"
msgstr "5"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:122
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:117
msgid "5.1"
msgstr "5.1"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:123
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:118
msgid "6.1"
msgstr "6.1"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:124
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:119
msgid "7.1"
msgstr "7.1"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:128
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:123
msgid "Swap Stereo"
msgstr "Обмен местами каналов"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:132
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:127
msgid "Headphone friendly mode"
msgstr "Ориентированный на наушники режим"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:136
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:131
msgid "Spatial voices:"
msgstr "Объёмные голоса:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:137
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:132
msgid "VOCS^None"
msgstr "Отключены"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:138
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:133
msgid "VOCS^Taunts"
msgstr "Насмешки"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:139
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:134
msgid "VOCS^All"
msgstr "Все"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:142
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:137
msgid "Taunt range:"
msgstr "Радиус насмешек:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:145
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:140
msgid "RNG^Very short"
msgstr "Очень маленький"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:146
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:141
msgid "RNG^Short"
msgstr "Маленький"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:147
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:142
msgid "RNG^Normal"
msgstr "Обычный"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:148
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:143
msgid "RNG^Long"
msgstr "Большой"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:149
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:144
msgid "RNG^Full"
msgstr "Полный"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:156
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:151
msgid "Automatic taunts"
msgstr "Автоматические насмешки"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:165
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:160
msgid "Time warning:"
msgstr "Предупреждение о таймауте за:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:167
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:162
msgid "WRN^None"
msgstr "Нет"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:168
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:163
msgid "1 minute"
msgstr "1 минуту"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:169
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:164
msgid "5 minutes"
msgstr "5 минут"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:170
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:165
msgid "WRN^Both"
msgstr "1 и 5 минут"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:173
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:168
msgid "Hit indicator"
msgstr "Оповещать о попадании"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:175
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:170
msgid "Menu sounds"
msgstr "Звуки меню"
msgid "Decals"
msgstr "Декали:"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:120
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:118
+msgid "Decals on models"
+msgstr ""
+
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:122
msgid "Distance:"
msgstr "Дальность:"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:126
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:128
msgid "Time:"
msgstr "Время:"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:132
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:134
msgid "Use lightmaps"
msgstr "Использовать карты освещения"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:133
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:135
msgid "Deluxe mapping"
msgstr "Особое качество"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:135
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:137
msgid "Gloss"
msgstr "Блеск"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:138
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:140
msgid "Offset mapping"
msgstr "Офсетное текстурирование"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:140
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:142
msgid "Relief mapping"
msgstr "Рельефное текстурирование"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:143
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:145
msgid "Reflections:"
msgstr "Отражения:"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:146
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:148
msgid "Blurred"
msgstr "Размытые"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:147
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:149
msgid "REFL^Good"
msgstr "Хорошие"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:148
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:150
msgid "Sharp"
msgstr "Резкие"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:153
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:155
msgid "Show surfaces"
msgstr "Показывать поверхности"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:155
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:157
msgid "No dynamic lighting"
msgstr "Без динамического освещения"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:157
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:159
msgid "Flash blend approximation"
msgstr "Грубая имитация"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:159
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:161
msgid "Realtime dynamic lighting"
msgstr "Дин. освещение в реальном времени"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:160
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:164
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:162
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:166
msgid "Shadows"
msgstr "Тени"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:163
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:165
msgid "Realtime world lighting"
msgstr "Дин. освещение мира в реальном времени"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:168
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:170
msgid "Use normal maps"
msgstr "Использовать карты нормалей"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:170
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:172
msgid "Soft shadows"
msgstr "Мягкие тени"
# Перевод может быть неверным.
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:173
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:175
msgid "Coronas"
msgstr "Короны"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:174
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:176
msgid "Use Occlusion Queries"
msgstr "Использовать Occlusion Queries (Проверка видимости)"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:176
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:178
msgid "Bloom"
msgstr "Свечение"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:178
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:180
msgid "High Dynamic Range (HDR)"
msgstr "High Dynamic Range (HDR)"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:182
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:184
msgid "Motion blur:"
msgstr "Размытие от движения:"
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:187
-#, fuzzy
-msgid "Damage & water blur"
-msgstr "Размытие от урона:"
-
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:188
-#, fuzzy
-msgid "Powerup sharpen"
-msgstr "Панель бонусов"
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:189
+msgid "Blur and sharpen postprocessing"
+msgstr ""
#: qcsrc/menu/xonotic/dialog_settings_input.c:26
msgid "Key bindings:"
msgid "Singleplayer"
msgstr "Одиночная игра"
-#: qcsrc/menu/xonotic/dialog_singleplayer.c:59
+#: qcsrc/menu/xonotic/dialog_singleplayer.c:127
msgid "Instant action! (random map with bots)"
msgstr "Быстрая игра (случайная карта с ботами)"
-#: qcsrc/menu/xonotic/dialog_singleplayer.c:80
+#: qcsrc/menu/xonotic/dialog_singleplayer.c:148
msgid "Start Singleplayer!"
msgstr "Начать одиночную игру"
msgid "Bookmark"
msgstr "В закладки"
-#: qcsrc/menu/xonotic/serverlist.c:523
+#: qcsrc/menu/xonotic/serverlist.c:527
msgid "Ping"
msgstr "Пинг"
-#: qcsrc/menu/xonotic/serverlist.c:524
+#: qcsrc/menu/xonotic/serverlist.c:528
msgid "Host name"
msgstr "Имя сервера"
-#: qcsrc/menu/xonotic/serverlist.c:525
+#: qcsrc/menu/xonotic/serverlist.c:529
msgid "Map"
msgstr "Карта"
-#: qcsrc/menu/xonotic/serverlist.c:526
+#: qcsrc/menu/xonotic/serverlist.c:530
msgid "Type"
msgstr "Вид"
-#: qcsrc/menu/xonotic/serverlist.c:527
+#: qcsrc/menu/xonotic/serverlist.c:531
msgid "Players"
msgstr "Игроки"
msgid "<AUTHOR>"
msgstr "<АВТОР>"
-#: qcsrc/menu/xonotic/skinlist.c:163
-#, c-format
-msgid "%s: %s"
-msgstr "%s: %s"
-
#: qcsrc/menu/xonotic/slider_decibels.c:50
msgid "VOL^OFF"
msgstr "Отключено"
msgid "Crylink"
msgstr "Crylink"
-#: qcsrc/server/w_crylink.qc:664
+#: qcsrc/server/w_crylink.qc:666
#, c-format
msgid "%s succeeded at self-destructing themself with the Crylink"
msgstr ""
-#: qcsrc/server/w_crylink.qc:669
+#: qcsrc/server/w_crylink.qc:671
#, c-format
msgid "%s could not hide from %s's Crylink"
msgstr ""
-#: qcsrc/server/w_crylink.qc:671
+#: qcsrc/server/w_crylink.qc:673
#, c-format
msgid "%s was too close to %s's Crylink"
msgstr ""
-#: qcsrc/server/w_crylink.qc:673
+#: qcsrc/server/w_crylink.qc:675
#, c-format
msgid "%s took a close look at %s's Crylink"
msgstr ""
msgid "Electro"
msgstr "Electro"
-#: qcsrc/server/w_electro.qc:577
+#: qcsrc/server/w_electro.qc:574
#, c-format
msgid "%s could not remember where they put plasma"
msgstr ""
-#: qcsrc/server/w_electro.qc:579
+#: qcsrc/server/w_electro.qc:576
#, c-format
msgid "%s played with plasma"
msgstr ""
-#: qcsrc/server/w_electro.qc:586
+#: qcsrc/server/w_electro.qc:583
#, c-format
msgid "%s just noticed %s's blue ball"
msgstr ""
-#: qcsrc/server/w_electro.qc:588
+#: qcsrc/server/w_electro.qc:585
#, c-format
msgid "%s got in touch with %s's blue ball"
msgstr ""
-#: qcsrc/server/w_electro.qc:593
+#: qcsrc/server/w_electro.qc:590
#, c-format
msgid "%s felt the electrifying air of %s's combo"
msgstr ""
-#: qcsrc/server/w_electro.qc:595
+#: qcsrc/server/w_electro.qc:592
#, c-format
msgid "%s got too close to %s's blue beam"
msgstr ""
-#: qcsrc/server/w_electro.qc:597
+#: qcsrc/server/w_electro.qc:594
#, c-format
msgid "%s was blasted by %s's blue beam"
msgstr ""
msgid "Mortar"
msgstr "Mortar"
-#: qcsrc/server/w_grenadelauncher.qc:379
+#: qcsrc/server/w_grenadelauncher.qc:383
#, c-format
msgid "%s tried out his own grenade"
msgstr ""
-#: qcsrc/server/w_grenadelauncher.qc:381
+#: qcsrc/server/w_grenadelauncher.qc:385
#, c-format
msgid "%s detonated"
msgstr ""
-#: qcsrc/server/w_grenadelauncher.qc:387
+#: qcsrc/server/w_grenadelauncher.qc:391
#, c-format
msgid "%s didn't see %s's grenade"
msgstr ""
-#: qcsrc/server/w_grenadelauncher.qc:389
+#: qcsrc/server/w_grenadelauncher.qc:393
#, c-format
msgid "%s almost dodged %s's grenade"
msgstr ""
-#: qcsrc/server/w_grenadelauncher.qc:391
+#: qcsrc/server/w_grenadelauncher.qc:395
#, c-format
msgid "%s ate %s's grenade"
msgstr ""
msgid "Hagar"
msgstr "Hagar"
-#: qcsrc/server/w_hagar.qc:382 qcsrc/server/w_seeker.qc:655
+#: qcsrc/server/w_hagar.qc:395 qcsrc/server/w_seeker.qc:655
#, c-format
msgid "%s played with tiny rockets"
msgstr ""
-#: qcsrc/server/w_hagar.qc:386
+#: qcsrc/server/w_hagar.qc:399
#, c-format
msgid "%s hoped %s's missiles wouldn't bounce"
msgstr ""
-#: qcsrc/server/w_hagar.qc:388 qcsrc/server/w_seeker.qc:661
+#: qcsrc/server/w_hagar.qc:401 qcsrc/server/w_seeker.qc:661
#, c-format
msgid "%s was pummeled by %s"
msgstr ""
msgid "MinstaNex"
msgstr "MinstaNex"
-#: qcsrc/server/w_minstanex.qc:290 qcsrc/server/w_nex.qc:253
-#: qcsrc/server/w_shotgun.qc:209 qcsrc/server/w_uzi.qc:317
+#: qcsrc/server/w_minstanex.qc:293 qcsrc/server/w_nex.qc:253
+#: qcsrc/server/w_shotgun.qc:215 qcsrc/server/w_uzi.qc:317
#, c-format
msgid "%s is now thinking with portals"
msgstr ""
-#: qcsrc/server/w_minstanex.qc:292 qcsrc/server/w_nex.qc:255
+#: qcsrc/server/w_minstanex.qc:295 qcsrc/server/w_nex.qc:255
#, c-format
msgid "%s has been vaporized by %s"
msgstr ""
msgid "Shotgun"
msgstr "Shotgun"
-#: qcsrc/server/w_shotgun.qc:213
+#: qcsrc/server/w_shotgun.qc:219
#, c-format
msgid "%2$s ^7slapped %1$s ^7around a bit with a large ^2shotgun"
msgstr ""
-#: qcsrc/server/w_shotgun.qc:215
+#: qcsrc/server/w_shotgun.qc:221
#, c-format
msgid "%s was gunned by %s"
msgstr ""
msgid "@!#%'n Tuba"
msgstr "@!#%'n Tuba"
-#: qcsrc/server/w_tuba.qc:263
+#: qcsrc/server/w_tuba.qc:252
#, c-format
msgid "%s hurt his own ears with the @!#%%'n Tuba"
msgstr ""
-#: qcsrc/server/w_tuba.qc:267
+#: qcsrc/server/w_tuba.qc:256
#, c-format
msgid "%s died of %s's great playing on the @!#%%'n Tuba"
msgstr ""
msgid "%s was riddled full of holes by %s"
msgstr ""
+#, fuzzy
+#~ msgid "Damage & water blur"
+#~ msgstr "Размытие от урона:"
+
+#, fuzzy
+#~ msgid "Powerup sharpen"
+#~ msgstr "Панель бонусов"
+
#~ msgid "Speedometer"
#~ msgstr "Спидометр"
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2011-06-27 18:24+0200\n"
+"POT-Creation-Date: 2011-09-02 07:51+0200\n"
"PO-Revision-Date: 2011-01-11 22:51+ZONE\n"
"Last-Translator: marcus256 <marcus256@users.sourceforge.net>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
+#: qcsrc/common/mapinfo.qc:1092 qcsrc/menu/xonotic/skinlist.c:163
+#, c-format
+msgid "%s: %s"
+msgstr ""
+
#: qcsrc/menu/gamecommand.qc:47
#, c-format
msgid "error: status is %d\n"
msgstr ""
#: qcsrc/menu/xonotic/campaign.c:284
-#: qcsrc/menu/xonotic/dialog_singleplayer.c:66
+#: qcsrc/menu/xonotic/dialog_singleplayer.c:134
msgid "???"
msgstr ""
msgstr ""
#: qcsrc/menu/xonotic/dialog_hudpanel_ammo.c:29
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:36
#: qcsrc/menu/xonotic/dialog_hudpanel_healtharmor.c:28
#: qcsrc/menu/xonotic/dialog_hudpanel_healtharmor.c:40
#: qcsrc/menu/xonotic/dialog_hudpanel_powerups.c:28
msgstr ""
#: qcsrc/menu/xonotic/dialog_hudpanel_ammo.c:30
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:38
#: qcsrc/menu/xonotic/dialog_hudpanel_healtharmor.c:30
#: qcsrc/menu/xonotic/dialog_hudpanel_healtharmor.c:41
#: qcsrc/menu/xonotic/dialog_hudpanel_powerups.c:30
msgid "Right"
msgstr ""
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:4
+msgid "Centerprint"
+msgstr ""
+
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:23
+msgid "Message duration:"
+msgstr ""
+
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:27
+#, fuzzy
+msgid "Fade time:"
+msgstr "Tona ut efter:"
+
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:31
+msgid "Flip messages order"
+msgstr ""
+
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:33
+#, fuzzy
+msgid "Text alignment:"
+msgstr "Avstånd för pikar:"
+
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:37
+#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup_weapons.c:50
+msgid "Center"
+msgstr ""
+
+#: qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c:41
+msgid "Font scale:"
+msgstr ""
+
#: qcsrc/menu/xonotic/dialog_hudpanel_chat.c:4
msgid "Chat Panel"
msgstr ""
msgid "Physics Panel"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:23
+#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:22
#: qcsrc/menu/xonotic/dialog_hudpanel_pressedkeys.c:21
#: qcsrc/menu/xonotic/dialog_hudpanel_radar.c:21
msgid "Panel disabled"
msgstr ""
+#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:23
+msgid "Panel enabled"
+msgstr ""
+
#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:24
-msgid "Panel enabled if not observing"
+msgid "Panel enabled even observing"
msgstr ""
#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:25
-#: qcsrc/menu/xonotic/dialog_hudpanel_pressedkeys.c:23
-#: qcsrc/menu/xonotic/dialog_hudpanel_radar.c:23
-msgid "Panel always enabled"
+msgid "Panel enabled only in Race/CTS"
msgstr ""
#: qcsrc/menu/xonotic/dialog_hudpanel_physics.c:31
msgid "Panel enabled when spectating"
msgstr ""
+#: qcsrc/menu/xonotic/dialog_hudpanel_pressedkeys.c:23
+#: qcsrc/menu/xonotic/dialog_hudpanel_radar.c:23
+msgid "Panel always enabled"
+msgstr ""
+
#: qcsrc/menu/xonotic/dialog_hudpanel_pressedkeys.c:30
msgid "Forced aspect:"
msgstr ""
msgid "Player Setup"
msgstr "Spelarinställning"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:35
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:34
msgid "Game type:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:47
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:46
msgid "Match settings:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:50
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:49
msgid "Time limit:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:54
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:62
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:53
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:61
msgid "Use map specified default"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:57
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:56
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:155
#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:156
#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:157
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:158
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:161
#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:162
#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:163
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:164
msgid "Point limit:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:65
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:64
msgid "Player slots:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:68
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:67
msgid "Number of bots:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:72
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:71
msgid "Bot skill:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:75
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:74
msgid "Botlike"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:76
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:75
msgid "Beginner"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:77
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:76
msgid "You will win"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:78
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:77
msgid "You can win"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:79
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:78
msgid "You might win"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:80
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:79
msgid "Advanced"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:81
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:80
msgid "Expert"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:82
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:81
msgid "Pro"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:83
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:82
msgid "Assassin"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:84
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:83
msgid "Unhuman"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:85
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:84
msgid "Godlike"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:89
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:88
msgid "Mutators..."
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:98
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:97
#: qcsrc/menu/xonotic/dialog_settings_misc.c:57
msgid "Advanced settings..."
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:105
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:104
msgid "Map list:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:111
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:110
msgid "Select all"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:114
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:113
msgid "Select none"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:120
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:119
msgid "Start Multiplayer!"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:155
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:154
msgid "Capture limit:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:159
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:158
msgid "Lives:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:160
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:159
msgid "Laps:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:161
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:160
msgid "Goals:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:165
+#: qcsrc/menu/xonotic/dialog_multiplayer_create.c:164
msgid "Frag limit:"
msgstr ""
msgid "Game types:"
msgstr "Speltyper:"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create_mapinfo.c:119
+#: qcsrc/menu/xonotic/dialog_multiplayer_create_mapinfo.c:118
#: qcsrc/menu/xonotic/dialog_multiplayer_join_serverinfo.c:314
msgid "Close"
msgstr "Stäng"
-#: qcsrc/menu/xonotic/dialog_multiplayer_create_mapinfo.c:122
-#: qcsrc/menu/xonotic/dialog_multiplayer_demo.c:46
-msgid "Play"
+#: qcsrc/menu/xonotic/dialog_multiplayer_create_mapinfo.c:121
+#, fuzzy
+msgid "MAP^Play"
msgstr "Spela"
#: qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.c:7
msgid "Timedemo"
msgstr ""
+#: qcsrc/menu/xonotic/dialog_multiplayer_demo.c:46
+#, fuzzy
+msgid "DEMO^Play"
+msgstr "Spela"
+
#: qcsrc/menu/xonotic/dialog_multiplayer_join.c:4
msgid "Join"
msgstr ""
msgstr ""
#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c:195
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:178
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:191
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:173
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:194
#: qcsrc/menu/xonotic/dialog_settings_misc.c:30
#: qcsrc/menu/xonotic/dialog_settings_misc.c:41
#: qcsrc/menu/xonotic/dialog_settings_video.c:109
msgid "Draw 1st person weapon model"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup_weapons.c:50
-msgid "Center"
-msgstr ""
-
#: qcsrc/menu/xonotic/dialog_multiplayer_playersetup_weapons.c:55
msgid "Flip view horizontally"
msgstr ""
msgid "Music:"
msgstr "Musik:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:40
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:41
#, fuzzy
msgid "VOL^Ambient:"
msgstr "Bakgrund"
msgid "Info:"
msgstr "Info:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:57
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:55
msgid "Items:"
msgstr "Saker:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:65
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:62
msgid "Pain:"
msgstr "Smärta:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:73
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:69
msgid "Player:"
msgstr "Spelare:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:81
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:76
msgid "Shots:"
msgstr "Skott:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:88
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:83
msgid "Voice:"
msgstr "Röst:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:96
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:91
msgid "Weapons:"
msgstr "Vapen:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:103
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:161
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:98
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:156
msgid "Frequency:"
msgstr "Frekvens:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:105
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:100
msgid "8 kHz"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:106
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:101
msgid "11.025 kHz"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:107
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:102
msgid "16 kHz"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:108
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:103
msgid "22.05 kHz"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:109
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:104
msgid "24 kHz"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:110
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:105
msgid "32 kHz"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:111
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:106
msgid "44.1 kHz"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:112
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:107
msgid "48 kHz"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:115
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:110
msgid "Channels:"
msgstr "Kanaler."
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:117
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:112
msgid "Mono"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:118
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:113
msgid "Stereo"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:119
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:114
msgid "2.1"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:120
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:115
msgid "4"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:121
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:116
msgid "5"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:122
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:117
msgid "5.1"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:123
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:118
msgid "6.1"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:124
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:119
msgid "7.1"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:128
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:123
msgid "Swap Stereo"
msgstr "Växla Stereo"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:132
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:127
msgid "Headphone friendly mode"
msgstr "Hörlursvänligt läge"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:136
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:131
msgid "Spatial voices:"
msgstr "Spatiala kanaler:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:137
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:132
msgid "VOCS^None"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:138
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:133
#, fuzzy
msgid "VOCS^Taunts"
msgstr "Pikar"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:139
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:134
msgid "VOCS^All"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:142
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:137
msgid "Taunt range:"
msgstr "Avstånd för pikar:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:145
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:140
#, fuzzy
msgid "RNG^Very short"
msgstr "Väldigt kort"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:146
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:141
#, fuzzy
msgid "RNG^Short"
msgstr "Kort"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:147
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:142
#, fuzzy
msgid "RNG^Normal"
msgstr "Normalt"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:148
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:143
#, fuzzy
msgid "RNG^Long"
msgstr "Långt"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:149
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:144
#, fuzzy
msgid "RNG^Full"
msgstr "Fullt"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:156
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:151
msgid "Automatic taunts"
msgstr "Automatiska pikar"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:165
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:160
msgid "Time warning:"
msgstr "Tidsvarning:"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:167
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:162
msgid "WRN^None"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:168
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:163
msgid "1 minute"
msgstr "1 minut"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:169
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:164
msgid "5 minutes"
msgstr "5 minuter"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:170
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:165
#, fuzzy
msgid "WRN^Both"
msgstr "Både och"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:173
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:168
msgid "Hit indicator"
msgstr "Skadoindikator"
-#: qcsrc/menu/xonotic/dialog_settings_audio.c:175
+#: qcsrc/menu/xonotic/dialog_settings_audio.c:170
msgid "Menu sounds"
msgstr "Menyljud"
msgid "Decals"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:120
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:118
+msgid "Decals on models"
+msgstr ""
+
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:122
msgid "Distance:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:126
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:128
msgid "Time:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:132
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:134
msgid "Use lightmaps"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:133
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:135
msgid "Deluxe mapping"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:135
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:137
msgid "Gloss"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:138
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:140
msgid "Offset mapping"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:140
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:142
msgid "Relief mapping"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:143
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:145
msgid "Reflections:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:146
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:148
msgid "Blurred"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:147
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:149
msgid "REFL^Good"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:148
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:150
msgid "Sharp"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:153
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:155
msgid "Show surfaces"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:155
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:157
msgid "No dynamic lighting"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:157
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:159
msgid "Flash blend approximation"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:159
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:161
msgid "Realtime dynamic lighting"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:160
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:164
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:162
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:166
msgid "Shadows"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:163
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:165
msgid "Realtime world lighting"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:168
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:170
msgid "Use normal maps"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:170
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:172
msgid "Soft shadows"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:173
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:175
msgid "Coronas"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:174
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:176
msgid "Use Occlusion Queries"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:176
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:178
msgid "Bloom"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:178
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:180
msgid "High Dynamic Range (HDR)"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:182
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:184
msgid "Motion blur:"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:187
-msgid "Damage & water blur"
-msgstr ""
-
-#: qcsrc/menu/xonotic/dialog_settings_effects.c:188
-msgid "Powerup sharpen"
+#: qcsrc/menu/xonotic/dialog_settings_effects.c:189
+msgid "Blur and sharpen postprocessing"
msgstr ""
#: qcsrc/menu/xonotic/dialog_settings_input.c:26
msgid "Singleplayer"
msgstr "En Spelare"
-#: qcsrc/menu/xonotic/dialog_singleplayer.c:59
+#: qcsrc/menu/xonotic/dialog_singleplayer.c:127
msgid "Instant action! (random map with bots)"
msgstr ""
-#: qcsrc/menu/xonotic/dialog_singleplayer.c:80
+#: qcsrc/menu/xonotic/dialog_singleplayer.c:148
msgid "Start Singleplayer!"
msgstr ""
msgid "Bookmark"
msgstr ""
-#: qcsrc/menu/xonotic/serverlist.c:523
+#: qcsrc/menu/xonotic/serverlist.c:527
msgid "Ping"
msgstr ""
-#: qcsrc/menu/xonotic/serverlist.c:524
+#: qcsrc/menu/xonotic/serverlist.c:528
msgid "Host name"
msgstr ""
-#: qcsrc/menu/xonotic/serverlist.c:525
+#: qcsrc/menu/xonotic/serverlist.c:529
msgid "Map"
msgstr ""
-#: qcsrc/menu/xonotic/serverlist.c:526
+#: qcsrc/menu/xonotic/serverlist.c:530
msgid "Type"
msgstr ""
-#: qcsrc/menu/xonotic/serverlist.c:527
+#: qcsrc/menu/xonotic/serverlist.c:531
msgid "Players"
msgstr ""
msgid "<AUTHOR>"
msgstr ""
-#: qcsrc/menu/xonotic/skinlist.c:163
-#, c-format
-msgid "%s: %s"
-msgstr ""
-
#: qcsrc/menu/xonotic/slider_decibels.c:50
msgid "VOL^OFF"
msgstr ""
msgid "Crylink"
msgstr ""
-#: qcsrc/server/w_crylink.qc:664
+#: qcsrc/server/w_crylink.qc:666
#, c-format
msgid "%s succeeded at self-destructing themself with the Crylink"
msgstr ""
-#: qcsrc/server/w_crylink.qc:669
+#: qcsrc/server/w_crylink.qc:671
#, c-format
msgid "%s could not hide from %s's Crylink"
msgstr ""
-#: qcsrc/server/w_crylink.qc:671
+#: qcsrc/server/w_crylink.qc:673
#, c-format
msgid "%s was too close to %s's Crylink"
msgstr ""
-#: qcsrc/server/w_crylink.qc:673
+#: qcsrc/server/w_crylink.qc:675
#, c-format
msgid "%s took a close look at %s's Crylink"
msgstr ""
msgid "Electro"
msgstr ""
-#: qcsrc/server/w_electro.qc:577
+#: qcsrc/server/w_electro.qc:574
#, c-format
msgid "%s could not remember where they put plasma"
msgstr ""
-#: qcsrc/server/w_electro.qc:579
+#: qcsrc/server/w_electro.qc:576
#, c-format
msgid "%s played with plasma"
msgstr ""
-#: qcsrc/server/w_electro.qc:586
+#: qcsrc/server/w_electro.qc:583
#, c-format
msgid "%s just noticed %s's blue ball"
msgstr ""
-#: qcsrc/server/w_electro.qc:588
+#: qcsrc/server/w_electro.qc:585
#, c-format
msgid "%s got in touch with %s's blue ball"
msgstr ""
-#: qcsrc/server/w_electro.qc:593
+#: qcsrc/server/w_electro.qc:590
#, c-format
msgid "%s felt the electrifying air of %s's combo"
msgstr ""
-#: qcsrc/server/w_electro.qc:595
+#: qcsrc/server/w_electro.qc:592
#, c-format
msgid "%s got too close to %s's blue beam"
msgstr ""
-#: qcsrc/server/w_electro.qc:597
+#: qcsrc/server/w_electro.qc:594
#, c-format
msgid "%s was blasted by %s's blue beam"
msgstr ""
msgid "Mortar"
msgstr ""
-#: qcsrc/server/w_grenadelauncher.qc:379
+#: qcsrc/server/w_grenadelauncher.qc:383
#, c-format
msgid "%s tried out his own grenade"
msgstr ""
-#: qcsrc/server/w_grenadelauncher.qc:381
+#: qcsrc/server/w_grenadelauncher.qc:385
#, c-format
msgid "%s detonated"
msgstr ""
-#: qcsrc/server/w_grenadelauncher.qc:387
+#: qcsrc/server/w_grenadelauncher.qc:391
#, c-format
msgid "%s didn't see %s's grenade"
msgstr ""
-#: qcsrc/server/w_grenadelauncher.qc:389
+#: qcsrc/server/w_grenadelauncher.qc:393
#, c-format
msgid "%s almost dodged %s's grenade"
msgstr ""
-#: qcsrc/server/w_grenadelauncher.qc:391
+#: qcsrc/server/w_grenadelauncher.qc:395
#, c-format
msgid "%s ate %s's grenade"
msgstr ""
msgid "Hagar"
msgstr ""
-#: qcsrc/server/w_hagar.qc:382 qcsrc/server/w_seeker.qc:655
+#: qcsrc/server/w_hagar.qc:395 qcsrc/server/w_seeker.qc:655
#, c-format
msgid "%s played with tiny rockets"
msgstr ""
-#: qcsrc/server/w_hagar.qc:386
+#: qcsrc/server/w_hagar.qc:399
#, c-format
msgid "%s hoped %s's missiles wouldn't bounce"
msgstr ""
-#: qcsrc/server/w_hagar.qc:388 qcsrc/server/w_seeker.qc:661
+#: qcsrc/server/w_hagar.qc:401 qcsrc/server/w_seeker.qc:661
#, c-format
msgid "%s was pummeled by %s"
msgstr ""
msgid "MinstaNex"
msgstr ""
-#: qcsrc/server/w_minstanex.qc:290 qcsrc/server/w_nex.qc:253
-#: qcsrc/server/w_shotgun.qc:209 qcsrc/server/w_uzi.qc:317
+#: qcsrc/server/w_minstanex.qc:293 qcsrc/server/w_nex.qc:253
+#: qcsrc/server/w_shotgun.qc:215 qcsrc/server/w_uzi.qc:317
#, c-format
msgid "%s is now thinking with portals"
msgstr ""
-#: qcsrc/server/w_minstanex.qc:292 qcsrc/server/w_nex.qc:255
+#: qcsrc/server/w_minstanex.qc:295 qcsrc/server/w_nex.qc:255
#, c-format
msgid "%s has been vaporized by %s"
msgstr ""
msgid "Shotgun"
msgstr "Kort"
-#: qcsrc/server/w_shotgun.qc:213
+#: qcsrc/server/w_shotgun.qc:219
#, c-format
msgid "%2$s ^7slapped %1$s ^7around a bit with a large ^2shotgun"
msgstr ""
-#: qcsrc/server/w_shotgun.qc:215
+#: qcsrc/server/w_shotgun.qc:221
#, c-format
msgid "%s was gunned by %s"
msgstr ""
msgid "@!#%'n Tuba"
msgstr "@!#%'n Tubakastning"
-#: qcsrc/server/w_tuba.qc:263
+#: qcsrc/server/w_tuba.qc:252
#, c-format
msgid "%s hurt his own ears with the @!#%%'n Tuba"
msgstr ""
-#: qcsrc/server/w_tuba.qc:267
+#: qcsrc/server/w_tuba.qc:256
#, c-format
msgid "%s died of %s's great playing on the @!#%%'n Tuba"
msgstr ""
--- /dev/null
+SCM := $(shell if [ -d .svn ]; then echo svn; elif [ -d ../.git ]; then echo git; fi)
+FTEQCC ?= fteqcc
+PERL ?= perl
+
+FTEQCCFLAGS_WATERMARK ?= -DWATERMARK='"$(shell git describe)"' -DCVAR_POPCON
+FTEQCCFLAGS ?= -Werror -Wno-Q302 -O3 -Ono-c -Ono-cs $(FTEQCCFLAGS_EXTRA) $(FTEQCCFLAGS_WATERMARK)
+FTEQCCFLAGS_PROGS ?=
+FTEQCCFLAGS_MENU ?=
+
+# NOTE: use -DUSE_FTE instead of -TFTE here!
+# It will automagically add an engine check with -TID and then change back to -TFTE
+FTEQCCFLAGS_CSPROGS ?=
+
+# xonotic build system overrides this by command line argument to turn off the update-cvarcount step
+XON_BUILDSYSTEM =
+
+all: qc
+
+.PHONY: qc
+qc:
+ $(MAKE) qc-recursive
+
+.PHONY: qc-recursive
+qc-recursive: ../menu.dat ../progs.dat ../csprogs.dat
+
+.PHONY: clean
+clean:
+ rm -f ../progs.dat ../menu.dat ../csprogs.dat
+
+FILES_CSPROGS = $(shell find client common warpzonelib -type f -not -name fteqcc.log -not -name qc.asm) server/w_*.qc
+../csprogs.dat: $(FILES_CSPROGS)
+ @echo make[1]: Entering directory \`$(PWD)/client\'
+ cd client && $(FTEQCC) $(FTEQCCFLAGS) $(FTEQCCFLAGS_CSPROGS)
+
+FILES_PROGS = $(shell find server common warpzonelib -type f -not -name fteqcc.log -not -name qc.asm) server/w_*.qc
+../progs.dat: $(FILES_PROGS)
+ @echo make[1]: Entering directory \`$(PWD)/server\'
+ cd server && $(FTEQCC) $(FTEQCCFLAGS) $(FTEQCCFLAGS_PROGS)
+
+FILES_MENU = $(shell find menu common warpzonelib -type f -not -name fteqcc.log -not -name qc.asm) server/w_*.qc
+../menu.dat: $(FILES_MENU)
+ @echo make[1]: Entering directory \`$(PWD)/menu\'
+ cd menu && $(FTEQCC) $(FTEQCCFLAGS) $(FTEQCCFLAGS_MENU)
+
+.PHONY: testcase
+testcase:
+ cd testcase && $(FTEQCC) $(FTEQCCFLAGS) $(FTEQCCFLAGS_CSPROGS) -DTESTCASE="$$TESTCASE"
playerslots[e].ping_movementloss = ml / 255.0;
}
-void Net_Notify() {
- float type;
- type = ReadByte();
-
- if(type == CSQC_KILLNOTIFY)
- {
- HUD_KillNotify(ReadString(), ReadString(), ReadString(), ReadShort(), ReadByte());
- }
- else if(type == CSQC_CENTERPRINT)
- {
- HUD_Centerprint(ReadString(), ReadString(), ReadShort(), ReadByte());
- }
-}
-
void Net_WeaponComplain() {
complain_weapon = ReadByte();
announce_snd = strzone(ReadString());
bHandled = true;
break;
- case TE_CSQC_NOTIFY:
- Net_Notify();
+ case TE_CSQC_KILLNOTIFY:
+ HUD_KillNotify(ReadString(), ReadString(), ReadString(), ReadShort(), ReadByte());
+ bHandled = true;
+ break;
+ case TE_CSQC_KILLCENTERPRINT:
+ HUD_KillCenterprint(ReadString(), ReadString(), ReadShort(), ReadByte());
+ bHandled = true;
+ break;
+ case TE_CSQC_CENTERPRINT_GENERIC:
+ float id;
+ string s;
+ id = ReadByte();
+ s = ReadString();
+ if (id != 0 && s != "")
+ centerprint_generic(id, s, ReadByte(), ReadByte());
+ else
+ centerprint_generic(id, s, 0, 0);
bHandled = true;
break;
case TE_CSQC_WEAPONCOMPLAIN:
zoomdir = button_zoom;
if(hud == HUD_NORMAL)
- if((getstati(STAT_ACTIVEWEAPON) == WEP_NEX && nex_scope) || (getstati(STAT_ACTIVEWEAPON) == WEP_RIFLE && rifle_scope)) // do NOT use switchweapon here
+ if((activeweapon == WEP_NEX && nex_scope) || (activeweapon == WEP_RIFLE && rifle_scope)) // do NOT use switchweapon here
zoomdir += button_attack2;
if(spectatee_status > 0 || isdemo())
{
vector freeze_org, freeze_ang;
entity nightvision_noise, nightvision_noise2;
+#define MAX_TIME_DIFF 5
float pickup_crosshair_time, pickup_crosshair_size;
float hit_time, typehit_time;
float nextsound_hit_time, nextsound_typehit_time;
ticrate = getstatf(STAT_MOVEVARS_TICRATE) * getstatf(STAT_MOVEVARS_TIMESCALE);
- if(autocvar_cl_lockview || (autocvar__hud_configure && spectatee_status <= 0) || intermission > 1)
- {
- R_SetView(VF_ORIGIN, freeze_org);
- R_SetView(VF_ANGLES, freeze_ang);
- }
- else
- {
- freeze_org = R_SetView3fv(VF_ORIGIN);
- freeze_ang = R_SetView3fv(VF_ANGLES);
- }
-
// event chase camera
if(autocvar_chase_active <= 0) // greater than 0 means it's enabled manually, and this code is skipped
{
if(spectatee_status >= 0 && (autocvar_cl_eventchase_death && getstati(STAT_HEALTH) <= 0 && !intermission) || intermission)
{
+ // make special vector since we can't use view_origin (It is one frame old as of this code, it gets set later with the results this code makes.)
+ vector current_view_origin = R_SetView3fv(VF_ORIGIN);
+
// We must enable chase_active to get a third person view (weapon viewmodel hidden and own player model showing).
// Ideally, there should be another way to enable third person cameras, such as through R_SetView()
if(!autocvar_chase_active)
vector eventchase_target_origin;
makevectors(view_angles);
// pass 1, used to check where the camera would go and obtain the trace_fraction
- eventchase_target_origin = freeze_org - v_forward * eventchase_current_distance;
-
- WarpZone_TraceLine(freeze_org, eventchase_target_origin, MOVE_WORLDONLY, self);
+ eventchase_target_origin = current_view_origin - v_forward * eventchase_current_distance;
+ WarpZone_TraceLine(current_view_origin, eventchase_target_origin, MOVE_WORLDONLY, self);
// pass 2, also multiplying view_forward with trace_fraction, to prevent the camera from going through walls
// The 0.1 subtraction is to not limit the camera precisely at the wall surface, as that allows the view to poke through
- eventchase_target_origin = freeze_org - v_forward * eventchase_current_distance * (trace_fraction - 0.1);
- WarpZone_TraceLine(freeze_org, eventchase_target_origin, MOVE_WORLDONLY, self);
+ eventchase_target_origin = current_view_origin - v_forward * eventchase_current_distance * (trace_fraction - 0.1);
+ WarpZone_TraceLine(current_view_origin, eventchase_target_origin, MOVE_WORLDONLY, self);
R_SetView(VF_ORIGIN, trace_endpos);
R_SetView(VF_ANGLES, WarpZone_TransformVAngles(WarpZone_trace_transform, view_angles));
eventchase_current_distance = 0; // start from 0 next time
}
}
+
+ // do lockview after event chase camera so that it still applies whenever necessary.
+ if(autocvar_cl_lockview || (autocvar__hud_configure && spectatee_status <= 0) || intermission > 1)
+ {
+ R_SetView(VF_ORIGIN, freeze_org);
+ R_SetView(VF_ANGLES, freeze_ang);
+ }
+ else
+ {
+ freeze_org = R_SetView3fv(VF_ORIGIN);
+ freeze_ang = R_SetView3fv(VF_ANGLES);
+ }
WarpZone_FixView();
//WarpZone_FixPMove();
}
ColorTranslateMode = autocvar_cl_stripcolorcodes;
- activeweapon = getstati(STAT_SWITCHWEAPON);
+
+ // next WANTED weapon (for HUD)
+ switchweapon = getstati(STAT_SWITCHWEAPON);
+
+ // currently switching-to weapon (for crosshair)
+ switchingweapon = getstati(STAT_SWITCHINGWEAPON);
+
+ // actually active weapon (for zoom)
+ activeweapon = getstati(STAT_ACTIVEWEAPON);
+
f = (serverflags & SERVERFLAG_TEAMPLAY);
if(f != teamplay)
{
HUD_InitScores();
}
- if(last_weapon != activeweapon) {
+ if(last_switchweapon != switchweapon) {
weapontime = time;
- last_weapon = activeweapon;
+ last_switchweapon = switchweapon;
+ }
+ if(last_activeweapon != activeweapon) {
+ last_activeweapon = activeweapon;
e = get_weaponinfo(activeweapon);
if(e.netname != "")
}
if(autocvar_hud_damage && !autocvar_chase_active)
-
{
splash_size_x = max(vid_conwidth, vid_conheight);
splash_size_y = max(vid_conwidth, vid_conheight);
}
}
- if(autocvar_hud_postprocessing)
+ if(autocvar_hud_postprocessing) // TODO: Remove this code and re-do the postprocess handling in the engine, where it properly belongs.
{
- // all of this should be done in the engine eventually
-
// enable or disable rendering types if they are used or not
- if(cvar("r_glsl_postprocess_uservec1_enable") != (cvar("hud_postprocessing_maxbluralpha") != 0))
- cvar_set("r_glsl_postprocess_uservec1_enable", ftos(cvar("hud_postprocessing_maxbluralpha") != 0));
- if(cvar("r_glsl_postprocess_uservec2_enable") != (cvar("hud_powerup") != 0))
- cvar_set("r_glsl_postprocess_uservec2_enable", ftos(cvar("hud_powerup") != 0));
-
- // lets apply the postprocess effects from the previous two functions if needed
+ if(cvar("r_glsl_postprocess_uservec1_enable") != (autocvar_hud_postprocessing_maxbluralpha != 0)) { cvar_set("r_glsl_postprocess_uservec1_enable", ftos(autocvar_hud_postprocessing_maxbluralpha != 0)); }
+ if(cvar("r_glsl_postprocess_uservec2_enable") != (autocvar_hud_powerup != 0)) { cvar_set("r_glsl_postprocess_uservec2_enable", ftos(autocvar_hud_powerup != 0)); }
+
+ // blur postprocess handling done first (used by hud_damage and hud_contents)
if((damage_blurpostprocess_x || content_blurpostprocess_x) && autocvar_chase_active >= 0) // not while the event chase camera is active
{
float blurradius = bound(0, damage_blurpostprocess_y + content_blurpostprocess_y, autocvar_hud_postprocessing_maxblurradius);
old_bluralpha = 0;
}
- float sharpen_intensity;
- if (getstatf(STAT_STRENGTH_FINISHED) - time > 0)
- sharpen_intensity += (getstatf(STAT_STRENGTH_FINISHED) - time);
- if (getstatf(STAT_INVINCIBLE_FINISHED) - time > 0)
- sharpen_intensity += (getstatf(STAT_INVINCIBLE_FINISHED) - time);
-
+ // edge detection postprocess handling done second (used by hud_powerup)
+ float sharpen_intensity, strength_finished = getstatf(STAT_STRENGTH_FINISHED), invincible_finished = getstatf(STAT_INVINCIBLE_FINISHED);
+ if (strength_finished - time > 0) { sharpen_intensity += (strength_finished - time); }
+ if (invincible_finished - time > 0) { sharpen_intensity += (invincible_finished - time); }
+
+ sharpen_intensity = bound(0, ((getstati(STAT_HEALTH) > 0) ? sharpen_intensity : 0), 5); // Check to see if player is alive (if not, set 0) - also bound to fade out starting at 5 seconds.
+
if(autocvar_hud_powerup && sharpen_intensity > 0 && autocvar_chase_active >= 0) // not while the event chase camera is active
{
- sharpen_intensity = bound(0, sharpen_intensity, 5); // powerup warning time is 5 seconds, so fade the effect from there
-
if(sharpen_intensity != old_sharpen_intensity) // reduce cvar_set spam as much as possible
{
- cvar_set("r_glsl_postprocess_uservec2", strcat("0 ", ftos(-sharpen_intensity * cvar("hud_powerup")), " 0 0"));
+ cvar_set("r_glsl_postprocess_uservec2", strcat(ftos((sharpen_intensity / 5) * autocvar_hud_powerup), " ", ftos(-sharpen_intensity * autocvar_hud_powerup), " 0 0"));
old_sharpen_intensity = sharpen_intensity;
}
}
hit_time = getstatf(STAT_HIT_TIME);
if(hit_time > nextsound_hit_time && autocvar_cl_hitsound)
{
- sound(world, CH_INFO, "misc/hit.wav", VOL_BASE, ATTN_NONE);
+ if(time - hit_time < MAX_TIME_DIFF) // don't play the sound if it's too old.
+ sound(world, CH_INFO, "misc/hit.wav", VOL_BASE, ATTN_NONE);
+
nextsound_hit_time = time + autocvar_cl_hitsound_antispam_time;
}
typehit_time = getstatf(STAT_TYPEHIT_TIME);
- if(typehit_time > nextsound_typehit_time)
+ if(typehit_time > nextsound_typehit_time)
{
- sound(world, CH_INFO, "misc/typehit.wav", VOL_BASE, ATTN_NONE);
+ if(time - typehit_time < MAX_TIME_DIFF) // don't play the sound if it's too old.
+ sound(world, CH_INFO, "misc/typehit.wav", VOL_BASE, ATTN_NONE);
+
nextsound_typehit_time = time + autocvar_cl_hitsound_antispam_time;
}
float wcross_scale, wcross_blur;
if (autocvar_crosshair_per_weapon || autocvar_crosshair_color_per_weapon) {
- e = get_weaponinfo(activeweapon);
+ e = get_weaponinfo(switchingweapon);
if (e && e.netname != "")
{
wcross_wep = e.netname;
if(autocvar_crosshair_pickup)
{
- if(pickup_crosshair_time < getstatf(STAT_LAST_PICKUP))
+ float stat_pickup_time = getstatf(STAT_LAST_PICKUP);
+
+ if(pickup_crosshair_time < stat_pickup_time)
{
- pickup_crosshair_size = 1;
- pickup_crosshair_time = getstatf(STAT_LAST_PICKUP);
+ if(time - stat_pickup_time < MAX_TIME_DIFF) // don't trigger the animation if it's too old
+ pickup_crosshair_size = 1;
+
+ pickup_crosshair_time = stat_pickup_time;
}
if(pickup_crosshair_size > 0)
wcross_scale += sin(pickup_crosshair_size) * autocvar_crosshair_pickup;
}
- vector hitindication_color;
if(autocvar_crosshair_hitindication)
{
- hitindication_color = stov(autocvar_crosshair_hitindication_color);
+ vector hitindication_color = stov(autocvar_crosshair_hitindication_color);
if(hitindication_crosshair_time < hit_time)
{
- hitindication_crosshair_size = 1;
+ if(time - hit_time < MAX_TIME_DIFF) // don't trigger the animation if it's too old
+ hitindication_crosshair_size = 1;
+
hitindication_crosshair_time = hit_time;
}
f = autocvar_crosshair_effect_speed;
if(f < 0)
- f *= -2 * g_weaponswitchdelay;
+ f *= -2 * g_weaponswitchdelay; // anim starts when weapon has been lowered and new weapon comes up
if(wcross_scale != wcross_scale_goal_prev || wcross_alpha != wcross_alpha_goal_prev || wcross_color != wcross_color_goal_prev)
{
wcross_changedonetime = time + f;
ring_image = "gfx/crosshair_ring.tga";
}
+ // if in weapon switch animation, fade ring out/in
+ if(g_weaponswitchdelay > 0)
+ {
+ f = (time - wcross_name_changestarttime) / g_weaponswitchdelay;
+ if(f > 0 && f < 2)
+ ring_alpha *= fabs(1 - f);
+ }
+
if (autocvar_crosshair_ring_inner && ring_inner_value) // lets draw a ring inside a ring so you can ring while you ring
DrawCircleClippedPic(wcross_origin, wcross_size_x * ring_scale, ring_inner_image, ring_inner_value, ring_inner_rgb, wcross_alpha * ring_inner_alpha, DRAWFLAG_ADDITIVE);
HUD_DrawScoreboard();
if (scoreboard_active) // scoreboard/accuracy
- {
HUD_Reset();
- // HUD_DrawScoreboard takes care of centerprint_start
- }
else if (intermission == 2) // map voting screen
{
HUD_FinaleOverlay();
HUD_Reset();
-
- centerprint_start_x = 0;
- centerprint_start_y = autocvar_scr_centerpos * vid_conheight;
}
- else // hud
- {
- centerprint_start_x = 0;
- centerprint_start_y = autocvar_scr_centerpos * vid_conheight;
- }
-
/*
switch(hud)
{
break;
}
*/
-
- HUD_DrawCenterPrint();
-
}
float autocvar_g_balance_tuba_attenuation;
float autocvar_g_balance_tuba_fadetime;
float autocvar_g_balance_tuba_volume;
+float autocvar_g_balance_tuba_pitchstep;
float autocvar_g_warmup_limit;
var float autocvar_g_waypointsprite_uppercase = 1;
var float autocvar_g_waypointsprite_alpha = 1;
float autocvar_hud_panel_healtharmor_progressbar_gfx_lowhealth;
float autocvar_hud_panel_healtharmor_progressbar_gfx_smooth;
+// TEMPORARY hard coded default for compatibility - remove after 0.2 release
+var float autocvar_hud_panel_centerprint = 1;
+noref var string autocvar_hud_panel_centerprint_pos = "0.180000 0.260000";
+noref var string autocvar_hud_panel_centerprint_size = "0.650000 0.210000";
+noref var string autocvar_hud_panel_centerprint_bg = "";
+noref var string autocvar_hud_panel_centerprint_bg_color = "";
+noref var string autocvar_hud_panel_centerprint_bg_color_team = "";
+noref var string autocvar_hud_panel_centerprint_bg_alpha = "";
+noref var string autocvar_hud_panel_centerprint_bg_border = "";
+noref var string autocvar_hud_panel_centerprint_bg_padding = "";
+var float autocvar_hud_panel_centerprint_align = 0.5;
+var float autocvar_hud_panel_centerprint_fadetime = 0.25;
+var float autocvar_hud_panel_centerprint_flip = 1;
+var float autocvar_hud_panel_centerprint_fontscale = 1;
+var float autocvar_hud_panel_centerprint_time = 3;
float autocvar_hud_panel_healtharmor_text;
float autocvar_hud_panel_infomessages;
float autocvar_hud_panel_infomessages_flip;
float autocvar_hud_panel_weapons_complainbubble_time;
var float autocvar_hud_panel_weapons_fade = 1;
float autocvar_hud_panel_weapons_label;
+float autocvar_hud_panel_weapons_onlyowned;
float autocvar_hud_panel_weapons_timeout;
float autocvar_hud_panel_weapons_timeout_effect;
float autocvar_hud_progressbar_alpha;
float autocvar_hud_showbinds_limit;
float autocvar_hud_shownames;
float autocvar_hud_shownames_enemies;
+float autocvar_hud_shownames_self;
float autocvar_hud_shownames_status;
float autocvar_hud_shownames_statusbar_height;
float autocvar_hud_shownames_aspect;
var float autocvar_scoreboard_highlight_alpha_self = 0.25;
float autocvar_scoreboard_offset_left;
float autocvar_scoreboard_offset_right;
-float autocvar_scr_centerpos;
-float autocvar_scr_centersize;
-float autocvar_scr_centertime;
float autocvar_v_flipped;
float autocvar_vid_conheight;
float autocvar_vid_conwidth;
casing.cnt = time + autocvar_cl_casings_shell_time;
break;
default:
- setmodel(casing, "models/casing_bronze.mdl");
+ setmodel(casing, "models/casing_bronze.iqm");
casing.cnt = time + autocvar_cl_casings_bronze_time;
break;
}
void Casings_Precache()
{
precache_model("models/casing_shell.mdl");
- precache_model("models/casing_bronze.mdl");
+ precache_model("models/casing_bronze.iqm");
precache_sound("weapons/brass1.wav");
precache_sound("weapons/brass2.wav");
precache_sound("weapons/brass3.wav");
float trace_dphitcontents;
float trace_networkentity;
+
+string(string search, string replace, string subject) strreplace = #484;
}
}
-void TossGib (string mdlname, vector org, vector vconst, vector vrand, float specnum, float destroyontouch, float issilent)
+void TossGib (string mdlname, vector safeorg, vector org, vector vconst, vector vrand, float specnum, float destroyontouch, float issilent)
{
entity gib;
else
gib.move_touch = SUB_RemoveOnNoImpact;
+ // don't spawn gibs inside solid - just don't
+ if(org != safeorg)
+ {
+ tracebox(safeorg, gib.mins, gib.maxs, org, MOVE_NOMONSTERS, gib);
+ org = trace_endpos;
+ }
+
gib.move_origin = gib.origin = org;
gib.move_velocity = vconst * autocvar_cl_gibs_velocity_scale + vrand * autocvar_cl_gibs_velocity_random + '0 0 1' * autocvar_cl_gibs_velocity_up;
gib.move_avelocity = prandomvec() * vlen(gib.move_velocity);
sound (self, CH_PAIN, "misc/gib.wav", VOL_BASE, ATTN_NORM);
if(prandom() < amount)
- TossGib ("models/gibs/eye.md3", org, vel, prandomvec() * 150, specnum, 0, issilent);
+ TossGib ("models/gibs/eye.md3", org, org, vel, prandomvec() * 150, specnum, 0, issilent);
new_te_bloodshower(particleeffectnum(strcat(specstr, "bloodshower")), org, 1200, amount);
if(prandom() < amount)
- TossGib ("models/gibs/bloodyskull.md3", org + 16 * prandomvec(), vel, prandomvec() * 100, specnum, 0, issilent);
+ TossGib ("models/gibs/bloodyskull.md3", org, org + 16 * prandomvec(), vel, prandomvec() * 100, specnum, 0, issilent);
for(c = 0; c < amount; ++c)
{
randomvalue = amount - c;
if(prandom() < randomvalue)
- TossGib ("models/gibs/arm.md3", org + 16 * prandomvec() + '0 0 8', vel, prandomvec() * (prandom() * 120 + 90), specnum,0, issilent);
+ TossGib ("models/gibs/arm.md3", org, org + 16 * prandomvec() + '0 0 8', vel, prandomvec() * (prandom() * 120 + 90), specnum,0, issilent);
if(prandom() < randomvalue)
- TossGib ("models/gibs/arm.md3", org + 16 * prandomvec() + '0 0 8', vel, prandomvec() * (prandom() * 120 + 90), specnum,0, issilent);
+ TossGib ("models/gibs/arm.md3", org, org + 16 * prandomvec() + '0 0 8', vel, prandomvec() * (prandom() * 120 + 90), specnum,0, issilent);
if(prandom() < randomvalue)
- TossGib ("models/gibs/chest.md3", org + 16 * prandomvec(), vel, prandomvec() * (prandom() * 120 + 80), specnum,0, issilent);
+ TossGib ("models/gibs/chest.md3", org, org + 16 * prandomvec(), vel, prandomvec() * (prandom() * 120 + 80), specnum,0, issilent);
if(prandom() < randomvalue)
- TossGib ("models/gibs/smallchest.md3", org + 16 * prandomvec(), vel, prandomvec() * (prandom() * 120 + 80), specnum,0, issilent);
+ TossGib ("models/gibs/smallchest.md3", org, org + 16 * prandomvec(), vel, prandomvec() * (prandom() * 120 + 80), specnum,0, issilent);
if(prandom() < randomvalue)
- TossGib ("models/gibs/leg1.md3", org + 16 * prandomvec() + '0 0 -5', vel, prandomvec() * (prandom() * 120 + 85), specnum,0, issilent);
+ TossGib ("models/gibs/leg1.md3", org, org + 16 * prandomvec() + '0 0 -5', vel, prandomvec() * (prandom() * 120 + 85), specnum,0, issilent);
if(prandom() < randomvalue)
- TossGib ("models/gibs/leg2.md3", org + 16 * prandomvec() + '0 0 -5', vel, prandomvec() * (prandom() * 120 + 85), specnum,0, issilent);
+ TossGib ("models/gibs/leg2.md3", org, org + 16 * prandomvec() + '0 0 -5', vel, prandomvec() * (prandom() * 120 + 85), specnum,0, issilent);
// these splat on impact
if(prandom() < randomvalue)
- TossGib ("models/gibs/chunk.mdl", org + 16 * prandomvec(), vel, prandomvec() * 450, specnum,1, issilent);
+ TossGib ("models/gibs/chunk.mdl", org, org + 16 * prandomvec(), vel, prandomvec() * 450, specnum,1, issilent);
if(prandom() < randomvalue)
- TossGib ("models/gibs/chunk.mdl", org + 16 * prandomvec(), vel, prandomvec() * 450, specnum,1, issilent);
+ TossGib ("models/gibs/chunk.mdl", org, org + 16 * prandomvec(), vel, prandomvec() * 450, specnum,1, issilent);
if(prandom() < randomvalue)
- TossGib ("models/gibs/chunk.mdl", org + 16 * prandomvec(), vel, prandomvec() * 450, specnum,1, issilent);
+ TossGib ("models/gibs/chunk.mdl", org, org + 16 * prandomvec(), vel, prandomvec() * 450, specnum,1, issilent);
if(prandom() < randomvalue)
- TossGib ("models/gibs/chunk.mdl", org + 16 * prandomvec(), vel, prandomvec() * 450, specnum,1, issilent);
+ TossGib ("models/gibs/chunk.mdl", org, org + 16 * prandomvec(), vel, prandomvec() * 450, specnum,1, issilent);
}
break;
case 0x02:
break;
case 0x03:
if(prandom() < amount)
- TossGib ("models/gibs/chunk.mdl", org, vel, prandomvec() * (prandom() * 30 + 20), specnum, 1, issilent); // TODO maybe adjust to more randomization?
+ TossGib ("models/gibs/chunk.mdl", org, org, vel, prandomvec() * (prandom() * 30 + 20), specnum, 1, issilent); // TODO maybe adjust to more randomization?
break;
case 0x81:
pointparticles(particleeffectnum(strcat(gentle_prefix, "damage_dissolve")), org, vel, amount);
return stringwidth(s, FALSE, theSize);
}
-#define CENTERPRINT_MAX_LINES 30
-string centerprint_messages[CENTERPRINT_MAX_LINES];
-float centerprint_width[CENTERPRINT_MAX_LINES];
-float centerprint_time;
-float centerprint_expire;
-float centerprint_num;
-float centerprint_offset_hint;
-vector centerprint_fontsize;
-
-void centerprint(string strMessage)
-{
- float i, j, n, hcount;
- string s;
-
- centerprint_fontsize = HUD_GetFontsize("scr_centersize");
-
- centerprint_expire = min(centerprint_expire, time); // if any of the returns happens, this message will fade out
-
- if(autocvar_scr_centertime <= 0)
- return;
-
- if(strMessage == "")
- return;
-
- // strip trailing newlines
- j = strlen(strMessage) - 1;
- while(substring(strMessage, j, 1) == "\n" && j >= 0)
- j = j - 1;
- strMessage = substring(strMessage, 0, j + 1);
-
- if(strMessage == "")
- return;
-
- // strip leading newlines and remember them, they are a hint that the message should be lower on the screen
- j = 0;
- while(substring(strMessage, j, 1) == "\n" && j < strlen(strMessage))
- j = j + 1;
- strMessage = substring(strMessage, j, strlen(strMessage) - j);
- centerprint_offset_hint = j;
-
- if(strMessage == "")
- return;
-
- // if we get here, we have a message. Initialize its height.
- centerprint_num = 0;
-
- n = tokenizebyseparator(strMessage, "\n");
- i = hcount = 0;
- for(j = 0; j < n; ++j)
- {
- getWrappedLine_remaining = argv(j);
- while(getWrappedLine_remaining)
- {
- s = getWrappedLine(vid_conwidth * 0.75, centerprint_fontsize, stringwidth_colors);
- if(centerprint_messages[i] != s) // don't fade the same message in, looks stupid
- centerprint_time = time;
- if(centerprint_messages[i])
- strunzone(centerprint_messages[i]);
- centerprint_messages[i] = strzone(s);
- centerprint_width[i] = stringwidth(s, TRUE, centerprint_fontsize);
- ++i;
-
- // half height for empty lines looks better
- if(s == "")
- hcount += 0.5;
- else
- hcount += 1;
-
- if(i >= CENTERPRINT_MAX_LINES)
- break;
- }
- }
-
- float h, havail;
- h = centerprint_fontsize_y*hcount;
-
- havail = vid_conheight;
- if(autocvar_con_chatpos < 0)
- havail -= (-autocvar_con_chatpos + autocvar_con_chat) * autocvar_con_chatsize; // avoid overlapping chat
- if(havail > vid_conheight - 70)
- havail = vid_conheight - 70; // avoid overlapping HUD
-
-#if 0
- float forbiddenmin, forbiddenmax, allowedmin, allowedmax, preferred;
-
- // here, the centerprint would cover the crosshair. REALLY BAD.
- forbiddenmin = vid_conheight * 0.5 - h - 16;
- forbiddenmax = vid_conheight * 0.5 + 16;
-
- allowedmin = scoreboard_bottom;
- allowedmax = havail - h;
- preferred = (havail - h)/2;
-
-
- // possible orderings (total: 4! / 4 = 6)
- // allowedmin allowedmax forbiddenmin forbiddenmax
- // forbiddenmin forbiddenmax allowedmin allowedmax
- if(allowedmax < forbiddenmin || allowedmin > forbiddenmax)
- {
- // forbidden doesn't matter in this case
- centerprint_start_y = bound(allowedmin, preferred, allowedmax);
- }
- // allowedmin forbiddenmin allowedmax forbiddenmax
- else if(allowedmin < forbiddenmin && allowedmax < forbiddenmax)
- {
- centerprint_start_y = bound(allowedmin, preferred, forbiddenmin);
- }
- // allowedmin forbiddenmin forbiddenmax allowedmax
- else if(allowedmin < forbiddenmin)
- {
- // make sure the forbidden zone is not covered
- if(preferred > (forbiddenmin + forbiddenmax) * 0.5)
- centerprint_start_y = bound(allowedmin, preferred, forbiddenmin);
- else
- centerprint_start_y = bound(forbiddenmax, preferred, allowedmin);
- }
- // forbiddenmin allowedmin allowedmax forbiddenmax
- else if(allowedmax < forbiddenmax)
- {
- // it's better to leave the allowed zone (overlap with scoreboard) than
- // to cover the forbidden zone (crosshair)
- if(preferred > (forbiddenmin + forbiddenmax) * 0.5)
- centerprint_start_y = forbiddenmax;
- else
- centerprint_start_y = forbiddenmin;
- }
- // forbiddenmin allowedmin forbiddenmax allowedmax
- else
- {
- centerprint_start_y = bound(forbiddenmax, preferred, allowedmax);
- }
-#else
-#endif
-
- centerprint_num = i;
-
- centerprint_expire = time + autocvar_scr_centertime;
-}
-
-void HUD_DrawCenterPrint (void)
-{
- float i;
- vector pos;
- string ts;
- float a, sz;
-
- if(time - centerprint_time < 0.25)
- a = (time - centerprint_time) / 0.25;
- else
- a = bound(0, 1 - 4 * (time - centerprint_expire), 1);
-
- if(a <= 0)
- return;
-
- sz = 0.8 + (a / 5);
-
- if(centerprint_num * autocvar_scr_centersize > 24 && scoreboard_active) // 24 = height of Scoreboard text
- centerprint_start_y = scoreboard_bottom + centerprint_fontsize_y;
-
- pos = centerprint_start;
- for (i=0; i<centerprint_num; i = i + 1)
- {
- ts = centerprint_messages[i];
- drawfontscale = sz * '1 1 0';
- pos_x = (vid_conwidth - stringwidth(ts, TRUE, centerprint_fontsize)) * 0.5;
- if (ts != "")
- {
- drawcolorcodedstring(pos + '0 1 0' * (1 - sz) * 0.5 *centerprint_fontsize_y, ts, centerprint_fontsize, a, DRAWFLAG_NORMAL);
- pos_y = pos_y + centerprint_fontsize_y;
- }
- else
- // half height for empty lines looks better
- pos_y = pos_y + sz * centerprint_fontsize_y * 0.5;
- drawfontscale = '1 1 0';
- }
-}
-
void drawstringright(vector position, string text, vector scale, vector rgb, float alpha, float flag)
{
position_x -= 2 / 3 * strlen(text) * scale_x;
// draw the background/borders
#define HUD_Panel_DrawBg(alpha)\
if(panel_bg != "0")\
- draw_BorderPicture(panel_pos - '1 1 0' * panel_bg_border, panel_bg, panel_size + '1 1 0' * 2 * panel_bg_border, panel_bg_color, panel_bg_alpha * alpha, '1 1 0' * (panel_bg_border/BORDER_MULTIPLIER));\
-if(highlightedPanel == hud_configure_active_panel && autocvar__hud_configure)\
-{\
- HUD_Panel_HlBorder(panel_bg_border + 1.5 * hlBorderSize, '0 0.5 1', 0.25 * (1 - autocvar__menu_alpha) * alpha);\
-} ENDS_WITH_CURLY_BRACE
+ draw_BorderPicture(panel_pos - '1 1 0' * panel_bg_border, panel_bg, panel_size + '1 1 0' * 2 * panel_bg_border, panel_bg_color, panel_bg_alpha * alpha, '1 1 0' * (panel_bg_border/BORDER_MULTIPLIER))
//basically the same code of draw_ButtonPicture and draw_VertButtonPicture for the menu
void HUD_Panel_DrawProgressBar(vector theOrigin, vector theSize, string pic, float length_ratio, float vertical, float baralign, vector theColor, float theAlpha, float drawflag)
void HUD_Weapons(void)
{
- float f, screen_ar;
+ float i, f, screen_ar;
float center_x, center_y;
if(hud != HUD_NORMAL) return;
if(!autocvar__hud_configure)
}
HUD_Panel_UpdateCvars(weapons);
+ HUD_Panel_ApplyFadeAlpha();
+
+ // TODO make this configurable
+ if(weaponorder_bypriority != autocvar_cl_weaponpriority || !weaponorder[0])
+ {
+ float weapon_cnt;
+ if(weaponorder_bypriority)
+ strunzone(weaponorder_bypriority);
+ if(weaponorder_byimpulse)
+ strunzone(weaponorder_byimpulse);
+
+ weaponorder_bypriority = strzone(autocvar_cl_weaponpriority);
+ weaponorder_byimpulse = strzone(W_FixWeaponOrder_BuildImpulseList(W_FixWeaponOrder_ForceComplete(W_NumberWeaponOrder(weaponorder_bypriority))));
+ weaponorder_cmp_str = strcat(" ", weaponorder_byimpulse, " ");
+
+ weapon_cnt = 0;
+ for(i = WEP_FIRST; i <= WEP_LAST; ++i)
+ {
+ self = get_weaponinfo(i);
+ if(self.impulse >= 0)
+ {
+ weaponorder[weapon_cnt] = self;
+ ++weapon_cnt;
+ }
+ }
+ for(i = weapon_cnt; i < WEP_MAXCOUNT; ++i)
+ weaponorder[i] = NULL;
+ heapsort(weapon_cnt, weaponorder_swap, weaponorder_cmp, world);
+
+ weaponorder_cmp_str = string_null;
+ }
+
+ float when, fadetime;
+ when = autocvar_hud_panel_weapons_complainbubble_time;
+ fadetime = autocvar_hud_panel_weapons_complainbubble_fadetime;
+ float weapons_st = getstati(STAT_WEAPONS);
+ float weapon_count;
+ if (autocvar_hud_panel_weapons_onlyowned)
+ {
+ if(autocvar__hud_configure)
+ {
+ if (weapons_st == 0)
+ for(i = 0; i <= WEP_LAST-WEP_FIRST; i += floor((WEP_LAST-WEP_FIRST)/5))
+ weapons_st |= power2of(i);
+ if(menu_enabled != 2)
+ HUD_Panel_DrawBg(1); // also draw the bg of the entire panel
+ }
+
+ vector old_panel_size;
+ for(i = 0; i <= WEP_LAST-WEP_FIRST; ++i)
+ {
+ if(weapons_st & weaponorder[i].weapons)
+ ++weapon_count;
+ }
+ if(!autocvar__hud_configure && (autocvar_hud_panel_weapons_complainbubble && time - complain_weapon_time < when + fadetime))// && complain_weapon >= 0
+ ++weapon_count;
+ if (weapon_count == 0)
+ return;
+ // reduce size of the panel
+ if (panel_size_y > panel_size_x)
+ {
+ old_panel_size_y = panel_size_y;
+ panel_size_y *= weapon_count / WEP_COUNT;
+ panel_pos_y += (old_panel_size_y - panel_size_y) / 2;
+ }
+ else
+ {
+ old_panel_size_x = panel_size_x;
+ panel_size_x *= weapon_count / WEP_COUNT;
+ panel_pos_x += (old_panel_size_x - panel_size_x) / 2;
+ }
+ }
+ else
+ weapon_count = WEP_COUNT;
if (timeout && time >= weapontime + timeout && !autocvar__hud_configure)
{
}
}
- float i, weapid, wpnalpha, weapon_cnt;
-
- // TODO make this configurable
- if(weaponorder_bypriority != autocvar_cl_weaponpriority || !weaponorder[0])
- {
- if(weaponorder_bypriority)
- strunzone(weaponorder_bypriority);
- if(weaponorder_byimpulse)
- strunzone(weaponorder_byimpulse);
-
- weaponorder_bypriority = strzone(autocvar_cl_weaponpriority);
- weaponorder_byimpulse = strzone(W_FixWeaponOrder_BuildImpulseList(W_FixWeaponOrder_ForceComplete(W_NumberWeaponOrder(weaponorder_bypriority))));
- weaponorder_cmp_str = strcat(" ", weaponorder_byimpulse, " ");
-
- weapon_cnt = 0;
- for(i = WEP_FIRST; i <= WEP_LAST; ++i)
- {
- self = get_weaponinfo(i);
- if(self.impulse >= 0)
- {
- weaponorder[weapon_cnt] = self;
- ++weapon_cnt;
- }
- }
- for(i = weapon_cnt; i < WEP_MAXCOUNT; ++i)
- weaponorder[i] = NULL;
- heapsort(weapon_cnt, weaponorder_swap, weaponorder_cmp, world);
-
- weaponorder_cmp_str = string_null;
- }
-
HUD_Panel_DrawBg(1);
if(panel_bg_padding)
{
panel_size -= '2 2 0' * panel_bg_padding;
}
+ float weapid, wpnalpha;
+
if(autocvar_hud_panel_weapons_fade)
{
wpnalpha = 3.2 - 2 * (time - weapontime);
float rows, columns;
float aspect = autocvar_hud_panel_weapons_aspect;
rows = panel_size_y/panel_size_x;
- rows = bound(1, floor((sqrt(4 * aspect * rows * WEP_COUNT + rows * rows) + rows + 0.5) / 2), WEP_COUNT);
+ rows = bound(1, floor((sqrt(4 * aspect * rows * weapon_count + rows * rows) + rows + 0.5) / 2), weapon_count);
- columns = ceil(WEP_COUNT/rows);
+ columns = ceil(weapon_count/rows);
float row, column;
float a, type, fullammo;
- float when;
- when = autocvar_hud_panel_weapons_complainbubble_time;
- float fadetime;
- fadetime = autocvar_hud_panel_weapons_complainbubble_fadetime;
vector color;
vector wpnpos;
vector wpnsize;
-
+
vector ammo_color;
float ammo_alpha;
wpnsize = eX * panel_size_x*(1/columns) + eY * panel_size_y*(1/rows);
acc_col[i] = stov(cvar_string(strcat("accuracy_color", ftos(i))));
}
- float weapons_st = getstati(STAT_WEAPONS);
-
for(i = 0; i <= WEP_LAST-WEP_FIRST; ++i)
{
self = weaponorder[i];
if (!self || self.impulse < 0)
continue;
+ if (autocvar_hud_panel_weapons_onlyowned)
+ if (!((weapons_st & self.weapons) || (self.weapon == complain_weapon && time - complain_weapon_time < when + fadetime && autocvar_hud_panel_weapons_complainbubble)))
+ continue;
wpnpos = panel_pos + eX * column * wpnsize_x + eY * row * wpnsize_y;
weapid = self.impulse;
// draw background behind currently selected weapon
- if(self.weapon == activeweapon)
+ if(self.weapon == switchweapon)
drawpic_aspect_skin(wpnpos, "weapon_current_bg", wpnsize, '1 1 1', wpnalpha, DRAWFLAG_NORMAL);
// draw the weapon accuracy
}
}
-void DrawAmmoItem(vector myPos, vector mySize, float itemcode, float currently_selected)
+void DrawAmmoItem(vector myPos, vector mySize, float itemcode, float currently_selected, float infinite_ammo)
{
float a;
if(autocvar__hud_configure)
a = getstati(GetAmmoStat(itemcode)); // how much ammo do we have of type itemcode?
vector color;
- if(a < 10)
+ if(infinite_ammo)
+ color = '0 0.5 0.75';
+ else if(a < 10)
color = '0.7 0 0';
else
color = '1 1 1';
if(autocvar_hud_panel_ammo_text)
{
- if(a > 0)
+ if(a > 0 || infinite_ammo)
drawstring_aspect(numpos, ftos(a), eX * (2/3) * mySize_x + eY * mySize_y, color, panel_fg_alpha * alpha, DRAWFLAG_NORMAL);
else // "ghost" ammo count
drawstring_aspect(numpos, ftos(a), eX * (2/3) * mySize_x + eY * mySize_y, '0 0 0', panel_fg_alpha * alpha * 0.5, DRAWFLAG_NORMAL);
}
- if(a > 0)
+ if(a > 0 || infinite_ammo)
drawpic_aspect_skin(picpos, GetAmmoPicture(itemcode), '1 1 0' * mySize_y, '1 1 1', panel_fg_alpha * alpha, DRAWFLAG_NORMAL);
else // "ghost" ammo icon
drawpic_aspect_skin(picpos, GetAmmoPicture(itemcode), '1 1 0' * mySize_y, '0 0 0', panel_fg_alpha * alpha * 0.5, DRAWFLAG_NORMAL);
hud_configure_active_panel = HUD_PANEL_AMMO;
HUD_Panel_UpdateCvars(ammo);
+ HUD_Panel_ApplyFadeAlpha();
vector pos, mySize;
pos = panel_pos;
mySize = panel_size;
ammo_size_y = newSize;
}
- float i, stat_items, currently_selected;
+ float i, stat_items, currently_selected, infinite_ammo;
+ infinite_ammo = FALSE;
if (autocvar_hud_panel_ammo_onlycurrent)
{
if(autocvar__hud_configure)
{
- DrawAmmoItem(pos, ammo_size, 2, true); //show rockets
+ DrawAmmoItem(pos, ammo_size, 2, true, FALSE); //show rockets
return;
}
stat_items = getstati(STAT_ITEMS);
+ if (stat_items & IT_UNLIMITED_WEAPON_AMMO)
+ infinite_ammo = TRUE;
for (i = 0; i < AMMO_COUNT; ++i) {
currently_selected = stat_items & GetAmmoItemCode(i);
if (currently_selected)
{
- DrawAmmoItem(pos, ammo_size, i, true);
+ DrawAmmoItem(pos, ammo_size, i, true, infinite_ammo);
return;
}
}
}
stat_items = getstati(STAT_ITEMS);
+ if (stat_items & IT_UNLIMITED_WEAPON_AMMO)
+ infinite_ammo = TRUE;
for (i = 0; i < AMMO_COUNT; ++i) {
currently_selected = stat_items & GetAmmoItemCode(i);
- DrawAmmoItem(pos + eX * column * (ammo_size_x + offset_x) + eY * row * (ammo_size_y + offset_y), ammo_size, i, currently_selected);
+ DrawAmmoItem(pos + eX * column * (ammo_size_x + offset_x) + eY * row * (ammo_size_y + offset_y), ammo_size, i, currently_selected, infinite_ammo);
++row;
if(row >= rows)
{
}
HUD_Panel_UpdateCvars(powerups);
+ HUD_Panel_ApplyFadeAlpha();
vector pos, mySize;
pos = panel_pos;
mySize = panel_size;
}
HUD_Panel_UpdateCvars(healtharmor);
+ HUD_Panel_ApplyFadeAlpha();
vector pos, mySize;
pos = panel_pos;
mySize = panel_size;
}
}
-#define DAMAGE_CENTERPRINT_SPACER NEWLINES
-
-void HUD_Centerprint(string s1, string s2, float type, float msg)
+void HUD_KillCenterprint(string s1, string s2, float type, float msg)
{
float gentle;
gentle = (autocvar_cl_gentle || autocvar_cl_gentle_messages);
if(msg == MSG_SUICIDE) {
if (type == DEATH_TEAMCHANGE) {
- centerprint(strcat(DAMAGE_CENTERPRINT_SPACER, sprintf(_("You are now on: %s"), s1)));
+ centerprint(sprintf(_("You are now on: %s"), s1));
} else if (type == DEATH_AUTOTEAMCHANGE) {
- centerprint(strcat(DAMAGE_CENTERPRINT_SPACER, sprintf(_("You have been moved into a different team to improve team balance\nYou are now on: %s"), s1)));
+ centerprint(sprintf(_("You have been moved into a different team to improve team balance\nYou are now on: %s"), s1));
} else if (type == DEATH_CAMP) {
if(gentle)
- centerprint(strcat(DAMAGE_CENTERPRINT_SPACER, _("^1Reconsider your tactics, camper!")));
+ centerprint(_("^1Reconsider your tactics, camper!"));
else
- centerprint(strcat(DAMAGE_CENTERPRINT_SPACER, _("^1Die camper!")));
+ centerprint(_("^1Die camper!"));
} else if (type == DEATH_NOAMMO) {
if(gentle)
- centerprint(strcat(DAMAGE_CENTERPRINT_SPACER, _("^1You are reinserted into the game for running out of ammo...")));
+ centerprint(_("^1You are reinserted into the game for running out of ammo..."));
else
- centerprint(strcat(DAMAGE_CENTERPRINT_SPACER, _("^1You were killed for running out of ammo...")));
+ centerprint(_("^1You were killed for running out of ammo..."));
} else if (type == DEATH_ROT) {
if(gentle)
- centerprint(strcat(DAMAGE_CENTERPRINT_SPACER, _("^1You need to preserve your health")));
+ centerprint(_("^1You need to preserve your health"));
else
- centerprint(strcat(DAMAGE_CENTERPRINT_SPACER, _("^1You grew too old without taking your medicine")));
+ centerprint(_("^1You grew too old without taking your medicine"));
} else if (type == KILL_TEAM_RED || type == KILL_TEAM_BLUE) {
if(gentle)
- centerprint(strcat(DAMAGE_CENTERPRINT_SPACER, _("^1Don't go against team mates!")));
+ centerprint(_("^1Don't go against team mates!"));
else
- centerprint(strcat(DAMAGE_CENTERPRINT_SPACER, _("^1Don't shoot your team mates!")));
+ centerprint(_("^1Don't shoot your team mates!"));
} else if (type == DEATH_QUIET) {
// do nothing
} else { // generic message
if(gentle)
- centerprint(strcat(DAMAGE_CENTERPRINT_SPACER, _("^1You need to be more careful!")));
+ centerprint(_("^1You need to be more careful!"));
else
- centerprint(strcat(DAMAGE_CENTERPRINT_SPACER, _("^1You killed your own dumb self!")));
+ centerprint(_("^1You killed your own dumb self!"));
}
} else if(msg == MSG_KILL) {
if (type == KILL_TEAM_RED || type == KILL_TEAM_BLUE) {
if(gentle) {
- centerprint(strcat(DAMAGE_CENTERPRINT_SPACER, sprintf(_("^1Moron! You went against ^7%s^1, a team mate!"), s1)));
+ centerprint(sprintf(_("^1Moron! You went against ^7%s^1, a team mate!"), s1));
} else {
- centerprint(strcat(DAMAGE_CENTERPRINT_SPACER, sprintf(_("^1Moron! You fragged ^7%s^1, a team mate!"), s1)));
+ centerprint(sprintf(_("^1Moron! You fragged ^7%s^1, a team mate!"), s1));
}
} else if (type == KILL_FIRST_BLOOD) {
if(gentle) {
- centerprint(strcat(DAMAGE_CENTERPRINT_SPACER, _("^1First score")));
+ centerprint(_("^1First score"));
} else {
- centerprint(strcat(DAMAGE_CENTERPRINT_SPACER, _("^1First blood")));
+ centerprint(_("^1First blood"));
}
} else if (type == KILL_FIRST_VICTIM) {
if(gentle) {
- centerprint(strcat(DAMAGE_CENTERPRINT_SPACER, _("^1First casualty")));
+ centerprint(_("^1First casualty"));
} else {
- centerprint(strcat(DAMAGE_CENTERPRINT_SPACER, _("^1First victim")));
+ centerprint(_("^1First victim"));
}
} else if (type == KILL_TYPEFRAG) { // s2 contains "advanced kill messages" such as ping, handicap...
if(gentle) {
- centerprint(strcat(DAMAGE_CENTERPRINT_SPACER, sprintf(_("^1You scored against ^7%s^1 who was typing!"), s1), s2));
+ centerprint(strcat(sprintf(_("^1You scored against ^7%s^1 who was typing!"), s1), s2));
} else {
- centerprint(strcat(DAMAGE_CENTERPRINT_SPACER, sprintf(_("^1You typefragged ^7%s"), s1), s2));
+ centerprint(strcat(sprintf(_("^1You typefragged ^7%s"), s1), s2));
}
} else if (type == KILL_TYPEFRAGGED) {
if(gentle) {
- centerprint(strcat(DAMAGE_CENTERPRINT_SPACER, sprintf(_("^1You were scored against by ^7%s^1 while you were typing!"), s1), s2));
+ centerprint(strcat(sprintf(_("^1You were scored against by ^7%s^1 while you were typing!"), s1), s2));
} else {
- centerprint(strcat(DAMAGE_CENTERPRINT_SPACER, sprintf(_("^1You were typefragged by ^7%s"), s1), s2));
+ centerprint(strcat(sprintf(_("^1You were typefragged by ^7%s"), s1), s2));
}
} else if (type == KILL_FRAG) {
if(gentle) {
- centerprint(strcat(DAMAGE_CENTERPRINT_SPACER, sprintf(_("^4You scored against ^7%s"), s1), s2));
+ centerprint(strcat(sprintf(_("^4You scored against ^7%s"), s1), s2));
} else {
- centerprint(strcat(DAMAGE_CENTERPRINT_SPACER, sprintf(_("^4You fragged ^7%s"), s1), s2));
+ centerprint(strcat(sprintf(_("^4You fragged ^7%s"), s1), s2));
}
} else { // generic message
if(gentle) {
- centerprint(strcat(DAMAGE_CENTERPRINT_SPACER, sprintf(_("^1You were scored against by ^7%s"), s1), s2));
+ centerprint(strcat(sprintf(_("^1You were scored against by ^7%s"), s1), s2));
} else {
- centerprint(strcat(DAMAGE_CENTERPRINT_SPACER, sprintf(_("^1You were fragged by ^7%s"), s1), s2));
+ centerprint(strcat(sprintf(_("^1You were fragged by ^7%s"), s1), s2));
}
}
} else if(msg == MSG_KILL_ACTION) {
// TODO: invent more centerprints here?
- centerprint(strcat(DAMAGE_CENTERPRINT_SPACER, _("^1Watch your step!")));
+ centerprint(_("^1Watch your step!"));
}
}
hud_configure_active_panel = HUD_PANEL_NOTIFY;
HUD_Panel_UpdateCvars(notify);
+ HUD_Panel_ApplyFadeAlpha();
vector pos, mySize;
pos = panel_pos;
mySize = panel_size;
hud_configure_active_panel = HUD_PANEL_TIMER;
HUD_Panel_UpdateCvars(timer);
+ HUD_Panel_ApplyFadeAlpha();
vector pos, mySize;
pos = panel_pos;
mySize = panel_size;
hud_configure_active_panel = HUD_PANEL_RADAR;
HUD_Panel_UpdateCvars(radar);
+ HUD_Panel_ApplyFadeAlpha();
vector pos, mySize;
pos = panel_pos;
mySize = panel_size;
hud_configure_active_panel = HUD_PANEL_SCORE;
HUD_Panel_UpdateCvars(score);
+ HUD_Panel_ApplyFadeAlpha();
vector pos, mySize;
pos = panel_pos;
mySize = panel_size;
hud_configure_active_panel = HUD_PANEL_RACETIMER;
HUD_Panel_UpdateCvars(racetimer);
+ HUD_Panel_ApplyFadeAlpha();
vector pos, mySize;
pos = panel_pos;
mySize = panel_size;
return;
HUD_Panel_UpdateCvars(vote);
+ HUD_Panel_ApplyFadeAlpha();
if(uid2name_dialog)
{
hud_configure_active_panel = HUD_PANEL_MODICONS;
HUD_Panel_UpdateCvars(modicons);
+ HUD_Panel_ApplyFadeAlpha();
vector pos, mySize;
pos = panel_pos;
mySize = panel_size;
HUD_Panel_UpdateCvars(pressedkeys);
+ HUD_Panel_ApplyFadeAlpha();
vector pos, mySize;
pos = panel_pos;
mySize = panel_size;
hud_configure_active_panel = HUD_PANEL_CHAT;
HUD_Panel_UpdateCvars(chat);
+ HUD_Panel_ApplyFadeAlpha();
if(autocvar__con_chat_maximized && !autocvar__hud_configure) // draw at full screen height if maximized
{
hud_configure_active_panel = HUD_PANEL_ENGINEINFO;
HUD_Panel_UpdateCvars(engineinfo);
+ HUD_Panel_ApplyFadeAlpha();
vector pos, mySize;
pos = panel_pos;
mySize = panel_size;
hud_configure_active_panel = HUD_PANEL_INFOMESSAGES;
HUD_Panel_UpdateCvars(infomessages);
+ HUD_Panel_ApplyFadeAlpha();
vector pos, mySize;
pos = panel_pos;
mySize = panel_size;
hud_configure_active_panel = HUD_PANEL_PHYSICS;
HUD_Panel_UpdateCvars(physics);
+ HUD_Panel_ApplyFadeAlpha();
HUD_Panel_DrawBg(1);
if(panel_bg_padding)
drawstring_aspect(panel_pos + acceleration_offset, strcat(ftos_decimals(acceleration, 2), "g"), panel_size, '1 1 1', panel_fg_alpha, DRAWFLAG_NORMAL);
}
+// CenterPrint (#16)
+//
+#define CENTERPRINT_MAX_MSGS 10
+#define CENTERPRINT_MAX_ENTRIES 50
+#define CENTERPRINT_SPACING 0.7
+float cpm_index;
+string centerprint_messages[CENTERPRINT_MAX_MSGS];
+float centerprint_msgID[CENTERPRINT_MAX_MSGS];
+float centerprint_time[CENTERPRINT_MAX_MSGS];
+float centerprint_expire_time[CENTERPRINT_MAX_MSGS];
+float centerprint_countdown_num[CENTERPRINT_MAX_MSGS];
+float centerprint_fadetime;
+float centerprint_showing;
+
+void centerprint_generic(float new_id, string strMessage, float duration, float countdown_num)
+{
+ float i, j;
+
+ if(strMessage == "" && new_id == 0)
+ return;
+
+ // strip trailing newlines
+ j = strlen(strMessage) - 1;
+ while(substring(strMessage, j, 1) == "\n" && j >= 0)
+ --j;
+ if (j < strlen(strMessage) - 1)
+ strMessage = substring(strMessage, 0, j + 1);
+
+ if(strMessage == "" && new_id == 0)
+ return;
+
+ // strip leading newlines
+ j = 0;
+ while(substring(strMessage, j, 1) == "\n" && j < strlen(strMessage))
+ ++j;
+ if (j > 0)
+ strMessage = substring(strMessage, j, strlen(strMessage) - j);
+
+ if(strMessage == "" && new_id == 0)
+ return;
+
+ if (!centerprint_showing)
+ centerprint_showing = TRUE;
+
+ centerprint_fadetime = bound(0, autocvar_hud_panel_centerprint_fadetime, 1);
+
+ for (i=0, j=cpm_index; i<CENTERPRINT_MAX_MSGS; ++i, ++j)
+ {
+ if (j == CENTERPRINT_MAX_MSGS)
+ j = 0;
+ if (new_id && new_id == centerprint_msgID[j])
+ {
+ if (strMessage == "" && centerprint_messages[j] != "" && centerprint_countdown_num[j] == 0)
+ {
+ // fade out the current msg (duration and countdown_num are ignored)
+ centerprint_time[j] = centerprint_fadetime;
+ if (centerprint_expire_time[j] > time + centerprint_fadetime || centerprint_expire_time[j] < time)
+ centerprint_expire_time[j] = time + centerprint_fadetime;
+ return;
+ }
+ break; // found a msg with the same id, at position j
+ }
+ }
+
+ if (i == CENTERPRINT_MAX_MSGS)
+ {
+ // a msg with the same id was not found, add the msg at the next position
+ --cpm_index;
+ if (cpm_index == -1)
+ cpm_index = CENTERPRINT_MAX_MSGS - 1;
+ j = cpm_index;
+ }
+ if(centerprint_messages[j])
+ strunzone(centerprint_messages[j]);
+ centerprint_messages[j] = strzone(strMessage);
+ centerprint_msgID[j] = new_id;
+ if (duration < 0)
+ centerprint_time[j] = -1;
+ else
+ {
+ if(duration == 0)
+ duration = max(1, autocvar_hud_panel_centerprint_time);
+ centerprint_time[j] = duration;
+ centerprint_expire_time[j] = time + duration;
+ }
+ centerprint_countdown_num[j] = countdown_num;
+}
+
+void centerprint(string strMessage)
+{
+ centerprint_generic(0, strMessage, autocvar_hud_panel_centerprint_time, 0);
+}
+
+void reset_centerprint_messages(void)
+{
+ float i;
+ for (i=0; i<CENTERPRINT_MAX_MSGS; ++i)
+ {
+ centerprint_expire_time[i] = 0;
+ centerprint_time[i] = 1;
+ centerprint_msgID[i] = 0;
+ if(centerprint_messages[i])
+ strunzone(centerprint_messages[i]);
+ centerprint_messages[i] = string_null;
+ }
+}
+float hud_configure_cp_generation_time;
+void HUD_CenterPrint (void)
+{
+ if(!autocvar__hud_configure)
+ {
+ if(!autocvar_hud_panel_centerprint) return;
+
+ if (hud_configure_prev && hud_configure_prev != -1)
+ reset_centerprint_messages();
+ }
+ else
+ {
+ hud_configure_active_panel = HUD_PANEL_CENTERPRINT;
+
+ if (!hud_configure_prev)
+ reset_centerprint_messages();
+ if (time > hud_configure_cp_generation_time)
+ {
+ float r;
+ r = random();
+ if (r > 0.9)
+ centerprint_generic(floor(r*1000), strcat(sprintf("^3Countdown message at time %s", seconds_tostring(time)), ", seconds left: %d"), 1, 10);
+ else if (r > 0.8)
+ centerprint_generic(0, sprintf("^1Multiline message at time %s that\n^1lasts longer than normal", seconds_tostring(time)), 20, 0);
+ else
+ centerprint(sprintf("Message at time %s", seconds_tostring(time)));
+ hud_configure_cp_generation_time = time + 1 + random()*4;
+ }
+ }
+
+ HUD_Panel_UpdateCvars(centerprint);
+
+ // this panel doesn't fade when showing the scoreboard
+ if(autocvar__menu_alpha)
+ HUD_Panel_ApplyFadeAlpha();
+
+ if(scoreboard_fade_alpha)
+ {
+ // move the panel below the scoreboard
+ if (scoreboard_bottom >= 0.96 * vid_conheight)
+ return;
+ vector target_pos;
+ target_pos = eY * scoreboard_bottom + eX * 0.5 * (vid_conwidth - panel_size_x);
+ panel_pos = panel_pos + (target_pos - panel_pos) * sqrt(scoreboard_fade_alpha);
+ panel_size_y = min(panel_size_y, vid_conheight - scoreboard_bottom);
+ }
+
+ HUD_Panel_DrawBg(1);
+
+ if (!centerprint_showing)
+ return;
+
+ if(panel_bg_padding)
+ {
+ panel_pos += '1 1 0' * panel_bg_padding;
+ panel_size -= '2 2 0' * panel_bg_padding;
+ }
+
+ float entries, height;
+ vector fontsize;
+ // entries = bound(1, floor(CENTERPRINT_MAX_ENTRIES * 4 * panel_size_y/panel_size_x), CENTERPRINT_MAX_ENTRIES);
+ // height = panel_size_y/entries;
+ // fontsize = '1 1 0' * height;
+ height = vid_conheight/50 * autocvar_hud_panel_centerprint_fontscale;
+ fontsize = '1 1 0' * height;
+ entries = bound(1, floor(panel_size_y/height), CENTERPRINT_MAX_ENTRIES);
+
+ float i, j, k, n;
+ float a, sz, align, current_msg_pos_y, msg_size;
+ vector pos;
+ string ts;
+
+ n = -1; // if no msg will be displayed, n stays -1
+
+ pos = panel_pos;
+ if (autocvar_hud_panel_centerprint_flip)
+ pos_y += panel_size_y;
+ align = bound(0, autocvar_hud_panel_centerprint_align, 1);
+ for (i=0, j=cpm_index; i<CENTERPRINT_MAX_MSGS; ++i, ++j)
+ {
+ if (j == CENTERPRINT_MAX_MSGS)
+ j = 0;
+ if (centerprint_expire_time[j] <= time)
+ {
+ if (centerprint_countdown_num[j] && centerprint_time[j] > 0)
+ {
+ centerprint_countdown_num[j] = centerprint_countdown_num[j] - 1;
+ if (centerprint_countdown_num[j] == 0)
+ continue;
+ centerprint_expire_time[j] = centerprint_expire_time[j] + centerprint_time[j];
+ }
+ else
+ continue;
+ }
+ if (centerprint_time[j] < 0 || centerprint_expire_time[j] - centerprint_fadetime > time)
+ {
+ a = bound(0, (time - (centerprint_expire_time[j] - centerprint_time[j])) / centerprint_fadetime, 1);
+ sz = 0.8 + a * (1 - 0.8);
+ }
+ else if (centerprint_expire_time[j] > time)
+ {
+ a = (centerprint_expire_time[j] - time) / centerprint_fadetime;
+ sz = 0.8 + a * (1 - 0.8);
+ }
+
+ drawfontscale = sz * '1 1 0';
+ if (centerprint_countdown_num[j])
+ n = tokenizebyseparator(sprintf(centerprint_messages[j], centerprint_countdown_num[j]), "\n");
+ else
+ n = tokenizebyseparator(centerprint_messages[j], "\n");
+ if (autocvar_hud_panel_centerprint_flip)
+ {
+ // check if the message can be entirely shown
+ for(k = 0; k < n; ++k)
+ {
+ getWrappedLine_remaining = argv(k);
+ while(getWrappedLine_remaining)
+ {
+ ts = getWrappedLine(panel_size_x * sz, fontsize, stringwidth_colors);
+ if (ts != "")
+ pos_y -= fontsize_y;
+ else
+ pos_y -= fontsize_y * CENTERPRINT_SPACING/2;
+ // NOTE: uncommented so as to not reject messages whenever they are "too large" -- This just continues drawing it anyway.
+ //if (pos_y < panel_pos_y) // check if the next line can be shown
+ //{
+ // drawfontscale = '1 1 0';
+ // return;
+ //}
+ }
+ }
+ current_msg_pos_y = pos_y; // save starting pos (first line) of the current message
+ }
+
+ msg_size = pos_y;
+ for(k = 0; k < n; ++k)
+ {
+ getWrappedLine_remaining = argv(k);
+ while(getWrappedLine_remaining)
+ {
+ ts = getWrappedLine(panel_size_x * sz, fontsize, stringwidth_colors);
+ if (ts != "")
+ {
+ if (align)
+ pos_x = panel_pos_x + (panel_size_x - stringwidth(ts, TRUE, fontsize)) * align;
+ drawcolorcodedstring(pos + eY * 0.5 * (1 - sz) * fontsize_y, ts, fontsize, a * panel_fg_alpha, DRAWFLAG_NORMAL);
+ pos_y += fontsize_y;
+ }
+ else
+ pos_y += fontsize_y * CENTERPRINT_SPACING/2;
+ // NOTE: uncommented so as to not reject messages whenever they are "too large" -- This just continues drawing it anyway.
+ //if (!autocvar_hud_panel_centerprint_flip && pos_y > panel_pos_y + panel_size_y - fontsize_y) // check if the next line can be shown
+ //{
+ // drawfontscale = '1 1 0';
+ // return;
+ //}
+ }
+ }
+ msg_size = pos_y - msg_size;
+ if (autocvar_hud_panel_centerprint_flip)
+ {
+ pos_y = current_msg_pos_y - CENTERPRINT_SPACING * fontsize_y;
+ if (a < 1 && centerprint_msgID[j] == 0) // messages with id can be replaced just after they are faded out, so never move over them the next messages
+ pos_y += (msg_size + CENTERPRINT_SPACING * fontsize_y) * (1 - sqrt(a));
+ }
+ else
+ {
+ pos_y += CENTERPRINT_SPACING * fontsize_y;
+ if (a < 1 && centerprint_msgID[j] == 0) // messages with id can be replaced just after they are faded out, so never move over them the next messages
+ pos_y -= (msg_size + CENTERPRINT_SPACING * fontsize_y) * (1 - sqrt(a));
+ }
+ }
+ drawfontscale = '1 1 0';
+ if (n == -1)
+ {
+ centerprint_showing = FALSE;
+ reset_centerprint_messages();
+ }
+}
+
/*
==================
Main HUD system
HUD_InfoMessages(); break;\
case (HUD_PANEL_PHYSICS):\
HUD_Physics(); break;\
+ case (HUD_PANEL_CENTERPRINT):\
+ HUD_CenterPrint(); break;\
} ENDS_WITH_CURLY_BRACE
void HUD_Main (void)
else if(autocvar__menu_alpha == 0 && scoreboard_fade_alpha == 0)
hud_fade_alpha = 1;
+ // panels that we want to be active together with the scoreboard
+ // they must call HUD_Panel_ApplyFadeAlpha(); only when showing the menu
+ if(scoreboard_fade_alpha == 1)
+ {
+ HUD_CenterPrint();
+ return;
+ }
+
if(!autocvar__hud_configure && !hud_fade_alpha)
return;
if(autocvar__con_chat_maximized)
HUD_Chat(); // HUD_DrawPanel(HUD_PANEL_CHAT);
- if (autocvar__hud_configure && spectatee_status && hud_configure_prev == -1) // try to join if we are in hud_configure mode, but still spectating, and in the first frame (in order to get rid of motd when launching a server via the menu "HUD Setup" button)
- localcmd("cmd selectteam auto; cmd join\n");
-
- if(autocvar__hud_configure && tab_panel != -1)
+ if(autocvar__hud_configure)
{
- HUD_Panel_UpdatePosSizeForId(tab_panel)
- drawfill(panel_pos - '1 1 0' * panel_bg_border, panel_size + '2 2 0' * panel_bg_border, '1 1 1', .2, DRAWFLAG_NORMAL);
+ if(tab_panel != -1)
+ {
+ HUD_Panel_UpdatePosSizeForId(tab_panel)
+ drawfill(panel_pos - '1 1 0' * panel_bg_border, panel_size + '2 2 0' * panel_bg_border, '1 1 1', .2, DRAWFLAG_NORMAL);
+ }
+ if(highlightedPanel != -1)
+ {
+ HUD_Panel_UpdatePosSizeForId(highlightedPanel);
+ HUD_Panel_HlBorder(panel_bg_border + 1.5 * hlBorderSize, '0 0.5 1', 0.25 * (1 - autocvar__menu_alpha));
+ }
}
hud_configure_prev = autocvar__hud_configure;
float log(float f);
-vector centerprint_start;
-
float panel_order[HUD_PANEL_NUM];
string hud_panelorder_prev;
float ps_primary, ps_secondary;
float ts_primary, ts_secondary;
-float last_weapon;
+float last_switchweapon;
+float last_activeweapon;
float weapontime;
float weaponprevtime;
panel_bg_color_team = stof(panel_bg_color_team_str);\
}
+// the check doesn't allow to fade this panel when showing the panel-specific menu dialog
+#define HUD_Panel_ApplyFadeAlpha()\
+if(!(menu_enabled == 2 && highlightedPanel == hud_configure_active_panel))\
+{\
+ panel_bg_alpha *= hud_fade_alpha;\
+ panel_fg_alpha *= hud_fade_alpha;\
+} ENDS_WITH_CURLY_BRACE
+
// Get value for panel_bg_alpha: if "" fetch default, else use panel_bg_alpha. Also do various menu dialog fadeout/in checks, and minalpha checks
// comment on line 3 of macro: // do not set a minalpha cap when showing the config dialog for this panel
#define HUD_Panel_GetBgAlpha()\
panel_bg_alpha = (1 - autocvar__menu_alpha) * max(cvar("hud_configure_bg_minalpha"), panel_bg_alpha) + autocvar__menu_alpha * panel_bg_alpha;\
else\
panel_bg_alpha = max(cvar("hud_configure_bg_minalpha"), panel_bg_alpha);\
-} if(!(menu_enabled == 2 && highlightedPanel == hud_configure_active_panel)) {\
- panel_bg_alpha *= hud_fade_alpha;\
}
// Get value for panel_fg_alpha. Also do various minalpha checks
// comment on line 2 of macro: // ALWAYS show disabled panels at 0.25 alpha when in config mode
-// comment on line 4 of macro: // don't fade this panel when showing the panel-specific menu dialog
#define HUD_Panel_GetFgAlpha()\
panel_fg_alpha = autocvar_hud_panel_fg_alpha;\
if(autocvar__hud_configure && !panel_enabled)\
panel_fg_alpha = 0.25;\
-if(!(menu_enabled == 2 && highlightedPanel == hud_configure_active_panel))\
- panel_fg_alpha *= hud_fade_alpha;
// Get border. See comments above, it's similar.
#define HUD_Panel_GetBorder()\
switch(id) { \
case HUD_PANEL_INFOMESSAGES: HUD_Panel_UpdateCvars(infomessages) break; \
case HUD_PANEL_PHYSICS: HUD_Panel_UpdateCvars(physics); break;\
+ case HUD_PANEL_CENTERPRINT: HUD_Panel_UpdateCvars(centerprint); break;\
}
#define HUD_Panel_UpdateCvarsForId(id) \
switch(id) { \
case HUD_PANEL_INFOMESSAGES: HUD_Panel_UpdatePosSize(infomessages) break;\
case HUD_PANEL_PHYSICS: HUD_Panel_UpdatePosSize(physics); break;\
+ case HUD_PANEL_CENTERPRINT: HUD_Panel_UpdatePosSize(centerprint); break;\
}
#define HUD_Panel_UpdatePosSizeForId(id) \
HUD_Write_Cvar_q("hud_configure_grid_ysize");
HUD_Write("\n");
- HUD_Write_Cvar_q("scr_centerpos");
- HUD_Write("\n");
-
// common cvars for all panels
float i;
for (i = 0; i < HUD_PANEL_NUM; ++i)
HUD_Write_PanelCvar_q("_progressbar");
HUD_Write_PanelCvar_q("_acceleration_mode");
break;
+ case HUD_PANEL_CENTERPRINT:
+ HUD_Write_PanelCvar_q("_align");
+ HUD_Write_PanelCvar_q("_flip");
+ HUD_Write_PanelCvar_q("_fontscale");
+ HUD_Write_PanelCvar_q("_time");
+ HUD_Write_PanelCvar_q("_fadetime");
+ break;
}
HUD_Write("\n");
}
{
string s;
+ // we only care for keyboard events
+ if(bInputType != 0 && bInputType != 1)
+ return false;
+
if(!autocvar__hud_configure)
return false;
float button_attack2;
float activeweapon;
+float switchingweapon;
+float switchweapon;
float current_viewzoom;
float zoomin_effect;
float warmup_stage;
vector camera_direction;
void centerprint(string strMessage);
+void centerprint_generic(float new_id, string strMessage, float duration, float countdown_num);
#define ALPHA_MIN_VISIBLE 0.003
localcmd(strcat("\nimpulse ", ftos(imp), "\n"));
return true;
}
+ switch(nPrimary)
+ {
+ case K_KP_1: localcmd("\nimpulse 1\n"); return true;
+ case K_KP_2: localcmd("\nimpulse 2\n"); return true;
+ case K_KP_3: localcmd("\nimpulse 3\n"); return true;
+ case K_KP_4: localcmd("\nimpulse 4\n"); return true;
+ case K_KP_5: localcmd("\nimpulse 5\n"); return true;
+ case K_KP_6: localcmd("\nimpulse 6\n"); return true;
+ case K_KP_7: localcmd("\nimpulse 7\n"); return true;
+ case K_KP_8: localcmd("\nimpulse 8\n"); return true;
+ case K_KP_9: localcmd("\nimpulse 9\n"); return true;
+ case K_KP_0: localcmd("\nimpulse 10\n"); return true;
+ }
if (nPrimary == K_MOUSE1)
if (mv_selection >= 0)
countdown_rounded = floor(0.5 + countdown);
if(countdown <= 0) {
if (!spectatee_status) //do cprint only for players
- centerprint(_("^1Begin!"));
+ centerprint_generic(CPID_GAME_STARTING, _("^1Begin!"), 1, 0);
sound(world, CH_INFO, strcat("announcer/", autocvar_cl_announcer, "/begin.wav"), VOL_BASEVOICE, ATTN_NONE);
//reset maptime announcers now as well
}
else {
if (!spectatee_status) //do cprint only for players
- centerprint(sprintf(_("^1Game starts in %d seconds"), countdown_rounded));
+ centerprint_generic(CPID_GAME_STARTING, _("^1Game starts in %d seconds"), 1, countdown_rounded);
if(countdown_rounded <= 3 && countdown_rounded >= 1) {
sound(world, CH_INFO, strcat("announcer/", autocvar_cl_announcer, "/", ftos(countdown_rounded), ".wav"), VOL_BASEVOICE, ATTN_NONE);
float MOVEFLAG_GRAVITYUNAFFECTEDBYTICRATE = 4;
#define GRAVITY_UNAFFECTED_BY_TICRATE (getstati(STAT_MOVEFLAGS) & MOVEFLAG_GRAVITYUNAFFECTEDBYTICRATE)
-.entity move_groundentity;
+.entity move_groundentity; // FIXME add move_groundnetworkentity?
.float move_suspendedinair;
.float move_didgravity;
float MOVETYPE_BOUNCEMISSILE = 11; // Like bounce but doesn't lose speed on bouncing
float MOVETYPE_FOLLOW = 12;
float MOVETYPE_FAKEPUSH = 13;
+float MOVETYPE_FLY_WORLDONLY = 33;
float FL_ITEM = 256;
float FL_ONGROUND = 512;
print(_("^3|---------------------------------------------------------------|\n"));
print(_("Usage:\n"));
print(_("^2scoreboard_columns_set default\n"));
- print(_("^2scoreboard_columns_set ^7filed1 field2 ...\n"));
+ print(_("^2scoreboard_columns_set ^7field1 field2 ...\n"));
print(_("The following field names are recognized (case insensitive):\n"));
print(_("You can use a ^3|^7 to start the right-aligned fields.\n\n"));
- print(_("^3name^7 or ^3nick^7 Name of a player\n"));
+ print(_("^3name^7 or ^3nick^7 Name of a player\n"));
print(_("^3ping^7 Ping time\n"));
print(_("^3pl^7 Packet loss\n"));
print(_("^3kills^7 Number of kills\n"));
if(rows == 2)
pos_x += weapon_width / 2;
- if(getstati(STAT_SWITCHWEAPON) == WEP_MINSTANEX)
+ if(switchweapon == WEP_MINSTANEX)
g_minstagib = 1; // TODO: real detection for minstagib?
float weapon_stats;
vector sb_heading_fontsize;
sb_heading_fontsize = hud_fontsize * 2;
drawstring(pos, _("Scoreboard"), sb_heading_fontsize, '1 1 1', scoreboard_alpha_fg, DRAWFLAG_NORMAL);
-
- centerprint_start_x = vid_conwidth - 0.5 * (pos_x + stringwidth(_("Scoreboard"), FALSE, sb_heading_fontsize));
- centerprint_start_y = pos_y;
pos_y += sb_heading_fontsize_y + hud_fontsize_y * 0.25;
// self.healthvalue
// self.armorvalue
// self.sameteam = player is on same team as local client
+// self.fadedelay = time to wait before name tag starts fading in for enemies
//
const float SHOWNAMES_FADESPEED = 4;
+const float SHOWNAMES_FADEDELAY = 0.5;
void Draw_ShowNames(entity ent)
{
if(!autocvar_hud_shownames)
return;
-
- if(ent.sv_entnum == player_localentnum && !autocvar_chase_active)
- return;
+
+ if((ent.sv_entnum == player_localentnum) || (ent.sv_entnum == spectatee_status)) // ent is me or person i'm spectating
+ if not (autocvar_hud_shownames_self && autocvar_chase_active)
+ return;
makevectors(view_angles);
}
onscreen = (o_z >= 0 && o_x >= 0 && o_y >= 0 && o_x <= vid_conwidth && o_y <= vid_conheight);
+
+ if(!ent.fadedelay)
+ ent.fadedelay = time + SHOWNAMES_FADEDELAY;
if(!ent.sameteam && (!onscreen || !hit)) // out of view, fade out
- ent.alpha = max(0, ent.alpha - SHOWNAMES_FADESPEED * frametime);
+ {
+ ent.alpha = max(0, ent.alpha - SHOWNAMES_FADESPEED * frametime);
+ ent.fadedelay = 0; // reset fade in delay, enemy has left the view
+ }
else if(ent.healthvalue < 1) // dead player, fade out slowly
- ent.alpha = max(0, ent.alpha - SHOWNAMES_FADESPEED * 0.25 * frametime);
+ ent.alpha = max(0, ent.alpha - SHOWNAMES_FADESPEED * 0.25 * frametime);
else if(overlap) // tag overlap detected, fade out
- ent.alpha = max(0, ent.alpha - SHOWNAMES_FADESPEED * frametime);
- else // fade in
+ ent.alpha = max(0, ent.alpha - SHOWNAMES_FADESPEED * frametime);
+ else if(ent.sameteam) // fade in for team mates
+ ent.alpha = min(1, ent.alpha + SHOWNAMES_FADESPEED * frametime);
+ else if(time > ent.fadedelay) // fade in for enemies
ent.alpha = min(1, ent.alpha + SHOWNAMES_FADESPEED * frametime);
if(!ent.alpha)
return;
-
+
float dist;
dist = vlen(ent.origin - view_origin);
.float healthvalue;
.float armorvalue;
.float sameteam;
+.float fadedelay;
-#define TUBA_STARTNOTE(n) strcat((checkextension("DP_SND_SETPARAMS") ? "weapons/tuba_loopnote" : "weapons/tuba_note"), ftos(n), ".wav")
-.float cnt; // note
+#define TUBA_MIN -18
+#define TUBA_MAX 27
+
+#define TUBA_STARTNOTE(n) strcat("weapons/tuba_loopnote", ftos(n), ".wav")
+.float note; // note
.float attenuate; // if set, attenuate it
+.float cnt; // current volume
+.float count; // initial volume
+
+float Tuba_PitchStep;
+
+void tubasound(entity e, float restart)
+{
+ string snd1;
+
+ snd1 = string_null;
+
+ if(Tuba_PitchStep)
+ {
+ string snd2;
+ float f1, f2;
+ float p1, p2;
+ float m;
+
+ f1 = 1;
+ p1 = 1;
+ snd2 = string_null;
+ f2 = 0;
+ p2 = 1;
+
+ m = mod(e.note, Tuba_PitchStep);
+ if(m)
+ {
+ if(e.note - m < TUBA_MIN)
+ {
+ if(restart)
+ snd1 = TUBA_STARTNOTE(e.note - m + Tuba_PitchStep);
+ p1 = pow(2.0, (m - Tuba_PitchStep) / 12.0);
+ }
+ else if(e.note - m + Tuba_PitchStep > TUBA_MAX)
+ {
+ if(restart)
+ snd1 = TUBA_STARTNOTE(e.note - m);
+ p1 = pow(2.0, m / 12.0);
+ }
+ else
+ {
+ if(restart)
+ snd1 = TUBA_STARTNOTE(e.note - m);
+ f1 = 1 - m / Tuba_PitchStep;
+ p1 = pow(2.0, m / 12.0);
+ if(restart)
+ snd2 = TUBA_STARTNOTE(e.note - m + Tuba_PitchStep);
+ f2 = m / Tuba_PitchStep;
+ p2 = pow(2.0, (m - Tuba_PitchStep) / 12.0);
+ }
+ }
+ else
+ {
+ if(restart)
+ snd1 = TUBA_STARTNOTE(e.note);
+ }
+
+ sound7(e, CH_TUBA, snd1, e.cnt * f1, e.attenuate * autocvar_g_balance_tuba_attenuation, 100 * p1, 0);
+ if(f2)
+ sound7(e.enemy, CH_TUBA, snd2, e.cnt * f2, e.attenuate * autocvar_g_balance_tuba_attenuation, 100 * p2, 0);
+ }
+ else
+ {
+ if(restart)
+ snd1 = TUBA_STARTNOTE(e.note);
+ sound(e, CH_TUBA, snd1, e.cnt, e.attenuate * autocvar_g_balance_tuba_attenuation);
+ }
+}
void Ent_TubaNote_Think()
{
self.nextthink = time;
if(self.cnt <= 0)
{
- sound(self, CH_SHOTS_SINGLE, "misc/null.wav", 0, 0);
+ sound(self, CH_TUBA, "misc/null.wav", 0, 0);
+ if(self.enemy)
+ {
+ sound(self.enemy, CH_TUBA, "misc/null.wav", 0, 0);
+ remove(self.enemy);
+ }
remove(self);
}
else
- sound(self, CH_SHOTS_SINGLE, "", self.cnt, self.attenuate * autocvar_g_balance_tuba_attenuation);
+ {
+ tubasound(self, 0);
+ }
}
void Ent_TubaNote_UpdateSound()
{
self.enemy.cnt = bound(0, VOL_BASE * autocvar_g_balance_tuba_volume, 1);
self.enemy.count = self.enemy.cnt;
- sound(self.enemy, CH_SHOTS_SINGLE, TUBA_STARTNOTE(self.cnt), self.enemy.cnt, self.enemy.attenuate * autocvar_g_balance_tuba_attenuation);
+ self.enemy.note = self.note;
+ tubasound(self.enemy, 1);
}
void Ent_TubaNote_StopSound()
float f, n;
f = ReadByte();
n = floor(f / 2) - 42;
- if(n != self.cnt || bIsNew)
+ if(n != self.note || bIsNew)
if(self.enemy)
Ent_TubaNote_StopSound();
if(!self.enemy)
{
self.enemy = spawn();
self.enemy.classname = "tuba_note";
+ if(Tuba_PitchStep)
+ {
+ self.enemy.enemy = spawn();
+ self.enemy.enemy.classname = "tuba_note_2";
+ }
bIsNew = TRUE;
}
if(f & 1)
self.enemy.origin_z = ReadCoord();
setorigin(self.enemy, self.enemy.origin);
self.enemy.attenuate = ReadByte();
+ if(self.enemy.enemy)
+ setorigin(self.enemy.enemy, self.enemy.origin);
}
self.think = Ent_TubaNote_StopSound;
self.entremove = Ent_TubaNote_StopSound;
self.enemy.nextthink = time + 10;
if(bIsNew)
{
- self.cnt = n;
+ self.note = n;
Ent_TubaNote_UpdateSound();
}
}
void Tuba_Precache()
{
float i;
- for(i = -18; i <= +27; ++i)
+ Tuba_PitchStep = autocvar_g_balance_tuba_pitchstep;
+ if(Tuba_PitchStep)
+ {
+ if(!checkextension("DP_SND_SOUND7_WIP2") && !checkextension("DP_SND_SOUND7"))
+ {
+ print("^1NOTE:^7 requested pitch shifting, but not supported by this engine build\n");
+ Tuba_PitchStep = 0;
+ }
+ }
+ for(i = TUBA_MIN; i <= TUBA_MAX; ++i)
{
- precache_sound(TUBA_STARTNOTE(i));
+ if(!Tuba_PitchStep || (mod(i, Tuba_PitchStep) == 0))
+ precache_sound(TUBA_STARTNOTE(i));
}
- //precache_sound(""); // we want to change volume of existing sounds
}
else
drawpic(hudloc + picloc, hud_ammo2_ico, pic2size, '1 1 1', 1, DRAWFLAG_NORMAL);
-
- HUD_DrawCenterPrint();
-
if (scoreboard_showscores)
HUD_DrawScoreboard();
else
}
}
- HUD_DrawCenterPrint();
-
if (scoreboard_showscores)
HUD_DrawScoreboard();
else
else
drawpic(hudloc + picloc, hud_ammo2_ico, pic2size, '1 1 1', 1, DRAWFLAG_NORMAL);
-
- HUD_DrawCenterPrint();
-
if (scoreboard_showscores)
HUD_DrawScoreboard();
else
const float TE_CSQC_PINGPLREPORT = 107;
const float TE_CSQC_ANNOUNCE = 110;
const float TE_CSQC_TARGET_MUSIC = 111;
-const float TE_CSQC_NOTIFY = 112;
-const float TE_CSQC_WEAPONCOMPLAIN = 113;
+const float TE_CSQC_KILLNOTIFY = 112;
+const float TE_CSQC_KILLCENTERPRINT = 113;
+const float TE_CSQC_CENTERPRINT_GENERIC = 114;
+const float TE_CSQC_WEAPONCOMPLAIN = 115;
const float TE_CSQC_NEX_SCOPE = 116;
const float TE_CSQC_MINELAYER_MAXMINES = 117;
const float TE_CSQC_HAGAR_MAXROCKETS = 118;
const float RACE_NET_SERVER_STATUS = 12;
const float RANKINGS_CNT = 15;
-const float CSQC_KILLNOTIFY = 0;
-const float CSQC_CENTERPRINT = 1;
-
const float ENT_CLIENT = 0;
const float ENT_CLIENT_DEAD = 1;
const float ENT_CLIENT_ENTCS = 2;
const float STAT_TYPEHIT_TIME = 55;
const float STAT_LAYED_MINES = 56;
const float STAT_HAGAR_LOAD = 57;
+const float STAT_SWITCHINGWEAPON = 58;
// see DP source, quakedef.h
const float STAT_MOVEVARS_AIRSPEEDLIMIT_NONQW = 222;
float CH_PAIN = 6; // only on players and csqc
float CH_PAIN_SINGLE = 6; // only on players and csqc
float CH_PLAYER = 7; // only on players and entities
+float CH_TUBA = 5; // only on csqc
#else
float CH_INFO = 0;
float CH_TRIGGER = -3;
float CH_PAIN = -6;
float CH_PAIN_SINGLE = 6;
float CH_PLAYER = -7;
+float CH_TUBA = 5;
#endif
float ATTN_NONE = 0;
#define FRAGS_PLAYER_NONSOLID -616
// we can use this frags value for both
-//misc. stuff
-#define NEWLINES "\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n"
-
// water levels
float WATERLEVEL_NONE = 0;
float WATERLEVEL_WETFEET = 1;
float MAX_SHOT_DISTANCE = 32768;
+//centerprint ID list
+float CPID_TEAMCHANGE = 1;
+float CPID_CTF_CAPTURESHIELD = 2;
+float CPID_MINSTA_FINDAMMO = 3;
+float CPID_NIX_WPNCHANGE = 4;
+float CPID_DISCONNECT_IDLING = 5;
+float CPID_ROUND_STARTING = 6;
+float CPID_GAME_STARTING = 7;
+float CPID_TIMEOUT_COUNTDOWN = 8;
+float CPID_MOTD = 9;
+float CPID_KH_MSG = 10;
+float CPID_PREVENT_JOIN = 11;
+
// CSQC centerprint/notify message types
float MSG_SUICIDE = 0;
float MSG_KILL = 1;
float WR_IMPACTEFFECT = 11; // (CSQC) impact effect
float WR_SWITCHABLE = 12; // (CSQC) impact effect
float WR_PLAYERDEATH = 13; // (SVQC) does not need to do anything
+float WR_GONETHINK = 14; // (SVQC) logic to run every frame, also if no longer having the weapon as long as the switch away has not been performed
float HUD_PANEL_WEAPONS = 0;
float HUD_PANEL_AMMO = 1;
float HUD_PANEL_ENGINEINFO = 13;
float HUD_PANEL_INFOMESSAGES = 14;
float HUD_PANEL_PHYSICS = 15;
-float HUD_PANEL_NUM = 16; // always last panel id + 1, please increment when adding a new panel
+float HUD_PANEL_CENTERPRINT = 16;
+float HUD_PANEL_NUM = 17; // always last panel id + 1, please increment when adding a new panel
string HUD_PANELNAME_WEAPONS = "weapons";
string HUD_PANELNAME_AMMO = "ammo";
string HUD_PANELNAME_ENGINEINFO = "engineinfo";
string HUD_PANELNAME_INFOMESSAGES = "infomessages";
string HUD_PANELNAME_PHYSICS = "physics";
+string HUD_PANELNAME_CENTERPRINT = "centerprint";
float HUD_MENU_ENABLE = 0;
// now store all the stuff
bufstr_set(_MapInfo_Cache_Buf_IndexToMapData, i, MapInfo_Map_bspname);
bufstr_set(_MapInfo_Cache_Buf_IndexToMapData, ++i, MapInfo_Map_title);
+ bufstr_set(_MapInfo_Cache_Buf_IndexToMapData, ++i, MapInfo_Map_titlestring);
bufstr_set(_MapInfo_Cache_Buf_IndexToMapData, ++i, MapInfo_Map_description);
bufstr_set(_MapInfo_Cache_Buf_IndexToMapData, ++i, MapInfo_Map_author);
bufstr_set(_MapInfo_Cache_Buf_IndexToMapData, ++i, ftos(MapInfo_Map_supportedGametypes));
// now retrieve all the stuff
MapInfo_Map_bspname = bufstr_get(_MapInfo_Cache_Buf_IndexToMapData, i);
MapInfo_Map_title = bufstr_get(_MapInfo_Cache_Buf_IndexToMapData, ++i);
+ MapInfo_Map_titlestring = bufstr_get(_MapInfo_Cache_Buf_IndexToMapData, ++i);
MapInfo_Map_description = bufstr_get(_MapInfo_Cache_Buf_IndexToMapData, ++i);
MapInfo_Map_author = bufstr_get(_MapInfo_Cache_Buf_IndexToMapData, ++i);
MapInfo_Map_supportedGametypes = stof(bufstr_get(_MapInfo_Cache_Buf_IndexToMapData, ++i));
void _MapInfo_Map_Reset()
{
MapInfo_Map_title = "<TITLE>";
+ MapInfo_Map_titlestring = "<TITLE>";
MapInfo_Map_description = "<DESCRIPTION>";
MapInfo_Map_author = "<AUTHOR>";
MapInfo_Map_supportedGametypes = 0;
}
}
+float MapInfo_isRedundant(string fn, string t)
+{
+ // normalize file name
+ fn = strreplace("_", "-", fn);
+
+ // normalize visible title
+ t = strreplace(": ", "-", t);
+ t = strreplace(":", "-", t);
+ t = strreplace(" ", "-", t);
+ t = strreplace("_", "-", t);
+ t = strreplace("'", "-", t);
+
+ if(!strcasecmp(fn, t))
+ return TRUE;
+
+ // we allow the visible title to have punctuation the file name does
+ // not, but not vice versa
+ t = strreplace("-", "", t);
+
+ if(!strcasecmp(fn, t))
+ return TRUE;
+
+ return FALSE;
+}
+
// load info about a map by name into the MapInfo_Map_* globals
float MapInfo_Get_ByName(string pFilename, float pAllowGenerate, float pGametypeToSet)
{
}
}
+ if(MapInfo_Map_title == "<TITLE>")
+ MapInfo_Map_titlestring = MapInfo_Map_bspname;
+ else if(MapInfo_isRedundant(MapInfo_Map_bspname, MapInfo_Map_title))
+ MapInfo_Map_titlestring = MapInfo_Map_title;
+ else
+ MapInfo_Map_titlestring = sprintf(_("%s: %s"), MapInfo_Map_bspname, MapInfo_Map_title);
+
MapInfo_Cache_Store();
if(MapInfo_Map_supportedGametypes != 0)
return r;
{
MapInfo_Map_bspname = string_null;
MapInfo_Map_title = string_null;
+ MapInfo_Map_titlestring = string_null;
MapInfo_Map_description = string_null;
MapInfo_Map_author = string_null;
MapInfo_Map_clientstuff = string_null;
// info about a map that MapInfo loads
string MapInfo_Map_bspname;
string MapInfo_Map_title;
+string MapInfo_Map_titlestring; // either bspname: title or just title, depending on whether bspname is redundant
string MapInfo_Map_description;
string MapInfo_Map_author;
string MapInfo_Map_clientstuff; // not in cache, only for map load
--- /dev/null
+// files (-1 for URL)
+.float url_fh;
+
+// URLs
+.string url_url;
+.float url_wbuf;
+.float url_wbufpos;
+.float url_rbuf;
+.float url_rbufpos;
+.float url_id;
+.url_ready_func url_ready;
+.entity url_ready_pass;
+
+entity url_fromid[NUM_URL_ID];
+float autocvar__urllib_nextslot;
+
+float url_URI_Get_Callback(float id, float status, string data)
+{
+ if(id < MIN_URL_ID)
+ return 0;
+ id -= MIN_URL_ID;
+ if(id >= NUM_URL_ID)
+ return 0;
+ entity e;
+ e = url_fromid[id];
+ if(!e)
+ return 0;
+ if(e.url_rbuf >= 0 || e.url_wbuf >= 0)
+ {
+ print(sprintf("WARNING: handle %d (%s) has already received data?!?\n", id + NUM_URL_ID, e.url_url));
+ return 0;
+ }
+
+ // whatever happens, we will remove the URL from the list of IDs
+ url_fromid[id] = world;
+
+ // if we get here, we MUST have both buffers cleared
+ if(e.url_rbuf != -1 || e.url_wbuf != -1 || e.url_fh != -1)
+ error("url_URI_Get_Callback: not a request waiting for data");
+
+ if(status == 0)
+ {
+ // WE GOT DATA!
+ float n, i;
+ n = tokenizebyseparator(data, "\n");
+ e.url_rbuf = buf_create();
+ if(e.url_rbuf < 0)
+ {
+ print("url_URI_Get_Callback: out of memory in buf_create\n");
+ e.url_ready(e, e.url_ready_pass, URL_READY_ERROR);
+ strunzone(e.url_url);
+ remove(e);
+ return 1;
+ }
+ e.url_rbufpos = 0;
+ if(e.url_rbuf < 0)
+ {
+ print("url_URI_Get_Callback: out of memory in buf_create\n");
+ e.url_ready(e, e.url_ready_pass, URL_READY_ERROR);
+ strunzone(e.url_url);
+ remove(e);
+ return 1;
+ }
+ for(i = 0; i < n; ++i)
+ bufstr_set(e.url_rbuf, i, argv(i));
+ e.url_ready(e, e.url_ready_pass, URL_READY_CANREAD);
+ return 1;
+ }
+ else
+ {
+ // an ERROR
+ e.url_ready(e, e.url_ready_pass, -fabs(status));
+ strunzone(e.url_url);
+ remove(e);
+ return 1;
+ }
+}
+
+void url_fopen(string url, float mode, url_ready_func rdy, entity pass)
+{
+ entity e;
+ float i;
+ if(strstrofs(url, "://", 0) >= 0)
+ {
+ switch(mode)
+ {
+ case FILE_WRITE:
+ case FILE_APPEND:
+ // collect data to a stringbuffer for a POST request
+ // attempts to close will result in a reading handle
+
+ // create a writing end that does nothing yet
+ e = spawn();
+ e.classname = "url_fopen_file";
+ e.url_url = strzone(url);
+ e.url_fh = -1;
+ e.url_wbuf = buf_create();
+ if(e.url_wbuf < 0)
+ {
+ print("url_fopen: out of memory in buf_create\n");
+ rdy(e, pass, URL_READY_ERROR);
+ strunzone(e.url_url);
+ remove(e);
+ return;
+ }
+ e.url_wbufpos = 0;
+ e.url_rbuf = -1;
+ rdy(e, pass, URL_READY_CANWRITE);
+ break;
+
+ case FILE_READ:
+ // read data only
+
+ // get slot for HTTP request
+ for(i = autocvar__urllib_nextslot; i < NUM_URL_ID; ++i)
+ if(url_fromid[i] == world)
+ break;
+ if(i >= NUM_URL_ID)
+ {
+ for(i = 0; i < autocvar__urllib_nextslot; ++i)
+ if(url_fromid[i] == world)
+ break;
+ if(i >= autocvar__urllib_nextslot)
+ {
+ print("url_fopen: too many concurrent requests\n");
+ rdy(world, pass, URL_READY_ERROR);
+ return;
+ }
+ }
+
+ // GET the data
+ if(!crypto_uri_postbuf(url, i + MIN_URL_ID, string_null, string_null, -1, 0))
+ {
+ print("url_fopen: failure in crypto_uri_postbuf\n");
+ rdy(world, pass, URL_READY_ERROR);
+ return;
+ }
+
+ // Make a dummy handle object (no buffers at
+ // all). Wait for data to come from the
+ // server, then call the callback
+ e = spawn();
+ e.classname = "url_fopen_file";
+ e.url_url = strzone(url);
+ e.url_fh = -1;
+ e.url_rbuf = -1;
+ e.url_wbuf = -1;
+ e.url_ready = rdy;
+ e.url_ready_pass = pass;
+ e.url_id = i;
+ url_fromid[i] = e;
+
+ // make sure this slot won't be reused quickly even on map change
+ cvar_set("_urllib_nextslot", ftos(mod(i + 1, NUM_URL_ID)));
+ break;
+ }
+ }
+ else
+ {
+ float fh;
+ fh = fopen(url, mode);
+ if(fh < 0)
+ {
+ rdy(world, pass, URL_READY_ERROR);
+ return;
+ }
+ else
+ {
+ e = spawn();
+ e.classname = "url_fopen_file";
+ e.url_fh = fh;
+ if(mode == FILE_READ)
+ rdy(e, pass, URL_READY_CANREAD);
+ else
+ rdy(e, pass, URL_READY_CANWRITE);
+ }
+ }
+}
+
+// close a file
+void url_fclose(entity e, url_ready_func rdy, entity pass)
+{
+ float i;
+
+ if(e.url_fh < 0)
+ {
+ if(e.url_rbuf == -1 || e.url_wbuf != -1) // not(post GET/POST request)
+ if(e.url_rbuf != -1 || e.url_wbuf == -1) // not(pre POST request)
+ error("url_fclose: not closable in current state");
+
+ // closing an URL!
+ if(e.url_wbuf >= 0)
+ {
+ // we are closing the write end (HTTP POST request)
+
+ // get slot for HTTP request
+ for(i = autocvar__urllib_nextslot; i < NUM_URL_ID; ++i)
+ if(url_fromid[i] == world)
+ break;
+ if(i >= NUM_URL_ID)
+ {
+ for(i = 0; i < autocvar__urllib_nextslot; ++i)
+ if(url_fromid[i] == world)
+ break;
+ if(i >= autocvar__urllib_nextslot)
+ {
+ print("url_fclose: too many concurrent requests\n");
+ rdy(e, pass, URL_READY_ERROR);
+ buf_del(e.url_wbuf);
+ strunzone(e.url_url);
+ remove(e);
+ return;
+ }
+ }
+
+ // POST the data
+ if(!crypto_uri_postbuf(e.url_url, i + MIN_URL_ID, "text/plain", "", e.url_wbuf, 0))
+ {
+ print("url_fclose: failure in crypto_uri_postbuf\n");
+ rdy(e, pass, URL_READY_ERROR);
+ buf_del(e.url_wbuf);
+ strunzone(e.url_url);
+ remove(e);
+ return;
+ }
+
+ // delete write end. File handle is now in unusable
+ // state. Wait for data to come from the server, then
+ // call the callback
+ buf_del(e.url_wbuf);
+ e.url_wbuf = -1;
+ e.url_ready = rdy;
+ e.url_ready_pass = pass;
+ e.url_id = i;
+ url_fromid[i] = e;
+
+ // make sure this slot won't be reused quickly even on map change
+ cvar_set("_urllib_nextslot", ftos(mod(i + 1, NUM_URL_ID)));
+ }
+ else
+ {
+ // we have READ all data, just close
+ rdy(e, pass, URL_READY_CLOSED);
+ buf_del(e.url_rbuf);
+ strunzone(e.url_url);
+ remove(e);
+ }
+ }
+ else
+ {
+ // file
+ fclose(e.url_fh);
+ rdy(e, pass, URL_READY_CLOSED); // closing creates no reading handle
+ remove(e);
+ }
+}
+
+// with \n (blame FRIK_FILE)
+string url_fgets(entity e)
+{
+ if(e.url_fh < 0)
+ {
+ if(e.url_rbuf == -1)
+ error("url_fgets: not readable in current state");
+ // curl
+ string s;
+ s = bufstr_get(e.url_rbuf, e.url_rbufpos);
+ e.url_rbufpos += 1;
+ return s;
+ }
+ else
+ {
+ // file
+ return fgets(e.url_fh);
+ }
+}
+
+// without \n (blame FRIK_FILE)
+void url_fputs(entity e, string s)
+{
+ if(e.url_fh < 0)
+ {
+ if(e.url_wbuf == -1)
+ error("url_fputs: not writable in current state");
+ // curl
+ bufstr_set(e.url_wbuf, e.url_wbufpos, s);
+ e.url_wbufpos += 1;
+ }
+ else
+ {
+ // file
+ fputs(e.url_fh, s);
+ }
+}
--- /dev/null
+float URL_READY_ERROR = -1;
+float URL_READY_CLOSED = 0;
+float URL_READY_CANWRITE = 1;
+float URL_READY_CANREAD = 2;
+// errors: -1, or negative HTTP status code
+typedef void(entity handle, entity pass, float status) url_ready_func;
+
+void url_fopen(string url, float mode, url_ready_func rdy, entity pass);
+void url_fclose(entity e, url_ready_func rdy, entity pass);
+string url_fgets(entity e);
+void url_fputs(entity e, string s);
+
+// returns true if handled
+float url_URI_Get_Callback(float id, float status, string data);
+#define MIN_URL_ID 128
+#define NUM_URL_ID 64
#pragma flag enable lo
#ifndef NOCOMPAT
-# define WORKAROUND_XON010
-# define COMPAT_XON010_CHANNELS
+//# define WORKAROUND_XON010
+//# define COMPAT_XON010_CHANNELS
#endif
case HUD_PANEL_ENGINEINFO: panel_name = HUD_PANELNAME_ENGINEINFO; break; \
case HUD_PANEL_INFOMESSAGES: panel_name = HUD_PANELNAME_INFOMESSAGES; break; \
case HUD_PANEL_PHYSICS: panel_name = HUD_PANELNAME_PHYSICS; break; \
+ case HUD_PANEL_CENTERPRINT: panel_name = HUD_PANELNAME_CENTERPRINT; break; \
} ENDS_WITH_CURLY_BRACE
// Get name of specified panel id
#include "xonotic/dialog_hudpanel_infomessages.c"
#include "xonotic/dialog_hudpanel_weapons.c"
#include "xonotic/dialog_hudpanel_physics.c"
+#include "xonotic/dialog_hudpanel_centerprint.c"
#include "xonotic/slider_picmip.c"
if(fh < 0)
if(cvar_defstring("menu_skin") != "")
{
- draw_currentSkin = strcat("gfx/menu/", cvar_defstring("menu_skin"));
+ cvar_set("menu_skin", cvar_defstring("menu_skin"));
+ draw_currentSkin = strcat("gfx/menu/", cvar_string("menu_skin"));
fh = fopen(language_filename(strcat(draw_currentSkin, "/skinvalues.txt")), FILE_READ);
}
if(fh < 0)
draw_currentSkin = "gfx/menu/default";
fh = fopen(language_filename(strcat(draw_currentSkin, "/skinvalues.txt")), FILE_READ);
}
+ if(fh < 0)
+ {
+ error("cannot load any menu skin\n");
+ }
draw_currentSkin = strzone(draw_currentSkin);
while((s = fgets(fh)))
{
--- /dev/null
+#ifdef INTERFACE
+CLASS(XonoticHUDCenterprintDialog) EXTENDS(XonoticRootDialog)
+ METHOD(XonoticHUDCenterprintDialog, fill, void(entity))
+ ATTRIB(XonoticHUDCenterprintDialog, title, string, _("Centerprint"))
+ ATTRIB(XonoticHUDCenterprintDialog, color, vector, SKINCOLOR_DIALOG_TEAMSELECT)
+ ATTRIB(XonoticHUDCenterprintDialog, intendedWidth, float, 0.4)
+ ATTRIB(XonoticHUDCenterprintDialog, rows, float, 15)
+ ATTRIB(XonoticHUDCenterprintDialog, columns, float, 4)
+ ATTRIB(XonoticHUDCenterprintDialog, name, string, "HUDcenterprint")
+ENDCLASS(XonoticHUDCenterprintDialog)
+#endif
+
+#ifdef IMPLEMENTATION
+void XonoticHUDCenterprintDialog_fill(entity me)
+{
+ entity e;
+ string panelname = "centerprint";
+
+ DIALOG_HUDPANEL_COMMON();
+
+ me.TR(me);
+ me.TDempty(me, 0.2);
+ me.TD(me, 1, 1.2, e = makeXonoticTextLabel(0, _("Message duration:")));
+ me.TD(me, 1, 2.6, e = makeXonoticSlider(1, 10, 1, "hud_panel_centerprint_time"));
+ me.TR(me);
+ me.TDempty(me, 0.2);
+ me.TD(me, 1, 1.2, e = makeXonoticTextLabel(0, _("Fade time:")));
+ me.TD(me, 1, 2.6, e = makeXonoticSlider(0, 1, 0.05, "hud_panel_centerprint_fadetime"));
+ me.TR(me);
+ me.TDempty(me, 0.2);
+ me.TD(me, 1, 3.8, e = makeXonoticCheckBox(0, "hud_panel_centerprint_flip", _("Flip messages order")));
+ me.TR(me);
+ me.TD(me, 1, 4, e = makeXonoticTextLabel(0, _("Text alignment:")));
+ me.TR(me);
+ me.TDempty(me, 0.2);
+ me.TD(me, 1, 3.8/3, e = makeXonoticRadioButton(3, "hud_panel_centerprint_align", "0", _("Left")));
+ me.TD(me, 1, 3.8/3, e = makeXonoticRadioButton(3, "hud_panel_centerprint_align", "0.5", _("Center")));
+ me.TD(me, 1, 3.8/3, e = makeXonoticRadioButton(3, "hud_panel_centerprint_align", "1", _("Right")));
+ me.TR(me);
+ me.TDempty(me, 0.2);
+ me.TD(me, 1, 1.2, e = makeXonoticTextLabel(0, _("Font scale:")));
+ me.TD(me, 1, 2.6, e = makeXonoticSlider(0.5, 2, 0.1, "hud_panel_centerprint_fontscale"));
+}
+#endif
ATTRIB(XonoticHUDWeaponsDialog, title, string, _("Weapons Panel"))
ATTRIB(XonoticHUDWeaponsDialog, color, vector, SKINCOLOR_DIALOG_TEAMSELECT)
ATTRIB(XonoticHUDWeaponsDialog, intendedWidth, float, 0.4)
- ATTRIB(XonoticHUDWeaponsDialog, rows, float, 17)
+ ATTRIB(XonoticHUDWeaponsDialog, rows, float, 18)
ATTRIB(XonoticHUDWeaponsDialog, columns, float, 4)
ATTRIB(XonoticHUDWeaponsDialog, name, string, "HUDweapons")
ENDCLASS(XonoticHUDWeaponsDialog)
setDependentStringNotEqual(e, strzone(strcat("hud_panel_", panelname, "_timeout")), "0");
me.TR(me);
me.TD(me, 1, 4, e = makeXonoticTextLabel(0, _("Weapon icons:")));
+ me.TR(me);
+ me.TDempty(me, 0.2);
+ me.TD(me, 1, 3.8, e = makeXonoticCheckBox(0, "hud_panel_weapons_onlyowned", _("Show only owned weapons")));
me.TR(me);
me.TDempty(me, 0.2);
me.TD(me, 1, 1.4, e = makeXonoticTextLabel(0, _("Show weapon ID as:")));
me.TR(me);
me.TD(me, 1, w, e = makeXonoticTextLabel(0, _("Game types:")));
-
n = ceil(GameType_GetCount() / (me.rows - 6));
wgt = (w - 0.2) / n;
for(i = 0; i < GameType_GetCount(); ++i)
me.TD(me, 1, me.columns - 5.5, e = makeXonoticButton(_("Close"), '0 0 0'));
e.onClick = Dialog_Close;
e.onClickEntity = me;
- me.TD(me, 1, me.columns - 5.5, me.startButton = e = makeXonoticButton(_("Play"), '0 0 0'));
+ me.TD(me, 1, me.columns - 5.5, me.startButton = e = makeXonoticButton(ZCTX(_("MAP^Play")), '0 0 0'));
me.startButton.onClick = MapList_LoadMap;
me.startButton.onClickEntity = NULL; // filled later
}
me.TD(me, 1, me.columns / 2, e = makeXonoticButton(_("Timedemo"), '0 0 0'));
e.onClick = TimeDemo_Click;
e.onClickEntity = dlist;
- me.TD(me, 1, me.columns / 2, e = makeXonoticButton(_("Play"), '0 0 0'));
+ me.TD(me, 1, me.columns / 2, e = makeXonoticButton(ZCTX(_("DEMO^Play")), '0 0 0'));
e.onClick = StartDemo_Click;
e.onClickEntity = dlist;
}
me.TR(me);
me.TDempty(me, 0.2);
s = makeXonoticDecibelsSlider(-20, 0, 0.5, "snd_channel1volume");
- makeMulti(s, "snd_channel5volume"); // legacy
+ makeMulti(s, "snd_channel5volume"); // @!#%'n Tuba
me.TD(me, 1, 0.8, e = makeXonoticSliderCheckBox(-1000000, 1, s, _("Weapons:")));
me.TD(me, 1, 2, s);
setDependentStringNotEqual(e, "mastervolume", "0");
e.savedValue = 0.5; // default
me.TD(me, 1, 2, s);
me.TR(me);
- me.TD(me, 1, 2, e = makeXonoticCheckBoxEx(0.5, 0, "hud_postprocessing_maxbluralpha", _("Damage & water blur")));
- me.TD(me, 1, 1, e = makeXonoticCheckBoxEx(0.5, 0, "hud_powerup", _("Powerup sharpen")));
+ e = makeXonoticCheckBoxEx(0.5, 0, "hud_postprocessing_maxbluralpha", _("Blur and sharpen postprocessing"));
+ makeMulti(e, "hud_powerup");
+ me.TD(me, 1, 2, e);
me.gotoRC(me, me.rows - 1, 0);
me.TD(me, 1, me.columns, makeXonoticCommandButton(_("Apply immediately"), '0 0 0', "vid_restart", COMMANDBUTTON_APPLY));
me.TR(me);
me.TD(me, 1, 3, e = makeXonoticTextLabel(0, _("Key bindings:")));
me.TR(me);
- me.TD(me, me.rows - 2, 3.3, kb = makeXonoticKeyBinder());
- me.gotoRC(me, me.rows - 1, 0);
+ me.TD(me, me.rows - 4, 3.3, kb = makeXonoticKeyBinder());
+ me.gotoRC(me, me.rows - 3, 0);
me.TR(me);
me.TD(me, 1, 1.1, e = makeXonoticButton(_("Change key..."), '0 0 0'));
e.onClick = KeyBinder_Bind_Change;
me.TD(me, 1, 3, e = makeXonoticCheckBox(0, "apple_mouse_noaccel", _("Turn off OS mouse acceleration")));
me.TR(me);
me.TD(me, 1, 3, e = makeXonoticCheckBox(0, "con_closeontoggleconsole", _("\"enter console\" also closes")));
+ me.TR(me);
+ me.TR(me);
+ me.TD(me, 1, 3, e = makeXonoticCheckBox(1, "cl_movement_track_canjump", _("Holding jump key keeps jumping")));
+ me.gotoRC(me, me.rows - 1, 0);
+ me.TD(me, 1, me.columns, makeXonoticCommandButton(_("Apply immediately"), '0 0 0', "sendcvar cl_movement_track_canjump", COMMANDBUTTON_APPLY));
}
#endif
void InstantAction_LoadMap(entity btn, entity dummy)
{
- float glob, i, n, fh;
- string s;
- glob = search_begin("maps/*.instantaction", TRUE, TRUE);
- if(glob < 0)
- return;
- i = ceil(random() * search_getsize(glob)) - 1;
- fh = fopen(search_getfilename(glob, i), FILE_READ);
- search_end(glob);
- if(fh < 0)
- return;
- while((s = fgets(fh)))
+ float pmin, pmax, pstep;
+
+ cvar_set("timelimit_override", "10");
+ cvar_set("g_lms_lives_override", "9");
+
+ if(random() < 0.4) // 40% are DM
+ {
+ MapInfo_SwitchGameType(MAPINFO_TYPE_DEATHMATCH);
+ pmin = 2;
+ pmax = 8;
+ pstep = 1;
+ }
+ else if(random() < 0.5) // half of the remaining 60%, i.e. 30%, are CTF
+ {
+ MapInfo_SwitchGameType(MAPINFO_TYPE_CTF);
+ pmin = 4;
+ pmax = 12;
+ pstep = 2;
+ }
+ else if(random() < 0.5) // half of the remaining 30%, i.e. 15%, are TDM
+ {
+ MapInfo_SwitchGameType(MAPINFO_TYPE_TEAM_DEATHMATCH);
+ pmin = 4;
+ pmax = 8;
+ pstep = 2;
+ }
+ else if(random() < 0.666) // 2/3 of the remaining 15%, i.e. 10%, are KH
{
- if(substring(s, 0, 4) == "set ")
- s = substring(s, 4, strlen(s) - 4);
- n = tokenize_console(s);
- if(argv(0) == "bot_number")
- cvar_set("bot_number", argv(1));
- else if(argv(0) == "skill")
- cvar_set("skill", argv(1));
- else if(argv(0) == "timelimit")
- cvar_set("timelimit_override", argv(1));
- else if(argv(0) == "fraglimit")
- cvar_set("fraglimit_override", argv(1));
- else if(argv(0) == "changelevel")
+ MapInfo_SwitchGameType(MAPINFO_TYPE_KEYHUNT);
+ pmin = 6;
+ pmax = 6;
+ pstep = 6; // works both for 2 and 3 teams
+ // TODO find team count of map, set pstep=2 or 3, and use 2v2(v2) games at least
+ }
+ else // somehow distribute the remaining 5%
+ {
+ float r;
+ r = floor(random() * 4);
+ switch(r)
{
- fclose(fh);
- localcmd("\nmenu_loadmap_prepare\n");
- MapInfo_SwitchGameType(MAPINFO_TYPE_DEATHMATCH);
- MapInfo_LoadMap(argv(1));
- cvar_set("lastlevel", "1");
- return;
+ default:
+ case 0:
+ MapInfo_SwitchGameType(MAPINFO_TYPE_LMS);
+ pmin = 2;
+ pmax = 6;
+ pstep = 1;
+ cvar_set("timelimit_override", "-1");
+ break;
+ case 1:
+ MapInfo_SwitchGameType(MAPINFO_TYPE_DOMINATION);
+ pmin = 2;
+ pmax = 8;
+ pstep = 2;
+ break;
+ case 2:
+ MapInfo_SwitchGameType(MAPINFO_TYPE_ONSLAUGHT);
+ pmin = 6;
+ pmax = 16;
+ pstep = 2;
+ break;
+ case 3:
+ MapInfo_SwitchGameType(MAPINFO_TYPE_ASSAULT);
+ pmin = 4;
+ pmax = 16;
+ pstep = 2;
+ break;
+ // CA, Freezetag: bot AI does not work, add them once it does
}
}
- fclose(fh);
+
+ // find random map
+ MapInfo_FilterGametype(MapInfo_CurrentGametype(), MapInfo_CurrentFeatures(), MapInfo_RequiredFlags(), MapInfo_ForbiddenFlags(), 0);
+ string s;
+ do
+ {
+ float m;
+ m = floor(random() * MapInfo_count);
+ s = MapInfo_BSPName_ByID(m);
+ }
+ while(!fexists(sprintf("maps/%s.waypoints", s)));
+ MapInfo_LoadMap(s);
+
+ // configure bots
+ float p;
+ pmin = pstep * ceil(pmin / pstep);
+ pmax = pstep * floor(pmax / pstep);
+ p = pmin + pstep * floor(random() * ((pmax - pmin) / pstep + 1));
+ cvar_set("bot_number", ftos(p - 1));
+
+ // make sure we go back to menu
+ cvar_set("lastlevel", "1");
}
void XonoticSingleplayerDialog_fill(entity me)
me.configureXonoticKeyBinder(me);
return me;
}
+void replace_bind(string from, string to)
+{
+ float n, j, k;
+ n = tokenize(findkeysforcommand(from)); // uses '...' strings
+ for(j = 0; j < n; ++j)
+ {
+ k = stof(argv(j));
+ if(k != -1)
+ localcmd("\nbind \"", keynumtostring(k), "\" \"", to, "\"\n");
+ }
+}
void XonoticKeyBinder_configureXonoticKeyBinder(entity me)
{
me.configureXonoticListBox(me);
Xonotic_KeyBinds_Read();
me.nItems = Xonotic_KeyBinds_Count;
me.setSelected(me, 0);
+
+ // TEMP: Xonotic 0.1 to later
+ replace_bind("impulse 1", "weapon_group_1");
+ replace_bind("impulse 2", "weapon_group_2");
+ replace_bind("impulse 3", "weapon_group_3");
+ replace_bind("impulse 4", "weapon_group_4");
+ replace_bind("impulse 5", "weapon_group_5");
+ replace_bind("impulse 6", "weapon_group_6");
+ replace_bind("impulse 7", "weapon_group_7");
+ replace_bind("impulse 8", "weapon_group_8");
+ replace_bind("impulse 9", "weapon_group_9");
+ replace_bind("impulse 14", "weapon_group_0");
}
void XonoticKeyBinder_resizeNotify(entity me, vector relOrigin, vector relSize, vector absOrigin, vector absSize)
{
i.configureDialog(i);
me.addItemCentered(me, i, i.intendedWidth * eX + i.intendedHeight * eY, SKINALPHAS_MAINMENU_z);
+ i = spawnXonoticHUDCenterprintDialog();
+ i.configureDialog(i);
+ me.addItemCentered(me, i, i.intendedWidth * eX + i.intendedHeight * eY, SKINALPHAS_MAINMENU_z);
+
me.advancedDialog = i = spawnXonoticAdvancedDialog();
i.configureDialog(i);
me.addItemCentered(me, i, i.intendedWidth * eX + i.intendedHeight * eY, SKINALPHAS_MAINMENU_z);
draw_Picture(me.columnPreviewOrigin * eX, strcat("/maps/", MapInfo_Map_bspname), me.columnPreviewSize * eX + eY, '1 1 1', theAlpha);
if(included)
draw_Picture(me.checkMarkOrigin, "checkmark", me.checkMarkSize, '1 1 1', 1);
- s = draw_TextShortenToWidth(strcat(MapInfo_Map_bspname, ": ", MapInfo_Map_title), me.columnNameSize, 0, me.realFontSize);
+ s = draw_TextShortenToWidth(MapInfo_Map_titlestring, me.columnNameSize, 0, me.realFontSize);
draw_Text(me.realUpperMargin1 * eY + (me.columnNameOrigin + 0.00 * (me.columnNameSize - draw_TextWidth(s, 0, me.realFontSize))) * eX, s, me.realFontSize, SKINCOLOR_MAPLIST_TITLE, theAlpha, 0);
s = draw_TextShortenToWidth(MapInfo_Map_author, me.columnNameSize, 0, me.realFontSize);
draw_Text(me.realUpperMargin2 * eY + (me.columnNameOrigin + 1.00 * (me.columnNameSize - draw_TextWidth(s, 0, me.realFontSize))) * eX, s, me.realFontSize, SKINCOLOR_MAPLIST_AUTHOR, theAlpha, 0);
{
float i;
string s;
- MapInfo_FilterGametype(MAPINFO_TYPE_ALL, 0, 0, MAPINFO_FLAG_FORBIDDEN, 0); // all
+ MapInfo_FilterGametype(MAPINFO_TYPE_ALL, 0, 0, MAPINFO_FLAG_FORBIDDEN | MAPINFO_FLAG_HIDDEN, 0); // all
s = "";
for(i = 0; i < MapInfo_count; ++i)
s = strcat(s, " ", MapInfo_BSPName_ByID(i));
m = SLIST_MASK_AND - 1;
resethostcachemasks();
+
+ // ping: reject negative ping (no idea why this happens in the first place, engine bug)
+ sethostcachemasknumber(++m, SLIST_FIELD_PING, 0, SLIST_TEST_GREATEREQUAL);
+
if(!me.filterShowFull)
{
sethostcachemasknumber(++m, SLIST_FIELD_FREESLOTS, 1, SLIST_TEST_GREATEREQUAL); // legacy
float _Nex_ExtResponseSystem_Queried;
string _Nex_ExtResponseSystem_UpdateTo;
+string _Nex_ExtResponseSystem_UpdateToURL;
void URI_Get_Callback(float id, float status, string data)
{
// update needed
if(n >= 2)
print(sprintf(_("Update can be downloaded at:\n%s\n"), argv(1)));
+ if(n >= 3)
+ _Nex_ExtResponseSystem_UpdateToURL = strzone(argv(2));
}
_Nex_ExtResponseSystem_UpdateTo = strzone(_Nex_ExtResponseSystem_UpdateTo);
// TODO rather turn this into a dialog
fs = ((1/draw_scale_x) * eX + (1/draw_scale_y) * eY) * 12;
line = eY * fs_y;
- sz_x = draw_TextWidth(" http://www.xonotic.org/ ", 0, fs);
+ string l1, l2;
+ l1 = sprintf(_("Update to %s now!"), _Nex_ExtResponseSystem_UpdateTo);
+ l2 = "http://www.xonotic.org/";
+ if(_Nex_ExtResponseSystem_UpdateToURL)
+ l2 = _Nex_ExtResponseSystem_UpdateToURL;
+
+ sz_x = draw_TextWidth(" ", 0, fs) + max(
+ draw_TextWidth(l1, 0, fs),
+ draw_TextWidth(l2, 0, fs)
+ );
sz_y = 3 * fs_y;
- draw_alpha = sin(time * 0.112 - 0.3) * 10;
+ draw_alpha = bound(0, sin(time * 0.112 - 0.3) * 10, 1);
mid = eX * (0.5 + 0.5 * (1 - sz_x) * cos(time * 0.071))
+ eY * (0.5 + 0.5 * (1 - sz_y) * sin(time * 0.071));
draw_Fill(mid - 0.5 * sz, sz, '1 1 0', 1);
- draw_CenterText(mid - 1 * line, sprintf(_("Update to %s now!"), _Nex_ExtResponseSystem_UpdateTo), fs, '1 0 0', 1, 0);
- draw_CenterText(mid - 0 * line, "http://www.xonotic.org/", fs, '0 0 1', 1, 0);
+ draw_CenterText(mid - 1 * line, l1, fs, '1 0 0', 1, 0);
+ draw_CenterText(mid - 0 * line, l2, fs, '0 0 1', 1, 0);
}
if not(campaign_name_previous)
campaign_name_previous = strzone(strcat(campaign_name, "x")); // force unequal
entity spawnqueue_first;
entity spawnqueue_last;
entity champion;
-string champion_name;
float warmup;
-float ca_players;
-float required_ca_players;
+float ca_teams_ok;
.float caplayer;
void PutObserverInServer();
float redalive, bluealive, yellowalive, pinkalive;
float totalalive;
.float redalive_stat, bluealive_stat, yellowalive_stat, pinkalive_stat;
-float redspawned, bluespawned, yellowspawned, pinkspawned;
-float totalspawned;
+float red_players, blue_players, yellow_players, pink_players;
+float total_players;
/**
* Resets the state of all clients, items, flags, runes, keys, weapons, waypoints, ... of the map.
}
if(g_keyhunt)
- kh_Controller_SetThink(autocvar_g_balance_keyhunt_delay_round+(game_starttime - time), "", kh_StartRound);
+ kh_Controller_SetThink_NoMsg(autocvar_g_balance_keyhunt_delay_round+(game_starttime - time), kh_StartRound);
if(g_arena)
if(champion && champion.classname == "player" && player_count > 1)
void Arena_Warmup()
{
float f;
- string msg;
entity e;
if((!g_arena && !g_ca && !g_freezetag) || (g_arena && !arena_roundbased) || (time < game_starttime))
return;
f = ceil(warmup - time);
- if(f > 0)
- champion = world; // this is done because a if(champion) will not execute if champion = world
allowed_to_spawn = 0;
if(inWarmupStage)
allowed_to_spawn = 1;
- if(ca_players < required_ca_players)
+ if(g_ca && !ca_teams_ok)
allowed_to_spawn = 1;
- msg = NEWLINES;
if(time < warmup && !inWarmupStage)
{
if (g_ca)
allowed_to_spawn = 1;
if(champion && g_arena)
- msg = strcat("The Champion is ", champion_name, "^7\n");
- //centerprint(self, strcat(msg, "The Champion is ", champion.netname, "^7\n"));
+ {
+ FOR_EACH_PLAYER(e)
+ centerprint(e, strcat("The Champion is ", champion.netname));
+ }
if(f != roundStartTime_prev) {
- msg = strcat(msg, "Round will start in ", ftos(f),"\n");
- //centerprint(self, strcat("Round will start in ", ftos(f),"\n"));
roundStartTime_prev = f;
if(f == 5)
Announce("prepareforbattle");
else if(f == 1)
Announce("1");
- FOR_EACH_PLAYER(e)
- centerprint(e, msg);
+ FOR_EACH_PLAYER(e)
+ Send_CSQC_Centerprint_Generic(e, CPID_ROUND_STARTING, "Round will start in %d", 1, f);
}
if (g_arena) {
self.movement = '0 0 0';
}
}
-
else if(f > -1 && f != roundStartTime_prev)
{
roundStartTime_prev = f;
Announce("begin");
- centerprint(self, "^1Begin!\n");
+ FOR_EACH_PLAYER(e)
+ Send_CSQC_Centerprint_Generic(e, CPID_ROUND_STARTING, "^1Begin!", 1, 0);
if(g_ca) {
- ca_players = 0;
+ float start_red_ca_players, start_blue_ca_players;
- FOR_EACH_PLAYER(e)
- ca_players += 1;
+ FOR_EACH_PLAYER(e) {
+ if (e.team == COLOR_TEAM1)
+ start_red_ca_players += 1;
+ else if (e.team == COLOR_TEAM2)
+ start_blue_ca_players += 1;
+ }
+ // teams are ok if there's at least 1 player in each team
+ ca_teams_ok = (start_red_ca_players && start_blue_ca_players);
}
if(self.classname == "player" && self.health > 0 && self.movetype == MOVETYPE_NONE)
self.movetype = MOVETYPE_WALK;
+
}
+
+ // clear champion to avoid centerprinting again the champion msg
+ if (champion)
+ champion = world;
}
-void count_spawned_players()
+void count_players()
{
- // TODO fix "*spawned" name, it should rather be "*players" or so
- // not doing this now to prevent merge hell with Tag
- // fix after merging with Tag
-
// count amount of players in each team
- totalspawned = redspawned = bluespawned = yellowspawned = pinkspawned = 0;
+ total_players = red_players = blue_players = yellow_players = pink_players = 0;
FOR_EACH_PLAYER(self) {
if (self.team == COLOR_TEAM1)
{
- redspawned += 1;
- totalspawned += 1;
+ red_players += 1;
+ total_players += 1;
}
else if (self.team == COLOR_TEAM2)
{
- bluespawned += 1;
- totalspawned += 1;
+ blue_players += 1;
+ total_players += 1;
}
else if (self.team == COLOR_TEAM3)
{
- yellowspawned += 1;
- totalspawned += 1;
+ yellow_players += 1;
+ total_players += 1;
}
else if (self.team == COLOR_TEAM4)
{
- pinkspawned += 1;
- totalspawned += 1;
+ pink_players += 1;
+ total_players += 1;
}
}
}
*
* Gets called in StartFrame()
*/
+float warntime;
void Spawnqueue_Check()
{
- count_spawned_players();
+ count_players();
if(g_ca || g_freezetag) // we want to perform this before the return block below (CA)...
{
count_alive_players();
return;
if(g_ca) {
- required_ca_players = max(2, fabs(autocvar_bot_vs_human + 1));
-
- if(ca_players < required_ca_players && (redspawned && bluespawned)) {
+ if(!ca_teams_ok && (red_players && blue_players)) {
reset_map(TRUE);
}
- else if(ca_players < required_ca_players) {
- FOR_EACH_PLAYER(self)
- centerprint(self, strcat("^1Need at least 1 player in each team to play CA", "^7\n"));
+ else if(!ca_teams_ok) {
+ if (time > warntime)
+ {
+ FOR_EACH_PLAYER(self)
+ Send_CSQC_Centerprint_Generic(self, CPID_ROUND_STARTING, "^1Need at least 1 player in each team to play CA", 2, 0);
+ warntime = time + 1;
+ }
return;
}
else if(!next_round) {
- if((redspawned && !bluespawned) || (bluespawned && !redspawned)) {
+ if((red_players && !blue_players) || (blue_players && !red_players)) {
next_round = time + 5;
- champion = find(world, classname, "player");
- if(champion_name)
- strunzone(champion_name);
- champion_name = strzone(champion.netname);
}
- else if((!redspawned && !bluespawned) || time - warmup > autocvar_g_ca_round_timelimit) {
- FOR_EACH_CLIENT(self) centerprint(self, strcat("^7Round tied.", "^7\n"));
+ else if((!red_players && !blue_players) || time - warmup > autocvar_g_ca_round_timelimit) {
+ FOR_EACH_CLIENT(self) centerprint(self, "^7Round tied");
next_round = time + 5;
}
if(redalive && !bluealive)
{
play2all("ctf/red_capture.wav");
- FOR_EACH_CLIENT(self) centerprint(self, "^1 RED ^7team wins the round.\n");
+ FOR_EACH_CLIENT(self) centerprint(self, "^1RED ^7team wins the round");
TeamScore_AddToTeam(COLOR_TEAM1, ST_SCORE, +1);
stopalivecheck = TRUE;
}
else if(bluealive && !redalive)
{
play2all("ctf/blue_capture.wav");
- FOR_EACH_CLIENT(self) centerprint(self, "^4 BLUE ^7team wins the round.\n");
+ FOR_EACH_CLIENT(self) centerprint(self, "^4BLUE ^7team wins the round");
TeamScore_AddToTeam(COLOR_TEAM2, ST_SCORE, +1);
stopalivecheck = TRUE;
}
centerprint(player, s);
}
}
-
+
oldactivator = activator;
activator = oldself;
SUB_UseTargets();
return;
}
self.spawnflags = 3;
+ self.classname = "func_assault_destructible";
if(assault_attacker_team == COLOR_TEAM1) {
self.team = COLOR_TEAM2;
} else {
activator = self;
SUB_UseTargets();
-
+
#ifdef TTURRETS_ENABLED
entity ent, oldself;
// reset objectives, toggle spawnpoints, reset triggers, ...
void vehicles_clearrturn();
void vehicles_spawn();
-void assault_new_round()
+void assault_new_round()
{
entity oldself;
//bprint("ASSAULT: new round\n");
FOR_EACH_PLAYER(self)
{
if(self.vehicle)
- vehicles_exit(VHEF_RELESE);
+ vehicles_exit(VHEF_RELESE);
}
-
+
self = findchainflags(vehicle_flags, VHF_ISVEHICLE);
while(self)
{
ent.team_saved = COLOR_TEAM1;
}
}
-
+
// reset the level with a countdown
cvar_set("timelimit", ftos(ceil(time - game_starttime) / 60));
ReadyRestartForce(); // sets game_starttime
+float autocvar__independent_players;
float autocvar__campaign_index;
string autocvar__campaign_name;
float autocvar__sv_init;
float autocvar_g_balance_hagar_secondary;
float autocvar_g_balance_hagar_secondary_load;
float autocvar_g_balance_hagar_secondary_load_speed;
+float autocvar_g_balance_hagar_secondary_load_spread;
+float autocvar_g_balance_hagar_secondary_load_spread_bias;
float autocvar_g_balance_hagar_secondary_load_max;
float autocvar_g_balance_hagar_secondary_load_hold;
float autocvar_g_balance_hagar_secondary_load_releasedeath;
float autocvar_g_balance_hagar_secondary_lifetime_rand;
float autocvar_g_balance_hagar_secondary_radius;
float autocvar_g_balance_hagar_secondary_refire;
+float autocvar_g_balance_hagar_secondary_speed;
+float autocvar_g_balance_hagar_secondary_spread;
float autocvar_g_balance_hagar_reload_ammo;
float autocvar_g_balance_hagar_reload_time;
float autocvar_g_balance_health_limit;
float autocvar_g_ca_point_leadlimit;
float autocvar_g_ca_point_limit;
float autocvar_g_ca_round_timelimit;
+float autocvar_g_ca_spectate_enemies;
float autocvar_g_ca_warmup;
float autocvar_g_campaign;
-float autocvar_g_campaign_forceteam;
+#define autocvar_g_campaign_forceteam cvar("g_campaign_forceteam")
float autocvar_g_campaign_skill;
float autocvar_g_casings;
float autocvar_g_changeteam_banned;
float bot_aim(float shotspeed, float shotspeedupward, float maxshottime, float applygravity)
{
- local float f, r;
+ local float f, r, hf, distanceratio;
local vector v;
/*
eprint(self);
dprint(", ", ftos(applygravity));
dprint(");\n");
*/
+
+ hf = self.dphitcontentsmask;
+ self.dphitcontentsmask = DPCONTENTS_SOLID | DPCONTENTS_BODY | DPCONTENTS_CORPSE;
+
shotspeed *= g_weaponspeedfactor;
shotspeedupward *= g_weaponspeedfactor;
if (!shotspeed)
shotorg = self.origin + self.view_ofs;
shotdir = v_forward;
v = bot_shotlead(self.bot_aimtargorigin, self.bot_aimtargvelocity, shotspeed, self.bot_aimlatency);
- local float distanceratio;
- distanceratio =sqrt(bound(0,skill,10000))*0.3*(vlen(v-shotorg)-100)/autocvar_bot_ai_aimskill_firetolerance_distdegrees;
+ distanceratio = sqrt(bound(0,skill,10000))*0.3*(vlen(v-shotorg)-100)/autocvar_bot_ai_aimskill_firetolerance_distdegrees;
distanceratio = bound(0,distanceratio,1);
r = (autocvar_bot_ai_aimskill_firetolerance_maxdegrees-autocvar_bot_ai_aimskill_firetolerance_mindegrees)
* (1-distanceratio) + autocvar_bot_ai_aimskill_firetolerance_mindegrees;
if (applygravity && self.bot_aimtarg)
{
if (!findtrajectorywithleading(shotorg, '0 0 0', '0 0 0', self.bot_aimtarg, shotspeed, shotspeedupward, maxshottime, 0, self))
+ {
+ self.dphitcontentsmask = hf;
return FALSE;
+ }
+
f = bot_aimdir(findtrajectory_velocity - shotspeedupward * '0 0 1', r);
}
else
if (trace_fraction < 1)
if (trace_ent != self.enemy)
if (!bot_shouldattack(trace_ent))
+ {
+ self.dphitcontentsmask = hf;
return FALSE;
+ }
}
//if (r > maxshottime * shotspeed)
// return FALSE;
+ self.dphitcontentsmask = hf;
return TRUE;
};
#include "role_keyhunt.qc"
#include "role_freezetag.qc"
#include "role_keepaway.qc"
+#include "role_assault.qc"
#include "roles.qc"
void havocbot_ai()
if(autocvar_g_midair)
return;
- // Don't jump when using some weapons
- /*
+ // Don't jump when attacking
if(self.aistatus & AI_STATUS_ATTACKING)
- if(self.weapon == WEP_RIFLE)
return;
if(self.goalcurrent.classname == "player")
return;
- */
maxspeed = autocvar_sv_maxspeed;
self.bot_timelastseengoal = 0;
}
+#if 0
// Release jump button
if(!cvar("sv_pogostick"))
if(self.flags & FL_ONGROUND == 0)
}
}
+#endif
};
void havocbot_movetogoal()
// Handling of jump pads
if(self.jumppadcount)
{
- // If got stuck on the jump pad try to reach the farthest visible item
+ // If got stuck on the jump pad try to reach the farthest visible waypoint
if(self.aistatus & AI_STATUS_OUT_JUMPPAD)
{
if(fabs(self.velocity_z)<50)
local entity head, newgoal;
local float distance, bestdistance;
- for (head = findchainfloat(bot_pickup, TRUE); head; head = head.chain)
+ for (head = findchain(classname, "waypoint"); head; head = head.chain)
{
- if(head.classname=="worldspawn")
- continue;
distance = vlen(head.origin - self.origin);
if(distance>1000)
{
if(self.velocity_z>0)
{
- local float threshold;
+ float threshold, sxy;
+ vector velxy = self.velocity; velxy_z = 0;
+ sxy = vlen(velxy);
threshold = maxspeed * 0.2;
- if(fabs(self.velocity_x) < threshold && fabs(self.velocity_y) < threshold)
+ if(sxy < threshold)
{
- dprint("Warning: ", self.netname, " got stuck on a jumppad, trying to get out of it now\n");
+ dprint("Warning: ", self.netname, " got stuck on a jumppad (velocity in xy is ", ftos(sxy), "), trying to get out of it now\n");
self.aistatus |= AI_STATUS_OUT_JUMPPAD;
}
return;
// (only when the bot is on the ground or jumping intentionally)
self.aistatus &~= AI_STATUS_DANGER_AHEAD;
- if(trace_fraction == 1 && self.jumppadcount == 0)
+ if(trace_fraction == 1 && self.jumppadcount == 0 && !self.goalcurrent.wphardwired )
if(self.flags & FL_ONGROUND || self.aistatus & AI_STATUS_RUNNING || self.BUTTON_JUMP == TRUE)
{
// Look downwards
if(tracebox_hits_trigger_hurt(dst_ahead, self.mins, self.maxs, trace_endpos))
{
// Remove dangerous dynamic goals from stack
- if (self.goalcurrent.classname == "player" || self.goalcurrent.classname == "droppedweapon")
- {
- navigation_poproute();
- if(self.goalcurrent)
- gco = (self.goalcurrent.absmin + self.goalcurrent.absmax) * 0.5;
- }
- // try to stop
- flatdir = '0 0 0';
- evadeobstacle = normalize(self.velocity) * -1;
+ dprint("bot ", self.netname, " avoided the goal ", self.goalcurrent.classname, " ", etos(self.goalcurrent), " because it led to a dangerous path; goal stack cleared\n");
+ navigation_clearroute();
+ return;
}
}
}
void havocbot_chooseenemy()
{
local entity head, best, head2;
- local float rating, bestrating, i, f;
+ local float rating, bestrating, i, hf;
local vector eye, v;
if (autocvar_bot_nofire || IS_INDEPENDENT_PLAYER(self))
{
if (self.health > 30)
{
// remain tracking him for a shot while (case he went after a small corner or pilar
- self.havocbot_chooseenemy_finished = time + autocvar_bot_ai_enemydetectioninterval;
+ self.havocbot_chooseenemy_finished = time + 0.5;
return;
}
// enemy isn't visible, or is far away, or we're injured severely
bestrating = 100000000;
head = head2 = findchainfloat(bot_attack, TRUE);
+ // Backup hit flags
+ hf = self.dphitcontentsmask;
+
// Search for enemies, if no enemy can be seen directly try to look through transparent objects
+
+ self.dphitcontentsmask = DPCONTENTS_SOLID | DPCONTENTS_BODY | DPCONTENTS_CORPSE;
+
for(;;)
{
while (head)
break;
// Set flags to see through transparent objects
- f = self.dphitcontentsmask;
- self.dphitcontentsmask = DPCONTENTS_OPAQUE;
+ self.dphitcontentsmask |= DPCONTENTS_OPAQUE;
head = head2;
++i;
}
- // Restore hit flags if needed
- if(i)
- self.dphitcontentsmask = f;
+ // Restore hit flags
+ self.dphitcontentsmask = hf;
self.enemy = best;
self.havocbot_stickenemy = TRUE;
--- /dev/null
+#define HAVOCBOT_AST_ROLE_NONE 0
+#define HAVOCBOT_AST_ROLE_DEFENSE 2
+#define HAVOCBOT_AST_ROLE_OFFENSE 4
+
+.float havocbot_role_flags;
+.float havocbot_attack_time;
+
+.void() havocbot_role;
+.void() havocbot_previous_role;
+
+void() havocbot_role_ast_defense;
+void() havocbot_role_ast_offense;
+.entity havocbot_ast_target;
+
+void(entity bot) havocbot_ast_reset_role;
+
+void(float ratingscale, vector org, float sradius) havocbot_goalrating_items;
+void(float ratingscale, vector org, float sradius) havocbot_goalrating_enemyplayers;
+
+void havocbot_goalrating_ast_targets(float ratingscale)
+{
+ entity ad, best, pl, wp, tod;
+ float radius, found, bestvalue, c;
+ vector p;
+
+ ad = findchain(classname, "func_assault_destructible");
+
+ for (; ad; ad = ad.chain)
+ {
+ if (ad.target == "")
+ continue;
+
+ if not(ad.bot_attack)
+ continue;
+
+ found = FALSE;
+ for(tod = world; (tod = find(tod, targetname, ad.target)); )
+ {
+ if(tod.classname == "target_objective_decrease")
+ {
+ if(tod.enemy.health > 0 && tod.enemy.health < ASSAULT_VALUE_INACTIVE)
+ {
+ // dprint(etos(ad),"\n");
+ found = TRUE;
+ break;
+ }
+ }
+ }
+
+ if(!found)
+ {
+ /// dprint("target not found\n");
+ continue;
+ }
+ /// dprint("target #", etos(ad), " found\n");
+
+
+ p = 0.5 * (ad.absmin + ad.absmax);
+ // dprint(vtos(ad.origin), " ", vtos(ad.absmin), " ", vtos(ad.absmax),"\n");
+ // te_knightspike(p);
+ // te_lightning2(world, '0 0 0', p);
+
+ // Find and rate waypoints around it
+ found = FALSE;
+ best = world;
+ bestvalue = 99999999999;
+ for(radius=0; radius<1500 && !found; radius+=500)
+ {
+ for(wp=findradius(p, radius); wp; wp=wp.chain)
+ {
+ if(!(wp.wpflags & WAYPOINTFLAG_GENERATED))
+ if(wp.classname=="waypoint")
+ if(checkpvs(wp.origin, ad))
+ {
+ found = TRUE;
+ if(wp.cnt<bestvalue)
+ {
+ best = wp;
+ bestvalue = wp.cnt;
+ }
+ }
+ }
+ }
+
+ if(best)
+ {
+ /// dprint("waypoints around target were found\n");
+ // te_lightning2(world, '0 0 0', best.origin);
+ // te_knightspike(best.origin);
+
+ navigation_routerating(best, ratingscale, 4000);
+ best.cnt += 1;
+
+ self.havocbot_attack_time = 0;
+
+ if(checkpvs(self.view_ofs,ad))
+ if(checkpvs(self.view_ofs,best))
+ {
+ // dprint("increasing attack time for this target\n");
+ self.havocbot_attack_time = time + 2;
+ }
+ }
+ }
+}
+
+void havocbot_role_ast_offense()
+{
+ if(self.deadflag != DEAD_NO)
+ {
+ self.havocbot_attack_time = 0;
+ havocbot_ast_reset_role(self);
+ return;
+ }
+
+ // Set the role timeout if necessary
+ if (!self.havocbot_role_timeout)
+ self.havocbot_role_timeout = time + 120;
+
+ if (time > self.havocbot_role_timeout)
+ {
+ havocbot_ast_reset_role(self);
+ return;
+ }
+
+ if(self.havocbot_attack_time>time)
+ return;
+
+ if (self.bot_strategytime < time)
+ {
+ navigation_goalrating_start();
+ havocbot_goalrating_enemyplayers(20000, self.origin, 650);
+ havocbot_goalrating_ast_targets(20000);
+ havocbot_goalrating_items(15000, self.origin, 10000);
+ navigation_goalrating_end();
+
+ self.bot_strategytime = time + autocvar_bot_ai_strategyinterval;
+ }
+};
+
+void havocbot_role_ast_defense()
+{
+ if(self.deadflag != DEAD_NO)
+ {
+ self.havocbot_attack_time = 0;
+ havocbot_ast_reset_role(self);
+ return;
+ }
+
+ // Set the role timeout if necessary
+ if (!self.havocbot_role_timeout)
+ self.havocbot_role_timeout = time + 120;
+
+ if (time > self.havocbot_role_timeout)
+ {
+ havocbot_ast_reset_role(self);
+ return;
+ }
+
+ if(self.havocbot_attack_time>time)
+ return;
+
+ if (self.bot_strategytime < time)
+ {
+ navigation_goalrating_start();
+ havocbot_goalrating_enemyplayers(20000, self.origin, 3000);
+ havocbot_goalrating_ast_targets(20000);
+ havocbot_goalrating_items(15000, self.origin, 10000);
+ navigation_goalrating_end();
+
+ self.bot_strategytime = time + autocvar_bot_ai_strategyinterval;
+ }
+};
+
+void havocbot_role_ast_setrole(entity bot, float role)
+{
+ switch(role)
+ {
+ case HAVOCBOT_AST_ROLE_DEFENSE:
+ bot.havocbot_role = havocbot_role_ast_defense;
+ bot.havocbot_role_flags = HAVOCBOT_AST_ROLE_DEFENSE;
+ bot.havocbot_role_timeout = 0;
+ break;
+ case HAVOCBOT_AST_ROLE_OFFENSE:
+ bot.havocbot_role = havocbot_role_ast_offense;
+ bot.havocbot_role_flags = HAVOCBOT_AST_ROLE_OFFENSE;
+ bot.havocbot_role_timeout = 0;
+ break;
+ }
+};
+
+void havocbot_ast_reset_role(entity bot)
+{
+ local entity head;
+ local float c;
+
+ if(self.deadflag != DEAD_NO)
+ return;
+
+ if(bot.team==assault_attacker_team)
+ havocbot_role_ast_setrole(bot, HAVOCBOT_AST_ROLE_OFFENSE);
+ else
+ havocbot_role_ast_setrole(bot, HAVOCBOT_AST_ROLE_DEFENSE);
+};
+
+void havocbot_chooserole_ast()
+{
+ havocbot_ast_reset_role(self);
+};
if(mf.cnt == FLAG_BASE)
return;
- navigation_routerating(mf, ratingscale, 10000);
+ if(mf.tag_entity)
+ navigation_routerating(mf.tag_entity, ratingscale, 10000);
};
void havocbot_goalrating_ctf_droppedflags(float ratingscale, vector org, float radius)
bot.havocbot_role = havocbot_role_ctf_carrier;
bot.havocbot_role_timeout = 0;
bot.havocbot_cantfindflag = time + 10;
+ bot.bot_strategytime = 0;
break;
case HAVOCBOT_CTF_ROLE_DEFENSE:
dprint("defense");
bot.havocbot_previous_role = bot.havocbot_role;
bot.havocbot_role = havocbot_role_ctf_retriever;
bot.havocbot_role_timeout = time + 10;
+ bot.bot_strategytime = 0;
break;
case HAVOCBOT_CTF_ROLE_ESCORT:
dprint("escort");
bot.havocbot_previous_role = bot.havocbot_role;
bot.havocbot_role = havocbot_role_ctf_escort;
bot.havocbot_role_timeout = time + 30;
+ bot.bot_strategytime = 0;
break;
}
dprint("\n");
continue;
}
+ // TODO: rate waypoints near the targetted player at that moment, instead of the player itself
+ // adding a player as a goal seems to be quite dangerous, especially on space maps
+ // remove hack in navigation_poptouchedgoals() after performing this change
+
t = (self.health + self.armorvalue ) / (head.health + head.armorvalue );
navigation_routerating(head, t * ratingscale, 2000);
}
havocbot_chooserole_ka();
else if (g_freezetag)
havocbot_chooserole_ft();
+ else if (g_assault)
+ havocbot_chooserole_ast();
else // assume anything else is deathmatch
havocbot_chooserole_dm();
};
if (trace_fraction < 1)
{
// check if we can walk over this obstacle, possibly by jumpstepping
- tracebox(org + jumpstepheightvec, m1, m2, move + jumpstepheightvec, movemode, e);
+ tracebox(org + stepheightvec, m1, m2, move + stepheightvec, movemode, e);
if (trace_fraction < 1 || trace_startsolid)
{
- if(autocvar_bot_debug_tracewalk)
- debugnodestatus(trace_endpos, DEBUG_NODE_WARNING);
-
- // check for doors
- traceline( org, move, movemode, e);
- if ( trace_ent.classname == "door_rotating" || trace_ent.classname == "door")
+ tracebox(org + jumpstepheightvec, m1, m2, move + jumpstepheightvec, movemode, e);
+ if (trace_fraction < 1 || trace_startsolid)
{
- local vector nextmove;
- move = trace_endpos;
- while(trace_ent.classname == "door_rotating" || trace_ent.classname == "door")
+ if(autocvar_bot_debug_tracewalk)
+ debugnodestatus(trace_endpos, DEBUG_NODE_WARNING);
+
+ // check for doors
+ traceline( org, move, movemode, e);
+ if ( trace_ent.classname == "door_rotating" || trace_ent.classname == "door")
{
- nextmove = move + (dir * stepdist);
- traceline( move, nextmove, movemode, e);
- move = nextmove;
+ local vector nextmove;
+ move = trace_endpos;
+ while(trace_ent.classname == "door_rotating" || trace_ent.classname == "door")
+ {
+ nextmove = move + (dir * stepdist);
+ traceline( move, nextmove, movemode, e);
+ move = nextmove;
+ }
}
- }
- else
- {
- if(autocvar_bot_debug_tracewalk)
- debugnodestatus(trace_endpos, DEBUG_NODE_FAIL);
+ else
+ {
+ if(autocvar_bot_debug_tracewalk)
+ debugnodestatus(trace_endpos, DEBUG_NODE_FAIL);
- //print("tracewalk: ", vtos(start), " hit something when trying to reach ", vtos(end), "\n");
- //te_explosion(trace_endpos);
- //print(ftos(e.dphitcontentsmask), "\n");
- return FALSE; // failed
+ //print("tracewalk: ", vtos(start), " hit something when trying to reach ", vtos(end), "\n");
+ //te_explosion(trace_endpos);
+ //print(ftos(e.dphitcontentsmask), "\n");
+ return FALSE; // failed
+ }
}
+ else
+ move = trace_endpos;
}
else
move = trace_endpos;
if (!e)
return;
+ if(e.blacklisted)
+ return;
+
o = (e.absmin + e.absmax) * 0.5;
+
//print("routerating ", etos(e), " = ", ftos(f), " - ", ftos(rangebias), "\n");
// Evaluate path using jetpack
}
else
{
+ float search;
+
+ search = TRUE;
+
+ if(e.flags & FL_ITEM)
+ {
+ if not(e.flags & FL_WEAPON)
+ if(e.nearestwaypoint)
+ search = FALSE;
+ }
+ else if (e.flags & FL_WEAPON)
+ {
+ if(e.classname != "droppedweapon")
+ if(e.nearestwaypoint)
+ search = FALSE;
+ }
+
+ if(search)
if (time > e.nearestwaypointtimeout)
{
nwp = navigation_findnearestwaypoint(e, TRUE);
if(nwp)
e.nearestwaypoint = nwp;
else
+ {
dprint("FAILED to find a nearest waypoint to '", e.classname, "' #", etos(e), "\n");
+ if(e.flags & FL_ITEM)
+ e.blacklisted = TRUE;
+ else if (e.flags & FL_WEAPON)
+ {
+ if(e.classname != "droppedweapon")
+ e.blacklisted = TRUE;
+ }
+
+ if(e.blacklisted)
+ {
+ dprint("The entity '", e.classname, "' is going to be excluded from path finding during this match\n");
+ return;
+ }
+ }
+
// TODO: Cleaner solution, probably handling this timeout from ctf.qc
if(e.classname=="item_flag_team")
e.nearestwaypointtimeout = time + 2;
}
}
+ // If for some reason the bot is closer to the next goal, pop the current one
+ if(self.goalstack01)
+ if(vlen(self.goalcurrent.origin - self.origin) > vlen(self.goalstack01.origin - self.origin))
+ if(checkpvs(self.origin + self.view_ofs, self.goalstack01))
+ if(tracewalk(self, self.origin, self.mins, self.maxs, (self.goalstack01.absmin + self.goalstack01.absmax) * 0.5, bot_navigation_movemode))
+ {
+ /// dprint("path optimized for ", self.netname, ", removed a goal from the queue\n");
+ navigation_poproute();
+ // TODO this may also be a nice idea to do "early" (e.g. by
+ // manipulating the vlen() comparisons) to shorten paths in
+ // general - this would make bots walk more "on rails" than
+ // "zigzagging" which they currently do with sufficiently
+ // random-like waypoints, and thus can make a nice bot
+ // personality property
+ }
+
+ // HACK: remove players/bots as goals, they can lead a bot to unexpected places (cliffs, lava, etc)
+ // TODO: rate waypoints near the targetted player at that moment, instead of the player itself
+ if(self.goalcurrent.classname=="player")
+ navigation_poproute();
+
+ // aid for detecting jump pads better (distance based check fails sometimes)
+ if(self.goalcurrent.wpflags & WAYPOINTFLAG_TELEPORT && self.jumppadcount > 0 )
+ navigation_poproute();
+
// Loose goal touching check when running
if(self.aistatus & AI_STATUS_RUNNING)
+ if(self.speed >= autocvar_sv_maxspeed) // if -really- running
if(self.goalcurrent.classname=="waypoint")
{
if(vlen(self.origin - self.goalcurrent.origin)<150)
.float navigation_hasgoals;
.float lastteleporttime;
+.float blacklisted;
+
.entity navigation_jetpack_goal;
.vector navigation_jetpack_point;
}
bufstr_set(bot.bot_cmdqueuebuf, bot.bot_cmdqueuebuf_end, cmdstring);
+
+ // if the command was a "sound" command, precache the sound NOW
+ // this prevents lagging!
+ {
+ float sp;
+ string parm;
+ string cmdstr;
+
+ sp = strstrofs(cmdstr, " ", 0);
+ if(sp < 0)
+ {
+ parm = "";
+ }
+ else
+ {
+ parm = substring(cmdstr, sp + 1, -1);
+ cmdstr = substring(cmdstr, 0, sp);
+ }
+ if(cmdstr == "sound")
+ precache_sound(cmdstr);
+ }
+
bot.bot_cmdqueuebuf_end += 1;
}
#define BOT_CMD_BARRIER 20
#define BOT_CMD_CONSOLE 21
#define BOT_CMD_SOUND 22
-#define BOT_CMD_WHILE 23 // TODO: Not implemented yet
-#define BOT_CMD_WEND 24 // TODO: Not implemented yet
-#define BOT_CMD_CHASE 25 // TODO: Not implemented yet
+#define BOT_CMD_DEBUG_ASSERT_CANFIRE 23
+#define BOT_CMD_WHILE 24 // TODO: Not implemented yet
+#define BOT_CMD_WEND 25 // TODO: Not implemented yet
+#define BOT_CMD_CHASE 26 // TODO: Not implemented yet
-#define BOT_CMD_COUNTER 23 // Update this value if you add/remove a command
+#define BOT_CMD_COUNTER 24 // Update this value if you add/remove a command
// NOTE: Following commands should be implemented on the bot ai
// If a new command should be handled by the target ai(s) please declare it here
bot_cmd_string[BOT_CMD_SOUND] = "sound";
bot_cmd_parm_type[BOT_CMD_SOUND] = BOT_CMD_PARAMETER_STRING;
+ bot_cmd_string[BOT_CMD_DEBUG_ASSERT_CANFIRE] = "debug_assert_canfire";
+ bot_cmd_parm_type[BOT_CMD_DEBUG_ASSERT_CANFIRE] = BOT_CMD_PARAMETER_FLOAT;
+
bot_cmds_initialized = TRUE;
}
case BOT_CMD_SOUND:
print("play sound file at bot location");
break;
+ case BOT_CMD_DEBUG_ASSERT_CANFIRE:
+ print("verify the state of the weapon entity");
+ break;
default:
print("This command has no description yet.");
break;
return CMD_STATUS_FINISHED;
}
+.entity tuba_note;
+float bot_cmd_debug_assert_canfire()
+{
+ float f;
+ f = bot_cmd.bot_cmd_parm_float;
+
+ if(self.weaponentity.state != WS_READY)
+ {
+ if(f)
+ {
+ self.colormod = '0 8 8';
+ print("Bot wants to fire, inhibited by weaponentity state\n");
+ }
+ }
+ else if(ATTACK_FINISHED(self) > time)
+ {
+ if(f)
+ {
+ self.colormod = '8 0 8';
+ print("Bot wants to fire, inhibited by ATTACK_FINISHED\n");
+ }
+ }
+ else if(self.tuba_note)
+ {
+ if(f)
+ {
+ self.colormod = '8 0 0';
+ print("Bot wants to fire, bot still has an active tuba note\n");
+ }
+ }
+ else
+ {
+ if(!f)
+ {
+ self.colormod = '8 8 0';
+ print("Bot thinks it has fired, but apparently did not\n");
+ }
+ }
+
+ return CMD_STATUS_FINISHED;
+}
+
//
void bot_command_executed(float rm)
{
local float status, ispressingkey;
- if(self.deadflag!=DEAD_NO)
- return 0;
-
// Find command
bot_setcurrentcommand();
+ // if we have no bot command, better return
+ // old logic kept pressing previously pressed keys, but that has problems
+ // (namely, it means you cannot make a bot "normal" ever again)
+ // to keep a bot walking for a while, use the "wait" bot command
+ if(bot_cmd == world)
+ return FALSE;
+
// Ignore all commands except continue when the bot is paused
if(self.bot_exec_status & BOT_EXEC_STATUS_PAUSED)
if(bot_cmd.bot_cmd_type!=BOT_CMD_CONTINUE)
// Keep pressing keys raised by the "presskey" command
ispressingkey = !!bot_presskeys();
- if(bot_cmd==world)
- return ispressingkey;
-
// Handle conditions
if not(bot_cmd.bot_cmd_type==BOT_CMD_FI||bot_cmd.bot_cmd_type==BOT_CMD_ELSE)
if(self.bot_cmd_condition_status & CMD_CONDITION_TRUE && self.bot_cmd_condition_status & CMD_CONDITION_FALSE_BLOCK)
case BOT_CMD_SOUND:
status = bot_cmd_sound();
break;
+ case BOT_CMD_DEBUG_ASSERT_CANFIRE:
+ status = bot_cmd_debug_assert_canfire();
+ break;
default:
print(strcat("ERROR: Invalid command on queue with id '",ftos(bot_cmd.bot_cmd_type),"'\n"));
return 0;
if(!found)
{
- // can't find that waypoint
- fclose(file);
- return FALSE;
+ dprint("waypoint_load_links: couldn't find 'from' waypoint at ", vtos(wp_from.origin),"\n");
+ continue;
}
+
}
// Search "to" waypoint
if(!found)
{
- // can't find that waypoint
- fclose(file);
- return FALSE;
+ dprint("waypoint_load_links: couldn't find 'to' waypoint at ", vtos(wp_to.origin),"\n");
+ continue;
}
++c;
++c;
waypoint_addlink(wp_from, wp_to);
+ wp_from.wphardwired = TRUE;
+ wp_to.wphardwired = TRUE;
}
fclose(file);
.float wp16mincost, wp17mincost, wp18mincost, wp19mincost, wp20mincost, wp21mincost, wp22mincost, wp23mincost;
.float wp24mincost, wp25mincost, wp26mincost, wp27mincost, wp28mincost, wp29mincost, wp30mincost, wp31mincost;
-.float wpfire, wpcost, wpconsidered, wpisbox, wpflags, wplinked;
+.float wpfire, wpcost, wpconsidered, wpisbox, wpflags, wplinked, wphardwired;
.vector wpnearestpoint;
void changelevel (string s) = #70;
void cvar_set (string var, string val) = #72;
-//void(entity client, string s) centerprint = #73;
+void(entity client, string s) centerprint = #73;
void ambientsound (vector pos, string samp, float vol, float atten) = #74;
string precache_model2 (string s) = #75;
string precache_sound2 (string s) = #76;
title = campaign_shortdesc[0];
title = strzone(strcat("Level ", ftos(campaign_level + 1), ": ", title));
- campaign_message = strzone(strcat("\n\n\n\n\n\n\n\n\n\n^1\n", title, "\n^3\n", campaign_longdesc[0], "\n\n^1press jump to enter the game"));
+ campaign_message = strzone(strcat(title, "\n^3\n", campaign_longdesc[0], "\n\n^1press jump to enter the game"));
strunzone(title);
}
if(campaign_entries < 2)
{
// I have won
- savevar = strcat("g_campaign", campaign_name, "_won");
- CampaignSaveCvar(savevar, 1);
- // advance level (for menu to show it right)
- CampaignSaveCvar(campaign_index_var, campaign_level + 1);
+ if(campaign_level == cvar_normal(campaign_index_var))
+ {
+ savevar = strcat("g_campaign", campaign_name, "_won");
+ CampaignSaveCvar(savevar, 1);
+ // advance level (for menu to show it right)
+ CampaignSaveCvar(campaign_index_var, campaign_level + 1);
+ }
}
else if(campaign_level == cvar_normal(campaign_index_var))
{
void CampaignLevelWarp(float n)
{
+ if(n < 0)
+ n = campaign_level + 1;
CampaignFile_Unload();
CampaignFile_Load(n, 1);
if(campaign_entries)
remove(e);
DID_CHEAT();
break;
- case "warp":
- IS_CHEAT(0, argc, 0);
- if(argc == 2) if(autocvar_g_campaign)
- {
- CampaignLevelWarp(stof(argv(1)));
- DID_CHEAT();
- }
- break;
case "god":
IS_CHEAT(0, argc, 0);
BITXOR_ASSIGN(self.flags, FL_GODMODE);
DropAllRunes(self);
MUTATOR_CALLHOOK(MakePlayerObserver);
+ if (g_minstagib)
+ minstagib_stop_countdown();
+
Portal_ClearAll(self);
if(self.alivetime)
accuracy_resend(self);
self.spectatortime = time;
-
+
self.classname = "observer";
self.iscreature = FALSE;
self.health = -666;
self.takedamage = DAMAGE_NO;
self.solid = SOLID_NOT;
- self.movetype = MOVETYPE_NOCLIP;
+ self.movetype = MOVETYPE_FLY_WORLDONLY; //(self.cvar_cl_clippedspectating ? MOVETYPE_NOCLIP : MOVETYPE_FLY); // it's too early for this anyway, lets just set it in playerprethink
self.flags = FL_CLIENT | FL_NOTARGET;
self.armorvalue = 666;
self.effects = 0;
self.fixangle = TRUE;
self.crouch = FALSE;
- self.view_ofs = PL_VIEW_OFS;
+ self.view_ofs = '0 0 0'; // so that your view doesn't go into the ceiling with MOVETYPE_FLY_WORLDONLY, previously "PL_VIEW_OFS"
setorigin (self, spot.origin);
- setsize (self, '0 0 0', '0 0 0');
+ setsize (self, PL_CROUCH_MIN, PL_CROUCH_MAX); // give the spectator some space between walls for MOVETYPE_FLY_WORLDONLY
self.prevorigin = self.origin;
self.items = 0;
self.weapons = 0;
self.model = "";
self.modelindex = 0;
self.weapon = 0;
+ self.weaponname = "";
+ self.switchingweapon = 0;
self.weaponmodel = "";
self.weaponentity = world;
self.exteriorweaponentity = world;
else
self.frags = FRAGS_LMS_LOSER;
}
+ else if(g_ca)
+ {
+ if(self.caplayer)
+ self.frags = FRAGS_LMS_LOSER;
+ else
+ self.frags = FRAGS_SPECTATOR;
+ }
else
self.frags = FRAGS_SPECTATOR;
}
if(clienttype(self) == CLIENTTYPE_BOT && autocvar_g_botclip_collisions)
self.dphitcontentsmask |= DPCONTENTS_BOTCLIP;
self.frags = FRAGS_PLAYER;
- if(independent_players)
+ if(INDEPENDENT_PLAYERS)
MAKE_INDEPENDENT_PLAYER(self);
self.flags = FL_CLIENT;
self.takedamage = DAMAGE_AIM;
if(e.spawnflags & WEP_FLAG_RELOADABLE) // prevent accessing undefined cvars
self.weapon_load[j] = cvar(strcat("g_balance_", e.netname, "_reload_ammo"));
}
- self.weapon_forbidchange = FALSE;
oldself = self;
self = spot;
self.switchweapon = w_getbestweapon(self);
self.cnt = self.switchweapon;
self.weapon = 0;
+ self.weaponname = "";
+ self.switchingweapon = 0;
if(!self.alivetime)
self.alivetime = time;
{
if(self.cnt <= 10)
AnnounceTo(self.owner, strcat(ftos(self.cnt), ""));
- if(self.owner.killindicator_teamchange)
- {
- if(self.owner.killindicator_teamchange == -1)
- centerprint(self.owner, strcat("Changing team in ", ftos(self.cnt), " seconds"));
- else if(self.owner.killindicator_teamchange == -2)
- centerprint(self.owner, strcat("Spectating in ", ftos(self.cnt), " seconds"));
- else
- centerprint(self.owner, strcat("Changing to ", ColoredTeamName(self.owner.killindicator_teamchange), " in ", ftos(self.cnt), " seconds"));
- }
- else
- centerprint(self.owner, strcat("^1Suicide in ", ftos(self.cnt), " seconds"));
}
self.nextthink = time + 1;
self.cnt -= 1;
}
}
+float clientkilltime;
void ClientKill_TeamChange (float targetteam) // 0 = don't change, -1 = auto, -2 = spec
{
float killtime;
+ float starttime;
entity e;
if (gameover)
}
else
{
+ starttime = max(time, clientkilltime);
+
self.killindicator = spawn();
self.killindicator.owner = self;
self.killindicator.scale = 0.5;
setattachment(self.killindicator, self, "");
setorigin(self.killindicator, '0 0 52');
self.killindicator.think = KillIndicator_Think;
- self.killindicator.nextthink = time + (self.lip) * 0.05;
+ self.killindicator.nextthink = starttime + (self.lip) * 0.05;
+ clientkilltime = max(clientkilltime, self.killindicator.nextthink + 0.05);
self.killindicator.cnt = ceil(killtime);
self.killindicator.count = bound(0, ceil(killtime), 10);
//sprint(self, strcat("^1You'll be dead in ", ftos(self.killindicator.cnt), " seconds\n"));
setattachment(e.killindicator, e, "");
setorigin(e.killindicator, '0 0 52');
e.killindicator.think = KillIndicator_Think;
- e.killindicator.nextthink = time + (e.lip) * 0.05;
+ e.killindicator.nextthink = starttime + (e.lip) * 0.05;
+ clientkilltime = max(clientkilltime, e.killindicator.nextthink + 0.05);
e.killindicator.cnt = ceil(killtime);
}
self.lip = 0;
if(self.killindicator)
{
if(targetteam == 0) // just die
+ {
self.killindicator.colormod = '0 0 0';
+ if(clienttype(self) == CLIENTTYPE_REAL)
+ if(self.killindicator.cnt > 0)
+ Send_CSQC_Centerprint_Generic(self, CPID_TEAMCHANGE, "^1Suicide in %d seconds", 1, self.killindicator.cnt);
+ }
else if(targetteam == -1) // auto
+ {
self.killindicator.colormod = '0 1 0';
+ if(clienttype(self) == CLIENTTYPE_REAL)
+ if(self.killindicator.cnt > 0)
+ Send_CSQC_Centerprint_Generic(self, CPID_TEAMCHANGE, "Changing team in %d seconds", 1, self.killindicator.cnt);
+ }
else if(targetteam == -2) // spectate
+ {
self.killindicator.colormod = '0.5 0.5 0.5';
+ if(clienttype(self) == CLIENTTYPE_REAL)
+ if(self.killindicator.cnt > 0)
+ Send_CSQC_Centerprint_Generic(self, CPID_TEAMCHANGE, "Spectating in %d seconds", 1, self.killindicator.cnt);
+ }
else
+ {
self.killindicator.colormod = TeamColor(targetteam);
+ if(clienttype(self) == CLIENTTYPE_REAL)
+ if(self.killindicator.cnt > 0)
+ Send_CSQC_Centerprint_Generic(self, CPID_TEAMCHANGE, strcat("Changing to ", ColoredTeamName(targetteam), " in %d seconds"), 1, self.killindicator.cnt);
+ }
}
+
}
void ClientKill (void)
self.playerid = (playerid_last = playerid_last + 1);
+ PlayerStats_AddEvent(sprintf("kills-%d", self.playerid));
+
if(clienttype(self) == CLIENTTYPE_BOT)
PlayerStats_AddPlayer(self);
bprint("\n");
- self.welcomemessage_time = 0;
-
stuffcmd(self, strcat(clientstuff, "\n"));
- stuffcmd(self, strcat("exec maps/", mapname, ".cfg\n"));
- stuffcmd(self, "cl_particles_reloadeffects\n");
+ stuffcmd(self, "cl_particles_reloadeffects\n"); // TODO do we still need this?
FixClientCvars(self);
set_dom_state(self);
CheatInitClient();
+
+ if(!autocvar_g_campaign)
+ Send_CSQC_Centerprint_Generic(self, CPID_MOTD, getwelcomemessage(), autocvar_welcome_message_time, 0);
}
/*
sound (self, CH_INFO, samp, VOL_BASE, ATTN_NORM);
}
-/**
- * When sv_timeout is used this function returs strings like
- * "Timeout begins in 2 seconds!\n" or "Timeout ends in 23 seconds!\n".
- * Called by centerprint functions
- * @param addOneSecond boolean, set to 1 if the welcome-message centerprint asks for the text
- */
-string getTimeoutText(float addOneSecond) {
- if (!autocvar_sv_timeout || !timeoutStatus)
- return "";
-
- local string retStr;
- if (timeoutStatus == 1) {
- if (addOneSecond == 1) {
- retStr = strcat("Timeout begins in ", ftos(remainingLeadTime + 1), " seconds!\n");
- }
- else {
- retStr = strcat("Timeout begins in ", ftos(remainingLeadTime), " seconds!\n");
- }
- return retStr;
- }
- else if (timeoutStatus == 2) {
- if (addOneSecond) {
- retStr = strcat("Timeout ends in ", ftos(remainingTimeoutTime + 1), " seconds!\n");
- //don't show messages like "Timeout ends in 0 seconds"...
- if ((remainingTimeoutTime + 1) > 0)
- return retStr;
- else
- return "";
- }
- else {
- retStr = strcat("Timeout ends in ", ftos(remainingTimeoutTime), " seconds!\n");
- //don't show messages like "Timeout ends in 0 seconds"...
- if (remainingTimeoutTime > 0)
- return retStr;
- else
- return "";
- }
- }
- else return "";
-}
-
void player_powerups (void)
{
// add a way to see what the items were BEFORE all of these checks for the mutator hook
self.pressedkeys = spectatee.pressedkeys;
self.weapons = spectatee.weapons;
self.switchweapon = spectatee.switchweapon;
+ self.switchingweapon = spectatee.switchingweapon;
self.weapon = spectatee.weapon;
self.nex_charge = spectatee.nex_charge;
self.nex_chargepool_ammo = spectatee.nex_chargepool_ammo;
self.dmg_save = spectatee.dmg_save;
self.dmg_inflictor = spectatee.dmg_inflictor;
self.angles = spectatee.v_angle;
- self.fixangle = TRUE;
+ if(!self.BUTTON_USE)
+ self.fixangle = TRUE;
setorigin(self, spectatee.origin);
setsize(self, spectatee.mins, spectatee.maxs);
SetZoomState(spectatee.zoomstate);
return 1;
}
-float SpectateNext() {
- other = find(self.enemy, classname, "player");
- if (!other)
+// Returns next available player to spectate if g_ca_spectate_enemies == 0
+entity CA_SpectateNext(entity start) {
+ if (start.team == self.team) {
+ return start;
+ }
+
+ other = start;
+ // continue from current player
+ while(other && other.team != self.team) {
other = find(other, classname, "player");
+ }
+
+ if (!other) {
+ // restart from begining
+ other = find(other, classname, "player");
+ while(other && other.team != self.team) {
+ other = find(other, classname, "player");
+ }
+ }
+
+ return other;
+}
+float SpectateNext() {
+ other = find(self.enemy, classname, "player");
+ if (g_ca && !autocvar_g_ca_spectate_enemies && self.caplayer) {
+ // CA and ca players when spectating enemies is forbidden
+ other = CA_SpectateNext(other);
+ } else {
+ // other modes and ca spectators or spectating enemies is allowed
+ if (!other)
+ other = find(other, classname, "player");
+ }
+
if (other)
self.enemy = other;
}
}
+.float prevent_join_msgtime;
void LeaveSpectatorMode()
{
if(nJoinAllowed(1)) {
bprint ("^4", self.netname, "^4 is playing now\n");
if(!autocvar_g_campaign)
- centerprint(self,""); // clear MOTD
+ if (time < self.jointime + autocvar_welcome_message_time)
+ Send_CSQC_Centerprint_Generic_Expire(self, CPID_MOTD); // clear MOTD
+
+ if (self.prevent_join_msgtime)
+ {
+ Send_CSQC_Centerprint_Generic_Expire(self, CPID_PREVENT_JOIN);
+ self.prevent_join_msgtime = 0;
+ }
return;
} else {
}
else {
//player may not join because of g_maxplayers is set
- centerprint_atprio(self, CENTERPRIO_MAPVOTE, PREVENT_JOIN_TEXT);
+ if (time - self.prevent_join_msgtime > 2)
+ {
+ Send_CSQC_Centerprint_Generic(self, CPID_PREVENT_JOIN, PREVENT_JOIN_TEXT, 0, 0);
+ self.prevent_join_msgtime = time;
+ }
}
}
}
}
+.float motd_actived_time; // used for both motd and campaign_message
+void PrintWelcomeMessage()
+{
+ if (self.motd_actived_time == 0) { // is there already a message showing?
+ if (autocvar_g_campaign) {
+ if ((self.classname == "player" && self.BUTTON_INFO) || (self.classname != "player")) {
+ self.motd_actived_time = time;
+ Send_CSQC_Centerprint_Generic(self, CPID_MOTD, campaign_message, -1, 0);
+ }
+ } else {
+ if ((time - self.jointime > autocvar_welcome_message_time) && self.BUTTON_INFO) {
+ self.motd_actived_time = time;
+ Send_CSQC_Centerprint_Generic(self, CPID_MOTD, getwelcomemessage(), -1, 0);
+ }
+ }
+ } else { // showing MOTD or campaign message
+ if (autocvar_g_campaign) {
+ if (self.BUTTON_INFO)
+ self.motd_actived_time = time;
+ else if ((time - self.motd_actived_time > 2) && self.classname == "player") { // hide it some seconds after BUTTON_INFO has been released
+ self.motd_actived_time = 0;
+ Send_CSQC_Centerprint_Generic_Expire(self, CPID_MOTD);
+ }
+ } else {
+ if ((time - self.jointime) > autocvar_welcome_message_time) {
+ if (self.BUTTON_INFO)
+ self.motd_actived_time = time;
+ else if (time - self.motd_actived_time > 2) { // hide it some seconds after BUTTON_INFO has been released
+ self.motd_actived_time = 0;
+ Send_CSQC_Centerprint_Generic_Expire(self, CPID_MOTD);
+ }
+ }
+ }
+ }
+}
+
void ObserverThink()
{
+ float prefered_movetype;
if (self.flags & FL_JUMPRELEASED) {
if (self.BUTTON_JUMP && !self.version_mismatch) {
- self.welcomemessage_time = 0;
self.flags &~= FL_JUMPRELEASED;
self.flags |= FL_SPAWNING;
} else if(self.BUTTON_ATCK && !self.version_mismatch) {
- self.welcomemessage_time = 0;
self.flags &~= FL_JUMPRELEASED;
if(SpectateNext() == 1) {
self.classname = "spectator";
}
+ } else {
+ prefered_movetype = ((!self.BUTTON_USE ? self.cvar_cl_clippedspectating : !self.cvar_cl_clippedspectating) ? MOVETYPE_FLY_WORLDONLY : MOVETYPE_NOCLIP);
+ if (self.movetype != prefered_movetype)
+ self.movetype = prefered_movetype;
}
} else {
if (!(self.BUTTON_ATCK || self.BUTTON_JUMP)) {
}
}
}
- PrintWelcomeMessage(self);
+
+ PrintWelcomeMessage();
}
void SpectatorThink()
{
if (self.flags & FL_JUMPRELEASED) {
if (self.BUTTON_JUMP && !self.version_mismatch) {
- self.welcomemessage_time = 0;
self.flags &~= FL_JUMPRELEASED;
self.flags |= FL_SPAWNING;
} else if(self.BUTTON_ATCK) {
- self.welcomemessage_time = 0;
self.flags &~= FL_JUMPRELEASED;
if(SpectateNext() == 1) {
self.classname = "spectator";
PutClientInServer();
}
} else if (self.BUTTON_ATCK2) {
- self.welcomemessage_time = 0;
self.flags &~= FL_JUMPRELEASED;
self.classname = "observer";
PutClientInServer();
PutObserverInServer();
}
- PrintWelcomeMessage(self);
+ PrintWelcomeMessage();
self.flags |= FL_CLIENT | FL_NOTARGET;
}
if(self.cvar_g_xonoticversion)
if(time > self.version_nagtime)
{
- if(strstr(self.cvar_g_xonoticversion, "git", 0) < 0)
+ // don't notify git users
+ if(strstr(self.cvar_g_xonoticversion, "git", 0) < 0 && strstr(self.cvar_g_xonoticversion, "autobuild", 0) < 0)
{
- if(strstr(autocvar_g_xonoticversion, "git", 0) >= 0)
+ if(strstr(autocvar_g_xonoticversion, "git", 0) >= 0 || strstr(autocvar_g_xonoticversion, "autobuild", 0) >= 0)
{
+ // notify release users if connecting to git
dprint("^1NOTE^7 to ", self.netname, "^7 - the server is running ^3Xonotic ", autocvar_g_xonoticversion, " (beta)^7, you have ^3Xonotic ", self.cvar_g_xonoticversion, "^1\n");
sprint(self, strcat("\{1}^1NOTE: ^7the server is running ^3Xonotic ", autocvar_g_xonoticversion, " (beta)^7, you have ^3Xonotic ", self.cvar_g_xonoticversion, "^1\n"));
}
r = vercmp(self.cvar_g_xonoticversion, autocvar_g_xonoticversion);
if(r < 0)
{
- dprint("^1NOTE^7 to ", self.netname, "^7 - ^3Xonotic ", autocvar_g_xonoticversion, "^7 is out, and you still have ^3Xonotic ", self.cvar_g_xonoticversion, "^1 - get the update from ^4http://www.xonotic.com/^1!\n");
- sprint(self, strcat("\{1}^1NOTE: ^3Xonotic ", autocvar_g_xonoticversion, "^7 is out, and you still have ^3Xonotic ", self.cvar_g_xonoticversion, "^1 - get the update from ^4http://www.xonotic.com/^1!\n"));
+ // give users new version
+ dprint("^1NOTE^7 to ", self.netname, "^7 - ^3Xonotic ", autocvar_g_xonoticversion, "^7 is out, and you still have ^3Xonotic ", self.cvar_g_xonoticversion, "^1 - get the update from ^4http://www.xonotic.org/^1!\n");
+ sprint(self, strcat("\{1}^1NOTE: ^3Xonotic ", autocvar_g_xonoticversion, "^7 is out, and you still have ^3Xonotic ", self.cvar_g_xonoticversion, "^1 - get the update from ^4http://www.xonotic.org/^1!\n"));
}
else if(r > 0)
{
- dprint("^1NOTE^7 to ", self.netname, "^7 - the server is running ^3Xonotic ", autocvar_g_xonoticversion, "^7, you have ^3Xonotic ", self.cvar_g_xonoticversion, "^1\n");
+ // notify users about old server version
+ print("^1NOTE^7 to ", self.netname, "^7 - the server is running ^3Xonotic ", autocvar_g_xonoticversion, "^7, you have ^3Xonotic ", self.cvar_g_xonoticversion, "^1\n");
sprint(self, strcat("\{1}^1NOTE: ^7the server is running ^3Xonotic ", autocvar_g_xonoticversion, "^7, you have ^3Xonotic ", self.cvar_g_xonoticversion, "^1\n"));
}
}
PlayerUseKey();
self.usekeypressed = self.BUTTON_USE;
+ PrintWelcomeMessage();
+
if(self.classname == "player") {
// if(self.netname == "Wazat")
// bprint(self.classname, "\n");
CheckRules_Player();
- PrintWelcomeMessage(self);
-
if (intermission_running)
{
IntermissionThink (); // otherwise a button could be missed between
player_powerups();
}
+ if (g_minstagib)
+ minstagib_ammocheck();
+
if (self.deadflag != DEAD_NO)
{
float button_pressed, force_respawn;
}
return;
}
+ // FIXME from now on self.deadflag is always 0 (and self.health is never < 1)
+ // so (self.deadflag == DEAD_NO) is always true in the code below
if(g_touchexplode)
if(time > self.touchexplode_time)
if(frametime)
player_anim();
- if (g_minstagib)
- minstagib_ammocheck();
-
if(g_ctf)
ctf_setstatus();
{
// WORKAROUND: only use dropclient in server frames (frametime set). Never use it in cl_movement frames (frametime zero).
float timeleft;
+ if (time - self.parm_idlesince < 1) // instead of (time == self.parm_idlesince) to support sv_maxidle <= 10
+ {
+ if(self.idlekick_lasttimeleft)
+ {
+ Send_CSQC_Centerprint_Generic_Expire(self, CPID_DISCONNECT_IDLING);
+ self.idlekick_lasttimeleft = 0;
+ }
+ return;
+ }
timeleft = ceil(sv_maxidle - (time - self.parm_idlesince));
+ if(timeleft == min(10, sv_maxidle - 1)) // - 1 to support sv_maxidle <= 10
+ {
+ if(!self.idlekick_lasttimeleft)
+ Send_CSQC_Centerprint_Generic(self, CPID_DISCONNECT_IDLING, "^3Stop idling!\n^3Disconnecting in %d seconds...", 1, timeleft);
+ }
if(timeleft <= 0)
{
bprint("^3", self.netname, "^3 was kicked for idling.\n");
else if(timeleft <= 10)
{
if(timeleft != self.idlekick_lasttimeleft)
- {
- centerprint_atprio(self, CENTERPRIO_IDLEKICK, strcat("^3Stop idling!\n^3Disconnecting in ", ftos(timeleft), "..."));
- AnnounceTo(self, strcat(ftos(timeleft), ""));
- }
+ AnnounceTo(self, ftos(timeleft));
+ self.idlekick_lasttimeleft = timeleft;
}
- else
- {
- centerprint_expire(self, CENTERPRIO_IDLEKICK);
- }
- self.idlekick_lasttimeleft = timeleft;
}
#ifdef TETRIS
CheatFrame();
+ //CheckPlayerJump();
+
if(self.classname == "player") {
CheckRules_Player();
UpdateChatBubble();
{
tracebox(self.origin + '0 0 0.01', self.mins, self.maxs, self.origin - '0 0 0.01', MOVE_NORMAL, self);
if (trace_fraction < 1 && trace_plane_normal_z > 0.7)
+ {
doublejump = TRUE;
+
+ // we MUST clip velocity here!
+ float f;
+ f = self.velocity * trace_plane_normal;
+ if(f < 0)
+ self.velocity -= f * trace_plane_normal;
+ }
}
mjumpheight = autocvar_sv_jumpvelocity;
if (!(self.flags & FL_ONGROUND))
return;
- if(!sv_pogostick)
+ if(self.cvar_cl_movement_track_canjump)
if (!(self.flags & FL_JUMPRELEASED))
return;
self.restart_jump = -1; // restart jump anim next time
// value -1 is used to not use the teleport bit (workaround for tiny hitch when re-jumping)
}
-
void CheckWaterJump()
{
local vector start, end;
}
}
};
+void CheckPlayerJump()
+{
+ if(self.flags & FL_ONGROUND)
+ {
+ if (autocvar_g_multijump > 0)
+ self.multijump_count = 0;
+ else
+ self.multijump_count = -2; // the cvar value for infinite jumps is -1, so this needs to be smaller
+ }
+
+ if (self.BUTTON_JUMP)
+ PlayerJump ();
+ else
+ self.flags |= FL_JUMPRELEASED;
+
+ if (self.waterlevel == WATERLEVEL_SWIMMING)
+ CheckWaterJump ();
+ self.prevjumpbutton = self.BUTTON_JUMP;
+}
float racecar_angle(float forward, float down)
{
}
if(self.flags & FL_ONGROUND)
+ if(self.classname == "player") // no fall sounds for observers thank you very much
if(self.wasFlying)
{
self.wasFlying = 0;
self.wasFlying = 1;
if(self.classname == "player")
- {
- if(self.flags & FL_ONGROUND)
- {
- if (autocvar_g_multijump > 0)
- self.multijump_count = 0;
- else
- self.multijump_count = -2; // the cvar value for infinite jumps is -1, so this needs to be smaller
- }
-
- if (self.BUTTON_JUMP)
- PlayerJump ();
- else
- self.flags |= FL_JUMPRELEASED;
-
- if (self.waterlevel == WATERLEVEL_SWIMMING)
- CheckWaterJump ();
- self.prevjumpbutton = self.BUTTON_JUMP;
- }
+ CheckPlayerJump();
if (self.flags & FL_WATERJUMP )
{
{
RaceCarPhysics();
}
- else if (self.movetype == MOVETYPE_NOCLIP || self.movetype == MOVETYPE_FLY)
+ else if (self.movetype == MOVETYPE_NOCLIP || self.movetype == MOVETYPE_FLY || self.movetype == MOVETYPE_FLY_WORLDONLY)
{
// noclipping or flying
self.flags &~= FL_ONGROUND;
#define WEAPONSTATS_GETINDEX(awep,abot,vwep,vbot) (((vwep) + (awep) * (WEP_LAST - WEP_FIRST + 1) - (WEP_FIRST + WEP_FIRST * (WEP_LAST - WEP_FIRST + 1))) * 4 + (abot) * 2 + (vbot))
-void WeaponStats_Shutdown()
+void WeaponStats_ready(entity fh, entity pass, float status)
{
- float i, j, ibot, jbot, idx;
- float fh;
+ float i, j, n, ibot, jbot, idx;
vector v;
- string prefix;
- if(weaponstats_buffer < 0)
- return;
- prefix = strcat(autocvar_hostname, "\t", GetGametype(), "_", GetMapname(), "\t");
- if(autocvar_sv_weaponstats_file != "")
+ string prefix, s;
+ switch(status)
{
- fh = fopen(autocvar_sv_weaponstats_file, FILE_APPEND);
- if(fh >= 0)
- {
- fputs(fh, "#begin statsfile\n");
- fputs(fh, strcat("#date ", strftime(TRUE, "%a %b %e %H:%M:%S %Z %Y"), "\n"));
- fputs(fh, strcat("#config ", ftos(crc16(FALSE, cvar_changes)), "\n"));
+ case URL_READY_CANWRITE:
+ // url_fopen returned, we can write
+ prefix = strcat(autocvar_hostname, "\t", GetGametype(), "_", GetMapname(), "\t");
+ url_fputs(fh, "#begin statsfile\n");
+ url_fputs(fh, strcat("#date ", strftime(TRUE, "%a %b %e %H:%M:%S %Z %Y"), "\n"));
+#ifdef WATERMARK
+ url_fputs(fh, strcat("#version ", WATERMARK(), "\n"));
+#endif
+ url_fputs(fh, strcat("#config ", ftos(crc16(FALSE, cvar_purechanges)), "\n"));
+ url_fputs(fh, strcat("#cvar_purechanges ", ftos(cvar_purechanges_count), "\n"));
+ n = tokenizebyseparator(cvar_purechanges, "\n");
+ for(i = 0; i < n; ++i)
+ url_fputs(fh, strcat("#cvar_purechange ", argv(i), "\n"));
for(i = WEP_FIRST; i <= WEP_LAST; ++i) for(ibot = 0; ibot <= 1; ++ibot)
for(j = WEP_FIRST; j <= WEP_LAST; ++j) for(jbot = 0; jbot <= 1; ++jbot)
{
if(v != '0 0 0')
{
//vector is: kills hits damage
- fputs(fh, sprintf("%s%d %d\t%d %d\t", prefix, i, ibot, j, jbot));
- fputs(fh, sprintf("%d %d %g\n", v_x, v_y, v_z));
+ url_fputs(fh, sprintf("%s%d %d\t%d %d\t", prefix, i, ibot, j, jbot));
+ url_fputs(fh, sprintf("%d %d %g\n", v_x, v_y, v_z));
}
}
- fputs(fh, "#end\n\n");
- fclose(fh);
+ url_fputs(fh, "#end\n\n");
+ url_fclose(fh, WeaponStats_ready, world);
+ buf_del(weaponstats_buffer);
+ weaponstats_buffer = -1;
+ break;
+ case URL_READY_CANREAD:
+ // url_fclose is processing, we got a response for writing the data
+ // this must come from HTTP
+ print("Got response from weapon stats server:\n");
+ while((s = url_fgets(fh)))
+ print(" ", s, "\n");
+ print("End of response.\n");
+ url_fclose(fh, WeaponStats_ready, world);
+ break;
+ case URL_READY_CLOSED:
+ // url_fclose has finished
print("Weapon stats written\n");
- }
+ break;
+ case URL_READY_ERROR:
+ default:
+ print("Weapon stats writing failed: ", ftos(status), "\n");
+ break;
+ }
+}
+
+void WeaponStats_Shutdown()
+{
+ if(weaponstats_buffer < 0)
+ return;
+ if(autocvar_sv_weaponstats_file != "")
+ {
+ url_fopen(autocvar_sv_weaponstats_file, FILE_APPEND, WeaponStats_ready, world);
+ }
+ else
+ {
+ buf_del(weaponstats_buffer);
+ weaponstats_buffer = -1;
}
- buf_del(weaponstats_buffer);
- weaponstats_buffer = -1;
}
void WeaponStats_LogItem(float awep, float abot, float vwep, float vbot, vector item)
float valid_damage_for_weaponstats;
float excess;
- if((g_arena && numspawned < 2) || (g_ca && ca_players < required_ca_players) && !inWarmupStage)
+ if((g_arena && numspawned < 2) || (g_ca && !ca_teams_ok) && !inWarmupStage)
return;
dh = max(self.health, 0);
w = self.weapon;
if (w == 0)
return; // just in case
- if(self.weapon_forbidchange)
- return;
if(MUTATOR_CALLHOOK(ForbidThrowCurrentWeapon))
return;
if(!autocvar_g_weapon_throwable)
if(!self.switchweapon)
{
self.weapon = 0;
+ self.switchingweapon = 0;
self.weaponentity.state = WS_CLEAR;
self.weaponname = "";
self.items &~= IT_AMMO;
{
if (self.weaponentity.state == WS_CLEAR)
{
+ // end switching!
+ self.switchingweapon = self.switchweapon;
+
//setanim(self, self.anim_draw, FALSE, TRUE, TRUE);
self.weaponentity.state = WS_RAISE;
weapon_action(self.switchweapon, WR_SETUP);
weapon_thinkf(WFRAME_IDLE, autocvar_g_balance_weaponswitchdelay, w_ready);
weapon_boblayer1(PLAYER_WEAPONSELECTION_SPEED, '0 0 0');
}
+ else if (self.weaponentity.state == WS_DROP)
+ {
+ // in dropping phase we can switch at any time
+ self.switchingweapon = self.switchweapon;
+ }
else if (self.weaponentity.state == WS_READY)
{
+ // start switching!
+ self.switchingweapon = self.switchweapon;
+
#ifndef INDEPENDENT_ATTACK_FINISHED
if(ATTACK_FINISHED(self) <= time + self.weapon_frametime * 0.5)
{
c = c + 1;
if(wb && ((self.weapons & wb) == 0))
{
- W_SwitchWeapon_Force(self, w_getbestweapon(self));
+ if(self.weapon == self.switchweapon)
+ W_SwitchWeapon_Force(self, w_getbestweapon(self));
wb = 0;
}
+
+ v_forward = fo;
+ v_right = ri;
+ v_up = up;
+
if(wb)
- {
- v_forward = fo;
- v_right = ri;
- v_up = up;
weapon_action(self.weapon, WR_THINK);
- }
+ else
+ weapon_action(self.weapon, WR_GONETHINK);
+
if (time + self.weapon_frametime * 0.5 >= self.weapon_nextthink)
{
if(self.weapon_think)
void W_SwitchWeapon_Force(entity e, float w)
{
- // don't switch to another weapon if we're not allowed to
- if(e.weapon_forbidchange)
- return;
-
e.cnt = e.switchweapon;
e.switchweapon = w;
e.selectweapon = w;
.vector weapon_morph4origin;
.vector weapon_morph4angles;
.float weapon_morph4time;
-.string weaponname;
#define QCWEAPONANIMATION_ORIGIN(e) ((weapon_offset_x + e.view_ofs_x) * v_forward - (weapon_offset_y + e.view_ofs_y) * v_right + (weapon_offset_z + e.view_ofs_z) * v_up + weapon_adjust)
/*
self.weaponentity.model = "";
return;
}
- if (self.cnt != self.owner.weapon || self.dmg != self.owner.modelindex || self.deadflag != self.owner.deadflag)
+ if (self.weaponname != self.owner.weaponname || self.dmg != self.owner.modelindex || self.deadflag != self.owner.deadflag)
{
- self.cnt = self.owner.weapon;
+ self.weaponname = self.owner.weaponname;
self.dmg = self.owner.modelindex;
self.deadflag = self.owner.deadflag;
self.model = "";
return;
}
- if (self.cnt != self.owner.weapon || self.dmg != self.owner.modelindex || self.deadflag != self.owner.deadflag)
+ if (self.weaponname != self.owner.weaponname || self.dmg != self.owner.modelindex || self.deadflag != self.owner.deadflag)
{
- self.cnt = self.owner.weapon;
+ self.weaponname = self.owner.weaponname;
self.dmg = self.owner.modelindex;
self.deadflag = self.owner.deadflag;
if (self.owner.weaponname != "")
void w_clear()
{
if (self.weapon != -1)
+ {
self.weapon = 0;
+ self.switchingweapon = 0;
+ }
if (self.weaponentity)
{
self.weaponentity.state = WS_CLEAR;
// the two weapon entities will notice this has changed and update their models
self.weapon = windex;
+ self.switchingweapon = windex; // to make sure
self.weaponname = e.mdl;
self.bulletcounter = 0;
};
else
{
//player may not join because of g_maxplayers is set
- centerprint_atprio(self, CENTERPRIO_MAPVOTE, PREVENT_JOIN_TEXT);
+ centerprint(self, PREVENT_JOIN_TEXT);
}
}
}
void ClientCommand_selectteam(float request, float argc) // TODO: Update the messages for this command
{
+ float selection;
+
switch(request)
{
case CC_REQUEST_HELP:
if(teamplay)
if not(self.team_forced > 0)
if not(lockteams)
+ {
switch(argv(1))
{
- case "red": ClientKill_TeamChange(COLOR_TEAM1); break;
- case "blue": ClientKill_TeamChange(COLOR_TEAM2); break;
- case "yellow": ClientKill_TeamChange(COLOR_TEAM3); break;
- case "pink": ClientKill_TeamChange(COLOR_TEAM4); break;
- case "auto": ClientKill_TeamChange(-1); break;
+ case "red": selection = COLOR_TEAM1; break;
+ case "blue": selection = COLOR_TEAM2; break;
+ case "yellow": selection = COLOR_TEAM3; break;
+ case "pink": selection = COLOR_TEAM4; break;
+ case "auto": selection = (-1); break;
default: break;
}
+
+ if(selection)
+ {
+ if(self.team != selection || self.deadflag != DEAD_NO)
+ ClientKill_TeamChange(selection);
+ else
+ sprint(self, "^7You already are on that team.\n");
+ }
+ }
else
sprint(self, "^7The game has already begun, you must wait until the next map to be able to join a team.\n");
else
- sprint(self, "selectteam can not be used as your team is forced\n");
+ sprint(self, "^7selectteam can not be used as your team is forced\n");
else
- sprint(self, "selectteam can only be used in teamgames\n");
+ sprint(self, "^7selectteam can only be used in teamgames\n");
}
return; // never fall through to usage
default:
clientcommand(self, command); //print("Invalid command. For a list of supported commands, try cmd help.\n");
}
-}
+}
\ No newline at end of file
float MOVETYPE_BOUNCE = 10;
float MOVETYPE_BOUNCEMISSILE = 11; // Like bounce but doesn't lose speed on bouncing
//float MOVETYPE_FOLLOW = 12; // 'Attaches' the entity to its aim_ent
+//float MOVETYPE_FLY_WORLDONLY = 33;
float SOLID_NOT = 0;
float SOLID_TRIGGER = 1;
e.SendFlags |= 0x08;
}
}
-
-.void(void) csqcprojectile_oldthink;
-.float csqcprojectile_oldnextthink;
-
-void CSQCProjectile_Update_Think()
-{
- UpdateCSQCProjectile(self);
- self.think = self.csqcprojectile_oldthink;
- self.nextthink = max(time, self.csqcprojectile_oldnextthink);
-}
-
-void UpdateCSQCProjectileNextFrame(entity e)
-{
- if(e.SendEntity == CSQCProjectile_SendEntity)
- if(e.think != CSQCProjectile_Update_Think)
- {
- e.csqcprojectile_oldthink = e.think;
- e.csqcprojectile_oldnextthink = e.nextthink;
- e.think = CSQCProjectile_Update_Think;
- e.nextthink = time;
- }
-}
void CSQCProjectile(entity e, float clientanimate, float type, float docull);
void UpdateCSQCProjectile(entity e);
void UpdateCSQCProjectileAfterTeleport(entity e);
-void UpdateCSQCProjectileNextFrame(entity e);
void CSQCProjectile_Check(entity e);
{
if(should)
{
- centerprint_atprio(p, CENTERPRIO_SHIELDING, "^3You are now ^4shielded^3 from the flag\n^3for ^1too many unsuccessful attempts^3 to capture.\n\n^3Make some defensive scores before trying again.");
+ Send_CSQC_Centerprint_Generic(other, CPID_CTF_CAPTURESHIELD, "^3You are ^4shielded^3 from the flag\n^3for ^1too many unsuccessful attempts^3 to capture.\n\n^3Get some defensive scores before trying again.", 5, 0);
// TODO csqc notifier for this
}
else
{
- centerprint_atprio(p, CENTERPRIO_SHIELDING, "^3You are now free.\n\n^3Feel free to ^1try to capture^3 the flag again\n^3if you think you will succeed.");
+ Send_CSQC_Centerprint_Generic(p, CPID_CTF_CAPTURESHIELD, "^3You are now free.\n\n^3Feel free to ^1try to capture^3 the flag again\n^3if you think you will succeed.", 5, 0);
// TODO csqc notifier for this
}
p.ctf_captureshielded = should;
return TRUE;
}
+.float ctf_captureshield_touch_msgtime;
void ctf_captureshield_touch()
{
if not(other.ctf_captureshielded)
mymid = (self.absmin + self.absmax) * 0.5;
othermid = (other.absmin + other.absmax) * 0.5;
Damage(other, self, self, 0, DEATH_HURTTRIGGER, mymid, normalize(othermid - mymid) * captureshield_force);
- centerprint_atprio(other, CENTERPRIO_SHIELDING, "^3You are ^4shielded^3 from the flag\n^3for ^1too many unsuccessful attempts^3 to capture.\n\n^3Get some defensive scores before trying again.");
+ if (time - other.ctf_captureshield_touch_msgtime > 2)
+ Send_CSQC_Centerprint_Generic(other, CPID_CTF_CAPTURESHIELD, "^3You are ^4shielded^3 from the flag\n^3for ^1too many unsuccessful attempts^3 to capture.\n\n^3Get some defensive scores before trying again.", 5, 0);
+ other.ctf_captureshield_touch_msgtime = time;
}
void ctf_flag_spawnstuff()
.entity weaponentity;
.entity exteriorweaponentity;
.vector weaponentity_glowmod;
-.float switchweapon;
+
+//.float weapon; // current weapon
+.float switchweapon; // weapon requested to switch to
+.float switchingweapon; // weapon currently being switched to (is copied from switchweapon once switch is possible)
+.string weaponname; // name of .weapon
+
.float autoswitch;
float weapon_action(float wpn, float wrequest);
float client_hasweapon(entity cl, float wpn, float andammo, float complain);
void w_ready();
// VorteX: standalone think for weapons, so normal think on weaponentity can be reserved by weaponflashes (which needs update even player dies)
.float weapon_nextthink;
-.float weapon_forbidchange;
.void() weapon_think;
//float PLAYER_WEAPONSELECTION_DELAY = );
string w_deathtypestring;
-void(entity client, string s) centerprint_builtin = #73;
.vector dest1, dest2;
float gameover;
.float runes;
-.float welcomemessage_time;
.float version;
// minstagib vars
.vector lastV_angle; //used when pausing the game in order to force the player to keep his old view angle fixed
entity timeoutHandler; //responsible for centerprinting the timeout countdowns and playing sounds
void timeoutHandler_Think();
-string getTimeoutText(float addOneSecond);
.float spawnshieldtime;
.float() customizeentityforclient;
.float cvar_cl_handicap;
.float cvar_cl_playerdetailreduction;
-.float cvar_scr_centertime;
+.float cvar_cl_clippedspectating;
+.float cvar_cl_movement_track_canjump;
+
.string cvar_g_xonoticversion;
.string cvar_cl_weaponpriority;
.string cvar_cl_weaponpriorities[10];
float weaponsInMap;
-void centerprint_atprio(entity e, float prio, string s);
-void centerprint_expire(entity e, float prio);
-void centerprint(entity e, string s);
-
.float respawn_countdown; // next number to count
float bot_waypoints_for_items;
// speedrun: when 1, player auto teleports back when capture timeout happens
.float speedrunning;
-// Q3 support
-float q3acompat_machineshotgunswap;
-
// database
float ServerProgsDB;
float TemporaryDB;
float sv_maxidle;
float sv_maxidle_spectatorsareidle;
-float sv_pogostick;
float tracebox_hits_trigger_hurt(vector start, vector mi, vector ma, vector end);
float next_pingtime;
.float version_mismatch;
float independent_players;
+#define INDEPENDENT_PLAYERS (autocvar__independent_players ? (autocvar__independent_players > 0) : independent_players)
#define IS_INDEPENDENT_PLAYER(e) ((e).solid == SOLID_TRIGGER)
#define MAKE_INDEPENDENT_PLAYER(e) (((e).solid = SOLID_TRIGGER) + ((e).frags = FRAGS_PLAYER_NONSOLID))
// we're using + here instead of , because fteqcc sucks
return FALSE;
if(other == o)
return FALSE;
- if(other.classname == "player")
+ if((other.classname == "player") || other.caplayer)
if(!teamplay || o.team != other.team)
if not (radar_showennemies)
return FALSE;
//description:
//MOVETYPE_BOUNCE but without gravity, and with full reflection (no speed loss like grenades have), in other words - bouncing laser bolts.
+//DP_MOVETYPEFLYWORLDONLY
+//idea: Samual
+//darkplaces implementation: Samual
+//movetype definitions:
+float MOVETYPE_FLY_WORLDONLY = 33;
+//description:
+//like MOVETYPE_FLY, but does all traces with MOVE_WORLDONLY, and is ignored by MOVETYPE_PUSH. Should only be combined with SOLID_NOT and SOLID_TRIGGER.
+
//DP_NULL_MODEL
//idea: Chris
//darkplaces implementation: divVerent
{
self.health = self.max_health;
self.takedamage = DAMAGE_NO;
+ self.bot_attack = FALSE;
self.event_damage = SUB_Null;
self.state = 1;
func_breakable_colormod();
WaypointSprite_UpdateHealth(self.sprite, self.health);
}
self.takedamage = DAMAGE_AIM;
+ self.bot_attack = TRUE;
self.event_damage = func_breakable_damage;
self.state = 0;
self.nextthink = 0; // cancel auto respawn
Net_LinkEntity(e, FALSE, 0.2, Damage_DamageInfo_SendEntity);
}
-#define DAMAGE_CENTERPRINT_SPACER NEWLINES
-
float checkrules_firstblood;
float yoda;
{
// regular frag
PlayerScore_Add(attacker, SP_KILLS, 1);
+ if(targ.playerid)
+ PlayerStats_Event(attacker, sprintf("kills-%d", targ.playerid), 1);
}
PlayerScore_Add(targ, SP_DEATHS, 1);
void Send_KillNotification (string s1, string s2, string s3, float msg, float type)
{
WriteByte(MSG_ALL, SVC_TEMPENTITY);
- WriteByte(MSG_ALL, TE_CSQC_NOTIFY);
- WriteByte(MSG_ALL, CSQC_KILLNOTIFY);
+ WriteByte(MSG_ALL, TE_CSQC_KILLNOTIFY);
WriteString(MSG_ALL, s1);
WriteString(MSG_ALL, s2);
WriteString(MSG_ALL, s3);
}
// Function is used to send a generic centerprint whose content CSQC gets to decide (gentle version or not in the below cases)
-void Send_CSQC_Centerprint(entity e, string s1, string s2, float msg, float type)
+void Send_CSQC_KillCenterprint(entity e, string s1, string s2, float msg, float type)
{
if (clienttype(e) == CLIENTTYPE_REAL)
{
msg_entity = e;
WRITESPECTATABLE_MSG_ONE({
WriteByte(MSG_ONE, SVC_TEMPENTITY);
- WriteByte(MSG_ONE, TE_CSQC_NOTIFY);
- WriteByte(MSG_ONE, CSQC_CENTERPRINT);
+ WriteByte(MSG_ONE, TE_CSQC_KILLCENTERPRINT);
WriteString(MSG_ONE, s1);
WriteString(MSG_ONE, s2);
WriteShort(MSG_ONE, msg);
if (deathtype == DEATH_TEAMCHANGE || deathtype == DEATH_AUTOTEAMCHANGE)
msg = ColoredTeamName(targ.team); // TODO: check if needed?
if(!g_cts) // no "killed your own dumb self" message in CTS
- Send_CSQC_Centerprint(targ, msg, "", deathtype, MSG_SUICIDE);
+ Send_CSQC_KillCenterprint(targ, msg, "", deathtype, MSG_SUICIDE);
if(deathtype != DEATH_TEAMCHANGE && deathtype != DEATH_QUIET)
{
GiveFrags(attacker, targ, -1, deathtype);
- Send_CSQC_Centerprint(attacker, s, "", type, MSG_KILL);
+ Send_CSQC_KillCenterprint(attacker, s, "", type, MSG_KILL);
if (targ.killcount > 2) {
msg = ftos(targ.killcount);
checkrules_firstblood = TRUE;
Send_KillNotification(a, "", "", KILL_FIRST_BLOOD, MSG_KILL);
// TODO: make these print a newline if they dont
- Send_CSQC_Centerprint(attacker, "", "", KILL_FIRST_BLOOD, MSG_KILL);
- Send_CSQC_Centerprint(targ, "", "", KILL_FIRST_VICTIM, MSG_KILL);
+ Send_CSQC_KillCenterprint(attacker, "", "", KILL_FIRST_BLOOD, MSG_KILL);
+ Send_CSQC_KillCenterprint(targ, "", "", KILL_FIRST_VICTIM, MSG_KILL);
PlayerStats_Event(attacker, PLAYERSTATS_ACHIEVEMENT_FIRSTBLOOD, 1);
PlayerStats_Event(targ, PLAYERSTATS_ACHIEVEMENT_FIRSTVICTIM, 1);
}
if((autocvar_sv_fragmessage_information_typefrag) && (targ.BUTTON_CHAT)) {
- Send_CSQC_Centerprint(attacker, s, GetAdvancedDeathReports(targ), KILL_TYPEFRAG, MSG_KILL);
- Send_CSQC_Centerprint(targ, a, GetAdvancedDeathReports(attacker), KILL_TYPEFRAGGED, MSG_KILL);
+ Send_CSQC_KillCenterprint(attacker, s, GetAdvancedDeathReports(targ), KILL_TYPEFRAG, MSG_KILL);
+ Send_CSQC_KillCenterprint(targ, a, GetAdvancedDeathReports(attacker), KILL_TYPEFRAGGED, MSG_KILL);
} else {
- Send_CSQC_Centerprint(attacker, s, GetAdvancedDeathReports(targ), KILL_FRAG, MSG_KILL);
- Send_CSQC_Centerprint(targ, a, GetAdvancedDeathReports(attacker), KILL_FRAGGED, MSG_KILL);
+ Send_CSQC_KillCenterprint(attacker, s, GetAdvancedDeathReports(targ), KILL_FRAG, MSG_KILL);
+ Send_CSQC_KillCenterprint(targ, a, GetAdvancedDeathReports(attacker), KILL_FRAGGED, MSG_KILL);
}
attacker.taunt_soundtime = time + 1;
}
else
{
- Send_CSQC_Centerprint(targ, "", "", deathtype, MSG_KILL_ACTION);
+ Send_CSQC_KillCenterprint(targ, "", "", deathtype, MSG_KILL_ACTION);
if (deathtype == DEATH_HURTTRIGGER && inflictor.message != "")
msg = inflictor.message;
else if (deathtype == DEATH_CUSTOM)
}
else
{
+ /*
+ skill based bot damage? gtfo. (tZork)
if (targ.classname == "player")
if (attacker.classname == "player")
if (!targ.isbot)
if (attacker.isbot)
damage = damage * bound(0.1, (skill + 5) * 0.1, 1);
-
+ */
+
// nullify damage if teamplay is on
if(deathtype != DEATH_TELEFRAG)
if(attacker.classname == "player")
if (targ.armorvalue && (deathtype == WEP_MINSTANEX) && damage)
{
targ.armorvalue -= 1;
- centerprint(targ, strcat(DAMAGE_CENTERPRINT_SPACER, "^3Remaining extra lives: ",ftos(targ.armorvalue)));
+ centerprint(targ, strcat("^3Remaining extra lives: ",ftos(targ.armorvalue)));
damage = 0;
targ.hitsound += 1;
attacker.hitsound += 1; // TODO change this to a future specific hitsound for armor hit
if (targ != attacker)
{
if ((targ.health >= 1) && (targ.classname == "player"))
- centerprint(attacker, strcat(DAMAGE_CENTERPRINT_SPACER, "Secondary fire inflicts no damage!"));
+ centerprint(attacker, "Secondary fire inflicts no damage!");
force = '0 0 0';
// keep mirrorforce
attacker = targ;
if(attacker.armorvalue > 0)
{
attacker.armorvalue = attacker.armorvalue - 1;
- centerprint(attacker, strcat(DAMAGE_CENTERPRINT_SPACER, "^3Remaining extra lives: ",ftos(attacker.armorvalue)));
+ centerprint(attacker, strcat("^3Remaining extra lives: ",ftos(attacker.armorvalue)));
attacker.hitsound += 1;
}
mirrordamage = 0;
//pl.disableclientprediction = FALSE;
}
+void GrapplingHookReset(void)
+{
+ if(self.realowner.hook == self)
+ RemoveGrapplingHook(self.owner);
+ else // in any case:
+ remove(self);
+}
+
void GrapplingHookThink();
void GrapplingHook_Stop()
{
if((arena_roundbased && time < warmup) || (time < game_starttime))
return;
- if(self.freezetag_frozen)
- return;
+ if(self.freezetag_frozen)
+ return;
+
+ if(self.vehicle)
+ return;
makevectors(self.v_angle);
missile = WarpZone_RefSys_SpawnSameRefSys(self);
missile.owner = missile.realowner = self;
self.hook = missile;
+ missile.reset = GrapplingHookReset;
missile.classname = "grapplinghook";
missile.movetype = MOVETYPE_FLY;
* players. Also plays reminder sounds.
*/
void timeoutHandler_Think() {
- local string timeStr;
local entity plr;
if (timeoutStatus == 1) {
if (remainingLeadTime > 0) {
//centerprint the information to every player
- timeStr = getTimeoutText(0);
FOR_EACH_REALCLIENT(plr) {
if(plr.classname == "player") {
- centerprint_atprio(plr, CENTERPRIO_SPAM, timeStr);
+ Send_CSQC_Centerprint_Generic(plr, CPID_TIMEOUT_COUNTDOWN, "Timeout begins in %d seconds!", 1, remainingLeadTime);
}
}
remainingLeadTime -= 1;
}
else if (timeoutStatus == 2) {
if (remainingTimeoutTime > 0) {
- timeStr = getTimeoutText(0);
FOR_EACH_REALCLIENT(plr) {
if(plr.classname == "player") {
- centerprint_atprio(plr, CENTERPRIO_SPAM, timeStr);
+ Send_CSQC_Centerprint_Generic(plr, CPID_TIMEOUT_COUNTDOWN, "Timeout ends in %d seconds!", 1, remainingTimeoutTime);
}
}
if(remainingTimeoutTime == autocvar_sv_timeout_resumetime) { //play a warning sound when only <sv_timeout_resumetime> seconds are left
//get rid of the countdown message
FOR_EACH_REALCLIENT(plr) {
if(plr.classname == "player") {
- centerprint_atprio(plr, CENTERPRIO_SPAM, "");
+ Send_CSQC_Centerprint_Generic_Expire(plr, CPID_TIMEOUT_COUNTDOWN);
}
}
remove(self);
else if (timeoutStatus == 0) { //if a player called the resumegame command (which set timeoutStatus to 0 already)
FOR_EACH_REALCLIENT(plr) {
if(plr.classname == "player") {
- centerprint_atprio(plr, CENTERPRIO_SPAM, "");
+ Send_CSQC_Centerprint_Generic_Expire(plr, CPID_TIMEOUT_COUNTDOWN);
}
}
remove(self);
BADCVAR("sv_vote_master_password");
BADCVAR("sys_colortranslation");
BADCVAR("sys_specialcharactertranslation");
+ BADCVAR("timeformat");
BADCVAR("timestamps");
BADPREFIX("developer_");
BADPREFIX("g_ban_");
BADPREFIX("g_chat_flood_");
+ BADPREFIX("g_playerstats_");
BADPREFIX("g_voice_flood_");
BADPREFIX("rcon_");
BADPREFIX("settemp_");
BADPREFIX("sv_weaponstats_");
// these can contain player IDs, so better hide
- BADCVAR("g_forced_team_red");
- BADCVAR("g_forced_team_blue");
- BADCVAR("g_forced_team_yellow");
- BADCVAR("g_forced_team_pink");
+ BADPREFIX("g_forced_team_");
// mapinfo
BADCVAR("fraglimit");
BADPREFIX("sv_maxidle_");
BADPREFIX("sv_vote_");
BADPREFIX("timelimit_");
+ BADCVAR("gameversion");
+ BADPREFIX("gameversion_");
// allowed changes to server admins (please sync this to server.cfg)
// vi commands:
BADCVAR("bot_number");
BADCVAR("bot_prefix");
BADCVAR("bot_suffix");
+ BADCVAR("bot_config_file");
BADCVAR("capturelimit_override");
BADCVAR("fraglimit_override");
BADCVAR("gametype");
BADCVAR("g_ctf_ignore_frags");
BADCVAR("g_ctf_win_mode");
BADCVAR("g_domination_point_limit");
+ BADCVAR("g_friendlyfire");
BADCVAR("g_fullbrightitems");
BADCVAR("g_fullbrightplayers");
BADCVAR("g_keyhunt_point_limit");
BADCVAR("g_maplist_votable_abstain");
BADCVAR("g_maplist_votable_nodetail");
BADCVAR("g_maplist_votable_suggestions");
+ BADCVAR("g_maxplayers");
BADCVAR("g_minstagib");
+ BADCVAR("g_mirrordamage");
BADCVAR("g_nexball_goallimit");
BADCVAR("g_runematch_point_limit");
BADCVAR("g_start_delay");
+ BADCVAR("g_warmup");
BADCVAR("g_weapon_stay"); BADPRESUFFIX("g_", "_weapon_stay");
BADCVAR("hostname");
BADCVAR("log_file");
BADCVAR("maxplayers");
- BADCVAR("g_maxplayers");
BADCVAR("minplayers");
BADCVAR("net_address");
BADCVAR("port");
BADCVAR("sv_vote_master_commands");
BADCVAR("sv_vote_master_password");
BADCVAR("sv_vote_simple_majority_factor");
+ BADCVAR("sys_ticrate");
+ BADCVAR("teamplay_mode");
BADCVAR("timelimit_override");
- BADCVAR("g_warmup");
BADPREFIX("g_warmup_");
- BADCVAR("teamplay_mode");
if(autocvar_g_minstagib)
{
if(self.spawnflags & SPAWNFLAG_NO_WAYPOINTS_FOR_ITEMS)
bot_waypoints_for_items = 0;
- // for setting by mapinfo
- q3acompat_machineshotgunswap = autocvar_sv_q3acompat_machineshotgunswap;
- cvar_set("sv_q3acompat_machineshotgunswap", "0");
-
precache();
WaypointSprite_Init();
GameLogInit(); // prepare everything
if(autocvar_sv_eventlog)
{
- s = strcat(ftos(autocvar_sv_eventlog_files_counter), ".");
- s = strcat(s, ftos(random()));
+ s = sprintf("%d.%s.%06d", ftos(autocvar_sv_eventlog_files_counter), strftime(FALSE, "%s"), floor(random() * 1000000));
matchid = strzone(s);
GameLogEcho(strcat(":gamestart:", GetGametype(), "_", GetMapname(), ":", s));
addstat(STAT_WEAPONS, AS_INT, weapons);
addstat(STAT_SWITCHWEAPON, AS_INT, switchweapon);
+ addstat(STAT_SWITCHINGWEAPON, AS_INT, switchingweapon);
addstat(STAT_GAMESTARTTIME, AS_FLOAT, stat_game_starttime);
addstat(STAT_ALLOW_OLDNEXBEAM, AS_INT, stat_allow_oldnexbeam);
Nagger_Init();
FOR_EACH_CLIENT(e)
PlayerStats_AddGlobalInfo(e);
PlayerStats_Shutdown();
+ WeaponStats_Shutdown();
if(autocvar_sv_eventlog)
GameLogEcho(":gameover");
}
else
{
- centerprint_atprio(client, CENTERPRIO_ADMIN, strcat("^3", admin_name(), ":\n\n^7", argv(2)));
+ centerprint(client, strcat("^3", admin_name(), ":\n\n^7", argv(2)));
sprint(client, strcat("\{1}\{13}^3", admin_name(), "^7: ", argv(2), "\n"));
}
dprint("Message sent to ", client.netname, "\n");
}
}
+void GameCommand_warp(float request, float argc)
+{
+ switch (request)
+ {
+ case GC_REQUEST_HELP:
+ print(" ^2warp^7: Choose different level in campaign\n");
+ return;
+
+ case GC_REQUEST_COMMAND:
+ if(autocvar_g_campaign)
+ {
+
+ if(argc >= 2)
+ {
+ CampaignLevelWarp(stof(argv(1)));
+ print("Successfully warped to campaign level ", stof(argv(1)), ".\n");
+ }
+ else
+ {
+ CampaignLevelWarp(-1);
+ print("Successfully warped to next campaign level.\n");
+ }
+ }
+ else
+ print("Not in campaign, can't level warp\n");
+ return;
+
+ default:
+ case GC_REQUEST_USAGE:
+ print("\nUsage:^3 sv_cmd level\n");
+ print(" 'level' is the level to change campaign mode to.\n");
+ return;
+ }
+}
+
// =========================================
// Main Function Called By Engine (sv_cmd)
GameCommand_time(GC_REQUEST_HELP);
GameCommand_trace(GC_REQUEST_HELP, 0);
GameCommand_unlockteams(GC_REQUEST_HELP);
+ GameCommand_warp(GC_REQUEST_HELP, 0);
GameCommand_Vote("help", world);
GameCommand_Ban("help");
GameCommand_Generic("help");
case "time": GameCommand_time(search_request_type); break;
case "trace": GameCommand_trace(search_request_type, argc); break;
case "unlockteams": GameCommand_unlockteams(search_request_type); break;
+ case "warp": GameCommand_warp(search_request_type, argc); break;
default:
print("Invalid command. For a list of supported commands, try sv_cmd help.\n");
string GetAdvancedDeathReports(entity enPlayer) // Extra fragmessage information
{
- local float nPlayerHealth = rint(enPlayer.health);
- local float nPlayerArmor = rint(enPlayer.armorvalue);
- local float nPlayerHandicap = enPlayer.cvar_cl_handicap;
- local float nPlayerPing = rint(enPlayer.ping);
- local string strPlayerPingColor;
- local string strMessage;
+ float nPlayerHealth = rint(enPlayer.health);
+ float nPlayerArmor = rint(enPlayer.armorvalue);
+ float nPlayerHandicap = enPlayer.cvar_cl_handicap;
+ float nPlayerPing = rint(enPlayer.ping);
+ string strPlayerPingColor;
+ string strMessage;
+
if(nPlayerPing >= 150)
strPlayerPingColor = "^1";
else
strPlayerPingColor = "^2";
if((autocvar_sv_fragmessage_information_stats) && (enPlayer.health >= 1))
- strMessage = strcat(strMessage, "\n^7(Health ^1", ftos(nPlayerHealth), "^7 / Armor ^2", ftos(nPlayerArmor), "^7)");
+ strMessage = strcat(strMessage, "^7(Health ^1", ftos(nPlayerHealth), "^7 / Armor ^2", ftos(nPlayerArmor), "^7)");
if(autocvar_sv_fragmessage_information_ping) {
if(clienttype(enPlayer) == CLIENTTYPE_BOT) // Bots have no ping
} else if(autocvar_sv_fragmessage_information_handicap) {
if(autocvar_sv_fragmessage_information_handicap == 2)
if(nPlayerHandicap <= 1)
- strMessage = strcat(strMessage, "\n^7(Handicap ^2Off^7)");
+ strMessage = strcat(strMessage, "^7(Handicap ^2Off^7)");
else
- strMessage = strcat(strMessage, "\n^7(Handicap ^2", ftos(nPlayerHandicap), "^7)");
+ strMessage = strcat(strMessage, "^7(Handicap ^2", ftos(nPlayerHandicap), "^7)");
else if(nPlayerHandicap > 1)
- strMessage = strcat(strMessage, "\n^7(Handicap ^2", ftos(nPlayerHandicap), "^7)");
+ strMessage = strcat(strMessage, "^7(Handicap ^2", ftos(nPlayerHandicap), "^7)");
}
+
+ if(strMessage) // add new line to the beginning if there is a message
+ strMessage = strcat("\n", strMessage);
+
return strMessage;
}
void bcenterprint(string s)
MUTATOR_CALLHOOK(GetCvars);
GetCvars_handleFloat(s, f, autoswitch, "cl_autoswitch");
GetCvars_handleFloat(s, f, cvar_cl_playerdetailreduction, "cl_playerdetailreduction");
- GetCvars_handleFloat(s, f, cvar_scr_centertime, "scr_centertime");
GetCvars_handleString(s, f, cvar_g_xonoticversion, "g_xonoticversion");
GetCvars_handleFloat(s, f, cvar_cl_handicap, "cl_handicap");
+ GetCvars_handleFloat(s, f, cvar_cl_clippedspectating, "cl_clippedspectating");
GetCvars_handleString_Fixup(s, f, cvar_cl_weaponpriority, "cl_weaponpriority", W_FixWeaponOrder_ForceComplete_AndBuildImpulseList);
GetCvars_handleString_Fixup(s, f, cvar_cl_weaponpriorities[0], "cl_weaponpriority0", W_FixWeaponOrder_AllowIncomplete);
GetCvars_handleString_Fixup(s, f, cvar_cl_weaponpriorities[1], "cl_weaponpriority1", W_FixWeaponOrder_AllowIncomplete);
GetCvars_handleFloatOnce(s, f, cvar_cl_gunalign, "cl_gunalign");
GetCvars_handleFloat(s, f, cvar_cl_allow_uid2name, "cl_allow_uid2name");
GetCvars_handleFloat(s, f, cvar_cl_allow_uidtracking, "cl_allow_uidtracking");
+ GetCvars_handleFloat(s, f, cvar_cl_movement_track_canjump, "cl_movement_track_canjump");
// fixup of switchweapon (needed for LMS or when spectating is disabled, as PutClientInServer comes too early)
if (f > 0)
return -1;
}
-#define CENTERPRIO_POINT 1
-#define CENTERPRIO_SPAM 2
-#define CENTERPRIO_VOTE 4
-#define CENTERPRIO_NORMAL 5
-#define CENTERPRIO_SHIELDING 7
-#define CENTERPRIO_MAPVOTE 9
-#define CENTERPRIO_IDLEKICK 50
-#define CENTERPRIO_ADMIN 99
-.float centerprint_priority;
-.float centerprint_expires;
-void centerprint_atprio(entity e, float prio, string s)
-{
- if (intermission_running)
- if (prio < CENTERPRIO_MAPVOTE)
- return;
- if (time > e.centerprint_expires)
- e.centerprint_priority = 0;
- if (prio >= e.centerprint_priority)
- {
- e.centerprint_priority = prio;
- if (timeoutStatus == 2)
- e.centerprint_expires = time + (e.cvar_scr_centertime * TIMEOUT_SLOWMO_VALUE);
- else
- e.centerprint_expires = time + e.cvar_scr_centertime;
- centerprint_builtin(e, s);
- }
-}
-void centerprint_expire(entity e, float prio)
-{
- if (prio == e.centerprint_priority)
- {
- e.centerprint_priority = 0;
- centerprint_builtin(e, "");
- }
-}
-void centerprint(entity e, string s)
-{
- centerprint_atprio(e, CENTERPRIO_NORMAL, s);
-}
-
// decolorizes and team colors the player name when needed
string playername(entity p)
{
g_bloodloss = cvar("g_bloodloss");
sv_maxidle = cvar("sv_maxidle");
sv_maxidle_spectatorsareidle = cvar("sv_maxidle_spectatorsareidle");
- sv_pogostick = cvar("sv_pogostick");
g_ctf_reverse = cvar("g_ctf_reverse");
sv_autotaunt = cvar("sv_autotaunt");
sv_taunt = cvar("sv_taunt");
if(!g_weapon_stay)
g_weapon_stay = cvar("g_weapon_stay");
- if (!g_weapon_stay && (cvar("deathmatch") == 2))
- g_weapon_stay = 1;
-
g_ghost_items = cvar("g_ghost_items");
if(g_ghost_items >= 1)
#define WRITESPECTATABLE_MSG_ONE(statement) WRITESPECTATABLE_MSG_ONE_VARNAME(oldmsg_entity, statement)
#define WRITESPECTATABLE(msg,statement) if(msg == MSG_ONE) { WRITESPECTATABLE_MSG_ONE(statement); } else statement float WRITESPECTATABLE_workaround = 0
+
+void Send_CSQC_Centerprint_Generic(entity e, float id, string s, float duration, float countdown_num)
+{
+ if (clienttype(e) == CLIENTTYPE_REAL)
+ {
+ msg_entity = e;
+ WRITESPECTATABLE_MSG_ONE({
+ WriteByte(MSG_ONE, SVC_TEMPENTITY);
+ WriteByte(MSG_ONE, TE_CSQC_CENTERPRINT_GENERIC);
+ WriteByte(MSG_ONE, id);
+ WriteString(MSG_ONE, s);
+ if (id != 0 && s != "")
+ {
+ WriteByte(MSG_ONE, duration);
+ WriteByte(MSG_ONE, countdown_num);
+ }
+ });
+ }
+}
+void Send_CSQC_Centerprint_Generic_Expire(entity e, float id)
+{
+ Send_CSQC_Centerprint_Generic(e, id, "", 1, 0);
+}
// WARNING: this kills the trace globals
#define EXACTTRIGGER_TOUCH if(WarpZoneLib_ExactTrigger_Touch()) return
#define EXACTTRIGGER_INIT WarpZoneLib_ExactTrigger_Init()
void remove_unsafely(entity e)
{
+ if(e.classname == "spike")
+ error("Removing spikes is forbidden (crylink bug), please report");
remove_builtin(e);
}
#define SUB_OwnerCheck() (other && (other == self.owner))
void RemoveGrapplingHook(entity pl);
+void W_Crylink_Dequeue(entity e);
float WarpZone_Projectile_Touch_ImpactFilter_Callback()
{
if(SUB_OwnerCheck())
{
if(self.classname == "grapplinghook")
RemoveGrapplingHook(self.realowner);
+ else if(self.classname == "spike")
+ {
+ W_Crylink_Dequeue(self);
+ remove(self);
+ }
else
remove(self);
return TRUE;
}
if(trace_ent && trace_ent.solid > SOLID_TRIGGER)
- UpdateCSQCProjectileNextFrame(self);
+ UpdateCSQCProjectile(self);
return FALSE;
}
#define PROJECTILE_TOUCH if(WarpZone_Projectile_Touch()) return
dprint(data);
dprint("\nEnd of data.\n");
- if (id == URI_GET_DISCARD)
+ if(url_URI_Get_Callback(id, status, data))
+ {
+ // handled
+ }
+ else if (id == URI_GET_DISCARD)
{
// discard
}
{
float m, i;
vector start, org, delta, end, enddown, mstart;
+ entity sp;
m = e.dphitcontentsmask;
e.dphitcontentsmask = goodcontents | badcontents;
if (trace_fraction >= 1)
continue;
+ // rule 4: we must "see" some spawnpoint
+ for(sp = world; (sp = find(sp, classname, "info_player_deathmatch")); )
+ if(checkpvs(mstart, sp))
+ break;
+ if(!sp)
+ {
+ for(sp = world; (sp = findflags(sp, flags, FL_ITEM)); )
+ if(checkpvs(mstart, sp))
+ break;
+ if(!sp)
+ continue;
+ }
+
// find a random vector to "look at"
end_x = org_x + random() * delta_x;
end_y = org_y + random() * delta_y;
--totalalive;
}
- if(totalspawned > 2) // only check for winners if we had more than two players (one of them left, don't let the other player win just because of that)
+ if(total_players > 2) // only check for winners if we had more than two players (one of them left, don't let the other player win just because of that)
freezetag_CheckWinner();
freezetag_Unfreeze(world);
{
freezetag_Unfreeze(world); // start by making sure that all ice blocks are removed
- if(totalspawned == 1 && time > game_starttime) // only one player active on server, start a new match immediately
+ if(total_players == 1 && time > game_starttime) // only one player active on server, start a new match immediately
if(!next_round && warmup && (time < warmup - autocvar_g_freezetag_warmup || time > warmup)) // not awaiting next round
{
next_round = time;
// messages and sounds
Send_KillNotification(other.netname, "", "", KA_PICKUPBALL, MSG_KA);
WriteByte(MSG_BROADCAST, SVC_CENTERPRINT);
- WriteString(MSG_BROADCAST, strcat("\n\n", other.netname, "^7 has picked up the ball!\n"));
+ WriteString(MSG_BROADCAST, strcat(other.netname, "^7 has picked up the ball!"));
sound(self.owner, CH_TRIGGER, "keepaway/pickedup.wav", VOL_BASE, ATTN_NONE); // ATTN_NONE (it's a sound intended to be heard anywhere)
// scoring
// messages and sounds
Send_KillNotification(plyr.netname, "", "", KA_DROPBALL, MSG_KA);
WriteByte(MSG_BROADCAST, SVC_CENTERPRINT);
- WriteString(MSG_BROADCAST, strcat("\n\n", plyr.netname, "^7 has dropped the ball!\n"));
- sound(plyr, CH_TRIGGER, "keepaway/dropped.wav", VOL_BASE, ATTN_NONE); // ATTN_NONE (it's a sound intended to be heard anywhere)
+ WriteString(MSG_BROADCAST, strcat(plyr.netname, "^7 has dropped the ball!"));
+ sound(other, CH_TRIGGER, "keepaway/dropped.wav", VOL_BASE, ATTN_NONE); // ATTN_NONE (it's a sound intended to be heard anywhere)
// scoring
// PlayerScore_Add(plyr, SP_KEEPAWAY_DROPS, 1); Not anymore, this is 100% the same as pickups and is useless.
}
else if(!frag_attacker.ballcarried)
if(autocvar_g_keepaway_noncarrier_warn)
- centerprint_atprio(frag_attacker, (CENTERPRIO_SPAM + 5), "Killing people while you don't have the ball gives no points!");
+ centerprint(frag_attacker, "Killing people while you don't have the ball gives no points!");
if(frag_attacker.ballcarried) // add to amount of kills while ballcarrier
PlayerScore_Add(frag_attacker, SP_SCORE, autocvar_g_keepaway_score_killac);
.float kh_dropperteam;
.entity kh_previous_owner;
.float kh_previous_owner_playerid;
+.float kh_cp_duration;
string kh_sound_capture = "kh/capture.wav";
string kh_sound_destroy = "kh/destroy.wav";
var kh_Think_t kh_Controller_Thinkfunc;
-void kh_Controller_SetThink(float t, string msg, kh_Think_t func) // runs occasionaly
+void kh_Controller_SetThink(float t, string msg, float centerprint_duration, kh_Think_t func) // runs occasionaly
{
kh_Controller_Thinkfunc = func;
kh_controller.cnt = ceil(t);
if(msg == "")
kh_Controller_Waitmsg = "";
else
+ {
+ kh_controller.kh_cp_duration = centerprint_duration;
kh_Controller_Waitmsg = strzone(msg);
+ }
if(t == 0)
kh_controller.nextthink = time; // force
}
+void kh_Controller_SetThink_NoMsg(float t, kh_Think_t func) // runs occasionaly
+{
+ kh_Controller_SetThink(t, "", 0, func);
+}
void kh_Controller_Think() // called a lot
{
FOR_EACH_PLAYER(e)
if(clienttype(e) == CLIENTTYPE_REAL)
- centerprint_atprio(e, CENTERPRIO_SPAM, s);
+ Send_CSQC_Centerprint_Generic(e, CPID_KH_MSG, s, self.kh_cp_duration, 0);
}
self.cnt -= 1;
}
kh_Key_Remove(key);
kh_no_radar_circles = FALSE;
- kh_Controller_SetThink(autocvar_g_balance_keyhunt_delay_round, "Round starts in ", kh_StartRound);
+ kh_Controller_SetThink(autocvar_g_balance_keyhunt_delay_round, "Round starts in ", 1, kh_StartRound);
}
void kh_WinnerTeam(float teem) // runs when a team wins
{
if(head.team == kh_interferemsg_team)
if(head.kh_next)
- centerprint(head, "All keys are in your team's hands!\n\nMeet the other key carriers ^1NOW^7!");
+ Send_CSQC_Centerprint_Generic(head, CPID_KH_MSG, "All keys are in your team's hands!\n\nMeet the other key carriers ^1NOW^7!", 0, 0);
else
- centerprint(head, "All keys are in your team's hands!\n\nHelp the key carriers to meet!");
+ Send_CSQC_Centerprint_Generic(head, CPID_KH_MSG, "All keys are in your team's hands!\n\nHelp the key carriers to meet!", 0, 0);
else
- centerprint(head, strcat("All keys are in the ", ColoredTeamName(kh_interferemsg_team), "^7's hands!\n\nInterfere ^1NOW^7!"));
+ Send_CSQC_Centerprint_Generic(head, CPID_KH_MSG, strcat("All keys are in the ", ColoredTeamName(kh_interferemsg_team), "^7's hands!\n\nInterfere ^1NOW^7!"), 0, 0);
}
}
if(time < game_starttime)
{
- kh_Controller_SetThink(game_starttime - time + 0.1, "", kh_WaitForPlayers);
+ kh_Controller_SetThink_NoMsg(game_starttime - time + 0.1, kh_WaitForPlayers);
return;
}
teams_missing = kh_CheckEnoughPlayers();
if(teams_missing == "")
- kh_Controller_SetThink(autocvar_g_balance_keyhunt_delay_round, "Round starts in ", kh_StartRound);
+ kh_Controller_SetThink(autocvar_g_balance_keyhunt_delay_round, "Round starts in ", 1, kh_StartRound);
else
- kh_Controller_SetThink(1, strcat("Waiting for players to join...\n\nNeed active players for: ", teams_missing), kh_WaitForPlayers);
+ kh_Controller_SetThink(1, strcat("Waiting for players to join...\n\nNeed active players for: ", teams_missing), -1, kh_WaitForPlayers);
}
void kh_EnableTrackingDevice() // runs after each round
FOR_EACH_PLAYER(player)
if(clienttype(player) == CLIENTTYPE_REAL)
- centerprint_expire(player, CENTERPRIO_SPAM);
+ Send_CSQC_Centerprint_Generic_Expire(player, CPID_KH_MSG);
kh_tracking_enabled = TRUE;
}
if(time < game_starttime)
{
- kh_Controller_SetThink(game_starttime - time + 0.1, "", kh_WaitForPlayers);
+ kh_Controller_SetThink_NoMsg(game_starttime - time + 0.1, kh_WaitForPlayers);
return;
}
teams_missing = kh_CheckEnoughPlayers();
if(teams_missing != "")
{
- kh_Controller_SetThink(1, strcat("Waiting for players to join...\n\nNeed active players for: ", teams_missing), kh_WaitForPlayers);
+ kh_Controller_SetThink(1, strcat("Waiting for players to join...\n\nNeed active players for: ", teams_missing), -1, kh_WaitForPlayers);
return;
}
FOR_EACH_PLAYER(player)
if(clienttype(player) == CLIENTTYPE_REAL)
- centerprint_expire(player, CENTERPRIO_SPAM);
+ Send_CSQC_Centerprint_Generic_Expire(player, CPID_KH_MSG);
for(i = 0; i < kh_teams; ++i)
{
}
kh_tracking_enabled = FALSE;
- kh_Controller_SetThink(autocvar_g_balance_keyhunt_delay_tracking, "Scanning frequency range...", kh_EnableTrackingDevice);
+ kh_Controller_SetThink(autocvar_g_balance_keyhunt_delay_tracking, "Scanning frequency range...", -1, kh_EnableTrackingDevice);
}
float kh_HandleFrags(entity attacker, entity targ, float f) // adds to the player score
// make a KH entity for controlling the game
kh_controller = spawn();
kh_controller.think = kh_Controller_Think;
- kh_Controller_SetThink(0, "", kh_WaitForPlayers);
+ kh_Controller_SetThink_NoMsg(0, kh_WaitForPlayers);
setmodel(kh_controller, "models/keyhunt/key.md3");
kh_key_dropped = kh_controller.modelindex;
// used by arena.qc ready-restart:
typedef void(void) kh_Think_t;
void kh_StartRound();
-void kh_Controller_SetThink(float t, string msg, kh_Think_t func);
+void kh_Controller_SetThink_NoMsg(float t, kh_Think_t func);
nix_weapon = nix_nextweapon;
nix_weapon_ammo = nix_nextweapon_ammo;
nix_nextweapon = 0;
- nix_nextchange = time + autocvar_g_balance_nix_roundtime;
+ if (!nix_nextchange) // no round played yet?
+ nix_nextchange = time; // start the first round now!
+ else
+ nix_nextchange = time + autocvar_g_balance_nix_roundtime;
//weapon_action(nix_weapon, WR_PRECACHE); // forget it, too slow
}
-
+
if(nix_nextchange != self.nix_lastchange_id) // this shall only be called once per round!
{
self.nix_lastchange_id = nix_nextchange;
if(dt >= 1 && dt <= 5)
self.nix_lastinfotime = -42;
else
- centerprint(self, strcat("\n\n^2Active weapon: ^3", W_Name(nix_weapon)));
+ Send_CSQC_Centerprint_Generic(self, CPID_NIX_WPNCHANGE, strcat("^2Active weapon: ^3", W_Name(nix_weapon)), 0, 0);
+
+ weapon_action(nix_weapon, WR_RESETPLAYER);
+
+ // all weapons must be fully loaded when we spawn
+ entity e;
+ e = get_weaponinfo(nix_weapon);
+ if(e.spawnflags & WEP_FLAG_RELOADABLE) // prevent accessing undefined cvars
+ self.weapon_load[nix_weapon] = cvar(strcat("g_balance_", e.netname, "_reload_ammo"));
+
+ // nex too
+ if(autocvar_g_balance_nex_charge)
+ {
+ if(autocvar_g_balance_nex_secondary_chargepool)
+ self.nex_chargepool_ammo = 1;
+ self.nex_charge = autocvar_g_balance_nex_charge_start;
+ }
}
if(self.nix_lastinfotime != dt)
{
self.nix_lastinfotime = dt; // initial value 0 should count as "not seen"
if(dt >= 1 && dt <= 5)
- centerprint(self, strcat("^3", ftos(dt), "^2 seconds until weapon change...\n\nNext weapon: ^3", W_Name(nix_nextweapon), "\n"));
+ Send_CSQC_Centerprint_Generic(self, CPID_NIX_WPNCHANGE, strcat("^3%d^2 seconds until weapon change...\n\nNext weapon: ^3", W_Name(nix_nextweapon)), 1, dt);
}
if(!(self.items & IT_UNLIMITED_WEAPON_AMMO) && time > self.nix_nextincr)
{
g_nix_with_laser = autocvar_g_nix_with_laser;
- nix_nextchange = time;
+ nix_nextchange = 0;
nix_nextweapon = 0;
NIX_precache();
{
precache_model ("models/weapons/g_porto.md3");
precache_model ("models/weapons/v_porto.md3");
- precache_model ("models/weapons/h_porto.dpm");
+ precache_model ("models/weapons/h_porto.iqm");
precache_model ("models/elaser.mdl");
precache_sound ("nexball/shoot1.wav");
precache_sound ("nexball/shoot2.wav");
acc-<weapon netname>-frags: amount of frags dealt by weapon
*/
-//#NO AUTOCVARS START
-void PlayerStats_Shutdown()
+void PlayerStats_ready(entity fh, entity pass, float status)
{
string p, pn;
string e, en;
string nn, tt;
- float b;
- float i;
+ string s;
+
+ switch(status)
+ {
+ case URL_READY_CANWRITE:
+ url_fputs(fh, "V 1\n");
+#ifdef WATERMARK
+ url_fputs(fh, sprintf("R %s\n", WATERMARK()));
+#endif
+ url_fputs(fh, sprintf("T %s.%06d\n", strftime(FALSE, "%s"), floor(random() * 1000000)));
+ url_fputs(fh, sprintf("G %s\n", GetGametype()));
+ url_fputs(fh, sprintf("M %s\n", GetMapname()));
+ url_fputs(fh, sprintf("I %s\n", matchid));
+ url_fputs(fh, sprintf("S %s\n", cvar_string("hostname")));
+ url_fputs(fh, sprintf("C %d\n", cvar_purechanges_count));
+ for(p = playerstats_last; (pn = db_get(playerstats_db, sprintf("%s:*", p))) != ""; p = pn)
+ {
+ url_fputs(fh, sprintf("P %s\n", p));
+ nn = db_get(playerstats_db, sprintf("%s:_playerid", p));
+ if(nn != "")
+ url_fputs(fh, sprintf("i %s\n", nn));
+ nn = db_get(playerstats_db, sprintf("%s:_netname", p));
+ if(nn != "")
+ url_fputs(fh, sprintf("n %s\n", nn));
+ if(teamplay)
+ {
+ tt = db_get(playerstats_db, sprintf("%s:_team", p));
+ url_fputs(fh, sprintf("t %s\n", tt));
+ }
+ for(e = events_last; (en = db_get(playerstats_db, sprintf("*:%s", e))) != ""; e = en)
+ {
+ float v;
+ v = stof(db_get(playerstats_db, sprintf("%s:%s", p, e)));
+ if(v != 0)
+ url_fputs(fh, sprintf("e %s %g\n", e, v));
+ }
+ }
+ url_fputs(fh, "\n");
+ db_close(playerstats_db);
+ playerstats_db = -1;
+ url_fclose(fh, PlayerStats_ready, world);
+ break;
+ case URL_READY_CANREAD:
+ // url_fclose is processing, we got a response for writing the data
+ // this must come from HTTP
+ print("Got response from player stats server:\n");
+ while((s = url_fgets(fh)))
+ print(" ", s, "\n");
+ print("End of response.\n");
+ url_fclose(fh, PlayerStats_ready, world);
+ break;
+ case URL_READY_CLOSED:
+ // url_fclose has finished
+ print("Player stats written\n");
+ playerstats_waitforme = TRUE;
+ break;
+ case URL_READY_ERROR:
+ default:
+ print("Player stats writing failed: ", ftos(status), "\n");
+ playerstats_waitforme = TRUE;
+ if(playerstats_db >= 0)
+ {
+ db_close(playerstats_db);
+ playerstats_db = -1;
+ }
+ break;
+ }
+}
+
+//#NO AUTOCVARS START
+void PlayerStats_Shutdown()
+{
string uri;
if(playerstats_db < 0)
uri = autocvar_g_playerstats_uri;
if(uri != "")
{
- b = buf_create();
- i = 0;
-
- db_dump(playerstats_db, "foo.db");
-
- bufstr_set(b, i++, "V 1");
-#ifdef WATERMARK
- bufstr_set(b, i++, sprintf("R %s", WATERMARK()));
-#endif
- bufstr_set(b, i++, sprintf("T %s.%06d", strftime(FALSE, "%s"), floor(random() * 1000000)));
- bufstr_set(b, i++, sprintf("G %s", GetGametype()));
- bufstr_set(b, i++, sprintf("M %s", GetMapname()));
- bufstr_set(b, i++, sprintf("S %s", cvar_string("hostname")));
- bufstr_set(b, i++, sprintf("C %d", cvar_purechanges_count));
- for(p = playerstats_last; (pn = db_get(playerstats_db, sprintf("%s:*", p))) != ""; p = pn)
- {
- bufstr_set(b, i++, sprintf("P %s", p));
- nn = db_get(playerstats_db, sprintf("%s:_netname", p));
- if(nn != "")
- bufstr_set(b, i++, sprintf("n %s", nn));
- if(teamplay)
- {
- tt = db_get(playerstats_db, sprintf("%s:_team", p));
- bufstr_set(b, i++, sprintf("t %s", tt));
- }
- for(e = events_last; (en = db_get(playerstats_db, sprintf("*:%s", e))) != ""; e = en)
- {
- float v;
- v = stof(db_get(playerstats_db, sprintf("%s:%s", p, e)));
- if(v != 0)
- bufstr_set(b, i++, sprintf("e %s %g", e, v));
- }
- }
- bufstr_set(b, i++, "");
-
- if(autocvar_g_playerstats_debug)
- {
- for(i = 0; i < buf_getsize(b); ++i)
- print(bufstr_get(b, i), "\n");
- }
-
- if(crypto_uri_postbuf(uri, URI_GET_PLAYERSTATS_SENT, "text/plain", "\n", b, 0))
- playerstats_requested = TRUE;
- else
- playerstats_waitforme = TRUE; // if posting fails, we must continue anyway
-
- buf_del(b);
+ url_fopen(uri, FILE_APPEND, PlayerStats_ready, world);
+ playerstats_waitforme = FALSE;
}
else
+ {
playerstats_waitforme = TRUE;
-
- db_close(playerstats_db);
- playerstats_db = -1;
+ db_close(playerstats_db);
+ playerstats_db = -1;
+ }
}
//#NO AUTOCVARS END
// add global info!
if(p.alivetime)
+ {
PlayerStats_Event(p, PLAYERSTATS_ALIVETIME, time - p.alivetime);
+ p.alivetime = 0;
+ }
- if(p.alivetime)
- PlayerStats_Event(p, PLAYERSTATS_ALIVETIME, time - p.alivetime);
+ db_put(playerstats_db, sprintf("%s:_playerid", p.playerstats_id), ftos(p.playerid));
if(p.cvar_cl_allow_uid2name == 1 || clienttype(p) == CLIENTTYPE_BOT)
db_put(playerstats_db, sprintf("%s:_netname", p.playerstats_id), p.netname);
if(teamplay)
db_put(playerstats_db, sprintf("%s:_team", p.playerstats_id), ftos(p.team));
- if(p.alivetime > 0)
+ if(stof(db_get(playerstats_db, sprintf("%d:%s", p.playerstats_id, PLAYERSTATS_ALIVETIME))) > 0)
PlayerStats_Event(p, PLAYERSTATS_JOINS, 1);
strunzone(p.playerstats_id);
{
entity p, winner;
winner = PlayerScore_Sort(score_dummyfield);
- FOR_EACH_PLAYER(p)
+ FOR_EACH_PLAYER(p) // spectators intentionally not included
{
PlayerScore_PlayerStats(p);
PlayerStats_Accuracy(p);
../common/util.qh
../common/items.qh
../common/explosion_equation.qh
+../common/urllib.qh
autocvars.qh
constants.qh
campaign.qc
../common/campaign_file.qc
../common/campaign_setup.qc
+../common/urllib.qc
../common/gamecommand.qc
gamecommand.qc
if(score_enabled)
ScoreInfo_SetLabel_TeamScore (ST_SCORE, "score", stprio);
- if not(independent_players)
+ if not(INDEPENDENT_PLAYERS)
ScoreInfo_SetLabel_PlayerScore(SP_KILLS, "kills", 0);
ScoreInfo_SetLabel_PlayerScore(SP_DEATHS, "deaths", SFL_LOWER_IS_BETTER);
- if not(independent_players)
+ if not(INDEPENDENT_PLAYERS)
ScoreInfo_SetLabel_PlayerScore(SP_SUICIDES, "suicides", SFL_LOWER_IS_BETTER);
if(score_enabled)
{
pickedup = TRUE;
// play some cool sounds ;)
- centerprint(player, "\n");
if (clienttype(player) == CLIENTTYPE_REAL)
{
if(player.health <= 5)
}
if (item.flags & FL_WEAPON)
- if ((it = item.weapons - (item.weapons & player.weapons)) || (g_pickup_weapons_anyway && !(g_weapon_stay == 3 && !e.spawnshieldtime)))
+ if ((it = item.weapons - (item.weapons & player.weapons)) || (g_pickup_weapons_anyway && g_weapon_stay == 0))
{
pickedup = TRUE;
for(i = WEP_FIRST; i <= WEP_LAST; ++i)
void spawnfunc_weapon_shotgun (void);
void spawnfunc_weapon_uzi (void) {
- if(q3acompat_machineshotgunswap)
+ if(autocvar_sv_q3acompat_machineshotgunswap)
if(self.classname != "droppedweapon")
{
weapon_defaultspawnfunc(WEP_SHOTGUN);
}
void spawnfunc_weapon_shotgun (void) {
- if(q3acompat_machineshotgunswap)
+ if(autocvar_sv_q3acompat_machineshotgunswap)
if(self.classname != "droppedweapon")
{
weapon_defaultspawnfunc(WEP_UZI);
void spawnfunc_item_shells (void);
void spawnfunc_item_bullets (void) {
if(!weaponswapping)
- if(q3acompat_machineshotgunswap)
+ if(autocvar_sv_q3acompat_machineshotgunswap)
if(self.classname != "droppedweapon")
{
weaponswapping = TRUE;
void spawnfunc_item_shells (void) {
if(!weaponswapping)
- if(q3acompat_machineshotgunswap)
+ if(autocvar_sv_q3acompat_machineshotgunswap)
if(self.classname != "droppedweapon")
{
weaponswapping = TRUE;
plat_go_down ();
else if (self.state == 3)
plat_go_up ();
- else
- objerror ("plat_crush: bad self.state\n");
+ // when in other states, then the plat_crush event came delayed after
+ // plat state already had changed
+ // this isn't a bug per se!
}
};
makevectors (to_angles);
- if(self.pushltime < time) // only show one teleport effect per teleporter per 0.2 seconds, for better fps
+ if(player.classname == "player") // don't play sounds or show particles for anything that isn't a player, maybe change later to block only observers
{
- if(tflags & TELEPORT_FLAG_SOUND)
- sound (player, CH_TRIGGER, "misc/teleport.wav", VOL_BASE, ATTN_NORM);
- if(tflags & TELEPORT_FLAG_PARTICLES)
+ if(self.pushltime < time) // only show one teleport effect per teleporter per 0.2 seconds, for better fps
{
- pointparticles(particleeffectnum("teleport"), player.origin, '0 0 0', 1);
- pointparticles(particleeffectnum("teleport"), to + v_forward * 32, '0 0 0', 1);
+ if(tflags & TELEPORT_FLAG_SOUND)
+ sound (player, CH_TRIGGER, "misc/teleport.wav", VOL_BASE, ATTN_NORM);
+ if(tflags & TELEPORT_FLAG_PARTICLES)
+ {
+ pointparticles(particleeffectnum("teleport"), player.origin, '0 0 0', 1);
+ pointparticles(particleeffectnum("teleport"), to + v_forward * 32, '0 0 0', 1);
+ }
+ self.pushltime = time + 0.2;
}
- self.pushltime = time + 0.2;
}
// Relocate the player
}
}
-void Teleport_Touch (void)
+void Simple_TeleportPlayer(entity teleporter, entity player)
{
- entity oldself, e;
- vector o;
+ vector locout;
+ entity e;
float p;
+
+ // Find the output teleporter
+ if(!teleporter.enemy)
+ {
+ RandomSelection_Init();
+ for(e = world; (e = find(e, targetname, teleporter.target)); )
+ {
+ p = 1;
+ if(autocvar_g_telefrags_avoid)
+ {
+ locout = e.origin + '0 0 1' * (1 - player.mins_z - 24);
+ if(check_tdeath(player, locout, '0 0 0', '0 0 0'))
+ p = 0;
+ }
+ RandomSelection_Add(e, 0, string_null, (e.cnt ? e.cnt : 1), p);
+ }
+ teleporter.enemy = RandomSelection_chosen_ent;
+ }
+
+ if(!teleporter.enemy) { sprint(player, "Teleport destination vanished. Sorry... please complain to the mapper.\n"); }
+
+ makevectors(teleporter.enemy.mangle);
+
+ if(teleporter.enemy.speed)
+ if(vlen(player.velocity) > teleporter.enemy.speed)
+ player.velocity = normalize(player.velocity) * max(0, teleporter.enemy.speed);
+
+ if(autocvar_g_teleport_maxspeed)
+ if(vlen(player.velocity) > autocvar_g_teleport_maxspeed)
+ player.velocity = normalize(player.velocity) * max(0, autocvar_g_teleport_maxspeed);
+
+ locout = teleporter.enemy.origin + '0 0 1' * (1 - player.mins_z - 24);
+ TeleportPlayer(teleporter, player, locout, teleporter.enemy.mangle, v_forward * vlen(player.velocity), '0 0 0', '0 0 0', TELEPORT_FLAGS_TELEPORTER);
+}
+
+void Teleport_Touch (void)
+{
+ entity oldself;
string s;
if (self.active != ACTIVE_ACTIVE)
return;
if not(other.iscreature)
+ if (other.deadflag != DEAD_NO)
return;
// for gameplay: vehicles can't teleport
EXACTTRIGGER_TOUCH;
- makevectors(self.enemy.mangle);
-
if(other.classname == "player")
RemoveGrapplingHook(other);
-
- if(self.enemy)
- {
- e = self.enemy;
- }
- else
- {
- RandomSelection_Init();
- for(e = world; (e = find(e, targetname, self.target)); )
- {
- p = 1;
- if(autocvar_g_telefrags_avoid)
- {
- o = e.origin + '0 0 1' * (1 - other.mins_z - 24);
- if(check_tdeath(other, o, '0 0 0', '0 0 0'))
- p = 0;
- }
- if(e.cnt)
- RandomSelection_Add(e, 0, string_null, e.cnt, p);
- else
- RandomSelection_Add(e, 0, string_null, 1, p);
- }
- e = RandomSelection_chosen_ent;
- }
-
- if(!e)
- {
- sprint(other, "Teleport destination vanished. Sorry... please complain to the mapper.\n");
- }
-
- if(e.speed)
- if(vlen(other.velocity) > e.speed)
- other.velocity = normalize(other.velocity) * max(0, e.speed);
- if(autocvar_g_teleport_maxspeed)
- if(vlen(other.velocity) > autocvar_g_teleport_maxspeed)
- other.velocity = normalize(other.velocity) * max(0, autocvar_g_teleport_maxspeed);
-
- o = e.origin + '0 0 1' * (1 - other.mins_z - 24);
- TeleportPlayer(self, other, o, e.mangle, v_forward * vlen(other.velocity), '0 0 0', '0 0 0', TELEPORT_FLAGS_TELEPORTER);
+
+ Simple_TeleportPlayer(self, other);
activator = other;
s = self.target; self.target = string_null;
if not(self.target) self.target = s;
oldself = self;
- self = e;
+ self = self.enemy;
SUB_UseTargets();
self = oldself;
}
self.touch = Teleport_Touch;
}
+entity Teleport_Find(vector mi, vector ma)
+{
+ entity e;
+ for(e = world; (e = find(e, classname, "trigger_teleport")); )
+ if(WarpZoneLib_BoxTouchesBrush(mi, ma, e, world))
+ return e;
+ return world;
+}
+
+entity teleport_first;
+.entity teleport_next;
void spawnfunc_trigger_teleport (void)
{
self.angles = '0 0 0';
objerror ("Teleporter with no target");
return;
}
+
+ self.teleport_next = teleport_first;
+ teleport_first = self;
}
void WarpZone_PostTeleportPlayer_Callback(entity pl)
return versionmsg;
}
-
-void PrintWelcomeMessage(entity pl)
+string getwelcomemessage(void)
{
string s, modifications, motd;
- if(self.cvar_scr_centertime == 0) return;
-
- if(autocvar_g_campaign)
- {
- if(self.classname == "player" && !self.BUTTON_INFO)
- return;
- }
- else
- {
- if((time - self.jointime) > autocvar_welcome_message_time && !self.BUTTON_INFO)
- return;
- }
-
- if( !(timeoutStatus >= 1) ) { //really print the WelcomeMessage to the player every frame when timeout-seconds are shown or the game is restarted, to make sure that the shown number is accurate
- if(self.welcomemessage_time > time) return;
- self.welcomemessage_time = time + max(0.5, self.cvar_scr_centertime * 0.6);
- }
-
- if(autocvar_g_campaign)
- {
- centerprint(pl, campaign_message);
- return;
- }
-
-//TODO GreEn`mArine: make the timeout-messages clientside as well (just like the ready restart countdown)!
- if(!self.BUTTON_INFO)
- {
- // TODO get rid of this too
- local string specString;
- specString = NEWLINES;
- //if(time < game_starttime) //also show the countdown when being a spectator
- // specString = strcat(specString, "\n\n^1Game starts in ", ftos(ceil(game_starttime - time)), " seconds^7");
- //else
- if (timeoutStatus != 0)
- specString = strcat(specString, "\n\n", getTimeoutText(1));
- else
- {
- if(self.classname == "player")
- return;
- goto normal;
- }
- return centerprint_atprio(self, CENTERPRIO_SPAM, specString);
- }
-
-:normal
ret_string = "";
MUTATOR_CALLHOOK(BuildMutatorsPrettyString);
modifications = ret_string;
local string versionmessage;
versionmessage = GetClientVersionMessage();
- s = strcat(s, NEWLINES, "This is Xonotic ", autocvar_g_xonoticversion, "\n", versionmessage);
+ s = strcat("This is Xonotic ", autocvar_g_xonoticversion, "\n", versionmessage);
s = strcat(s, "^8\n\nmatch type is ^1", gamemode_name, "^8\n");
if(modifications != "")
s = strcat(s, "^8\nactive modifications: ^3", modifications, "^8\n");
- if(timeoutStatus != 0)
- s = strcat(s, "\n\n", getTimeoutText(1));
-
if (g_grappling_hook)
s = strcat(s, "\n\n^3grappling hook^8 is enabled, press 'e' to use it\n");
if (motd != "") {
s = strcat(s, "\n\n^8MOTD: ^7", strreplace("\\n", "\n", motd));
}
- s = strcat(s, "\n");
-
- centerprint(pl, s);
+ return s;
}
-
void SetPlayerColors(entity pl, float _color)
{
/*string s;
if(self.team)
if(self.team != other.team)
return;
+
+ RemoveGrapplingHook(other);
self.vehicle_ammo1 = 0;
self.vehicle_ammo2 = 0;
msg_entity = e;
print_to(e, "^1You accepted the vote.");
e.vote_vote = 1;
- centerprint_expire(e, CENTERPRIO_VOTE);
if(!autocvar_sv_vote_singlecount) {
VoteCount();
}
msg_entity = e;
print_to(e, "^1You rejected the vote.");
e.vote_vote = -1;
- centerprint_expire(e, CENTERPRIO_VOTE);
if(!autocvar_sv_vote_singlecount) {
VoteCount();
}
msg_entity = e;
print_to(e, "^1You abstained from your vote.");
e.vote_vote = -2;
- centerprint_expire(e, CENTERPRIO_VOTE);
if(!autocvar_sv_vote_singlecount) {
VoteCount();
}
FOR_EACH_CLIENT(player)
{
player.vote_vote = 0;
- centerprint_expire(player, CENTERPRIO_VOTE);
}
if(votecalled)
votefinished = 0;
votecalledvote = string_null;
votecalledvote_display = string_null;
+
+ Nagger_VoteChanged();
}
void VoteAccept() {
if(e == world)
error("W_Crylink_CheckLinks: entity is world");
- if(e.classname != "spike")
+ if(e.classname != "spike" || wasfreed(e))
error(sprintf("W_Crylink_CheckLinks: entity is not a spike but a %s (freed: %d)", e.classname, wasfreed(e)));
p = e;
own.crylink_lastgroup = ((me == next) ? world : next);
prev.queuenext = next;
next.queueprev = prev;
+ me.classname = "spike_oktoremove";
if(me != next)
W_Crylink_CheckLinks(next);
}
W_Crylink_Dequeue_Raw(e.realowner, e.queueprev, e, e.queuenext);
}
+void W_Crylink_Reset(void)
+{
+ W_Crylink_Dequeue(self);
+ remove(self);
+}
+
// force projectile to explode
void W_Crylink_LinkExplode (entity e, entity e2)
{
float a;
+
+ if(e == e2)
+ return;
+
a = bound(0, 1 - (time - e.fade_time) * e.fade_rate, 1);
if(e == e.realowner.crylink_lastgroup)
else
RadiusDamage (e, e.realowner, autocvar_g_balance_crylink_primary_damage * a, autocvar_g_balance_crylink_primary_edgedamage * a, autocvar_g_balance_crylink_primary_radius, world, autocvar_g_balance_crylink_primary_force * a, e.projectiledeathtype, other);
- if(e.queuenext != e2)
- W_Crylink_LinkExplode(e.queuenext, e2);
+ W_Crylink_LinkExplode(e.queuenext, e2);
+ e.classname = "spike_oktoremove";
remove (e);
}
remove(self);
}
-
// NO bounce protection, as bounces are limited!
void W_Crylink_Touch (void)
{
float finalhit;
float f;
- //PROJECTILE_TOUCH;
- local entity savenext, saveprev, saveown;
- saveown = self.realowner;
- savenext = self.queuenext;
- saveprev = self.queueprev;
- if(WarpZone_Projectile_Touch())
- {
- if(wasfreed(self))
- W_Crylink_Dequeue_Raw(saveown, saveprev, self, savenext);
- return;
- }
+ PROJECTILE_TOUCH;
float a;
a = bound(0, 1 - (time - self.fade_time) * self.fade_rate, 1);
if(self == self.realowner.crylink_lastgroup)
self.realowner.crylink_lastgroup = world;
W_Crylink_LinkExplode(self.queuenext, self);
+ self.classname = "spike_oktoremove";
remove (self);
return;
}
{
float finalhit;
float f;
- //PROJECTILE_TOUCH;
- local entity savenext, saveprev, saveown;
- savenext = self.queuenext;
- saveprev = self.queueprev;
- saveown = self.realowner;
- if(WarpZone_Projectile_Touch())
- {
- if(wasfreed(self))
- W_Crylink_Dequeue_Raw(saveown, saveprev, self, savenext);
- return;
- }
+ PROJECTILE_TOUCH;
float a;
a = bound(0, 1 - (time - self.fade_time) * self.fade_rate, 1);
if(self == self.realowner.crylink_lastgroup)
self.realowner.crylink_lastgroup = world;
W_Crylink_LinkExplode(self.queuenext, self);
+ self.classname = "spike_oktoremove";
remove (self);
return;
}
while (counter < shots)
{
proj = spawn ();
+ proj.reset = W_Crylink_Reset;
proj.realowner = proj.owner = self;
proj.classname = "spike";
proj.bot_dodge = TRUE;
counter = counter + 1;
}
- self.crylink_lastgroup = proj;
- W_Crylink_CheckLinks(proj);
+ if(autocvar_g_balance_crylink_primary_joinspread != 0 || autocvar_g_balance_crylink_primary_jointime != 0)
+ {
+ self.crylink_lastgroup = proj;
+ W_Crylink_CheckLinks(proj);
+ self.crylink_waitrelease = 1;
+ }
}
void W_Crylink_Attack2 (void)
while (counter < shots)
{
proj = spawn ();
+ proj.reset = W_Crylink_Reset;
proj.realowner = proj.owner = self;
proj.classname = "spike";
proj.bot_dodge = TRUE;
counter = counter + 1;
}
- self.crylink_lastgroup = proj;
+ if(autocvar_g_balance_crylink_secondary_joinspread != 0 || autocvar_g_balance_crylink_secondary_jointime != 0)
+ {
+ self.crylink_lastgroup = proj;
+ W_Crylink_CheckLinks(proj);
+ self.crylink_waitrelease = 2;
+ }
}
void spawnfunc_weapon_crylink (void)
{
if(autocvar_g_balance_crylink_reload_ammo && self.clip_load < min(autocvar_g_balance_crylink_primary_ammo, autocvar_g_balance_crylink_secondary_ammo)) // forced reload
weapon_action(self.weapon, WR_RELOAD);
- else if (self.BUTTON_ATCK)
+
+ if (self.BUTTON_ATCK)
{
- if (!self.crylink_waitrelease)
+ if (self.crylink_waitrelease != 1)
if (weapon_prepareattack(0, autocvar_g_balance_crylink_primary_refire))
{
W_Crylink_Attack();
weapon_thinkf(WFRAME_FIRE1, autocvar_g_balance_crylink_primary_animtime, w_ready);
- if(autocvar_g_balance_crylink_primary_joinspread != 0 || autocvar_g_balance_crylink_primary_jointime != 0)
- self.crylink_waitrelease = 1;
}
}
- else if(self.BUTTON_ATCK2 && autocvar_g_balance_crylink_secondary)
+
+ if(self.BUTTON_ATCK2 && autocvar_g_balance_crylink_secondary)
{
- if (!self.crylink_waitrelease)
+ if (self.crylink_waitrelease != 2)
if (weapon_prepareattack(1, autocvar_g_balance_crylink_secondary_refire))
{
W_Crylink_Attack2();
weapon_thinkf(WFRAME_FIRE2, autocvar_g_balance_crylink_secondary_animtime, w_ready);
- if(autocvar_g_balance_crylink_secondary_joinspread != 0 || autocvar_g_balance_crylink_secondary_jointime != 0)
- self.crylink_waitrelease = 2;
}
}
- else
+
+ if ((self.crylink_waitrelease == 1 && !self.BUTTON_ATCK) || (self.crylink_waitrelease == 2 && !self.BUTTON_ATCK2))
{
- if (self.crylink_waitrelease && (!self.crylink_lastgroup || time > self.crylink_lastgroup.teleport_time))
+ if (!self.crylink_lastgroup || time > self.crylink_lastgroup.teleport_time)
{
// fired and released now!
if(self.crylink_lastgroup)
if (weapon_prepareattack(0, autocvar_g_balance_fireball_primary_refire))
{
W_Fireball_Attack1_Frame0();
- self.fireball_primarytime = time + autocvar_g_balance_fireball_primary_refire2;
+ self.fireball_primarytime = time + autocvar_g_balance_fireball_primary_refire2 * W_WeaponRateFactor();
}
}
else if (self.BUTTON_ATCK2)
// time to release the rockets we've loaded
local entity missile;
- local float counter, shots;
+ local float counter, shots, spread_pershot;
local vector s;
vector forward, right, up;
setorigin (missile, w_shotorg);
setsize(missile, '0 0 0', '0 0 0');
missile.movetype = MOVETYPE_FLY;
-
+
+ // per-shot spread calculation: the more shots there are, the less spread is applied (based on the bias cvar)
+ spread_pershot = ((shots - 1) / (autocvar_g_balance_hagar_secondary_load_max - 1));
+ spread_pershot = (1 - (spread_pershot * autocvar_g_balance_hagar_secondary_load_spread_bias));
+ spread_pershot = (autocvar_g_balance_hagar_secondary_spread * spread_pershot * g_weaponspreadfactor);
+
+ // pattern spread calculation
s = '0 0 0';
if (counter == 0)
s = '0 0 0';
s_y = v_forward_x;
s_z = v_forward_y;
}
- s = s * cvar("g_balance_hagar_secondary_spread") * g_weaponspreadfactor;
- W_SetupProjectileVelocityEx(missile, w_shotdir + right * s_y + up * s_z, v_up, cvar("g_balance_hagar_secondary_speed"), 0, 0, 0, FALSE);
+ s = s * autocvar_g_balance_hagar_secondary_load_spread * g_weaponspreadfactor;
+
+ W_SetupProjectileVelocityEx(missile, w_shotdir + right * s_y + up * s_z, v_up, autocvar_g_balance_hagar_secondary_speed, 0, 0, spread_pershot, FALSE);
missile.angles = vectoangles (missile.velocity);
missile.flags = FL_PROJECTILE;
}
weapon_thinkf(WFRAME_FIRE2, autocvar_g_balance_hagar_secondary_refire, w_ready);
- self.hagar_loadstep = time + autocvar_g_balance_hagar_secondary_refire;
+ self.hagar_loadstep = time + autocvar_g_balance_hagar_secondary_refire * W_WeaponRateFactor();
self.hagar_load = 0;
}
if(self.hagar_load)
{
// if we pressed primary fire while loading, unload all rockets and abort
+ self.weaponentity.state = WS_READY;
W_DecreaseAmmo(ammo_rockets, autocvar_g_balance_hagar_secondary_ammo * self.hagar_load * -1, autocvar_g_balance_hagar_reload_ammo); // give back ammo
self.hagar_load = 0;
sound(self, CH_WEAPON_A, "weapons/hagar_beep.wav", VOL_BASE, ATTN_NORM);
// pause until we can load rockets again, once we re-press the alt fire button
- self.hagar_loadstep = time + autocvar_g_balance_hagar_secondary_load_speed;
+ self.hagar_loadstep = time + autocvar_g_balance_hagar_secondary_load_speed * W_WeaponRateFactor();
// require letting go of the alt fire button before we can load again
self.hagar_loadblock = TRUE;
if(!self.hagar_loadblock && self.hagar_loadstep < time)
{
W_DecreaseAmmo(ammo_rockets, autocvar_g_balance_hagar_secondary_ammo, autocvar_g_balance_hagar_reload_ammo);
+ self.weaponentity.state = WS_INUSE;
self.hagar_load += 1;
sound(self, CH_WEAPON_B, "weapons/hagar_load.wav", VOL_BASE, ATTN_NORM);
- self.hagar_loadstep = time + autocvar_g_balance_hagar_secondary_load_speed;
+ self.hagar_loadstep = time + autocvar_g_balance_hagar_secondary_load_speed * W_WeaponRateFactor();
}
}
else if(!self.hagar_loadbeep && self.hagar_load) // prevents the beep from playing each frame
if(self.hagar_load)
{
- self.weapon_forbidchange = TRUE;
if(!self.BUTTON_ATCK2 || ((loaded || !enough_ammo) && self.hagar_loadstep < time && !autocvar_g_balance_hagar_secondary_load_hold))
+ {
+ self.weaponentity.state = WS_READY;
W_Hagar_Attack2_Load_Release();
+ }
}
else
{
- self.weapon_forbidchange = FALSE;
self.hagar_loadbeep = FALSE;
}
// we aren't checking ammo during an attack, so we must do it here
if not(weapon_action(self.weapon, WR_CHECKAMMO1) + weapon_action(self.weapon, WR_CHECKAMMO2))
{
+ // note: this doesn't force the switch
W_SwitchToOtherWeapon(self);
return;
}
}
}
}
+ else if (req == WR_GONETHINK)
+ {
+ // we lost the weapon and want to prepare switching away
+ if(self.hagar_load)
+ {
+ self.weaponentity.state = WS_READY;
+ W_Hagar_Attack2_Load_Release();
+ }
+ }
else if (req == WR_PRECACHE)
{
precache_model ("models/weapons/g_hagar.md3");
if(self.hook)
{
// if hooked, no bombs, and increase the timer
- self.hook_refire = max(self.hook_refire, time + autocvar_g_balance_hook_primary_refire);
+ self.hook_refire = max(self.hook_refire, time + autocvar_g_balance_hook_primary_refire * W_WeaponRateFactor());
// hook also inhibits health regeneration, but only for 1 second
if not(self.items & IT_UNLIMITED_WEAPON_AMMO)
.float minstagib_nextthink;
-void minstagib_ammocheck (void)
+.float minstagib_needammo;
+void minstagib_stop_countdown(void)
{
- if (time < self.minstagib_nextthink || self.deadflag || gameover)
+ if (self.minstagib_needammo)
+ {
+ self.health = 100;
+ Send_CSQC_Centerprint_Generic_Expire(self, CPID_MINSTA_FINDAMMO);
+ }
+ self.minstagib_needammo = FALSE;
+}
+void minstagib_ammocheck(void)
+{
+ if (time < self.minstagib_nextthink)
return;
- if (self.ammo_cells <= 0)
- if not(self.items & IT_UNLIMITED_WEAPON_AMMO)
+ if (self.deadflag || gameover || self.ammo_cells > 0 || (self.items & IT_UNLIMITED_WEAPON_AMMO))
+ minstagib_stop_countdown();
+ else
{
+ self.minstagib_needammo = TRUE;
if (self.health == 5)
{
- centerprint(self, "you're dead now...\n");
Damage(self, self, self, 5, DEATH_NOAMMO, self.origin, '0 0 0');
AnnounceTo(self, "terminated");
}
else if (self.health == 10)
{
- centerprint(self, "^11^7 second left to find some ammo\n");
Damage(self, self, self, 5, DEATH_NOAMMO, self.origin, '0 0 0');
AnnounceTo(self, "1");
}
else if (self.health == 20)
{
- centerprint(self, "^12^7 seconds left to find some ammo\n");
Damage(self, self, self, 10, DEATH_NOAMMO, self.origin, '0 0 0');
AnnounceTo(self, "2");
}
else if (self.health == 30)
{
- centerprint(self, "^13^7 seconds left to find some ammo\n");
Damage(self, self, self, 10, DEATH_NOAMMO, self.origin, '0 0 0');
AnnounceTo(self, "3");
}
else if (self.health == 40)
{
- centerprint(self, "^14^7 seconds left to find some ammo\n");
Damage(self, self, self, 10, DEATH_NOAMMO, self.origin, '0 0 0');
AnnounceTo(self, "4");
}
else if (self.health == 50)
{
- centerprint(self, "^15^7 seconds left to find some ammo\n");
Damage(self, self, self, 10, DEATH_NOAMMO, self.origin, '0 0 0');
AnnounceTo(self, "5");
}
else if (self.health == 60)
{
- centerprint(self, "^36^7 seconds left to find some ammo\n");
Damage(self, self, self, 10, DEATH_NOAMMO, self.origin, '0 0 0');
AnnounceTo(self, "6");
}
else if (self.health == 70)
{
- centerprint(self, "^37^7 seconds left to find some ammo\n");
Damage(self, self, self, 10, DEATH_NOAMMO, self.origin, '0 0 0');
AnnounceTo(self, "7");
}
else if (self.health == 80)
{
- centerprint(self, "^38^7 seconds left to find some ammo\n");
Damage(self, self, self, 10, DEATH_NOAMMO, self.origin, '0 0 0');
AnnounceTo(self, "8");
}
else if (self.health == 90)
{
- centerprint(self, "^39^7 seconds left to find some ammo\n");
+ Send_CSQC_Centerprint_Generic(self, CPID_MINSTA_FINDAMMO, "^1%d^7 seconds left to find some ammo", 1, 9);
Damage(self, self, self, 10, DEATH_NOAMMO, self.origin, '0 0 0');
AnnounceTo(self, "9");
}
else if (self.health == 100)
{
- centerprint(self, "get some ammo or\nyou'll be dead in ^310^7 seconds...");
+ Send_CSQC_Centerprint_Generic(self, CPID_MINSTA_FINDAMMO, "get some ammo or\nyou'll be dead in ^3%d^7 seconds...", 1, 10);
Damage(self, self, self, 10, DEATH_NOAMMO, self.origin, '0 0 0');
if not(self.flags & FL_GODMODE)
AnnounceTo(self, "10");
void W_Porto_Remove (entity p)
{
- if(p.porto_current)
+ if(p.porto_current.realowner == p && p.porto_current.classname == "porto")
{
entity oldself;
oldself = self;
self.bot_secondary_riflemooth = 0;
if(self.bot_secondary_riflemooth == 0)
{
- if(bot_aim(autocvar_g_balance_rifle_primary_speed, 0, autocvar_g_balance_rifle_primary_lifetime, TRUE))
+ if(bot_aim(autocvar_g_balance_rifle_primary_speed, 0, autocvar_g_balance_rifle_primary_lifetime, FALSE))
{
self.BUTTON_ATCK = TRUE;
if(random() < 0.01) self.bot_secondary_riflemooth = 1;
}
else
{
- if(bot_aim(autocvar_g_balance_rifle_secondary_speed, 0, autocvar_g_balance_rifle_secondary_lifetime, TRUE))
+ if(bot_aim(autocvar_g_balance_rifle_secondary_speed, 0, autocvar_g_balance_rifle_secondary_lifetime, FALSE))
{
self.BUTTON_ATCK2 = TRUE;
if(random() < 0.03) self.bot_secondary_riflemooth = 0;
self.rifle_accumulator += autocvar_g_balance_rifle_primary_burstcost;
}
if (self.BUTTON_ATCK2)
- {
+ {
if (autocvar_g_balance_rifle_secondary)
{
if(autocvar_g_balance_rifle_secondary_reload)
return;
}
- self.nextthink = time + autocvar_g_balance_seeker_missile_delay;
+ self.nextthink = time + autocvar_g_balance_seeker_missile_delay * W_WeaponRateFactor();
oldself = self;
self = self.realowner;
vector org2;
entity e;
+ PROJECTILE_TOUCH;
+
dir = normalize (self.realowner.origin - self.origin);
org2 = findbetterlocation (self.origin, 8);
meleetemp = spawn();
meleetemp.owner = meleetemp.realowner = self;
meleetemp.think = shotgun_meleethink;
- meleetemp.nextthink = time + autocvar_g_balance_shotgun_secondary_melee_delay;
+ meleetemp.nextthink = time + autocvar_g_balance_shotgun_secondary_melee_delay * W_WeaponRateFactor();
W_SetupShot_Range(self, TRUE, 0, "", 0, autocvar_g_balance_shotgun_secondary_damage, autocvar_g_balance_shotgun_secondary_melee_range);
}
if(vlen(self.origin-self.enemy.origin) <= autocvar_g_balance_shotgun_secondary_melee_range)
self.BUTTON_ATCK2 = bot_aim(1000000, 0, 0.001, FALSE);
else
- self.BUTTON_ATCK = bot_aim(1000000, 0, 0.001, FALSE);
+ {
+ if(autocvar_g_antilag_bullets)
+ self.BUTTON_ATCK = bot_aim(1000000, 0, 0.001, FALSE);
+ else
+ self.BUTTON_ATCK = bot_aim(autocvar_g_balance_shotgun_primary_speed, 0, 0.001, FALSE);
+ }
+
else if (req == WR_THINK)
{
if(autocvar_g_balance_shotgun_reload_ammo && self.clip_load < autocvar_g_balance_shotgun_primary_ammo) // forced reload
if(weapon_prepareattack(0, autocvar_g_balance_shotgun_primary_animtime))
{
W_Shotgun_Attack();
- self.shotgun_primarytime = time + autocvar_g_balance_shotgun_primary_refire;
+ self.shotgun_primarytime = time + autocvar_g_balance_shotgun_primary_refire * W_WeaponRateFactor();
weapon_thinkf(WFRAME_FIRE1, autocvar_g_balance_shotgun_primary_animtime, w_ready);
}
}
Net_LinkEntity(self.tuba_note, FALSE, 0, W_Tuba_NoteSendEntity);
}
- self.tuba_note.teleport_time = time + autocvar_g_balance_tuba_refire * 2; // so it can get prolonged safely
+ self.tuba_note.teleport_time = time + autocvar_g_balance_tuba_refire * 2 * W_WeaponRateFactor(); // so it can get prolonged safely
//sound(self, c, TUBA_NOTE(n), bound(0, VOL_BASE * cvar("g_balance_tuba_volume"), 1), autocvar_g_balance_tuba_attenuation);
RadiusDamage(self, self, autocvar_g_balance_tuba_damage, autocvar_g_balance_tuba_edgedamage, autocvar_g_balance_tuba_radius, world, autocvar_g_balance_tuba_force, hittype | WEP_TUBA, world);
weapon_setup(WEP_TUBA);
self.current_ammo = ammo_none;
}
+ else if (req == WR_RELOAD)
+ {
+ // TODO switch to alternate instruments :)
+ }
else if (req == WR_CHECKAMMO1)
return TRUE; // TODO use fuel?
else if (req == WR_CHECKAMMO2)
#ifdef SVQC
// leilei's fancy muzzleflash stuff
-void UZI_Flash_Go()
-{
+void UZI_Flash_Go()
+{
self.frame = self.frame + 2;
self.scale = self.scale * 0.5;
self.alpha = self.alpha - 0.25;
self.realowner.muzzle_flash = world;
return;
}
-
+
}
void UziFlash()
-{
+{
if (self.muzzle_flash == world)
- self.muzzle_flash = spawn();
-
+ self.muzzle_flash = spawn();
+
// muzzle flash for 1st person view
setmodel(self.muzzle_flash, "models/uziflash.md3"); // precision set below
-
+
self.muzzle_flash.scale = 0.75;
self.muzzle_flash.think = UZI_Flash_Go;
self.muzzle_flash.nextthink = time + 0.02;
{
float uzi_spread;
- W_DecreaseAmmo(ammo_nails, autocvar_g_balance_uzi_sustained_ammo, autocvar_g_balance_uzi_reload_ammo);
-
- if (self.BUTTON_ATCK)
- weapon_thinkf(WFRAME_FIRE1, autocvar_g_balance_uzi_sustained_refire, uzi_mode1_fire_auto);
- else
+ if (!self.BUTTON_ATCK)
{
- ATTACK_FINISHED(self) = time + autocvar_g_balance_uzi_first_refire * W_WeaponRateFactor();
- weapon_thinkf(WFRAME_FIRE1, autocvar_g_balance_uzi_sustained_refire, w_ready);
+ w_ready();
return;
}
w_ready();
return;
}
-
+
+ W_DecreaseAmmo(ammo_nails, autocvar_g_balance_uzi_sustained_ammo, autocvar_g_balance_uzi_reload_ammo);
+
W_SetupShot (self, autocvar_g_antilag_bullets && autocvar_g_balance_uzi_speed >= autocvar_g_antilag_bullets, 0, "weapons/uzi_fire.wav", CH_WEAPON_A, autocvar_g_balance_uzi_sustained_damage);
if (!g_norecoil)
{
self.punchangle_x = random () - 0.5;
self.punchangle_y = random () - 0.5;
}
-
+
uzi_spread = bound(autocvar_g_balance_uzi_spread_min, autocvar_g_balance_uzi_spread_min + (autocvar_g_balance_uzi_spread_add * self.misc_bulletcounter), autocvar_g_balance_uzi_spread_max);
fireBallisticBullet(w_shotorg, w_shotdir, uzi_spread, autocvar_g_balance_uzi_speed, 5, autocvar_g_balance_uzi_sustained_damage, 0, autocvar_g_balance_uzi_sustained_force, WEP_UZI, 0, 1, autocvar_g_balance_uzi_bulletconstant);
endFireBallisticBullet();
-
+
self.misc_bulletcounter = self.misc_bulletcounter + 1;
-
+
pointparticles(particleeffectnum("uzi_muzzleflash"), w_shotorg, w_shotdir * 1000, 1);
UziFlash();
W_AttachToShotorg(self.muzzle_flash, '5 0 0');
-
+
if (autocvar_g_casings >= 2) // casing code
SpawnCasing (((random () * 50 + 50) * v_right) - (v_forward * (random () * 25 + 25)) - ((random () * 5 - 70) * v_up), 2, vectoangles(v_forward),'0 250 0', 100, 3, self);
+
+ ATTACK_FINISHED(self) = time + autocvar_g_balance_uzi_first_refire * W_WeaponRateFactor();
+ weapon_thinkf(WFRAME_FIRE1, autocvar_g_balance_uzi_sustained_refire, uzi_mode1_fire_auto);
}
void uzi_mode1_fire_burst()
self.punchangle_x = random () - 0.5;
self.punchangle_y = random () - 0.5;
}
-
+
fireBallisticBullet(w_shotorg, w_shotdir, autocvar_g_balance_uzi_burst_spread, autocvar_g_balance_uzi_speed, 5, autocvar_g_balance_uzi_sustained_damage, 0, autocvar_g_balance_uzi_sustained_force, WEP_UZI, 0, 1, autocvar_g_balance_uzi_bulletconstant);
endFireBallisticBullet();
-
-
+
+
pointparticles(particleeffectnum("uzi_muzzleflash"), w_shotorg, w_shotdir * 1000, 1);
UziFlash();
W_AttachToShotorg(self.muzzle_flash, '5 0 0');
-
+
if (autocvar_g_casings >= 2) // casing code
SpawnCasing (((random () * 50 + 50) * v_right) - (v_forward * (random () * 25 + 25)) - ((random () * 5 - 70) * v_up), 2, vectoangles(v_forward),'0 250 0', 100, 3, self);
{
weapon_thinkf(WFRAME_FIRE2, autocvar_g_balance_uzi_burst_refire, uzi_mode1_fire_burst);
}
-
+
}
void spawnfunc_weapon_machinegun(); // defined in t_items.qc
{
if (self.BUTTON_ATCK)
if (weapon_prepareattack(0, 0))
- {
+ {
self.misc_bulletcounter = 0;
uzi_mode1_fire_auto();
}
-
+
if(self.BUTTON_ATCK2)
if(weapon_prepareattack(1, 0))
{
if (!weapon_action(self.weapon, WR_CHECKAMMO2))
+ if not(self.items & IT_UNLIMITED_WEAPON_AMMO)
{
W_SwitchWeapon_Force(self, w_getbestweapon(self));
w_ready();
}
else
{
-
+
if (self.BUTTON_ATCK)
if (weapon_prepareattack(0, 0))
{
{
// personal waypoints
if(self.enemy)
- if(self.enemy != other)
+ if(self.enemy != e)
return FALSE;
// team waypoints
if(self.team && self.rule == SPRITERULE_DEFAULT)
{
- if(self.team != other.team)
+ if(self.team != e.team)
return FALSE;
- if(other.classname != "player")
+ if(e.classname != "player")
return FALSE;
}
return TRUE;
}
+entity WaypointSprite_getviewentity(entity e)
+{
+ if(e.classname == "spectator")
+ e = e.enemy;
+ /* TODO idea (check this breaks nothing)
+ else if(e.classname == "observer")
+ e = world;
+ */
+ return e;
+}
+
+float WaypointSprite_isteammate(entity e, entity e2)
+{
+ if(teamplay)
+ {
+ if(e2.team != e.team)
+ return FALSE;
+ }
+ else
+ {
+ if(e2 != e)
+ return FALSE;
+ }
+ return TRUE;
+}
+
float WaypointSprite_Customize()
{
// this is not in SendEntity because it shall run every frame, not just every update
// make spectators see what the player would see
entity e;
- e = other;
- if(e.classname == "spectator")
- e = e.enemy;
+ e = WaypointSprite_getviewentity(other);
// as a GENERAL rule:
// if you have the invisibility powerup, sprites ALWAYS are restricted to your team
// but only apply this to real players, not to spectators
if(g_minstagib && (self.owner.items & IT_STRENGTH) && (e == other))
{
- if(teamplay)
- {
- if(self.owner.team != e.team)
- return FALSE;
- }
- else
- {
- if(self.owner != e)
- return FALSE;
- }
+ if(!WaypointSprite_isteammate(self.owner, e))
+ return FALSE;
}
return self.waypointsprite_visible_for_player(e);
WriteByte(MSG_ENTITY, self.colormod_y * 255.0);
WriteByte(MSG_ENTITY, self.colormod_z * 255.0);
- dt = (self.waypointsprite_helpmetime - time) / 0.1;
- if(dt < 0)
- dt = 0;
- if(dt > 255)
- dt = 255;
- WriteByte(MSG_ENTITY, dt);
+ if(WaypointSprite_isteammate(self.owner, WaypointSprite_getviewentity(to)))
+ {
+ dt = (self.waypointsprite_helpmetime - time) / 0.1;
+ if(dt < 0)
+ dt = 0;
+ if(dt > 255)
+ dt = 255;
+ WriteByte(MSG_ENTITY, dt);
+ }
+ else
+ WriteByte(MSG_ENTITY, 0);
}
return TRUE;
// we hit a warpzone... so, let's perform the trace after the warp again
org = WarpZone_TransformOrigin(wz, trace_endpos);
end = WarpZone_TransformOrigin(wz, end);
+
+ // we got warped, so let's step back a bit
+ tracebox(org, mi, ma, org + normalize(org - end) * 32, nomonsters_adjusted, forent);
+ org = trace_endpos;
}
WarpZone_MakeAllOther();
:fail
tracetoss(e, forent);
if(cb)
cb(e.origin, trace_endpos, trace_endpos);
- e.origin = trace_endpos;
- dt = vlen(e.origin - o0) / vlen(e.velocity);
+ dt = vlen(trace_endpos - e.origin) / vlen(e.velocity);
WarpZone_tracetoss_time += dt;
+ e.origin = trace_endpos;
e.velocity_z -= dt * g;
if(trace_fraction >= 1)
break;
// we hit a warpzone... so, let's perform the trace after the warp again
e.origin = WarpZone_TransformOrigin(wz, e.origin);
e.velocity = WarpZone_TransformVelocity(wz, e.velocity);
+
+ // we got warped, so let's step back a bit
+ e.velocity = -e.velocity;
+ tracetoss(e, forent);
+ dt = vlen(trace_endpos - e.origin) / vlen(e.velocity);
+ WarpZone_tracetoss_time -= dt;
+ e.origin = trace_endpos;
+ e.velocity = -e.velocity;
}
WarpZone_MakeAllOther();
:fail
return;
float f;
- if(clienttype(self) == CLIENTTYPE_NOTACLIENT)
- f = min(-1, -64 / vlen(self.velocity));
+ // number of frames we need to go back:
+ // dist = 16*sqrt(2) qu
+ // dist ~ 24 qu
+ // 24 qu = v*t
+ // 24 qu = v*frametime*n
+ // n = 24 qu/(v*frametime)
+ // for clients go only one frame though, may be too irritating otherwise
+ // but max 0.25 sec = 0.25/frametime frames
+ // 24/(0.25/frametime)
+ // 96*frametime
+ float d;
+ d = 24 + max(vlen(other.mins), vlen(other.maxs));
+ if(clienttype(other) == CLIENTTYPE_NOTACLIENT)
+ f = -d / bound(frametime * d * 1, frametime * vlen(other.velocity), d);
else
f = -1;
if(WarpZone_Teleport(self, other, f, 0))
WarpZone_PostInitialize_Callback();
}
- if(warpzone_warpzones_exist)
+ entity oldself, oldother;
+ oldself = self;
+ oldother = other;
+ for(e = world; (e = nextent(e)); )
{
- entity oldself, oldother;
- oldself = self;
- oldother = other;
- for(e = world; (e = nextent(e)); )
+ if(warpzone_warpzones_exist) { WarpZone_StoreProjectileData(e); }
+
+ float f = clienttype(e);
+ if(f == CLIENTTYPE_REAL)
{
- WarpZone_StoreProjectileData(e);
- float f;
- f = clienttype(e);
- if(f == CLIENTTYPE_REAL)
+ if(e.solid == SOLID_NOT) // not spectating?
+ if(e.movetype == MOVETYPE_NOCLIP || e.movetype == MOVETYPE_FLY || e.movetype == MOVETYPE_FLY_WORLDONLY) // not spectating? (this is to catch observers)
{
- if(e.solid != SOLID_NOT) // not spectating?
- continue;
- if(e.movetype != MOVETYPE_NOCLIP && e.movetype != MOVETYPE_FLY) // not spectating? (this is to catch observers)
- continue;
- self = WarpZone_Find(e.origin + e.mins, e.origin + e.maxs);
- if(!self)
- continue;
- other = e;
- if(WarpZoneLib_ExactTrigger_Touch())
- continue;
- if(WarpZone_PlaneDist(self, e.origin + e.view_ofs) <= 0)
- WarpZone_Teleport(self, e, -1, 0); // NOT triggering targets by this!
+ other = e; // player
+
+ // warpzones
+ if(warpzone_warpzones_exist) {
+ self = WarpZone_Find(e.origin + e.mins, e.origin + e.maxs);
+ if(self)
+ if(!WarpZoneLib_ExactTrigger_Touch())
+ if(WarpZone_PlaneDist(self, e.origin + e.view_ofs) <= 0)
+ WarpZone_Teleport(self, e, -1, 0); } // NOT triggering targets by this!
+
+ // teleporters
+ self = Teleport_Find(e.origin + e.mins, e.origin + e.maxs);
+ if(self)
+ if(!WarpZoneLib_ExactTrigger_Touch())
+ Simple_TeleportPlayer(self, other); // NOT triggering targets by this!
}
- if(f == CLIENTTYPE_NOTACLIENT)
- {
+ }
+
+ if(f == CLIENTTYPE_NOTACLIENT)
+ {
+ if(warpzone_warpzones_exist)
for(; (e = nextent(e)); )
WarpZone_StoreProjectileData(e);
- break;
- }
+ break;
}
- self = oldself;
- other = oldother;
}
+ self = oldself;
+ other = oldother;
}
.float warpzone_reconnecting;
--- /dev/null
+models/casing_bronze
+{
+ dpglossintensitymod 2
+ dpglossexponentmod 4
+ dpreflectcube env/exomorph/exomorph
+ {
+ map models/casing_bronze.tga
+ }
+ {
+ map $lightmap
+ rgbGen identity
+ tcGen lightmap
+ blendfunc filter
+ }
+}
+++ /dev/null
-flags/flag_red_cloth {
- cull none
- deformVertexes wave 100 sin 0 0.4 0 2.5
- {
- map textures/flags/flag_red_cloth.tga
- }
-}
-
-flags/flag_red_laser {
- {
- map textures/flags/flag_red_laser.tga
- tcMod scroll 0.2 -1
- blendfunc add
- }
-}
-
-
-flags/flag_blue_cloth {
- cull none
- deformVertexes wave 100 sin 0 0.4 0 2.5
- {
- map textures/flags/flag_blue_cloth.tga
- }
-}
-
-flags/flag_blue_laser {
- {
- map textures/flags/flag_blue_laser.tga
- tcMod scroll 0.2 -1
- blendfunc add
- }
-}
-
deformVertexes autosprite
{
map textures/projectiles/crylink_projectile_core.tga
- blendfunc add
+ blendfunc GL_SRC_ALPHA GL_ONE
rgbGen lightingDiffuse
}
}
deformVertexes autosprite2
{
map textures/projectiles/crylink_projectile_long.tga
- blendfunc add
+ blendfunc GL_SRC_ALPHA GL_ONE
rgbGen lightingDiffuse
}
}
blendfunc add
rgbGen lightingDiffuse
}
-}
\ No newline at end of file
+}
{
{
map models/relics/relic_ring.tga
- blendfunc add
+ blendfunc GL_SRC_ALPHA GL_ONE
rgbgen lightingDiffuse
}
}
cull disable
{
clampmap textures/thrustc1.tga
- blendfunc add
+ blendfunc GL_SRC_ALPHA GL_ONE
tcMod rotate 720
}
}
qer_editorimage models/turrets/phaser_beam
{
map models/turrets/phaser_beam
- blendFunc add
+ blendFunc GL_SRC_ALPHA GL_ONE
}
}
deformVertexes autosprite2
{
map models/vehicles/tracertrail.tga
- blendfunc add
+ blendfunc GL_SRC_ALPHA GL_ONE
rgbGen lightingDiffuse
}
}
-
\ No newline at end of file
+
\menu_slist_showempty\Show empty servers
\menu_slist_showfull\Show full servers that have no slots available
\net_slist_pause\Pause updating the server list to prevent servers from "jumping around"
-\XonoticMultiplayerDialog/Info\Show more information about the currently highlighted server
+\XonoticMultiplayerDialog/Info...\Show more information about the currently highlighted server
\XonoticMultiplayerDialog/Bookmark\Bookmark the currently highlighted server so that it's faster to find in the future
-\XonoticMultiplayerDialog/Havoc\Change to Havoc mode which has some modifications to the gameplay
\XonoticMultiplayerDialog/Create\Host your own game
\XonoticMultiplayerDialog/Demos\Browse and view demos
\XonoticMultiplayerDialog/Player Setup\Customize your player settings
\g_minstagib\Players will be given the Minstanex, which is a railgun with infinite damage. If the player runs out of ammo, he will have 10 seconds to find some or if he fails to do so, face death. The secondary fire mode is a laser which does not inflict any damage and is good for doing trickjumps.
\g_nix\No items Xonotic - instead of pickup items, everyone plays with the same weapon. After some time, a countdown will start, after which everyone will switch to another weapon.
\g_nix_with_laser\Always carry the laser as an additional weapon in Nix
-\XonoticMultiplayerDialog/All\Select all maps
-\XonoticMultiplayerDialog/None\Unselect all maps
+\XonoticMultiplayerDialog/Select all\Select all maps
+\XonoticMultiplayerDialog/Select none\Unselect all maps
\XonoticMultiplayerDialog/Timedemo\Benchmark how fast your computer can run the highlighted demo
\crosshair_alpha\Adjust the opacity of the crosshair
\crosshair_color\Adjust the crosshair color
\sbar_hudselector\Use the old HUD layout
-\XonoticMultiplayerDialog/Radar, HUD & Waypoints...\Adjust the radar, HUD and waypoints
+\XonoticMultiplayerDialog/Waypoints setup...\-
\_cl_name\Name under which you will appear in the game
\XonoticSettingsDialog\Change the game settings
\r_damageblur\Amount of motion blur when hurt - 0.4 recommended
\XonoticSettingsDialog/Audio\Audio settings
+\mastervolume\-
\bgmvolume\-
-\volume\-
\snd_staticvolume\-
-\snd_worldchannel0volume\-
-\snd_entchannel3volume\-
-\snd_playerchannel6volume\-
-\snd_playerchannel7volume\-
-\snd_entchannel4volume\-
-\snd_playerchannel2volume\-
-\snd_playerchannel1volume\-
+\snd_channel0volume\-
+\snd_channel3volume\-
+\snd_channel6volume\-
+\snd_channel7volume\-
+\snd_channel4volume\-
+\snd_channel2volume\-
+\snd_channel1volume\-
\snd_speed\Sound output frequency
\snd_channels\Number of channels for the sound output
\snd_swapstereo\Swap left/right channels
\menu_slist_showempty\Aktiviere die Anzeige von leeren Servern
\menu_slist_showfull\Aktiviere die Anzeige von vollen Servern, die keinen freien Platz mehr haben
\net_slist_pause\Unterbreche die automatische Aktualisierung der Serverliste um ein "Herumspringen" zu verhindern
-\XonoticMultiplayerDialog/Info\Lass dir mehr Informationen über den markierten Server anzeigen
+\XonoticMultiplayerDialog/Info...\Lass dir mehr Informationen über den markierten Server anzeigen
\XonoticMultiplayerDialog/Speichern\Setze ein Lesezeichen für den markierten Server um ihn beim nächsten mal schneller wiederzufinden
-\XonoticMultiplayerDialog/Havoc\Wechsel in den Havoc Modus, welcher zu Änderungen des Spielverhaltens führt
\XonoticMultiplayerDialog/Starten\Hoste dein eigenes Spiel
\XonoticMultiplayerDialog/Demos\Gucke dir Demos an
\XonoticMultiplayerDialog/Spieler-Einstellungen\Ändere deine Spieler-Einstellungen
\g_minstagib\Alle Spieler starten mit der Minstanex, eine elektromagnetische Schienenkanone mit unendlich viel Schaden. Wenn ein Spieler keine Munition mehr hat, bleiben ihm 10 Sekunden um neue zu finden, ansonsten stirbt er. Der 2. Feuermodus ist Laser, welcher keinen Schaden hinzufügen kann. Dieser eignet sich gut für Tricksprünge.
\g_nix\Es gibt keine aufzusammelnden Gegenstände in Xonotic - Anstelle der Möglichkeit Waffen aufzusammeln, spielen alle mit der gleichen Waffe. Nach einiger Zeit startet ein Countdown, danach wechseln alle Spieler zu einer neuen gleichen Waffe.
\g_nix_with_laser\In Nix ist als zweite Waffe der Laser vorhanden.
-\XonoticMultiplayerDialog/All\Wähle alle Maps.
-\XonoticMultiplayerDialog/None\Wähle alle Maps ab.
+\XonoticMultiplayerDialog/Select all\Wähle alle Maps.
+\XonoticMultiplayerDialog/Select none\Wähle alle Maps ab.
\XonoticMultiplayerDialog/Timedemo\Mache einen Benchmark-Test der markierten Demo. Die Demo wird in Zeitraffer, -lupe abgespielt. Das Ergebnis wird in "gamedir/data/benchmark.log" gespeichert.
\crosshair_color_green\Grüner Farbanteil des Fadenkreuzes.
\crosshair_color_blue\Blauer Farbanteil des Fadenkreuzes.
\sbar_hudselector\Verwende das alte HUD Layout.
-\XonoticMultiplayerDialog/Radar, HUD & Waypoints...\Stelle Radar, HUD & Wegpunkte ein.
+\XonoticMultiplayerDialog/Waypoints setup...\-
\_cl_name\Lege deinen Namen im Spiel fest.
\XonoticSettingsDialog\Ändere die Spiel-Einstellungen
\r_damageblur\Wert für die Unschärfe bei einer Verletzung - 0.4 empfohlen
\XonoticSettingsDialog/Ton\Audio-Einstellungen
+\mastervolume\-
\bgmvolume\-
-\volume\-
\snd_staticvolume\-
-\snd_worldchannel0volume\-
-\snd_entchannel3volume\-
-\snd_playerchannel6volume\-
-\snd_playerchannel7volume\-
-\snd_entchannel4volume\-
-\snd_playerchannel2volume\-
-\snd_playerchannel1volume\-
+\snd_channel0volume\-
+\snd_channel3volume\-
+\snd_channel6volume\-
+\snd_channel7volume\-
+\snd_channel4volume\-
+\snd_channel2volume\-
+\snd_channel1volume\-
\snd_speed\Ausgangsfrequenz des Tons
\snd_channels\Anzahl der Kanäle für die Audiowiedergabe
\snd_swapstereo\Linken und rechten Kanal der Stereowiedergabe tauschen
\menu_slist_showempty\Mostrar servidores vacíos
\menu_slist_showfull\Mostrar los servidores que no tienen espacio disponible
\net_slist_pause\Pausa la actualización de la lista de servidores para evitar que salteen
-\XonoticMultiplayerDialog/Info\Mostrar mas información sobre el actual servidor resaltado
+\XonoticMultiplayerDialog/Info...\Mostrar mas información sobre el actual servidor resaltado
\XonoticMultiplayerDialog/Marcador\Marcar el actual servidor resaltado para que sea mas facil encontrarlo en un futuro
-\XonoticMultiplayerDialog/Havoc\Cambiar a Havoc modo, el cual tiene algunas modificaciones en el juego
\XonoticMultiplayerDialog/Crear\Crear tu propio juego
\XonoticMultiplayerDialog/Demos\Navegar y ver demos
\XonoticMultiplayerDialog/Player Setup\Configuración de jugador
\g_minstagib\Los jugadores tendran Minstanex, el cual es un railgun con daño infinito. Si el jugador queda sin munición, tendra 10 segundos para buscar mas o morira. El modo de disparo secundario es un laser que no inflige daño y es bueno para hacer bromas.
\g_nix\Xonotic sin items - en vez de recoger items, todos juegan con la misma arma. Despues de algún tiempo, comienza una cuenta regresiva, despues del cual todos juegan con otra arma.
\g_nix_with_laser\Siempre lleva el láser como arma adicional en Nix
-\XonoticMultiplayerDialog/All\Seleccionar todos los mapas
-\XonoticMultiplayerDialog/None\Deseleccionar todos los mapas
+\XonoticMultiplayerDialog/Select all\Seleccionar todos los mapas
+\XonoticMultiplayerDialog/Select none\Deseleccionar todos los mapas
\XonoticMultiplayerDialog/Demo temporizado\Prueba cuan rápido tu computadora puede correr la demo seleccionada
\cl_weaponpriority_useforcycling\Haz uso de la lista de abajo when cambia de arma con la rueda del raton
\cl_autoswitch\Cambia automáticamente al arma recogida si es mejor que la que esta llevando
\r_drawviewmodel\Muestra el modelo de arma
-\cl_gunalign\Posición del modelo de arma; requiere conección
+\cl_gunalign\Posición del modelo de arma; requiere conexión
\crosshair_per_weapon\Configura diferentes miras para cada arma, esto ayuda si estas jugando sin un modelo de arma
\crosshair_color_override\Tambien configura el color del punto de mira dependiendo del arma que uses actualmente
\crosshair_color_green\Componente verde del color del punto de mira
\crosshair_color_blue\Componente azul del color del punto de mira
\sbar_hudselector\Usar el viejo diseño de HUD
-\XonoticMultiplayerDialog/Radar, HUD & puntos de referencia...\Ajustar el radar, el HUD y los puntos de referencia
+\XonoticMultiplayerDialog/Waypoints setup...\-
\_cl_name\Nombre con el cual aparecerás en el juego
\XonoticSettingsDialog\Cambiar la configuración del juego
\r_coronas_occlusionquery\Coronas apagadas acorde a la visibilidad (activado por defecto)
\r_bloom\Activar efecto bloom, que ilumina los píxeles vecinos de píxeles muy brillantes.Tiene un gran impacto en el rendimiento. (desactivado por defecto)
\r_hdr\Versión de gran calidad de bloom, que tiene un gran impacto en el rendimiento. (desactivado por defecto)
-\r_motionblur\Nivel de desenfoque de movimiento - 0.5 recomendado
-\r_damageblur\Cantidad de desenfoque de movimiento en presencia de daños - 0.4 recomendado
+\r_motionblur\Nivel de difuminado de movimiento - 0.5 recomendado
+\r_damageblur\Cantidad de difuminado de movimiento en presencia de daños - 0.4 recomendado
\XonoticSettingsDialog/Sonido\configuración de audio
+\mastervolume\-
\bgmvolume\-
-\volume\-
\snd_staticvolume\-
-\snd_worldchannel0volume\-
-\snd_entchannel3volume\-
-\snd_playerchannel6volume\-
-\snd_playerchannel7volume\-
-\snd_entchannel4volume\-
-\snd_playerchannel2volume\-
-\snd_playerchannel1volume\-
+\snd_channel0volume\-
+\snd_channel3volume\-
+\snd_channel6volume\-
+\snd_channel7volume\-
+\snd_channel4volume\-
+\snd_channel2volume\-
+\snd_channel1volume\-
\snd_speed\Frecuencia de salida del sonido
\snd_channels\Número de canales para la salida del sonido
\snd_swapstereo\Invertir canales izquierda o derecha
\menu_slist_showempty\Montrer les serveurs vides
\menu_slist_showfull\Montrer les serveurs où toutes les places sont prises
\net_slist_pause\Ne met pas à jour la liste de serveurs pour éviter de "glisser" sur un autre serveur
-\XonoticMultiplayerDialog/Info\Montrer plus d'information sur le serveur séléctionné
+\XonoticMultiplayerDialog/Info...\Montrer plus d'information sur le serveur séléctionné
\XonoticMultiplayerDialog/Marque-page\Mettre le serveur en haut de la liste pour pouvoir le repérer plus facilement plus tard
-\XonoticMultiplayerDialog/Havoc\Changer au mode Havoc qui comporte des modifications sur le jeu
\XonoticMultiplayerDialog/Créer\Héberger votre propre partie
\XonoticMultiplayerDialog/Vidéos\Regarder des Vidéos pré-enregistrées
\XonoticMultiplayerDialog/Player Setup\Personaliser vos paramètres
\g_minstagib\Tous les joueurs reçoivent un MinstaNex, qui est un sniper hyperpuissant qui tue d'un coup. Si vous n'avez plus de munitions, vous mourez progressivement.
\g_nix\No Items Xonotic; tous les joueurs ont la même arme en même temps, et on change d'arme régulièrement
\g_nix_with_laser\Porter le laser avec l'arme du No Items Xonotic
-\XonoticMultiplayerDialog/All\Séléctionner toutes les cartes
-\XonoticMultiplayerDialog/None\Déséléctionner toutes les cartes
+\XonoticMultiplayerDialog/Select all\Séléctionner toutes les cartes
+\XonoticMultiplayerDialog/Select none\Déséléctionner toutes les cartes
\XonoticMultiplayerDialog/Test Performance\Faire un test de performance en utilisant la vidéo choisie
\crosshair_color_green\Couleur: intensité du vert dans le viseur
\crosshair_color_blue\Couleur: intensité du bleu dans le viseur
\sbar_hudselector\Utiliser l'ancienne interface HUD
-\XonoticMultiplayerDialog/Radar, HUD & Waypoints...\Ajuster les paramètres de l'interface, de la mini-carte et des Waypoints
+\XonoticMultiplayerDialog/Waypoints setup...\-
\_cl_name\Pseudonyme utilisé pour vous reconnaître dans le jeu
\XonoticSettingsDialog\Changer les paramètres du jeu
\r_damageblur\Intensité du flou en recevant des dégâts - 0.4 est recommandé
\XonoticSettingsDialog/Audio\Audio settings
+\mastervolume\-
\bgmvolume\-
-\volume\-
\snd_staticvolume\-
-\snd_worldchannel0volume\-
-\snd_entchannel3volume\-
-\snd_playerchannel6volume\-
-\snd_playerchannel7volume\-
-\snd_entchannel4volume\-
-\snd_playerchannel2volume\-
-\snd_playerchannel1volume\-
+\snd_channel0volume\-
+\snd_channel3volume\-
+\snd_channel6volume\-
+\snd_channel7volume\-
+\snd_channel4volume\-
+\snd_channel2volume\-
+\snd_channel1volume\-
\snd_speed\Fréquence de la sortie audio
\snd_channels\Nombre de canaux pour la sortie audio
\snd_swapstereo\Échanger les canneaux stéréo gauche/droite
\XonoticMultiplayerDialog/Server\Cerca dei server dove giocare
\menu_slist_showempty\Mostra server vuoti
\menu_slist_showfull\Mostra server pieni che non hanno slot disponibili
-\net_slist_pause\Ferma l'aggiornamento della serverlist per prevenire il "jumping around" dei server
-\XonoticMultiplayerDialog/Info\Mostra maggiori informazioni riguardo l'ultimo server selezionato
+\net_slist_pause\Ferma l'aggiornamento della lista server per prevenire il continuo spostamento di posizione dei server
+\XonoticMultiplayerDialog/Info...\Mostra maggiori informazioni riguardo il server attualmente selezionato
\XonoticMultiplayerDialog/Aggiungi tra i preferiti\Aggiungi nel segnalibri il server attualmente selezionato in modo che sia più veloce da trovare in futuro
-\XonoticMultiplayerDialog/Havoc\Cambia in modalità "Havoc" in cui sono presenti alcune modifiche al gameplay
\XonoticMultiplayerDialog/Crea\Ospita la tua partita
\XonoticMultiplayerDialog/Demo\Naviga e vedi le demo
-\XonoticMultiplayerDialog/Setup giocatore\Modifica le impostazioni del tuo giocatore
+\XonoticMultiplayerDialog/Setup giocatore\Personalizza le tue impostazioni del giocatore
-\XonoticTeamSelectDialog/join 'best' team (auto-select)\Autoseleziona team (raccomandato)
+\XonoticTeamSelectDialog/entra nel 'miglior' team (auto-selezione)\Autoseleziona team (raccomandato)
\XonoticTeamSelectDialog/rosso\Entra nel team rosso
\XonoticTeamSelectDialog/blu\Entra nel team blu
\XonoticTeamSelectDialog/giallo\Entra nel team giallo
\XonoticTeamSelectDialog/rosa\Entra nel team rosa
-\timelimit_override\Tempo limite in minuti in cui, appena si colpisce, terminerà la partita
-\fraglimit_override\Il numero di frag necessari affinchè la partita finisca
+\timelimit_override\Tempo limite in minuti che appena raggiunto terminerà la partita
+\fraglimit_override\Il numero di frag necessari prima che la partita finisca
\menu_maxplayers\Il massimo numero di giocatori o bot che possono essere connessi al tuo server alla volta
\bot_number\Numero di bot nel tuo server
-\skill\Specifica quanto i bot dovranno essere esperti
+\skill\Specifica quanto i bot saranno esperti
\g_maplist_votable\Numero di mappe che sono mostrate nel voto delle mappe alla fine di una partita
\sv_vote_simple_majority_factor\La semplice maggioranza vince il voto
-\XonoticMultiplayerDialog/Impostazioni avanzate...\Impostazioni del server avanzate
-\XonoticMultiplayerDialog/Mutatori...\Arene dedicate per mutatori e armi
-\g_dodging\Abilita dodging
+\XonoticMultiplayerDialog/Impostazioni avanzate...\Impostazioni avanzate del server
+\XonoticMultiplayerDialog/Mutatori...\Mutatori e arene dedicate ad armi
+\g_dodging\Abilita schivamento
\g_cloaked\Tutti i giocatori sono quasi invisibili
\g_footsteps\Abilita suoni dei passi
-\g_midair\È possibili infliggere danni al tuo nemico solo quando è per aria
-\g_vampire\Il danno effettuato al tuo nemico aumenta la tua vita
+\g_midair\È possibile infliggere danni al tuo nemico solo quando è per aria
+\g_vampire\Il danno causato al tuo nemico aumenta la tua vita
\g_bloodloss\L'ammontare di vita sotto la quale il tuo giocatore viene stordito per la perdita di sangue
\sv_gravity\Rendi la caduta degli oggetti più lenta, valori inferiori significano minor gravità
-\g_grappling_hook\I giocatori effettuano il respawn con il grappling hook
-\g_jetpack\I giocatori effettuano il respawn col jetpack
+\g_grappling_hook\I giocatori nascono con il grappling hook
+\g_jetpack\I giocatori nascono col jetpack
\g_pinata\I giocatori rilasceranno tutte le armi che possedevano appena vengono uccisi
-\g_weapon_stay\Le armi rimangono appena dopo vengono raccolte
-\g_weaponarena\Selezionando un'arena dedicata per un'arma si darà a tutti i giocatori munizioni infinite, e disabiliterà tutti gli altri raccoglimenti delle armi.
+\g_weapon_stay\Le armi rimangono dopo che vengono raccolte
+\g_weaponarena\Selezionando un'arena dedicata ad un'arma si darà a tutti i giocatori quell'arma con munizioni infinite, e disabiliterà tutti gli altri raccoglimenti delle armi.
\menu_weaponarena_with_laser\Abilita anche il laser nelle arene dedicate ad un'arma
\g_minstagib\Ai giocatori sarà dato il Minstanex, che è un railgun con danni illimitati. Se il giocatore rimane senza munizioni, avrà 10 secondi per trovarne alcune, altrimenti morirà. Il fuoco secondario è un laser che non infligge nessun danno ed è buono per effettuare vari trickjump.
-\g_nix\"No items Xonotic" - invece di raccogliere oggetti, ognuno giocherà con la stessa arma. Dopo un pò di tempo, un conto alla rovescia inizierà, dopo la quale ognuno passerà ad un'altra arma.
+\g_nix\"No items Xonotic" - invece di raccogliere oggetti, ognuno giocherà con la stessa arma. Dopo un pò di tempo, un conto alla rovescia inizierà, dopo il quale ognuno passerà ad un'altra arma.
\g_nix_with_laser\Porta sempre il laser come arma aggiuntiva nella modalità "No items Xonotic"
-\XonoticMultiplayerDialog/All\Seleziona tutte le mappe
-\XonoticMultiplayerDialog/None\Deseleziona tutte le mappe
+\XonoticMultiplayerDialog/Seleziona tutto\Seleziona tutte le mappe
+\XonoticMultiplayerDialog/Deseleziona tutto\Deseleziona tutte le mappe
\XonoticMultiplayerDialog/Timedemo\Testa quanto velocemente il tuo computer fa girare il demo selezionato
\fov\Il campo di vista da 60 a 130 gradi, di default è a 90 gradi
-\cl_bobcycle\Mostra frequenza dell'ondeggiamento, disabilita per nessun ondeggiamento
+\cl_bobcycle\Frequenza dell'ondeggiamento della visuale, disabilita per nessun ondeggiamento
\cl_zoomfactor\Quanto grande è il fattore zoom quando il tasto per lo zoom viene premuto
\cl_zoomsensitivity\Come lo zoom fa variare la sensibilità del mouse, da 0 (sensibilità più bassa) a 1 (nessun cambio di sensibilità)
\cl_zoomspeed\Quando velocemente la vista viene zoomata, disabilitalo per lo zoom istantaneo
\cl_weaponpriority_useforcycling\Usa la lista qui sotto per definire le armi usando la rotellina del mouse
\cl_autoswitch\Automaticamente passa all'arma appena raccolta se è migliore di quella che stavi già usando
\r_drawviewmodel\Mostra il modello dell'arma
-\cl_gunalign\Posizione del modello dell'arma (richiede riconnessione)
+\cl_gunalign\Posizione del modello dell'arma; richiede riconnessione
\crosshair_per_weapon\Imposta un differente mirino per ogni arma, buono se giochi senza i modelli delle armi
\crosshair_color_per_weapon\Imposta il colore del mirino dipendente dall'arma che stai correntemente usando
\crosshair_alpha\Imposta l'opacità del mirino
\crosshair_color\Imposta il colore del mirino
\sbar_hudselector\Usa il tema del vecchio HUD
-\XonoticMultiplayerDialog/Radar, HUD & Waypoints...\Imposta il radar, l'HUD e i waypoint
-\_cl_name\Nome con la quale vorresti apparire in gioco
+\XonoticMultiplayerDialog/Waypoints setup...\-
+\_cl_name\Nome col quale apparirai nel gioco
\XonoticSettingsDialog\Cambia le impostazioni del gioco
-\XonoticCreditsDialog\I crediti del team di Xonotic
+\XonoticCreditsDialog\I crediti di Xonotic
\XonoticTeamSelectDialog\-
\XonoticMutatorsDialog\-
\XonoticMapInfoDialog\-
\XonoticServerInfoDialog\-
\XonoticCvarsDialog\-
-\XonoticQuitDialog\Chiudi il gioco
+\XonoticQuitDialog\Esci dal gioco
\XonoticQuitDialog/Sì\Devo tornare a lavorare...
-\XonoticQuitDialog/No\Ho ancora un pò di frag da compiere!
+\XonoticQuitDialog/No\Ho ancora un pò di frag da fare!
\XonoticSettingsDialog/Comandi\Impostazioni input
-\sensitivity\Velocità mouse
-\menu_mouse_speed\Velocità mouse nel menu, non fa effetto nel gioco
-\m_filter\Rendi più morbido il movimento del mouse, però rende la sua risposta più lenta
+\sensitivity\Moltiplicatore velocità del mouse
+\menu_mouse_speed\Velocità mouse nel menu, non riguarda il puntamento nel gioco
+\m_filter\Rendi più morbido il movimento del mouse, però rende la sua risposta leggermente più lenta
\m_pitch\Inverti il movimento del mouse nell'asse Y
-\vid_dgamouse\Rendi possibile l'uso di un mouse DGA
+\vid_dgamouse\Fai uso dell'input DGA del mouse
\con_closeontoggleconsole\Rendi il tasto di chiusura console uguale a quella di apertura
\XonoticSettingsDialog/Video\Impostazioni video
\vid_width\Risoluzione schermo
\vid_bitsperpixel\Bit per pixel (BPP) per il rendering, 32 è raccomandato
\vid_fullscreen\Abilita modalità a tutto schermo (predefinito: abilitato)
-\vid_vsync\Abilita la sincronizzazione verticale per prevenire il "tearing", limita il numero max di fotogrammi al secondo (predefinito: disabilitato)
-\r_glsl\Abilita i pixel shader OpenGL 2.0 per la luminosità (predefinito: abilitato)
-\gl_vbo\Rendi possibile l'uso dei Vertex Buffer Objects per salvare nella memoria grafica i modelli 3D per un rendering più veloce (predefinito: Vertici e Triangoli)
-\r_depthfirst\Elimita i problemi di "overdraw" eseguendo per primo il rendering della profondità della scena, poi più tardi il rendering "standard" (predefinito: disabilitato)
+\vid_vsync\Abilita la sincronizzazione verticale per prevenire la lacrimazione (tearing), imposta il limite massimo di fps alla velocità di aggiornamento dello schermo (predefinito: disabilitato)
+\r_glsl\Abilita i pixel shader OpenGL 2.0 per l'illuminazione (predefinito: abilitato)
+\gl_vbo\Fai uso dei Vertex Buffer Objects per salvare nella memoria grafica la geometria statica per un rendering più veloce (predefinito: Vertici e Triangoli)
+\r_depthfirst\Elimina eccesso di disegno (overdraw) eseguendo il rendering della sola profondità della scena prima di iniziare il rendering "standard" (predefinito: disabilitato)
\gl_texturecompression\Comprimi le texture per le schede video con poca memoria grafica disponibile (predefinito: Nessuna)
\gl_finish\Fa in modo che la CPU attenda che la GPU finisca di elaborare ogni frame, può aiutare con alcuni strani input o in presenza di video lag in alcune macchine (predefinito: disabilitato)
\v_brightness\Luminosità del nero (predefinito: 0)
\v_contrast\Luminosità del bianco (predefinito: 1)
-\v_gamma\Valore della correzione gamma inversa, un effetto di luminosità che non affligge il bianco o il nero (predefinito: 1.125)
+\v_gamma\Valore della correzione gamma inversa, un effetto di luminosità che non tocca il bianco o il nero (predefinito: 1.125)
\v_contrastboost\Di quanto viene moltiplicato il contrasto nelle aree oscure (predefinito: 1)
\r_glsl_saturation\Adattamento saturazione (0 = scala di grigi, 1 = normale, 2 = sovra-saturo), richiede il GLSL color control (predefinito: 1)
\v_glslgamma\Abilita l'uso delle GLSL per applicare la correzione gamma, nota che le performance potrebbero decrementare di tanto (predefinito: disabilitato)
\r_ambient\Luminosità dell'ambiente, se è impostato ad un valore troppo alto tende a rendere la luce delle mappe opaca e piatta (predefinito: 4)
-\r_hdr_scenebrightness\Rendering luminosità globale (predefinito: 1)
+\r_hdr_scenebrightness\Luminosità del rendering globale (predefinito: 1)
\vid_samples\Abilita l'antialiasing, che smussa i bordi dei modelli in 3D. Nota che le performance potrebbero decrementare di un bel pò (predefinito: disabilitato)
\v_flipped\Modalità mancino (Predefinito: off)
\r_subdivisions_tolerance\Cambia lo smussamento delle curve della mappa (predefinito: normali)
\gl_picmip\Cambia la nitidezza delle textures. Valori più bassi riducono l'uso della memoria per le texture, però faranno apparire quest'ultime molto sfuocate. (predefinito: buona)
\r_picmipworld\Se impostato, riduce solo la qualità delle texture dei modelli (predefinito: abilitato)
-\mod_q3bsp_nolightmaps\Usa le lightmaps ad alta risoluzione, che appaiono più gradite alla vista, però sfruttano più memoria video (predefinito: abilitato)
-\cl_particles_quality\Moltiplicatore del numero di particolari. Valori inferiori significano meno particolari, che di conseguenza incrementano le performance (predefinito: 0.5)
-\r_drawparticles_drawdistance\Distanza per cui i particolari non vengono mostrati (predefinito: 1000)
-\cl_decals\Abilita i segni (buchi dei proiettili e sangue) (predefinito: abilitati)
-\r_drawdecals_drawdistance\Distanza per cui i segni non vengono mostrati (predefinito: 300)
-\cl_decals_time\Tempo in secondi dopo la quale i segni svaniscono (predefinito: 2)
-\cl_gentle\Sostituisci il sangue e i gib con contenuti che non hanno alcun effetto offensivo (predefinito: disabilitato)
+\mod_q3bsp_nolightmaps\Usa le mappe di luce ad alta risoluzione, che appaiono più gradite alla vista, però sfruttano più memoria video (predefinito: abilitato)
+\cl_particles_quality\Moltiplicatore del numero di particelle. Valori inferiori significano meno particelle, che di conseguenza incrementano le performance (predefinito: 0.5)
+\r_drawparticles_drawdistance\Distanza per cui le particelle non vengono mostrate (predefinito: 1000)
+\cl_decals\Abilita i decal (buchi dei proiettili e sangue) (predefinito: abilitati)
+\r_drawdecals_drawdistance\I decal più lontano di questa distanza non vengono mostrati (predefinito: 300)
+\cl_decals_time\Tempo in secondi passato il quale i decal sfumano (predefinito: 2)
+\cl_gentle\Sostituisci il sangue e i gib con contenuti che non hanno alcun effetto di sangue (predefinito: disabilitato)
\cl_nogibs\Riduci il numero di gib o rimuovili completamente (predefinito: parecchi)
-\v_kicktime\Quanto dura una vista spostata per i danni (predefinito: 0)
+\v_kicktime\Quanto dura un colpo alla visuale per il danno (predefinito: 0)
\gl_texture_anisotropy\Qualità del filtro anisotropico (predefinito: 1x)
-\r_glsl_deluxemapping\Usa gli effetti di luminosità pixel per pixel (predefinito: abilitati)
+\r_glsl_deluxemapping\Usa gli effetti di illuminazione pixel per pixel (predefinito: abilitati)
\r_shadow_gloss\Abilita l'uso della lucentezza delle mappe sulle texture che la supportano (predefinito: abilitati)
\gl_flashblend\Abilita luci dinamiche più veloci ma meno gradevoli tramite il rendering di corone luminose invece di luci dinamiche reali (predefinito: disabilitato)
\r_shadow_realtime_dlight\Abilita il rendering delle luci dinamiche come esplosioni e lancio di razzi (predefinito: abilitato)
\r_shadow_realtime_world\Abilita il rendering delle luci dell'ambiente in tempo reale in mappe che le supportano. Nota che questo potrebbe avere un grande impatto sulle performance. (predefinito: disabilitato)
\r_shadow_realtime_world_shadows\Abilita il rendering di ombre dalle luci dell'ambiente in tempo reale (predefinito: disabilitato)
\r_shadow_usenormalmap\Abilita l'uso di ombre direzionali sulle texture (predefinito: abilitato)
-\r_showsurfaces\Disabilita completamnete le texture per hardware molto lento. Questo dà un enorme boost alle performance, però appare molto poco gradevole. (predefinito: disabilitato)
+\r_showsurfaces\Disabilita completamente le texture per hardware molto lento. Questo dà un enorme boost alle performance, però appare molto poco gradevole. (predefinito: disabilitato)
\r_glsl_offsetmapping\Effetto del mappaggio in offset che fa sembrare che le texture con bumpmaps "saltino fuori" dalle piane superfici in 2D (predefinito: disabilitato)
\r_glsl_offsetmapping_reliefmapping\Mappaggio dell'offset di maggior qualità, che ha anche un enorme impatto sulle performance (predefinito: disabilitato)
\r_water\Qualità dei riflessi e delle rifrazioni, ha un enorme impatto sulle performance nelle mappe superfici riflettenti (predefinito: disabilitato)
\r_damageblur\Ammontare della sfocatura da movimento quando si è colpiti - raccomandato a 0.4
\XonoticSettingsDialog/Audio\Impostazioni audio
+\mastervolume\-
\bgmvolume\-
-\volume\-
\snd_staticvolume\-
-\snd_worldchannel0volume\-
-\snd_entchannel3volume\-
-\snd_playerchannel6volume\-
-\snd_playerchannel7volume\-
-\snd_entchannel4volume\-
-\snd_playerchannel2volume\-
-\snd_playerchannel1volume\-
+\snd_channel0volume\-
+\snd_channel3volume\-
+\snd_channel6volume\-
+\snd_channel7volume\-
+\snd_channel4volume\-
+\snd_channel2volume\-
+\snd_channel1volume\-
\snd_speed\Frequenza di campionamento in uscita
\snd_channels\Numero di canali in uscita
\snd_swapstereo\Inverti canali sinistro/destro
\cl_nolerp\Abilita aggiornamento da rete spianato
\shownetgraph\Mostra un grafico delle dimensioni dei pacchetti e di altre informazioni
\_cl_rate\Specifica la velocità della tua rete con questa barra
-\cl_netfps\Quanti pacchetti in ingresso da inviare al server ogni secondo
-\cl_curl_maxdownloads\Massimo numero di download HTTP/FTP da effettuarsi contemporaneamente
+\cl_netfps\Quanti pacchetti in ingresso inviare al server ogni secondo
+\cl_curl_maxdownloads\Massimo numero di download HTTP/FTP contemporanei
\cl_curl_maxspeed\Velocità massima di download
-\cl_port\Forza il client a usare la porta selezionata se non è impostata a 0
+\cl_port\Forza il client a usare la porta selezionata a meno che non è impostata a 0
\XonoticSettingsDialog/Altro\Impostazioni varie
\showtime\Mostra l'orario corrente, utile negli screenshot
\XonoticSettingsDialog/Impostazioni avanzate...\Impostazioni avanzate dove puoi mettere mano ad ogni singola variabile del gioco
\g_friendlyfire\Percentuale di danno inflitto ai compagni di squadra
\g_mirrordamage\Percentuale di danno inflitto ai compagni di squadra che viene riversato su di te
-\g_tdm_teams_override\Sovrapponi il numero predefinito di squadre nei giochi di squadra
+\g_tdm_teams_override\Non tenere conto del numero predefinito di squadre nei giochi di squadra
\viewsize\Abilita/disabilita lo sfondo dell'HUD
-\cl_hidewaypoints\Mostra i waypoint dei vari specifici tipi di gioco
+\cl_hidewaypoints\Mostra vari waypoint specifici di certi tipi di gioco
\g_waypointsprite_scale\Scala moltiplicatore dei waypoint
\g_waypointsprite_alpha\Controlla la trasparenza dei waypoint
-\cl_shownames\Mostra il nome del giocatore che stai usando
+\cl_shownames\Mostra il nome del giocatore a cui stai mirando
-\crosshair_hittest\Nessuno: nessun effetto al mirino; TrueAim: sfoca il mirino quando non dovresti colpire il muro; Nemici: allarga anche il mirino quando dovresti colpire un nemico
+\crosshair_hittest\Nessuno: non fare il test di colpire per il mirino; TrueAim: sfoca il mirino quando non colpiresti il muro; Nemici: allarga anche il mirino quando colpiresti un nemico
\menu_slist_showempty\Показывать пустые сервера
\menu_slist_showfull\Показывать полные сервера, не имеющие свободных мест
\net_slist_pause\Приостановить обновление списка серверов для предотвращения их скакания
-\XonoticMultiplayerDialog/Info\Показать больше сведений о выбранном сервере
+\XonoticMultiplayerDialog/Info...\Показать больше сведений о выбранном сервере
\XonoticMultiplayerDialog/В закладки\Добавить выбранный сервер в закладки, так найти его будет быстрее
-\XonoticMultiplayerDialog/Havoc\Change to Havoc mode which has some modifications to the gameplay
\XonoticMultiplayerDialog/Создать\Запустить собственную игру
\XonoticMultiplayerDialog/Демо\Список демо для просмотра
\XonoticMultiplayerDialog/Player Setup\Изменить настройки игрока
\g_minstagib\Players will be given the Minstanex, which is a railgun with infinite damage. If the player runs out of ammo, he will have 10 seconds to find some or if he fails to do so, face death. The secondary fire mode is a laser which does not inflict any damage and is good for doing trickjumps.
\g_nix\No items Xonotic - instead of pickup items, everyone plays with the same weapon. After some time, a countdown will start, after which everyone will switch to another weapon.
\g_nix_with_laser\Always carry the laser as an additional weapon in Nix
-\XonoticMultiplayerDialog/All\Выбрать все карты
-\XonoticMultiplayerDialog/None\Снять выделение со всех карт
+\XonoticMultiplayerDialog/Select all\Выбрать все карты
+\XonoticMultiplayerDialog/Select none\Снять выделение со всех карт
\XonoticMultiplayerDialog/Проверка производительности\Замерить, насколько быстро компьютер способен играть выбранное демо
\crosshair_color_green\Зелёная составляющая цвета перекрестья
\crosshair_color_blue\Синяя составляющая цвета перекрестья
\sbar_hudselector\Use the old HUD layout
-\XonoticMultiplayerDialog/Radar, HUD & Waypoints...\Настроить радар, HUD и отметки
+\XonoticMultiplayerDialog/Waypoints setup...\-
\_cl_name\Имя, под которым вы появитесь в игре
\XonoticSettingsDialog\Изменить настройки игры
\r_damageblur\Amount of motion blur when hurt - 0.4 recommended
\XonoticSettingsDialog/Звук\Настройки звука
+\mastervolume\-
\bgmvolume\-
-\volume\-
\snd_staticvolume\-
-\snd_worldchannel0volume\-
-\snd_entchannel3volume\-
-\snd_playerchannel6volume\-
-\snd_playerchannel7volume\-
-\snd_entchannel4volume\-
-\snd_playerchannel2volume\-
-\snd_playerchannel1volume\-
+\snd_channel0volume\-
+\snd_channel3volume\-
+\snd_channel6volume\-
+\snd_channel7volume\-
+\snd_channel4volume\-
+\snd_channel2volume\-
+\snd_channel1volume\-
\snd_speed\Частота дискретизации для вывода звука
\snd_channels\Число каналов для вывода звука
\snd_swapstereo\Поменять местами правый и левый каналы
Tyler "-z-" Mulligan
Merlijn Hofstra
morphed
-mand1nga
+Samual "Ares" Lenks
+Saulo "mand1nga" Gil
Jakob "tZork" Markström Gröhn
**Coordinators
**Translators
+*Dutch
+Alexander "freefang" van Dam
+PinkRobot
+
*German
Rudolf "divVerent" Polzer
*French
Calinou
+Maxime "Taximus" Paradis
+
+*Hungarian
+xaN1C4n3
*Italian
Antonio "terencehill" Piu
Lord Canistra
Nikoli
+*Spanish
+Rodrigo Mouton Laudin
+
+*Swedish
+marcus256
+
**Other Active Contributors
+Akari
Ant "Antibody" Zucaro
Antonio "terencehill" Piu
+atheros
Ben "MooKow" Banker
blkrbt
Calinou
chooksta
+cortez
Cuinn "Cuinnton" Herrick
-Kristian "morfar" Johansson
+Florian Paul "lda17h" Schmidt
kojn
+Kristian "morfar" Johansson
+kuniuthefrogg
+magorian
Maik "SavageX" Merten
+Marvin "Mirio" Beck
+Mick Rippon
MrBougo
+parasti
+Paul Scott
+PlasmaSheep
Przemysław "atheros" Grzywacz
Ruszkai "C.Brutail" Ákos
-Samual Lenks
+{SC0RP} - Ian "ID" Dorrell
Severin "sev" Meyer
+SoulKeeper_p
Stephan "esteel" Stahl
+The player with the unnecessarily long name
Wolfgang "Blub\0" Bumiller
-SoulKeeper_p
**Past Contributors
Alexander "motorsep" Zubov
**Traduttori
+*Tedesco
+Rudolf "divVerent" Polzer
+
*Finlandese
Henry "Exitium" Sanmark
Lord Canistra
Nikoli
-*Tedesco
-Rudolf "divVerent" Polzer
-
**Contributori attivi
+Ant "Antibody" Zucaro
Antonio "terencehill" Piu
Ben "MooKow" Banker
+blkrbt
Calinou
chooksta
Cuinn "Cuinnton" Herrick
+Florian Paul "lda17h" Schmidt
Kristian "morfar" Johansson
kojn
Maik "SavageX" Merten
MrBougo
+Przemysław "atheros" Grzywacz
Ruszkai "C.Brutail" Ákos
Samual Lenks
Severin "sev" Meyer
Andreas "Black" Kirsch
Attila "WW3" Houtkooper
BigMac
-blkrbt
Braden "meoblast001" Walters
Brain Younds
Chris "amethyst7" Matz
Steve Vermeulen
Supajoe
Tei
-terencehill
Tomaz
Ulrich Galbraith
Vortex