]> git.xonotic.org Git - xonotic/xonotic-data.pk3dir.git/commitdiff
Merge branch 'master' into z411/new_centerprint
authorz411 <z411@omaera.org>
Sun, 20 Mar 2022 03:30:29 +0000 (00:30 -0300)
committerz411 <z411@omaera.org>
Sun, 20 Mar 2022 03:30:29 +0000 (00:30 -0300)
96 files changed:
.gitlab-ci.yml
.tx/merge-base
balance-xdf.cfg
binds-xonotic.cfg
common.ast.po
common.be.po
common.bg.po
common.ca.po
common.cs.po
common.da.po
common.de.po
common.de_CH.po
common.el.po
common.en_AU.po
common.eo.po
common.es.po
common.es_MX.po
common.fi.po
common.fr.po
common.ga.po
common.gd.po
common.gl.po
common.he.po
common.hu.po
common.it.po
common.ja_JP.po
common.jbo.po
common.kk@Cyrl.po
common.ko.po
common.kw.po
common.mk.po
common.ms.po
common.nl.po
common.no.po
common.pl.po
common.pt.po
common.pt_BR.po
common.ro.po
common.ru.po
common.sq.po
common.sr.po
common.sv.po
common.tr.po
common.uk.po
common.uz@Latn.po
common.zh_CN.po
common.zh_TW.po
languages.txt
physicsCPMA.cfg
physicsFruit.cfg
physicsHavoc.cfg
physicsLeeStricklin-ModdedFruit.cfg
physicsLeeStricklin.cfg
physicsLeeStricklinOld.cfg
physicsLzd.cfg
physicsNexuiz10.cfg
physicsNexuiz11.cfg
physicsNexuiz151.cfg
physicsNexuiz151b.cfg
physicsNexuiz16rc1.cfg
physicsNexuiz20.cfg
physicsNexuiz25.cfg
physicsNexuiz26.cfg
physicsNoQWBunny-nexbased.cfg
physicsOverkill.cfg
physicsQ.cfg
physicsQ2.cfg
physicsQ2a.cfg
physicsQ3.cfg
physicsQBF.cfg
physicsQBFplus.cfg
physicsSamual.cfg
physicsWarsow.cfg
physicsWarsowClassicBunny.cfg
physicsWarsowDev.cfg
physicsX.cfg
physicsX010.cfg
physicsX07.cfg
physicsXDF.cfg
physicsXDFLight.cfg
qcsrc/Doxyfile
qcsrc/client/announcer.qc
qcsrc/client/csqcmodel_hooks.qc
qcsrc/client/hud/hud_config.qc
qcsrc/client/hud/panel/quickmenu.qc
qcsrc/client/hud/panel/timer.qc
qcsrc/common/gamemodes/gamemode/duel/duel.qh
qcsrc/common/mapinfo.qh
qcsrc/common/mutators/mutator/spawn_near_teammate/sv_spawn_near_teammate.qc
qcsrc/common/physics/movetypes/movetypes.qc
qcsrc/menu/xonotic/credits.qc
qcsrc/menu/xonotic/cvarlist.qc
qcsrc/server/client.qc
qcsrc/server/damage.qh
ruleset-XDF.cfg
xonotic-client.cfg

index b5031c66ba00fd15d0976d0aed715b09e47cc48c..296e493a04697977f731c32b3ae34b33619aa36a 100644 (file)
@@ -32,7 +32,7 @@ test_sv_game:
     - wget -O data/maps/stormkeep.waypoints https://gitlab.com/xonotic/xonotic-maps.pk3dir/raw/master/maps/stormkeep.waypoints\r
     - wget -O data/maps/stormkeep.waypoints.cache https://gitlab.com/xonotic/xonotic-maps.pk3dir/raw/master/maps/stormkeep.waypoints.cache\r
     - make\r
-    - EXPECT=7b55642e475a26f6fb397093e6f8fe81\r
+    - EXPECT=5d093940aa7306533fdcf8f12579b316\r
     - HASH=$(${ENGINE} -noconfig -nohome +timestamps 1 +exec serverbench.cfg\r
       | tee /dev/stderr\r
       | sed -e 's,^\[[^]]*\] ,,'\r
@@ -63,28 +63,28 @@ test_sv_unit:
 # NOTE: The generated docs are incomplete - they don't contain code behind SVQC CSQC MENUQC GAMEQC ifdefs.\r
 # With them added to PREDEFINED, it would take over half an hour to generate the docs and even then\r
 # they might not be complete. Doxygen doesn't handle #elif and might not understand some QC definitions.\r
-doxygen:  # rename to 'pages' when gitlab.com allows pages to exceed 100MiB\r
-  before_script:\r
-    - ln -s $PWD data/xonotic-data.pk3dir # is this needed?\r
-    - apt-get update\r
-    - apt-get -y install doxygen graphviz\r
-  stage: deploy\r
-  script:\r
-    - cd qcsrc && doxygen\r
-    - mv html ../public\r
-    - mkdir -p ~/.ssh\r
-    - for i in {0..0}; do eval $(printf "echo \$id_rsa_%02d\n" $i) >> ~/.ssh/id_rsa_base64; done\r
-    - base64 --decode ~/.ssh/id_rsa_base64 > ~/.ssh/id_rsa\r
-    - chmod 600 ~/.ssh/id_rsa\r
-    - echo -e "Host *\n\tStrictHostKeyChecking no\n\tLogLevel ERROR\n" >> ~/.ssh/config\r
-    - git config --global user.name "Gitlab CI"\r
-    - git config --global user.email "<>"\r
-    - git clone --single-branch --depth 1 ${DEPLOY_HOST}:${DEPLOY_REPO} ~/deploy_\r
-    - mkdir ~/deploy && mv ~/deploy_/.git ~/deploy && rm -r ~/deploy_\r
-    - cp -r ../public/* ~/deploy\r
-    - cd ~/deploy && git add -A . && git commit -m "Deploy ${CI_BUILD_REF}" && git push origin gh-pages\r
-  artifacts:\r
-    paths:\r
-      - public\r
-  only:\r
-    - master\r
+#doxygen:  # rename to 'pages' when gitlab.com allows pages to exceed 100MiB\r
+#  before_script:\r
+#    - ln -s $PWD data/xonotic-data.pk3dir # is this needed?\r
+#    - apt-get update\r
+#    - apt-get -y install doxygen graphviz\r
+#  stage: deploy\r
+#  script:\r
+#    - cd qcsrc && doxygen\r
+#    - mv html ../public\r
+#    - mkdir -p ~/.ssh\r
+#    - for i in {0..0}; do eval $(printf "echo \$id_rsa_%02d\n" $i) >> ~/.ssh/id_rsa_base64; done\r
+#    - base64 --decode ~/.ssh/id_rsa_base64 > ~/.ssh/id_rsa\r
+#    - chmod 600 ~/.ssh/id_rsa\r
+#    - echo -e "Host *\n\tStrictHostKeyChecking no\n\tLogLevel ERROR\n" >> ~/.ssh/config\r
+#    - git config --global user.name "Gitlab CI"\r
+#    - git config --global user.email "<>"\r
+#    - git clone --single-branch --depth 1 ${DEPLOY_HOST}:${DEPLOY_REPO} ~/deploy_\r
+#    - mkdir ~/deploy && mv ~/deploy_/.git ~/deploy && rm -r ~/deploy_\r
+#    - cp -r ../public/* ~/deploy\r
+#    - cd ~/deploy && git add -A . && git commit -m "Deploy ${CI_BUILD_REF}" && git push origin gh-pages\r
+#  artifacts:\r
+#    paths:\r
+#      - public\r
+#  only:\r
+#    - master\r
index 1db38db53542fb8860a1e6b84b274d1e76971991..e525fd0a8697ccad733d11d489b555c2af9ab489 100644 (file)
@@ -1 +1 @@
-Mon Mar  7 07:23:10 CET 2022
+Thu Mar 17 07:23:07 CET 2022
index 94e98a6461ccc1f85ded776b3bd7685f9c6f71ad..67e8810b5435f4c1954b59902336391083667002 100644 (file)
@@ -221,9 +221,9 @@ set g_balance_powerup_invincible_takeforce 0.33
 set g_balance_powerup_invincible_time 30
 set g_balance_powerup_invisibility_alpha 0.15
 set g_balance_powerup_invisibility_time 30
-set g_balance_powerup_speed_attackrate 0.8
-set g_balance_powerup_speed_highspeed 1.5
-set g_balance_powerup_speed_time 30
+set g_balance_powerup_speed_attackrate 0.7692307692   // 1/1.3
+set g_balance_powerup_speed_highspeed 1.3
+set g_balance_powerup_speed_time 30 // q3 haste lasts 30 seconds unless count field set otherwise
 set g_balance_powerup_strength_damage 3
 set g_balance_powerup_strength_force 3
 set g_balance_powerup_strength_time 30
index 2fa44700c0ab445368a95fa310abf4bfec5e7819..fc469c2c96acfed3333c5ba35e61b08a26ae4321 100644 (file)
@@ -5,7 +5,6 @@ bind F6 team_auto
 
 bind F7 menu_showsandboxtools
 bind F8 "quickmenu"
-bind F9 "cl_cmd hud minigame"
 
 // movement
 bind w +forward
index 9652f3910b5267220e05670c27bc0ce7e241ec93..72555a547f52ed3a7d912bcbd3a703a7f07f7333 100644 (file)
@@ -15,8 +15,8 @@ msgstr ""
 "Project-Id-Version: Xonotic\n"
 "Report-Msgid-Bugs-To: \n"
 "POT-Creation-Date: 2022-03-06 07:22+0100\n"
-"PO-Revision-Date: 2022-03-06 06:22+0000\n"
-"Last-Translator: divVerent <divVerent@xonotic.org>\n"
+"PO-Revision-Date: 2013-09-12 16:53+0000\n"
+"Last-Translator: Ximielga <dorian@openmailbox.org>, 2014\n"
 "Language-Team: Asturian (http://www.transifex.com/team-xonotic/xonotic/"
 "language/ast/)\n"
 "Language: ast\n"
index dd0bec97e70dc666940582d0cc1f54f6d315853d..806125b6789aac0b68f99ee73955f3dacd75a3e3 100644 (file)
@@ -10,8 +10,8 @@ msgstr ""
 "Project-Id-Version: Xonotic\n"
 "Report-Msgid-Bugs-To: \n"
 "POT-Creation-Date: 2022-03-06 07:22+0100\n"
-"PO-Revision-Date: 2022-03-06 06:22+0000\n"
-"Last-Translator: divVerent <divVerent@xonotic.org>\n"
+"PO-Revision-Date: 2013-09-12 16:53+0000\n"
+"Last-Translator: , 2013-2014, 2015\n"
 "Language-Team: Belarusian (http://www.transifex.com/team-xonotic/xonotic/"
 "language/be/)\n"
 "Language: be\n"
index 33524a79924b4c2b89ed6b7030e40a21b4c3699b..4a8b9ba4a5e9f446c11aaa3714158b47a5f7f02a 100644 (file)
@@ -14,8 +14,8 @@ msgstr ""
 "Project-Id-Version: Xonotic\n"
 "Report-Msgid-Bugs-To: \n"
 "POT-Creation-Date: 2022-03-06 07:22+0100\n"
-"PO-Revision-Date: 2022-03-06 06:22+0000\n"
-"Last-Translator: divVerent <divVerent@xonotic.org>\n"
+"PO-Revision-Date: 2013-09-12 16:53+0000\n"
+"Last-Translator: ubone <van_ds_ff@mail.bg>, 2016\n"
 "Language-Team: Bulgarian (http://www.transifex.com/team-xonotic/xonotic/"
 "language/bg/)\n"
 "Language: bg\n"
index 918b8c51fa31495743a1e515c9161e95294fe048..39d566db4c171d44e75d04eaa55cc201fe0d6715 100644 (file)
@@ -11,8 +11,8 @@ msgstr ""
 "Project-Id-Version: Xonotic\n"
 "Report-Msgid-Bugs-To: \n"
 "POT-Creation-Date: 2022-03-06 07:22+0100\n"
-"PO-Revision-Date: 2022-03-06 06:22+0000\n"
-"Last-Translator: divVerent <divVerent@xonotic.org>\n"
+"PO-Revision-Date: 2013-09-12 16:53+0000\n"
+"Last-Translator: Roi Asher Gerszkoviez <gerszkoviez@gmail.com>, 2017\n"
 "Language-Team: Catalan (http://www.transifex.com/team-xonotic/xonotic/"
 "language/ca/)\n"
 "Language: ca\n"
index c23b2a85616c11fee251b44dfc0b123f56a1f1a2..ea15570dcc8e729b1a1fed8f0f864aeca73e93e5 100644 (file)
@@ -21,8 +21,8 @@ msgstr ""
 "Project-Id-Version: Xonotic\n"
 "Report-Msgid-Bugs-To: \n"
 "POT-Creation-Date: 2022-03-06 07:22+0100\n"
-"PO-Revision-Date: 2022-03-06 06:22+0000\n"
-"Last-Translator: divVerent <divVerent@xonotic.org>\n"
+"PO-Revision-Date: 2013-09-12 16:53+0000\n"
+"Last-Translator: Tomáš Volavka <czheron@gmail.com>, 2015,2018\n"
 "Language-Team: Czech (http://www.transifex.com/team-xonotic/xonotic/language/"
 "cs/)\n"
 "Language: cs\n"
index d2b6c283d0e146338347a479ead64b74ee7ef83a..09607782ef5e956f932e787877245a2cf86b4768 100644 (file)
@@ -10,8 +10,8 @@ msgstr ""
 "Project-Id-Version: Xonotic\n"
 "Report-Msgid-Bugs-To: \n"
 "POT-Creation-Date: 2022-03-06 07:22+0100\n"
-"PO-Revision-Date: 2022-03-06 06:22+0000\n"
-"Last-Translator: divVerent <divVerent@xonotic.org>\n"
+"PO-Revision-Date: 2013-09-12 16:53+0000\n"
+"Last-Translator: Archy Coder, 2022\n"
 "Language-Team: Danish (http://www.transifex.com/team-xonotic/xonotic/"
 "language/da/)\n"
 "Language: da\n"
index c27237b500839b94fdb2d482a313828aeaf69922..cb01cb207fa847e648f75392a985e5d9567fa739 100644 (file)
@@ -29,8 +29,8 @@ msgstr ""
 "Project-Id-Version: Xonotic\n"
 "Report-Msgid-Bugs-To: \n"
 "POT-Creation-Date: 2022-03-06 07:22+0100\n"
-"PO-Revision-Date: 2022-03-06 06:22+0000\n"
-"Last-Translator: divVerent <divVerent@xonotic.org>\n"
+"PO-Revision-Date: 2013-09-12 16:53+0000\n"
+"Last-Translator: Yepoleb <huberg18@gmail.com>, 2013\n"
 "Language-Team: German (http://www.transifex.com/team-xonotic/xonotic/"
 "language/de/)\n"
 "Language: de\n"
@@ -1088,24 +1088,24 @@ msgstr "sm"
 
 #: qcsrc/client/hud/panel/timer.qc:132
 msgid "Warmup"
-msgstr ""
+msgstr "Aufwärmphase"
 
 #: qcsrc/client/hud/panel/timer.qc:134
 msgid "Timeout"
-msgstr ""
+msgstr "Timeout"
 
 #: qcsrc/client/hud/panel/timer.qc:136
 msgid "Sudden Death"
-msgstr ""
+msgstr "Sudden Death"
 
 #: qcsrc/client/hud/panel/timer.qc:138
 msgid "Overtime"
-msgstr ""
+msgstr "Verlängerung"
 
 #: qcsrc/client/hud/panel/timer.qc:140
 #, c-format
 msgid "Overtime #%d"
-msgstr ""
+msgstr "Verlängerung #%d"
 
 #: qcsrc/client/hud/panel/vote.qc:30
 msgid "^1You must answer before entering hud configure mode"
@@ -6467,11 +6467,11 @@ msgstr "Vergangene Zeit anzeigen"
 
 #: qcsrc/menu/xonotic/dialog_hudpanel_timer.qc:23
 msgid "Secondary timer:"
-msgstr ""
+msgstr "Sekundärzeit:"
 
 #: qcsrc/menu/xonotic/dialog_hudpanel_timer.qc:27
 msgid "Swapped"
-msgstr ""
+msgstr "Umgedreht"
 
 #: qcsrc/menu/xonotic/dialog_hudpanel_timer.qh:6
 msgid "Timer Panel"
index 2c5025c4581e22f9a0d7c6170981050c3d04c97d..167303b599f117465706897c21ebebc4f68faacb 100644 (file)
@@ -29,8 +29,8 @@ msgstr ""
 "Project-Id-Version: Xonotic\n"
 "Report-Msgid-Bugs-To: \n"
 "POT-Creation-Date: 2022-03-06 07:22+0100\n"
-"PO-Revision-Date: 2022-03-06 06:22+0000\n"
-"Last-Translator: divVerent <divVerent@xonotic.org>\n"
+"PO-Revision-Date: 2013-09-12 16:53+0000\n"
+"Last-Translator: Yepoleb <huberg18@gmail.com>, 2013\n"
 "Language-Team: German (http://www.transifex.com/team-xonotic/xonotic/"
 "language/de/)\n"
 "Language: de\n"
@@ -1088,24 +1088,24 @@ msgstr "sm"
 
 #: qcsrc/client/hud/panel/timer.qc:132
 msgid "Warmup"
-msgstr ""
+msgstr "Aufwärmphase"
 
 #: qcsrc/client/hud/panel/timer.qc:134
 msgid "Timeout"
-msgstr ""
+msgstr "Timeout"
 
 #: qcsrc/client/hud/panel/timer.qc:136
 msgid "Sudden Death"
-msgstr ""
+msgstr "Sudden Death"
 
 #: qcsrc/client/hud/panel/timer.qc:138
 msgid "Overtime"
-msgstr ""
+msgstr "Verlängerung"
 
 #: qcsrc/client/hud/panel/timer.qc:140
 #, c-format
 msgid "Overtime #%d"
-msgstr ""
+msgstr "Verlängerung #%d"
 
 #: qcsrc/client/hud/panel/vote.qc:30
 msgid "^1You must answer before entering hud configure mode"
@@ -6467,11 +6467,11 @@ msgstr "Vergangene Zeit anzeigen"
 
 #: qcsrc/menu/xonotic/dialog_hudpanel_timer.qc:23
 msgid "Secondary timer:"
-msgstr ""
+msgstr "Sekundärzeit:"
 
 #: qcsrc/menu/xonotic/dialog_hudpanel_timer.qc:27
 msgid "Swapped"
-msgstr ""
+msgstr "Umgedreht"
 
 #: qcsrc/menu/xonotic/dialog_hudpanel_timer.qh:6
 msgid "Timer Panel"
index 8e7f42436156aa3ad447d7f2f45cfa87be3b7050..2982419efc9e82a2b0f6387c270282791a97c7b8 100644 (file)
@@ -21,8 +21,8 @@ msgstr ""
 "Project-Id-Version: Xonotic\n"
 "Report-Msgid-Bugs-To: \n"
 "POT-Creation-Date: 2022-03-06 07:22+0100\n"
-"PO-Revision-Date: 2022-03-06 06:22+0000\n"
-"Last-Translator: divVerent <divVerent@xonotic.org>\n"
+"PO-Revision-Date: 2013-09-12 16:53+0000\n"
+"Last-Translator: Γιώργος Καρδάμης <kardamisgiorgos@gmail.com>, 2021\n"
 "Language-Team: Greek (http://www.transifex.com/team-xonotic/xonotic/language/"
 "el/)\n"
 "Language: el\n"
index 4c7e847000141c976908b28038fc322078206c1d..de50a6decaa94f7030564dca88a4df86835d509b 100644 (file)
@@ -13,8 +13,8 @@ msgstr ""
 "Project-Id-Version: Xonotic\n"
 "Report-Msgid-Bugs-To: \n"
 "POT-Creation-Date: 2022-03-06 07:22+0100\n"
-"PO-Revision-Date: 2022-03-06 06:22+0000\n"
-"Last-Translator: divVerent <divVerent@xonotic.org>\n"
+"PO-Revision-Date: 2013-09-12 16:53+0000\n"
+"Last-Translator: Stuart Young <cefiar@gmail.com>, 2016\n"
 "Language-Team: English (Australia) (http://www.transifex.com/team-xonotic/"
 "xonotic/language/en_AU/)\n"
 "Language: en_AU\n"
index d55bd0ec381d676cd01242def85a46d99ade7d34..9c3d7116de12e911683111e5a6c243934df235fb 100644 (file)
@@ -9,8 +9,8 @@ msgstr ""
 "Project-Id-Version: Xonotic\n"
 "Report-Msgid-Bugs-To: \n"
 "POT-Creation-Date: 2022-03-06 07:22+0100\n"
-"PO-Revision-Date: 2022-03-06 06:22+0000\n"
-"Last-Translator: divVerent <divVerent@xonotic.org>\n"
+"PO-Revision-Date: 2013-09-12 16:53+0000\n"
+"Last-Translator: Kamparano <kamparano.viro@gmail.com>, 2017\n"
 "Language-Team: Esperanto (http://www.transifex.com/team-xonotic/xonotic/"
 "language/eo/)\n"
 "Language: eo\n"
index fcf6dbaf3c0c71abfe232e10db567ee49f9b6c47..aa101fefbd3dd550c564a60923320d91ee6e8dd2 100644 (file)
@@ -32,8 +32,8 @@ msgstr ""
 "Project-Id-Version: Xonotic\n"
 "Report-Msgid-Bugs-To: \n"
 "POT-Creation-Date: 2022-03-06 07:22+0100\n"
-"PO-Revision-Date: 2022-03-06 06:22+0000\n"
-"Last-Translator: divVerent <divVerent@xonotic.org>\n"
+"PO-Revision-Date: 2013-09-12 16:53+0000\n"
+"Last-Translator: z 411 <winrar.hurr@gmail.com>, 2021\n"
 "Language-Team: Spanish (http://www.transifex.com/team-xonotic/xonotic/"
 "language/es/)\n"
 "Language: es\n"
index fa0905223787a823c99a77c7e64cabc230f93bbd..f138fba03c7539d7cd5a4287603254e5d2c298fb 100644 (file)
@@ -8,8 +8,8 @@ msgstr ""
 "Project-Id-Version: Xonotic\n"
 "Report-Msgid-Bugs-To: \n"
 "POT-Creation-Date: 2022-03-06 07:22+0100\n"
-"PO-Revision-Date: 2022-03-06 06:22+0000\n"
-"Last-Translator: divVerent <divVerent@xonotic.org>\n"
+"PO-Revision-Date: 2013-09-12 16:53+0000\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: Spanish (Mexico) (http://www.transifex.com/team-xonotic/"
 "xonotic/language/es_MX/)\n"
 "Language: es_MX\n"
index 1dc41e2b93398aa33a37a3ad67dbe03b8ef88982..d1fbc9775e56b95329e55b7545d01a357463d73d 100644 (file)
@@ -13,8 +13,8 @@ msgstr ""
 "Project-Id-Version: Xonotic\n"
 "Report-Msgid-Bugs-To: \n"
 "POT-Creation-Date: 2022-03-06 07:22+0100\n"
-"PO-Revision-Date: 2022-03-06 06:22+0000\n"
-"Last-Translator: divVerent <divVerent@xonotic.org>\n"
+"PO-Revision-Date: 2013-09-12 16:53+0000\n"
+"Last-Translator: Oi Suomi On! <oisuomion@protonmail.com>, 2020,2022\n"
 "Language-Team: Finnish (http://www.transifex.com/team-xonotic/xonotic/"
 "language/fi/)\n"
 "Language: fi\n"
index 3d26fb944fdbcb07987b021f4c5ea9687bbf3c08..322baed133ab7461942197ec1522e854938e2785 100644 (file)
@@ -22,8 +22,8 @@ msgstr ""
 "Project-Id-Version: Xonotic\n"
 "Report-Msgid-Bugs-To: \n"
 "POT-Creation-Date: 2022-03-06 07:22+0100\n"
-"PO-Revision-Date: 2022-03-06 06:22+0000\n"
-"Last-Translator: divVerent <divVerent@xonotic.org>\n"
+"PO-Revision-Date: 2013-09-12 16:53+0000\n"
+"Last-Translator: Hugo Locurcio, 2013-2014\n"
 "Language-Team: French (http://www.transifex.com/team-xonotic/xonotic/"
 "language/fr/)\n"
 "Language: fr\n"
@@ -1083,24 +1083,24 @@ msgstr "M"
 
 #: qcsrc/client/hud/panel/timer.qc:132
 msgid "Warmup"
-msgstr ""
+msgstr "Échauffement"
 
 #: qcsrc/client/hud/panel/timer.qc:134
 msgid "Timeout"
-msgstr ""
+msgstr "Temps mort"
 
 #: qcsrc/client/hud/panel/timer.qc:136
 msgid "Sudden Death"
-msgstr ""
+msgstr "Mort subite"
 
 #: qcsrc/client/hud/panel/timer.qc:138
 msgid "Overtime"
-msgstr ""
+msgstr "Prolongations"
 
 #: qcsrc/client/hud/panel/timer.qc:140
 #, c-format
 msgid "Overtime #%d"
-msgstr ""
+msgstr "Prolongations #%d"
 
 #: qcsrc/client/hud/panel/vote.qc:30
 msgid "^1You must answer before entering hud configure mode"
@@ -6459,11 +6459,11 @@ msgstr "Afficher le temps écoulé"
 
 #: qcsrc/menu/xonotic/dialog_hudpanel_timer.qc:23
 msgid "Secondary timer:"
-msgstr ""
+msgstr "Chronomètre secondaire :"
 
 #: qcsrc/menu/xonotic/dialog_hudpanel_timer.qc:27
 msgid "Swapped"
-msgstr ""
+msgstr "Échangé"
 
 #: qcsrc/menu/xonotic/dialog_hudpanel_timer.qh:6
 msgid "Timer Panel"
index f8ffebf5a39df81241b2a853feb72609032b1141..19d29ee0186e579b78fcc55b09a85ce98ced2c6e 100644 (file)
@@ -9,8 +9,8 @@ msgstr ""
 "Project-Id-Version: Xonotic\n"
 "Report-Msgid-Bugs-To: \n"
 "POT-Creation-Date: 2022-03-06 07:22+0100\n"
-"PO-Revision-Date: 2022-03-06 06:22+0000\n"
-"Last-Translator: divVerent <divVerent@xonotic.org>\n"
+"PO-Revision-Date: 2013-09-12 16:53+0000\n"
+"Last-Translator: Kevin Scannell <kscanne@gmail.com>, 2017\n"
 "Language-Team: Irish (http://www.transifex.com/team-xonotic/xonotic/language/"
 "ga/)\n"
 "Language: ga\n"
index 1d796b984b93dea49eeb0aebfe6eee8ddbd71027..764d72534a8d2d5bc7594b92bbe8d05d75f46785 100644 (file)
@@ -11,8 +11,8 @@ msgstr ""
 "Project-Id-Version: Xonotic\n"
 "Report-Msgid-Bugs-To: \n"
 "POT-Creation-Date: 2022-03-06 07:22+0100\n"
-"PO-Revision-Date: 2022-03-06 06:22+0000\n"
-"Last-Translator: divVerent <divVerent@xonotic.org>\n"
+"PO-Revision-Date: 2013-09-12 16:53+0000\n"
+"Last-Translator: GunChleoc, 2017\n"
 "Language-Team: Gaelic, Scottish (http://www.transifex.com/team-xonotic/"
 "xonotic/language/gd/)\n"
 "Language: gd\n"
index 86be5058f1562040636ffcea354daab1ec386181..1a475c51dd733c8b67efcae2594f4950839dba21 100644 (file)
@@ -10,8 +10,8 @@ msgstr ""
 "Project-Id-Version: Xonotic\n"
 "Report-Msgid-Bugs-To: \n"
 "POT-Creation-Date: 2022-03-06 07:22+0100\n"
-"PO-Revision-Date: 2022-03-06 06:22+0000\n"
-"Last-Translator: divVerent <divVerent@xonotic.org>\n"
+"PO-Revision-Date: 2013-09-12 16:53+0000\n"
+"Last-Translator: LegendGuard, 2020\n"
 "Language-Team: Galician (http://www.transifex.com/team-xonotic/xonotic/"
 "language/gl/)\n"
 "Language: gl\n"
index 4ae9162c5aaa0bc75676e67bc94f766f200cd3d0..ac5161541be8de8ab27493a9e159a422430407cb 100644 (file)
@@ -14,8 +14,8 @@ msgstr ""
 "Project-Id-Version: Xonotic\n"
 "Report-Msgid-Bugs-To: \n"
 "POT-Creation-Date: 2022-03-06 07:22+0100\n"
-"PO-Revision-Date: 2022-03-06 06:22+0000\n"
-"Last-Translator: divVerent <divVerent@xonotic.org>\n"
+"PO-Revision-Date: 2013-09-12 16:53+0000\n"
+"Last-Translator: Tal Leibman <leibman2@gmail.com>, 2019\n"
 "Language-Team: Hebrew (http://www.transifex.com/team-xonotic/xonotic/"
 "language/he/)\n"
 "Language: he\n"
index 726240969b220d5f07679d38a643894bfbc275b2..989619613a40605e3fd82f7e51665890e1ca7c38 100644 (file)
@@ -15,8 +15,8 @@ msgstr ""
 "Project-Id-Version: Xonotic\n"
 "Report-Msgid-Bugs-To: \n"
 "POT-Creation-Date: 2022-03-06 07:22+0100\n"
-"PO-Revision-Date: 2022-03-06 06:22+0000\n"
-"Last-Translator: divVerent <divVerent@xonotic.org>\n"
+"PO-Revision-Date: 2013-09-12 16:53+0000\n"
+"Last-Translator: MmAaXx500 <viktor.balogh2000@gmail.com>, 2018\n"
 "Language-Team: Hungarian (http://www.transifex.com/team-xonotic/xonotic/"
 "language/hu/)\n"
 "Language: hu\n"
index ca005c1c1112f3211a7e4ddf4969b32efa239cfd..19ffec87c115ee9f661c6d634f57082a63519df6 100644 (file)
@@ -15,8 +15,8 @@ msgstr ""
 "Project-Id-Version: Xonotic\n"
 "Report-Msgid-Bugs-To: \n"
 "POT-Creation-Date: 2022-03-06 07:22+0100\n"
-"PO-Revision-Date: 2022-03-06 11:16+0000\n"
-"Last-Translator: Antonio <piuntn@gmail.com>\n"
+"PO-Revision-Date: 2013-09-12 16:53+0000\n"
+"Last-Translator: Antonio <piuntn@gmail.com>, 2013-2022\n"
 "Language-Team: Italian (http://www.transifex.com/team-xonotic/xonotic/"
 "language/it/)\n"
 "Language: it\n"
index 69a3678a99f9ba8702ecbf5abcd0288777670a4f..6bfb17d0894d86ccb042a2b9689aa6d64c656f0a 100644 (file)
@@ -15,8 +15,8 @@ msgstr ""
 "Project-Id-Version: Xonotic\n"
 "Report-Msgid-Bugs-To: \n"
 "POT-Creation-Date: 2022-03-06 07:22+0100\n"
-"PO-Revision-Date: 2022-03-06 06:22+0000\n"
-"Last-Translator: divVerent <divVerent@xonotic.org>\n"
+"PO-Revision-Date: 2013-09-12 16:53+0000\n"
+"Last-Translator: z 411 <winrar.hurr@gmail.com>, 2021\n"
 "Language-Team: Japanese (Japan) (http://www.transifex.com/team-xonotic/"
 "xonotic/language/ja_JP/)\n"
 "Language: ja_JP\n"
index b8e3f2c41d7108c12dc25a2ff959ddc95cb57a56..a6a49161c6760c757d23f6109d669a74c326413d 100644 (file)
@@ -8,8 +8,8 @@ msgstr ""
 "Project-Id-Version: Xonotic\n"
 "Report-Msgid-Bugs-To: \n"
 "POT-Creation-Date: 2022-03-06 07:22+0100\n"
-"PO-Revision-Date: 2022-03-06 06:22+0000\n"
-"Last-Translator: divVerent <divVerent@xonotic.org>\n"
+"PO-Revision-Date: 2013-09-12 16:53+0000\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: Lojban (http://www.transifex.com/team-xonotic/xonotic/"
 "language/jbo/)\n"
 "Language: jbo\n"
index 6587f852f06a8efd11e7c03cc9c7cf2eb1737204..d99248cf9e5b95b91951c2f1b281a3702dd8c240 100644 (file)
@@ -12,8 +12,8 @@ msgstr ""
 "Project-Id-Version: Xonotic\n"
 "Report-Msgid-Bugs-To: \n"
 "POT-Creation-Date: 2022-03-06 07:22+0100\n"
-"PO-Revision-Date: 2022-03-06 06:22+0000\n"
-"Last-Translator: divVerent <divVerent@xonotic.org>\n"
+"PO-Revision-Date: 2013-09-12 16:53+0000\n"
+"Last-Translator: Артем Быстров, 2015-2016\n"
 "Language-Team: Kazakh (Cyrillic) (http://www.transifex.com/team-xonotic/"
 "xonotic/language/kk@Cyrl/)\n"
 "Language: kk@Cyrl\n"
index 3e31e283c1706f59d1e6b2dc899492157cec7325..d9584b07a5024a72223e9bc69e00f9d17cc4cec1 100644 (file)
@@ -3,6 +3,8 @@
 # This file is distributed under the same license as the PACKAGE package.
 #
 # Translators:
+# BYEONGJIN AN, 2022
+# BYEONGJIN AN, 2022
 # Iso Lee, 2016
 # Jisoo Lim <liminj0719@gmail.com>, 2017
 # Iso Lee, 2016
@@ -14,8 +16,8 @@ msgstr ""
 "Project-Id-Version: Xonotic\n"
 "Report-Msgid-Bugs-To: \n"
 "POT-Creation-Date: 2022-03-06 07:22+0100\n"
-"PO-Revision-Date: 2022-03-06 06:22+0000\n"
-"Last-Translator: divVerent <divVerent@xonotic.org>\n"
+"PO-Revision-Date: 2013-09-12 16:53+0000\n"
+"Last-Translator: Iso Lee, 2016\n"
 "Language-Team: Korean (http://www.transifex.com/team-xonotic/xonotic/"
 "language/ko/)\n"
 "Language: ko\n"
@@ -32,7 +34,7 @@ msgstr ""
 #: qcsrc/client/hud/hud_config.qc:84
 #, c-format
 msgid "^1Couldn't write to %s"
-msgstr ""
+msgstr "^1%s에 저장하지 못했습니다."
 
 #: qcsrc/client/hud/panel/centerprint.qc:173
 #, c-format
@@ -53,7 +55,7 @@ msgstr ""
 
 #: qcsrc/client/hud/panel/centerprint.qc:182
 msgid "Generic message"
-msgstr ""
+msgstr "일반 메시지"
 
 #: qcsrc/client/hud/panel/chat.qc:165
 msgid "^3Player^7: This is the chat area."
@@ -239,7 +241,7 @@ msgstr "계속..."
 #: qcsrc/client/hud/panel/quickmenu.qc:807
 #: qcsrc/client/hud/panel/quickmenu.qc:814
 msgid "Chat"
-msgstr ""
+msgstr "채팅"
 
 #: qcsrc/client/hud/panel/quickmenu.qc:808
 msgid "QMCMD^Send public message to"
@@ -610,7 +612,7 @@ msgstr ""
 
 #: qcsrc/client/hud/panel/scoreboard.qc:129
 msgid "SCO^elo"
-msgstr ""
+msgstr "SCO^elo"
 
 #: qcsrc/client/hud/panel/scoreboard.qc:130
 msgid "SCO^fastest"
@@ -638,11 +640,11 @@ msgstr "SCO^깃발 운반자 킬"
 
 #: qcsrc/client/hud/panel/scoreboard.qc:133
 msgid "FPS"
-msgstr ""
+msgstr "FPS"
 
 #: qcsrc/client/hud/panel/scoreboard.qc:133
 msgid "SCO^fps"
-msgstr ""
+msgstr "SCO^fps"
 
 #: qcsrc/client/hud/panel/scoreboard.qc:134
 msgid "Number of kills minus suicides"
@@ -842,7 +844,7 @@ msgstr ""
 
 #: qcsrc/client/hud/panel/scoreboard.qc:159
 msgid "SCO^teamkills"
-msgstr ""
+msgstr "SCO^팀킬"
 
 #: qcsrc/client/hud/panel/scoreboard.qc:160
 msgid "Number of ticks (Domination)"
@@ -850,28 +852,28 @@ msgstr ""
 
 #: qcsrc/client/hud/panel/scoreboard.qc:160
 msgid "SCO^ticks"
-msgstr ""
+msgstr "SCO^틱"
 
 #: qcsrc/client/hud/panel/scoreboard.qc:161
 msgid "SCO^time"
-msgstr ""
+msgstr "SCO^시간"
 
 #: qcsrc/client/hud/panel/scoreboard.qc:161
 msgid "Total time raced (Race/CTS)"
-msgstr ""
+msgstr "총 경주한 시간 (Race/CTS)"
 
 #: qcsrc/client/hud/panel/scoreboard.qc:359
 msgid ""
 "You can modify the scoreboard using the ^2scoreboard_columns_set command."
-msgstr ""
+msgstr "^2scoreboard_columns_set 명령을 사용하여 스코어보드 수정이 가능합니다."
 
 #: qcsrc/client/hud/panel/scoreboard.qc:360
 msgid "Usage:"
-msgstr ""
+msgstr "용법:"
 
 #: qcsrc/client/hud/panel/scoreboard.qc:362
 msgid "^2scoreboard_columns_set ^3field1 field2 ..."
-msgstr ""
+msgstr "^2scoreboard_columns_set ^3field1 field2 ..."
 
 #: qcsrc/client/hud/panel/scoreboard.qc:363
 msgid ""
index 588da8b060bc2aade78fac62546d87085e49e394..3d9ba83e10e30a54b1614b1dc86478bd4af81ecf 100644 (file)
@@ -11,8 +11,8 @@ msgstr ""
 "Project-Id-Version: Xonotic\n"
 "Report-Msgid-Bugs-To: \n"
 "POT-Creation-Date: 2022-03-06 07:22+0100\n"
-"PO-Revision-Date: 2022-03-06 06:22+0000\n"
-"Last-Translator: divVerent <divVerent@xonotic.org>\n"
+"PO-Revision-Date: 2013-09-12 16:53+0000\n"
+"Last-Translator: Nicky Rowe <nicky@kernowlingo.com>, 2016,2018\n"
 "Language-Team: Cornish (http://www.transifex.com/team-xonotic/xonotic/"
 "language/kw/)\n"
 "Language: kw\n"
index 87c5e2b41f8b39cc793e7d590f5fe87025a0ecce..49feae77dc9cc53291b964ed0c7af12ec967ca61 100644 (file)
@@ -8,8 +8,8 @@ msgstr ""
 "Project-Id-Version: Xonotic\n"
 "Report-Msgid-Bugs-To: \n"
 "POT-Creation-Date: 2022-03-06 07:22+0100\n"
-"PO-Revision-Date: 2022-03-06 06:22+0000\n"
-"Last-Translator: divVerent <divVerent@xonotic.org>\n"
+"PO-Revision-Date: 2013-09-12 16:53+0000\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: Macedonian (http://www.transifex.com/team-xonotic/xonotic/"
 "language/mk/)\n"
 "Language: mk\n"
index c12149e4a83ece5a10bab63b2e3e860c6aab43ab..52bb031c099cb60543085f60267cb891a69412f7 100644 (file)
@@ -10,8 +10,9 @@ msgstr ""
 "Project-Id-Version: Xonotic\n"
 "Report-Msgid-Bugs-To: \n"
 "POT-Creation-Date: 2022-03-06 07:22+0100\n"
-"PO-Revision-Date: 2022-03-06 06:22+0000\n"
-"Last-Translator: divVerent <divVerent@xonotic.org>\n"
+"PO-Revision-Date: 2013-09-12 16:53+0000\n"
+"Last-Translator: 4b0721bd8a44304c1fd21d8581e7aba4_e088d28 "
+"<64a9a0c5da22e761316957ae436b6281_676465>, 2018\n"
 "Language-Team: Malay (http://www.transifex.com/team-xonotic/xonotic/language/"
 "ms/)\n"
 "Language: ms\n"
index 7d744d3e2e775849ead063a5478d3209a221d9ce..7e7289a793120c358e62aa9665174641c290880f 100644 (file)
@@ -13,8 +13,8 @@ msgstr ""
 "Project-Id-Version: Xonotic\n"
 "Report-Msgid-Bugs-To: \n"
 "POT-Creation-Date: 2022-03-06 07:22+0100\n"
-"PO-Revision-Date: 2022-03-06 06:22+0000\n"
-"Last-Translator: divVerent <divVerent@xonotic.org>\n"
+"PO-Revision-Date: 2013-09-12 16:53+0000\n"
+"Last-Translator: Jonathan van der Steege <jonakeys@hotmail.com>, 2016\n"
 "Language-Team: Dutch (http://www.transifex.com/team-xonotic/xonotic/language/"
 "nl/)\n"
 "Language: nl\n"
index d60e700267803cc6376de27359a4619012a67656..19f42bbbc10835a63987c6cec9ad0a726bdced48 100644 (file)
@@ -8,8 +8,8 @@ msgstr ""
 "Project-Id-Version: Xonotic\n"
 "Report-Msgid-Bugs-To: \n"
 "POT-Creation-Date: 2022-03-06 07:22+0100\n"
-"PO-Revision-Date: 2022-03-06 06:22+0000\n"
-"Last-Translator: divVerent <divVerent@xonotic.org>\n"
+"PO-Revision-Date: 2013-09-12 16:53+0000\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: Norwegian (http://www.transifex.com/team-xonotic/xonotic/"
 "language/no/)\n"
 "Language: no\n"
index 02be05655afd12cb6725fa01424bf098707794df..ed0a7fd573a32805f25a223fd4ecb5e50a158185 100644 (file)
 # Saikuru Zero, 2021
 # Sertomas, 2014
 # SFS Atlas, 2022
+# SFS Atlas, 2022
 msgid ""
 msgstr ""
 "Project-Id-Version: Xonotic\n"
 "Report-Msgid-Bugs-To: \n"
 "POT-Creation-Date: 2022-03-06 07:22+0100\n"
-"PO-Revision-Date: 2022-03-06 09:54+0000\n"
-"Last-Translator: SFS Atlas\n"
+"PO-Revision-Date: 2013-09-12 16:53+0000\n"
+"Last-Translator: SFS Atlas, 2022\n"
 "Language-Team: Polish (http://www.transifex.com/team-xonotic/xonotic/"
 "language/pl/)\n"
 "Language: pl\n"
index 78fdab7edf81d28f15c7de7f2a7857dc349f4fa0..0eb35aa5557d7a0a4a1a5aad4d66b988a5c015d2 100644 (file)
@@ -16,8 +16,8 @@ msgstr ""
 "Project-Id-Version: Xonotic\n"
 "Report-Msgid-Bugs-To: \n"
 "POT-Creation-Date: 2022-03-06 07:22+0100\n"
-"PO-Revision-Date: 2022-03-06 06:22+0000\n"
-"Last-Translator: divVerent <divVerent@xonotic.org>\n"
+"PO-Revision-Date: 2013-09-12 16:53+0000\n"
+"Last-Translator: Rui <xymarior@yandex.com>, 2018\n"
 "Language-Team: Portuguese (http://www.transifex.com/team-xonotic/xonotic/"
 "language/pt/)\n"
 "Language: pt\n"
index ca2f42d5a61ab4df283fce7486c33df17e0e4377..06ec550dfedaa7bb45a754abef20811e41138866 100644 (file)
@@ -17,8 +17,8 @@ msgstr ""
 "Project-Id-Version: Xonotic\n"
 "Report-Msgid-Bugs-To: \n"
 "POT-Creation-Date: 2022-03-06 07:22+0100\n"
-"PO-Revision-Date: 2022-03-06 12:15+0000\n"
-"Last-Translator: yy0zz\n"
+"PO-Revision-Date: 2013-09-12 16:53+0000\n"
+"Last-Translator: zerowhy . <anymailz@tutanota.com>, 2021\n"
 "Language-Team: Portuguese (Brazil) (http://www.transifex.com/team-xonotic/"
 "xonotic/language/pt_BR/)\n"
 "Language: pt_BR\n"
index ab44e9ed61991665d7c78ab207abc8e6439e8560..02f59bdc1f6da468d296eaefc0b678f8005304a4 100644 (file)
@@ -16,8 +16,8 @@ msgstr ""
 "Project-Id-Version: Xonotic\n"
 "Report-Msgid-Bugs-To: \n"
 "POT-Creation-Date: 2022-03-06 07:22+0100\n"
-"PO-Revision-Date: 2022-03-06 06:22+0000\n"
-"Last-Translator: divVerent <divVerent@xonotic.org>\n"
+"PO-Revision-Date: 2013-09-12 16:53+0000\n"
+"Last-Translator: Tudor Ionel <tropiko.matrox@gmail.com>, 2015\n"
 "Language-Team: Romanian (http://www.transifex.com/team-xonotic/xonotic/"
 "language/ro/)\n"
 "Language: ro\n"
index bdd5548a55e2400c247667f5a8a835ce9c89193f..4af4e70c861b15ed8d5cdd768dbc3bb0e3e1fc2b 100644 (file)
@@ -21,8 +21,8 @@ msgstr ""
 "Project-Id-Version: Xonotic\n"
 "Report-Msgid-Bugs-To: \n"
 "POT-Creation-Date: 2022-03-06 07:22+0100\n"
-"PO-Revision-Date: 2022-03-06 16:35+0000\n"
-"Last-Translator: Andrei Stepanov\n"
+"PO-Revision-Date: 2013-09-12 16:53+0000\n"
+"Last-Translator: Simple88, 2016\n"
 "Language-Team: Russian (http://www.transifex.com/team-xonotic/xonotic/"
 "language/ru/)\n"
 "Language: ru\n"
index 1147e13a1baf84b4409c5f614b83c4920fa77d01..2af352bb3435be1139e860cabba09c870bba192c 100644 (file)
@@ -8,8 +8,8 @@ msgstr ""
 "Project-Id-Version: Xonotic\n"
 "Report-Msgid-Bugs-To: \n"
 "POT-Creation-Date: 2022-03-06 07:22+0100\n"
-"PO-Revision-Date: 2022-03-06 06:22+0000\n"
-"Last-Translator: divVerent <divVerent@xonotic.org>\n"
+"PO-Revision-Date: 2013-09-12 16:53+0000\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: Albanian (http://www.transifex.com/team-xonotic/xonotic/"
 "language/sq/)\n"
 "Language: sq\n"
index c6a5d15a62c6196d58eeb50599782dc04d5d1744..91af170fe9225b12e7d175a7d5698584d4a5e220 100644 (file)
@@ -13,8 +13,9 @@ msgstr ""
 "Project-Id-Version: Xonotic\n"
 "Report-Msgid-Bugs-To: \n"
 "POT-Creation-Date: 2022-03-06 07:22+0100\n"
-"PO-Revision-Date: 2022-03-06 06:22+0000\n"
-"Last-Translator: divVerent <divVerent@xonotic.org>\n"
+"PO-Revision-Date: 2013-09-12 16:53+0000\n"
+"Last-Translator: Марко М. Костић (Marko M. Kostić) <marko.m.kostic@gmail."
+"com>, 2017,2019\n"
 "Language-Team: Serbian (http://www.transifex.com/team-xonotic/xonotic/"
 "language/sr/)\n"
 "Language: sr\n"
index 9b655213c8b0023dad75b9cd3bad07caa8282fba..e3c004052cd99195c05ef033ae40747c4ccf4e76 100644 (file)
@@ -9,8 +9,8 @@ msgstr ""
 "Project-Id-Version: Xonotic\n"
 "Report-Msgid-Bugs-To: \n"
 "POT-Creation-Date: 2022-03-06 07:22+0100\n"
-"PO-Revision-Date: 2022-03-06 06:22+0000\n"
-"Last-Translator: divVerent <divVerent@xonotic.org>\n"
+"PO-Revision-Date: 2013-09-12 16:53+0000\n"
+"Last-Translator: Hanicef <gustaf@hanicef.me>, 2021\n"
 "Language-Team: Swedish (http://www.transifex.com/team-xonotic/xonotic/"
 "language/sv/)\n"
 "Language: sv\n"
index 79e28312a03c0245f004982a231a2600b2869894..c88351060f3b12e14f105a34e322d6efd0dd4a2f 100644 (file)
@@ -19,8 +19,8 @@ msgstr ""
 "Project-Id-Version: Xonotic\n"
 "Report-Msgid-Bugs-To: \n"
 "POT-Creation-Date: 2022-03-06 07:22+0100\n"
-"PO-Revision-Date: 2022-03-06 06:22+0000\n"
-"Last-Translator: divVerent <divVerent@xonotic.org>\n"
+"PO-Revision-Date: 2013-09-12 16:53+0000\n"
+"Last-Translator: Big Brother <tanakinci2002@gmail.com>, 2021\n"
 "Language-Team: Turkish (http://www.transifex.com/team-xonotic/xonotic/"
 "language/tr/)\n"
 "Language: tr\n"
index 10ac4bcf6468a22ac0e2a2cba417853811e1aab2..a448fdf425c638494e155ab018290130e3b1f035 100644 (file)
@@ -14,8 +14,8 @@ msgstr ""
 "Project-Id-Version: Xonotic\n"
 "Report-Msgid-Bugs-To: \n"
 "POT-Creation-Date: 2022-03-06 07:22+0100\n"
-"PO-Revision-Date: 2022-03-06 06:22+0000\n"
-"Last-Translator: divVerent <divVerent@xonotic.org>\n"
+"PO-Revision-Date: 2013-09-12 16:53+0000\n"
+"Last-Translator: Dmitro Sokhin <gamebot@ex.ua>, 2015\n"
 "Language-Team: Ukrainian (http://www.transifex.com/team-xonotic/xonotic/"
 "language/uk/)\n"
 "Language: uk\n"
index 624a9a5c62e925fb5e7045fdd83156ef5f7d5f9d..3c5701145427c9f9646bb2ab14c88b6181a89c3e 100644 (file)
@@ -8,8 +8,8 @@ msgstr ""
 "Project-Id-Version: Xonotic\n"
 "Report-Msgid-Bugs-To: \n"
 "POT-Creation-Date: 2022-03-06 07:22+0100\n"
-"PO-Revision-Date: 2022-03-06 06:22+0000\n"
-"Last-Translator: divVerent <divVerent@xonotic.org>\n"
+"PO-Revision-Date: 2013-09-12 16:53+0000\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: Uzbek (Latin) (http://www.transifex.com/team-xonotic/xonotic/"
 "language/uz@Latn/)\n"
 "Language: uz@Latn\n"
index 3fc8cdd23c2410d359fa68f559d5403981b5d16e..0bef97371c2cac54674fecd3e2a2f83420111309 100644 (file)
@@ -23,8 +23,8 @@ msgstr ""
 "Project-Id-Version: Xonotic\n"
 "Report-Msgid-Bugs-To: \n"
 "POT-Creation-Date: 2022-03-06 07:22+0100\n"
-"PO-Revision-Date: 2022-03-06 06:22+0000\n"
-"Last-Translator: divVerent <divVerent@xonotic.org>\n"
+"PO-Revision-Date: 2013-09-12 16:53+0000\n"
+"Last-Translator: 韬 刘 <jiegushijia@gmail.com>, 2019\n"
 "Language-Team: Chinese (China) (http://www.transifex.com/team-xonotic/"
 "xonotic/language/zh_CN/)\n"
 "Language: zh_CN\n"
index 45a326252d05394b8bf0537484dd6f615aa194a3..df49bc0c5d93958090aabc13af204fc5021fe2d6 100644 (file)
@@ -13,8 +13,8 @@ msgstr ""
 "Project-Id-Version: Xonotic\n"
 "Report-Msgid-Bugs-To: \n"
 "POT-Creation-Date: 2022-03-06 07:22+0100\n"
-"PO-Revision-Date: 2022-03-06 06:22+0000\n"
-"Last-Translator: divVerent <divVerent@xonotic.org>\n"
+"PO-Revision-Date: 2013-09-12 16:53+0000\n"
+"Last-Translator: 黃柏諺 <s8321414@gmail.com>, 2015\n"
 "Language-Team: Chinese (Taiwan) (http://www.transifex.com/team-xonotic/"
 "xonotic/language/zh_TW/)\n"
 "Language: zh_TW\n"
index ea6ff943803b1a98523422ea3f935333f9519ef1..90dc5733cb24f0838306b7a02ec04c0c047adb9e 100644 (file)
@@ -1,10 +1,10 @@
 ast   "Asturian" "Asturianu" 77%
-de    "German" "Deutsch" 99%
-de_CH "German (Switzerland)" "Deutsch (Schweiz)" 99%
+de    "German" "Deutsch" 100%
+de_CH "German (Switzerland)" "Deutsch (Schweiz)" 100%
 en    "English" "English" 100%
 en_AU "English (Australia)" "English (Australia)" 72%
 es    "Spanish" "Español" 99%
-fr    "French" "Français" 99%
+fr    "French" "Français" 100%
 ga    "Irish" "Irish" 31%
 it    "Italian" "Italiano" 100%
 hu    "Hungarian" "Magyar" 46%
@@ -26,4 +26,4 @@ uk    "Ukrainian" "Українська" 49%
 zh_CN "Chinese (China)" "中文" 59%
 zh_TW "Chinese (Taiwan)" "國語" 58%
 ja_JP "Japanese" "日本語" 99%
-ko    "Korean" "한국의" 28%
+ko    "Korean" "한국의" 29%
index 7653219633599d30c41a59530ddcf616bbbc89d9..30a18cab993a223fbb779e3a3febefdc3043d58e 100644 (file)
@@ -40,3 +40,4 @@ sv_jumpspeedcap_max_disable_on_ramps 0
 g_teleport_maxspeed 400
 sv_track_canjump 0
 sv_gameplayfix_stepdown_maxspeed 0
+g_movement_highspeed_q3_compat 1
index 4fcdcce0fcf66e0211058920a72629d317d58e76..7c0c5170e8216ea94536a2395e5881f8e7ce3d92 100644 (file)
@@ -38,3 +38,4 @@ sv_jumpspeedcap_max_disable_on_ramps 1
 g_teleport_maxspeed 0
 sv_track_canjump 0
 sv_gameplayfix_stepdown_maxspeed 0
+g_movement_highspeed_q3_compat 0
index a6598de9988b17d71596e22d2af8b1b544ca65c1..fdefb9ccaf724f55c4247e3203fcc2aca2569ddf 100644 (file)
@@ -39,3 +39,4 @@ sv_jumpspeedcap_max_disable_on_ramps 0
 g_teleport_maxspeed 0
 sv_track_canjump 0
 sv_gameplayfix_stepdown_maxspeed 0
+g_movement_highspeed_q3_compat 0
index 9bf0e03abfe9408216ae241d462ae19ccd264981..25f2b54d6f186a98b4078837dcca526586050699 100644 (file)
@@ -47,3 +47,4 @@ sv_jumpspeedcap_max_disable_on_ramps 1
 g_teleport_maxspeed 0
 sv_track_canjump 0
 sv_gameplayfix_stepdown_maxspeed 0
+g_movement_highspeed_q3_compat 0
index c6ecfd9274acaa863dbfcb02606c83ce24383ee6..5edcfbe27b48a306962295049c6e0cf05874e68d 100644 (file)
@@ -47,3 +47,4 @@ sv_jumpspeedcap_max_disable_on_ramps 1
 g_teleport_maxspeed 0
 sv_track_canjump 0
 sv_gameplayfix_stepdown_maxspeed 0
+g_movement_highspeed_q3_compat 0
index 8b48b003c5f140a145d438d38069da626848e070..a4bdd08ca12be3c403daeba5707d584a48a4e883 100644 (file)
@@ -42,3 +42,4 @@ sv_jumpspeedcap_max_disable_on_ramps 0
 g_teleport_maxspeed 0
 sv_track_canjump 0
 sv_gameplayfix_stepdown_maxspeed 0
+g_movement_highspeed_q3_compat 0
index 25a3b704e2b8996684209c333f9f1f18b457d466..8d54437fb82751732490a9fa5c4f59b3ea14a6c7 100644 (file)
@@ -40,3 +40,4 @@ sv_jumpspeedcap_max_disable_on_ramps 0
 g_teleport_maxspeed 0
 sv_track_canjump 0
 sv_gameplayfix_stepdown_maxspeed 0
+g_movement_highspeed_q3_compat 0
index bdaa0e66b677ede2e7617cc8e817fde9c9c5cdb4..3ca1ded65ce1ebb2ce281a90dbeb87ee3f8a79e5 100644 (file)
@@ -40,3 +40,4 @@ sv_jumpspeedcap_max_disable_on_ramps 0
 g_teleport_maxspeed 0
 sv_track_canjump 0
 sv_gameplayfix_stepdown_maxspeed 0
+g_movement_highspeed_q3_compat 0
index c66ac46a0d80f2d4920f7ef141a8df3a86a17fad..03056d184e8ed1fe824137c52f0b542826cadc32 100644 (file)
@@ -39,3 +39,4 @@ sv_jumpspeedcap_max_disable_on_ramps 0
 g_teleport_maxspeed 0
 sv_track_canjump 0
 sv_gameplayfix_stepdown_maxspeed 0
+g_movement_highspeed_q3_compat 0
index b6022954107529a3b85076a24c20abe3c2c89d60..e2aa58971c1b50373ad16f37af9464ff489432e8 100644 (file)
@@ -39,3 +39,4 @@ sv_jumpspeedcap_max_disable_on_ramps 0
 g_teleport_maxspeed 0
 sv_track_canjump 0
 sv_gameplayfix_stepdown_maxspeed 0
+g_movement_highspeed_q3_compat 0
index 4ecdef9c0751b6d56530b51796e0e1bc96b9c5fa..26f746a7c0d9ae8e961a1afcebcd11f10d23f516 100644 (file)
@@ -39,3 +39,4 @@ sv_jumpspeedcap_max_disable_on_ramps 0
 g_teleport_maxspeed 0
 sv_track_canjump 0
 sv_gameplayfix_stepdown_maxspeed 0
+g_movement_highspeed_q3_compat 0
index 912399130dcde5195fbe9dcf795497827bf9a860..40e7d1f3fca423b90d6c9dd9a0323032975a4f6a 100644 (file)
@@ -39,3 +39,4 @@ sv_jumpspeedcap_max_disable_on_ramps 0
 g_teleport_maxspeed 0
 sv_track_canjump 0
 sv_gameplayfix_stepdown_maxspeed 0
+g_movement_highspeed_q3_compat 0
index 956310b8ebd42a62d3664edc94a67e3b07e1bdb1..24e27b01dd2fb07177d893c61fe69d5d07d24116 100644 (file)
@@ -39,3 +39,4 @@ sv_jumpspeedcap_max_disable_on_ramps 0
 g_teleport_maxspeed 0
 sv_track_canjump 0
 sv_gameplayfix_stepdown_maxspeed 0
+g_movement_highspeed_q3_compat 0
index 0654a9f29ebc15d84419dcb7c854a101dd812eb1..167d2f4d453efb5a0b155c597915d2d3f3dffac0 100644 (file)
@@ -39,3 +39,4 @@ sv_jumpspeedcap_max_disable_on_ramps 0
 g_teleport_maxspeed 0
 sv_track_canjump 0
 sv_gameplayfix_stepdown_maxspeed 0
+g_movement_highspeed_q3_compat 0
index e20e2c93eac3908ad2695c362b349f53010d729c..6c41d6bbc061e9106bcca2e96b7a9bf22990571a 100644 (file)
@@ -39,3 +39,4 @@ sv_jumpspeedcap_max_disable_on_ramps 0
 g_teleport_maxspeed 0
 sv_track_canjump 0
 sv_gameplayfix_stepdown_maxspeed 0
+g_movement_highspeed_q3_compat 0
index 063d2e365fb5145bbbbb39d89e680ca2ece86f52..c1447c0f091aa748b084ce148ae01af65fc91e98 100644 (file)
@@ -48,3 +48,4 @@ sv_jumpspeedcap_max_disable_on_ramps 1
 g_teleport_maxspeed 0
 sv_track_canjump 0
 sv_gameplayfix_stepdown_maxspeed 0
+g_movement_highspeed_q3_compat 0
index b40b5a54f7e93292cb2743c1febc55b110a21c06..be6ea49633831011627d7976ff60ca5d00a1c27e 100644 (file)
@@ -53,3 +53,4 @@ sv_jumpspeedcap_max ""
 sv_jumpspeedcap_max_disable_on_ramps 1
 g_teleport_maxspeed 0
 sv_gameplayfix_stepdown_maxspeed 400
+g_movement_highspeed_q3_compat 0
index d0adac13e71e2c94b7b08e6cc2b2c8ea8f90593d..b84883d88bc4ab4acc2b8ba9244212339068392d 100644 (file)
@@ -40,3 +40,4 @@ sv_jumpspeedcap_max_disable_on_ramps 0
 g_teleport_maxspeed 0
 sv_track_canjump 0
 sv_gameplayfix_stepdown_maxspeed 0
+g_movement_highspeed_q3_compat 0
index 7e6e2d6620e5173dc181b524e308002d77fd7c98..5e18a2f0491a46da8c336e884ba00d9d70427c18 100644 (file)
@@ -40,3 +40,4 @@ sv_jumpspeedcap_max_disable_on_ramps 0
 g_teleport_maxspeed 0
 sv_track_canjump 0
 sv_gameplayfix_stepdown_maxspeed 0
+g_movement_highspeed_q3_compat 0
index 55e31256419cfc2fc70322f4a5555143d92a88c1..c614e817d350d64d1725b9f17da243ffd216379e 100644 (file)
@@ -41,3 +41,4 @@ sv_jumpspeedcap_max_disable_on_ramps 0
 g_teleport_maxspeed 0
 sv_track_canjump 0
 sv_gameplayfix_stepdown_maxspeed 0
+g_movement_highspeed_q3_compat 0
index be6c7dd8c2b5ed67a0a71c85ab75a68b6248c1ee..76ee484ec6261c15864e660e499ee7806e6583df 100644 (file)
@@ -40,3 +40,4 @@ sv_jumpspeedcap_max_disable_on_ramps 0
 g_teleport_maxspeed 320
 sv_track_canjump 0
 sv_gameplayfix_stepdown_maxspeed 0
+g_movement_highspeed_q3_compat 0
index 4d7bdfeb5c88a51fb9d02fb40e9aa1433be73ad5..4de2fbd88517603b606b3ca9136bffa5a891cac2 100644 (file)
@@ -39,3 +39,4 @@ sv_jumpspeedcap_max_disable_on_ramps 0
 g_teleport_maxspeed 0
 sv_track_canjump 0
 sv_gameplayfix_stepdown_maxspeed 0
+g_movement_highspeed_q3_compat 0
index 5ae5720c70fc5e81a1d37ef8d88b23de9b0ab7e1..880504782b2d999ca253d8c1b9dce55d7c8cbbfe 100644 (file)
@@ -39,3 +39,4 @@ sv_jumpspeedcap_max_disable_on_ramps 0
 g_teleport_maxspeed 0
 sv_track_canjump 0
 sv_gameplayfix_stepdown_maxspeed 0
+g_movement_highspeed_q3_compat 0
index 8c85486045a59c0991aff5a661f97ce81550aa7f..88165e03df64da0c0afc56cf714f2898423d53c8 100644 (file)
@@ -39,3 +39,4 @@ sv_jumpspeedcap_max_disable_on_ramps 0
 g_teleport_maxspeed 0
 sv_track_canjump 0
 sv_gameplayfix_stepdown_maxspeed 0
+g_movement_highspeed_q3_compat 0
index a89ff6a80f16ae1cb806314306fa04bc7c8a8562..f89927d5d3b18d259ff134cc7a47c637889362b3 100644 (file)
@@ -40,3 +40,4 @@ sv_jumpspeedcap_max_disable_on_ramps 0
 g_teleport_maxspeed 0
 sv_track_canjump 0
 sv_gameplayfix_stepdown_maxspeed 0
+g_movement_highspeed_q3_compat 0
index 71506511527a73947c552dd867c036b97f3171d7..ac1a96b52a1f9b8306dd2c6d2fdeab1733890295 100644 (file)
@@ -40,3 +40,4 @@ sv_jumpspeedcap_max_disable_on_ramps 0
 g_teleport_maxspeed 0
 sv_track_canjump 0
 sv_gameplayfix_stepdown_maxspeed 0
+g_movement_highspeed_q3_compat 0
index bc75e8c6220b820a1d59f084d7247c0c5cbfbdb8..7f7bcc8d6fbb1ec494ef141a0739b68783bea611 100644 (file)
@@ -40,3 +40,4 @@ sv_jumpspeedcap_max_disable_on_ramps 0
 g_teleport_maxspeed 0
 sv_track_canjump 0
 sv_gameplayfix_stepdown_maxspeed 0
+g_movement_highspeed_q3_compat 0
index dfe22345c5e4dc6d3157719b006d8256defe3cbd..252c2e7e9bc044d6806ea7e7ae596afac22eab26 100644 (file)
@@ -54,3 +54,4 @@ sv_jumpspeedcap_max ""
 sv_jumpspeedcap_max_disable_on_ramps 1
 g_teleport_maxspeed 0
 sv_gameplayfix_stepdown_maxspeed 400
+g_movement_highspeed_q3_compat 0
index 72285355326fb32d76efd5638fdd45adbeb3920d..8b81ca0421b71b4c5f9225313ed8a4559571cb0d 100644 (file)
@@ -47,3 +47,4 @@ sv_jumpspeedcap_max ""
 sv_jumpspeedcap_max_disable_on_ramps 1
 g_teleport_maxspeed 0
 sv_gameplayfix_stepdown_maxspeed 400
+g_movement_highspeed_q3_compat 0
index 9fcdb9918bc4becd9bac351f9c8915a3ece8434f..aa582bd991ddad8e5dac2cae8ef7ba86aaeaa6f3 100644 (file)
@@ -53,3 +53,4 @@ sv_jumpspeedcap_max ""
 sv_jumpspeedcap_max_disable_on_ramps 1
 g_teleport_maxspeed 0
 sv_gameplayfix_stepdown_maxspeed 400
+g_movement_highspeed_q3_compat 0
index d7dd0a50e5f2eb5eeaea9481edb2eb86cf25caec..8bbe28eaa41d1807e79c4e6dcd4f7ac3c38e00cc 100644 (file)
@@ -45,3 +45,5 @@ sv_jumpspeedcap_max 0.5
 sv_jumpspeedcap_max_disable_on_ramps 1
 g_teleport_maxspeed 600
 sv_gameplayfix_stepdown_maxspeed 400
+// needed for correct q3 haste simulation
+g_movement_highspeed_q3_compat 1
index 3a80e0858eb204c736b4c8ade724a0be121653f9..dd657afaf71a97178c029cb38b957a4874dbd31b 100644 (file)
@@ -45,3 +45,4 @@ sv_jumpspeedcap_max ""
 sv_jumpspeedcap_max_disable_on_ramps 1
 g_teleport_maxspeed 0
 sv_gameplayfix_stepdown_maxspeed 400
+g_movement_highspeed_q3_compat 0
index 06ee7468ddd83bfbb93c83a15e0fe61a0d6ae45f..b1fd04119a08fe2a362e55ad6925b04e3d3f38a4 100644 (file)
@@ -1,4 +1,4 @@
-# Doxyfile 1.8.10
+# Doxyfile 1.9.1
 
 # This file describes the settings to be used by the documentation system
 # doxygen (www.doxygen.org) for a project.
 # Project related configuration options
 #---------------------------------------------------------------------------
 
-# This tag specifies the encoding used for all characters in the config file
-# that follow. The default is UTF-8 which is also the encoding used for all text
-# before the first occurrence of this tag. Doxygen uses libiconv (or the iconv
-# built into libc) for the transcoding. See http://www.gnu.org/software/libiconv
-# for the list of possible encodings.
+# This tag specifies the encoding used for all characters in the configuration
+# file that follow. The default is UTF-8 which is also the encoding used for all
+# text before the first occurrence of this tag. Doxygen uses libiconv (or the
+# iconv built into libc) for the transcoding. See
+# https://www.gnu.org/software/libiconv/ for the list of possible encodings.
 # The default value is: UTF-8.
 
 DOXYFILE_ENCODING      = UTF-8
@@ -32,7 +32,7 @@ DOXYFILE_ENCODING      = UTF-8
 # title of most generated pages and in a few other places.
 # The default value is: My Project.
 
-PROJECT_NAME           = "Xonotic"
+PROJECT_NAME           = Xonotic QuakeC
 
 # The PROJECT_NUMBER tag can be used to enter a project or revision number. This
 # could be handy for archiving the generated documentation or if some version
@@ -44,7 +44,7 @@ PROJECT_NUMBER         =
 # for a project that appears at the top of each page and should give viewer a
 # quick idea about the purpose of the project. Keep the description short.
 
-PROJECT_BRIEF          =
+PROJECT_BRIEF          = The free, fast arena FPS with crisp movement and a wide array of weapons
 
 # With the PROJECT_LOGO tag one can specify a logo or an icon that is included
 # in the documentation. The maximum height of the logo should not exceed 55
@@ -68,7 +68,7 @@ OUTPUT_DIRECTORY       =
 # performance problems for the file system.
 # The default value is: NO.
 
-CREATE_SUBDIRS         = YES
+CREATE_SUBDIRS         = NO
 
 # If the ALLOW_UNICODE_NAMES tag is set to YES, doxygen will allow non-ASCII
 # characters to appear in the names of generated files. If set to NO, non-ASCII
@@ -93,6 +93,14 @@ ALLOW_UNICODE_NAMES    = NO
 
 OUTPUT_LANGUAGE        = English
 
+# The OUTPUT_TEXT_DIRECTION tag is used to specify the direction in which all
+# documentation generated by doxygen is written. Doxygen will use this
+# information to generate all generated output in the proper direction.
+# Possible values are: None, LTR, RTL and Context.
+# The default value is: None.
+
+OUTPUT_TEXT_DIRECTION  = None
+
 # If the BRIEF_MEMBER_DESC tag is set to YES, doxygen will include brief member
 # descriptions after the members that are listed in the file and class
 # documentation (similar to Javadoc). Set to NO to disable this.
@@ -179,6 +187,16 @@ SHORT_NAMES            = NO
 
 JAVADOC_AUTOBRIEF      = YES
 
+# If the JAVADOC_BANNER tag is set to YES then doxygen will interpret a line
+# such as
+# /***************
+# as being the beginning of a Javadoc-style comment "banner". If set to NO, the
+# Javadoc-style will behave just like regular comments and it will not be
+# interpreted by doxygen.
+# The default value is: NO.
+
+JAVADOC_BANNER         = NO
+
 # If the QT_AUTOBRIEF tag is set to YES then doxygen will interpret the first
 # line (until the first dot) of a Qt-style comment as the brief description. If
 # set to NO, the Qt-style will behave just like regular Qt-style comments (thus
@@ -199,6 +217,14 @@ QT_AUTOBRIEF           = NO
 
 MULTILINE_CPP_IS_BRIEF = NO
 
+# By default Python docstrings are displayed as preformatted text and doxygen's
+# special commands cannot be used. By setting PYTHON_DOCSTRING to NO the
+# doxygen's special commands can be used and the contents of the docstring
+# documentation blocks is shown as doxygen documentation.
+# The default value is: YES.
+
+PYTHON_DOCSTRING       = YES
+
 # If the INHERIT_DOCS tag is set to YES then an undocumented member inherits the
 # documentation from any documented member that it re-implements.
 # The default value is: YES.
@@ -226,16 +252,15 @@ TAB_SIZE               = 4
 # will allow you to put the command \sideeffect (or @sideeffect) in the
 # documentation, which will result in a user-defined paragraph with heading
 # "Side Effects:". You can put \n's in the value part of an alias to insert
-# newlines.
+# newlines (in the resulting output). You can put ^^ in the value part of an
+# alias to insert a newline as if a physical newline was in the original file.
+# When you need a literal { or } or , in the value part of an alias you have to
+# escape them by means of a backslash (\), this can lead to conflicts with the
+# commands \{ and \} for these it is advised to use the version @{ and @} or use
+# a double escape (\\{ and \\})
 
 ALIASES                =
 
-# This tag can be used to specify a number of word-keyword mappings (TCL only).
-# A mapping has the form "name=value". For example adding "class=itcl::class"
-# will allow you to use the command class in the itcl::class meaning.
-
-TCL_SUBST              =
-
 # Set the OPTIMIZE_OUTPUT_FOR_C tag to YES if your project consists of C sources
 # only. Doxygen will then generate output that is more tailored for C. For
 # instance, some of the names that are used will be different. The list of all
@@ -264,28 +289,42 @@ OPTIMIZE_FOR_FORTRAN   = NO
 
 OPTIMIZE_OUTPUT_VHDL   = NO
 
+# Set the OPTIMIZE_OUTPUT_SLICE tag to YES if your project consists of Slice
+# sources only. Doxygen will then generate output that is more tailored for that
+# language. For instance, namespaces will be presented as modules, types will be
+# separated into more groups, etc.
+# The default value is: NO.
+
+OPTIMIZE_OUTPUT_SLICE  = NO
+
 # Doxygen selects the parser to use depending on the extension of the files it
 # parses. With this tag you can assign which parser to use for a given
 # extension. Doxygen has a built-in mapping, but you can override or extend it
 # using this tag. The format is ext=language, where ext is a file extension, and
-# language is one of the parsers supported by doxygen: IDL, Java, Javascript,
-# C#, C, C++, D, PHP, Objective-C, Python, Fortran (fixed format Fortran:
-# FortranFixed, free formatted Fortran: FortranFree, unknown formatted Fortran:
-# Fortran. In the later case the parser tries to guess whether the code is fixed
-# or free formatted code, this is the default for Fortran type files), VHDL. For
-# instance to make doxygen treat .inc files as Fortran files (default is PHP),
-# and .f files as C (default is Fortran), use: inc=Fortran f=C.
+# language is one of the parsers supported by doxygen: IDL, Java, JavaScript,
+# Csharp (C#), C, C++, D, PHP, md (Markdown), Objective-C, Python, Slice, VHDL,
+# Fortran (fixed format Fortran: FortranFixed, free formatted Fortran:
+# FortranFree, unknown formatted Fortran: Fortran. In the later case the parser
+# tries to guess whether the code is fixed or free formatted code, this is the
+# default for Fortran type files). For instance to make doxygen treat .inc files
+# as Fortran files (default is PHP), and .f files as C (default is Fortran),
+# use: inc=Fortran f=C.
 #
 # Note: For files without extension you can use no_extension as a placeholder.
 #
 # Note that for custom extensions you also need to set FILE_PATTERNS otherwise
-# the files are not read by doxygen.
+# the files are not read by doxygen. When specifying no_extension you should add
+# * to the FILE_PATTERNS.
+#
+# Note see also the list of default file extension mappings.
 
-EXTENSION_MAPPING      = qc=C qh=C inc=C
+EXTENSION_MAPPING      = qc=C \
+                         qh=C \
+                         inc=C
 
 # If the MARKDOWN_SUPPORT tag is enabled then doxygen pre-processes all comments
 # according to the Markdown format, which allows for more readable
-# documentation. See http://daringfireball.net/projects/markdown/ for details.
+# documentation. See https://daringfireball.net/projects/markdown/ for details.
 # The output of markdown processing is further processed by doxygen, so you can
 # mix doxygen, HTML, and XML commands with Markdown formatting. Disable only in
 # case of backward compatibilities issues.
@@ -293,6 +332,15 @@ EXTENSION_MAPPING      = qc=C qh=C inc=C
 
 MARKDOWN_SUPPORT       = YES
 
+# When the TOC_INCLUDE_HEADINGS tag is set to a non-zero value, all headings up
+# to that level are automatically included in the table of contents, even if
+# they do not have an id attribute.
+# Note: This feature currently applies only to Markdown headings.
+# Minimum value: 0, maximum value: 99, default value: 5.
+# This tag requires that the tag MARKDOWN_SUPPORT is set to YES.
+
+TOC_INCLUDE_HEADINGS   = 5
+
 # When enabled doxygen tries to link words that correspond to documented
 # classes, or namespaces to their corresponding documentation. Such a link can
 # be prevented in individual cases by putting a % sign in front of the word or
@@ -318,7 +366,7 @@ BUILTIN_STL_SUPPORT    = NO
 CPP_CLI_SUPPORT        = NO
 
 # Set the SIP_SUPPORT tag to YES if your project consists of sip (see:
-# http://www.riverbankcomputing.co.uk/software/sip/intro) sources only. Doxygen
+# https://www.riverbankcomputing.com/software/sip/intro) sources only. Doxygen
 # will parse them like normal C++ but will assume all classes use public instead
 # of private inheritance when no explicit protection keyword is present.
 # The default value is: NO.
@@ -404,6 +452,19 @@ TYPEDEF_HIDES_STRUCT   = YES
 
 LOOKUP_CACHE_SIZE      = 0
 
+# The NUM_PROC_THREADS specifies the number threads doxygen is allowed to use
+# during processing. When set to 0 doxygen will based this on the number of
+# cores available in the system. You can set it explicitly to a value larger
+# than 0 to get more control over the balance between CPU load and processing
+# speed. At this moment only the input processing can be done using multiple
+# threads. Since this is still an experimental feature the default is set to 1,
+# which efficively disables parallel processing. Please report any issues you
+# encounter. Generating dot graphs in parallel is controlled by the
+# DOT_NUM_THREADS setting.
+# Minimum value: 0, maximum value: 32, default value: 1.
+
+NUM_PROC_THREADS       = 1
+
 #---------------------------------------------------------------------------
 # Build related configuration options
 #---------------------------------------------------------------------------
@@ -424,6 +485,12 @@ EXTRACT_ALL            = YES
 
 EXTRACT_PRIVATE        = YES
 
+# If the EXTRACT_PRIV_VIRTUAL tag is set to YES, documented private virtual
+# methods of a class will be included in the documentation.
+# The default value is: NO.
+
+EXTRACT_PRIV_VIRTUAL   = NO
+
 # If the EXTRACT_PACKAGE tag is set to YES, all members with package or internal
 # scope will be included in the documentation.
 # The default value is: NO.
@@ -461,6 +528,13 @@ EXTRACT_LOCAL_METHODS  = YES
 
 EXTRACT_ANON_NSPACES   = YES
 
+# If this flag is set to YES, the name of an unnamed parameter in a declaration
+# will be determined by the corresponding definition. By default unnamed
+# parameters remain unnamed in the output.
+# The default value is: YES.
+
+RESOLVE_UNNAMED_PARAMS = YES
+
 # If the HIDE_UNDOC_MEMBERS tag is set to YES, doxygen will hide all
 # undocumented members inside documented classes or files. If set to NO these
 # members will be included in the various overviews, but no documentation
@@ -478,8 +552,8 @@ HIDE_UNDOC_MEMBERS     = NO
 HIDE_UNDOC_CLASSES     = NO
 
 # If the HIDE_FRIEND_COMPOUNDS tag is set to YES, doxygen will hide all friend
-# (class|struct|union) declarations. If set to NO, these declarations will be
-# included in the documentation.
+# declarations. If set to NO, these declarations will be included in the
+# documentation.
 # The default value is: NO.
 
 HIDE_FRIEND_COMPOUNDS  = NO
@@ -498,11 +572,18 @@ HIDE_IN_BODY_DOCS      = NO
 
 INTERNAL_DOCS          = YES
 
-# If the CASE_SENSE_NAMES tag is set to NO then doxygen will only generate file
-# names in lower-case letters. If set to YES, upper-case letters are also
-# allowed. This is useful if you have classes or files whose names only differ
-# in case and if your file system supports case sensitive file names. Windows
-# and Mac users are advised to set this option to NO.
+# With the correct setting of option CASE_SENSE_NAMES doxygen will better be
+# able to match the capabilities of the underlying filesystem. In case the
+# filesystem is case sensitive (i.e. it supports files in the same directory
+# whose names only differ in casing), the option must be set to YES to properly
+# deal with such files in case they appear in the input. For filesystems that
+# are not case sensitive the option should be be set to NO to properly deal with
+# output files written for symbols that only differ in casing, such as for two
+# classes, one named CLASS and the other named Class, and to also support
+# references to files without having to specify the exact matching casing. On
+# Windows (including Cygwin) and MacOS, users should typically set this option
+# to NO, whereas on Linux or other Unix flavors it should typically be set to
+# YES.
 # The default value is: system dependent.
 
 CASE_SENSE_NAMES       = YES
@@ -689,7 +770,7 @@ LAYOUT_FILE            =
 # The CITE_BIB_FILES tag can be used to specify one or more bib files containing
 # the reference definitions. This must be a list of .bib files. The .bib
 # extension is automatically appended if omitted. This requires the bibtex tool
-# to be installed. See also http://en.wikipedia.org/wiki/BibTeX for more info.
+# to be installed. See also https://en.wikipedia.org/wiki/BibTeX for more info.
 # For LaTeX the style of the bibliography can be controlled using
 # LATEX_BIB_STYLE. To use this feature you need bibtex and perl available in the
 # search path. See also \cite for info how to create references.
@@ -734,11 +815,21 @@ WARN_IF_DOC_ERROR      = YES
 # This WARN_NO_PARAMDOC option can be enabled to get warnings for functions that
 # are documented, but have no documentation for their parameters or return
 # value. If set to NO, doxygen will only warn about wrong or incomplete
-# parameter documentation, but not about the absence of documentation.
+# parameter documentation, but not about the absence of documentation. If
+# EXTRACT_ALL is set to YES then this flag will automatically be disabled.
 # The default value is: NO.
 
 WARN_NO_PARAMDOC       = NO
 
+# If the WARN_AS_ERROR tag is set to YES then doxygen will immediately stop when
+# a warning is encountered. If the WARN_AS_ERROR tag is set to FAIL_ON_WARNINGS
+# then doxygen will continue running as if WARN_AS_ERROR tag is set to NO, but
+# at the end of the doxygen process doxygen will return with a non-zero status.
+# Possible values are: NO, YES and FAIL_ON_WARNINGS.
+# The default value is: NO.
+
+WARN_AS_ERROR          = NO
+
 # The WARN_FORMAT tag determines the format of the warning messages that doxygen
 # can produce. The string should contain the $file, $line, and $text tags, which
 # will be replaced by the file and line number from which the warning originated
@@ -770,8 +861,8 @@ INPUT                  =
 # This tag can be used to specify the character encoding of the source files
 # that doxygen parses. Internally doxygen uses the UTF-8 encoding. Doxygen uses
 # libiconv (or the iconv built into libc) for the transcoding. See the libiconv
-# documentation (see: http://www.gnu.org/software/libiconv) for the list of
-# possible encodings.
+# documentation (see:
+# https://www.gnu.org/software/libiconv/) for the list of possible encodings.
 # The default value is: UTF-8.
 
 INPUT_ENCODING         = UTF-8
@@ -784,13 +875,20 @@ INPUT_ENCODING         = UTF-8
 # need to set EXTENSION_MAPPING for the extension otherwise the files are not
 # read by doxygen.
 #
+# Note the list of default checked file patterns might differ from the list of
+# default file extension mappings.
+#
 # If left blank the following patterns are tested:*.c, *.cc, *.cxx, *.cpp,
 # *.c++, *.java, *.ii, *.ixx, *.ipp, *.i++, *.inl, *.idl, *.ddl, *.odl, *.h,
 # *.hh, *.hxx, *.hpp, *.h++, *.cs, *.d, *.php, *.php4, *.php5, *.phtml, *.inc,
-# *.m, *.markdown, *.md, *.mm, *.dox, *.py, *.f90, *.f, *.for, *.tcl, *.vhd,
-# *.vhdl, *.ucf, *.qsf, *.as and *.js.
+# *.m, *.markdown, *.md, *.mm, *.dox (to be provided as doxygen C comment),
+# *.py, *.pyw, *.f90, *.f95, *.f03, *.f08, *.f18, *.f, *.for, *.vhd, *.vhdl,
+# *.ucf, *.qsf and *.ice.
 
-FILE_PATTERNS          = *.qc *.qh *.inc
+FILE_PATTERNS          = *.qc \
+                         *.qh \
+                         *.inc \
+                         *.md
 
 # The RECURSIVE tag can be used to specify whether or not subdirectories should
 # be searched for input files as well.
@@ -874,6 +972,10 @@ IMAGE_PATH             =
 # Note that the filter must not add or remove lines; it is applied before the
 # code is scanned, but not when the output code is generated. If lines are added
 # or removed, the anchors will not be placed correctly.
+#
+# Note that for custom extensions or not directly supported extensions you also
+# need to set EXTENSION_MAPPING for the extension otherwise the files are not
+# properly processed by doxygen.
 
 INPUT_FILTER           =
 
@@ -883,6 +985,10 @@ INPUT_FILTER           =
 # (like *.cpp=my_cpp_filter). See INPUT_FILTER for further information on how
 # filters are used. If the FILTER_PATTERNS tag is empty or if none of the
 # patterns match the file name, INPUT_FILTER is applied.
+#
+# Note that for custom extensions or not directly supported extensions you also
+# need to set EXTENSION_MAPPING for the extension otherwise the files are not
+# properly processed by doxygen.
 
 FILTER_PATTERNS        =
 
@@ -935,7 +1041,7 @@ INLINE_SOURCES         = YES
 STRIP_CODE_COMMENTS    = YES
 
 # If the REFERENCED_BY_RELATION tag is set to YES then for each documented
-# function all documented functions referencing it will be listed.
+# entity all documented functions referencing it will be listed.
 # The default value is: NO.
 
 REFERENCED_BY_RELATION = YES
@@ -967,12 +1073,12 @@ SOURCE_TOOLTIPS        = YES
 # If the USE_HTAGS tag is set to YES then the references to source code will
 # point to the HTML generated by the htags(1) tool instead of doxygen built-in
 # source browser. The htags tool is part of GNU's global source tagging system
-# (see http://www.gnu.org/software/global/global.html). You will need version
+# (see https://www.gnu.org/software/global/global.html). You will need version
 # 4.8.6 or higher.
 #
 # To use it do the following:
 # - Install the latest version of global
-# - Enable SOURCE_BROWSER and USE_HTAGS in the config file
+# - Enable SOURCE_BROWSER and USE_HTAGS in the configuration file
 # - Make sure the INPUT points to the root of the source tree
 # - Run doxygen as normal
 #
@@ -994,6 +1100,44 @@ USE_HTAGS              = NO
 
 VERBATIM_HEADERS       = YES
 
+# If the CLANG_ASSISTED_PARSING tag is set to YES then doxygen will use the
+# clang parser (see:
+# http://clang.llvm.org/) for more accurate parsing at the cost of reduced
+# performance. This can be particularly helpful with template rich C++ code for
+# which doxygen's built-in parser lacks the necessary type information.
+# Note: The availability of this option depends on whether or not doxygen was
+# generated with the -Duse_libclang=ON option for CMake.
+# The default value is: NO.
+
+CLANG_ASSISTED_PARSING = NO
+
+# If clang assisted parsing is enabled and the CLANG_ADD_INC_PATHS tag is set to
+# YES then doxygen will add the directory of each input to the include path.
+# The default value is: YES.
+
+CLANG_ADD_INC_PATHS    = YES
+
+# If clang assisted parsing is enabled you can provide the compiler with command
+# line options that you would normally use when invoking the compiler. Note that
+# the include paths will already be set by doxygen for the files and directories
+# specified with INPUT and INCLUDE_PATH.
+# This tag requires that the tag CLANG_ASSISTED_PARSING is set to YES.
+
+CLANG_OPTIONS          =
+
+# If clang assisted parsing is enabled you can provide the clang parser with the
+# path to the directory containing a file called compile_commands.json. This
+# file is the compilation database (see:
+# http://clang.llvm.org/docs/HowToSetupToolingForLLVM.html) containing the
+# options used when the source files were built. This is equivalent to
+# specifying the -p option to a clang tool, such as clang-check. These options
+# will then be passed to the parser. Any options specified with CLANG_OPTIONS
+# will be added as well.
+# Note: The availability of this option depends on whether or not doxygen was
+# generated with the -Duse_libclang=ON option for CMake.
+
+CLANG_DATABASE_PATH    =
+
 #---------------------------------------------------------------------------
 # Configuration options related to the alphabetical class index
 #---------------------------------------------------------------------------
@@ -1005,13 +1149,6 @@ VERBATIM_HEADERS       = YES
 
 ALPHABETICAL_INDEX     = YES
 
-# The COLS_IN_ALPHA_INDEX tag can be used to specify the number of columns in
-# which the alphabetical index list will be split.
-# Minimum value: 1, maximum value: 20, default value: 5.
-# This tag requires that the tag ALPHABETICAL_INDEX is set to YES.
-
-COLS_IN_ALPHA_INDEX    = 5
-
 # In case all classes in a project start with a common prefix, all classes will
 # be put under the same header in the alphabetical index. The IGNORE_PREFIX tag
 # can be used to specify a prefix (or a list of prefixes) that should be ignored
@@ -1112,7 +1249,7 @@ HTML_EXTRA_FILES       =
 # The HTML_COLORSTYLE_HUE tag controls the color of the HTML output. Doxygen
 # will adjust the colors in the style sheet and background images according to
 # this color. Hue is specified as an angle on a colorwheel, see
-# http://en.wikipedia.org/wiki/Hue for more information. For instance the value
+# https://en.wikipedia.org/wiki/Hue for more information. For instance the value
 # 0 represents red, 60 is yellow, 120 is green, 180 is cyan, 240 is blue, 300
 # purple, and 360 is red again.
 # Minimum value: 0, maximum value: 359, default value: 220.
@@ -1148,6 +1285,17 @@ HTML_COLORSTYLE_GAMMA  = 80
 
 HTML_TIMESTAMP         = YES
 
+# If the HTML_DYNAMIC_MENUS tag is set to YES then the generated HTML
+# documentation will contain a main index with vertical navigation menus that
+# are dynamically created via JavaScript. If disabled, the navigation index will
+# consists of multiple levels of tabs that are statically embedded in every HTML
+# page. Disable this option to support browsers that do not have JavaScript,
+# like the Qt help browser.
+# The default value is: YES.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+HTML_DYNAMIC_MENUS     = YES
+
 # If the HTML_DYNAMIC_SECTIONS tag is set to YES then the generated HTML
 # documentation will contain sections that can be hidden and shown after the
 # page has loaded.
@@ -1171,13 +1319,14 @@ HTML_INDEX_NUM_ENTRIES = 100
 
 # If the GENERATE_DOCSET tag is set to YES, additional index files will be
 # generated that can be used as input for Apple's Xcode 3 integrated development
-# environment (see: http://developer.apple.com/tools/xcode/), introduced with
-# OSX 10.5 (Leopard). To create a documentation set, doxygen will generate a
-# Makefile in the HTML output directory. Running make will produce the docset in
-# that directory and running make install will install the docset in
+# environment (see:
+# https://developer.apple.com/xcode/), introduced with OSX 10.5 (Leopard). To
+# create a documentation set, doxygen will generate a Makefile in the HTML
+# output directory. Running make will produce the docset in that directory and
+# running make install will install the docset in
 # ~/Library/Developer/Shared/Documentation/DocSets so that Xcode will find it at
-# startup. See http://developer.apple.com/tools/creatingdocsetswithdoxygen.html
-# for more information.
+# startup. See https://developer.apple.com/library/archive/featuredarticles/Doxy
+# genXcode/_index.html for more information.
 # The default value is: NO.
 # This tag requires that the tag GENERATE_HTML is set to YES.
 
@@ -1216,8 +1365,8 @@ DOCSET_PUBLISHER_NAME  = Publisher
 # If the GENERATE_HTMLHELP tag is set to YES then doxygen generates three
 # additional HTML index files: index.hhp, index.hhc, and index.hhk. The
 # index.hhp is a project file that can be read by Microsoft's HTML Help Workshop
-# (see: http://www.microsoft.com/en-us/download/details.aspx?id=21138) on
-# Windows.
+# (see:
+# https://www.microsoft.com/en-us/download/details.aspx?id=21138) on Windows.
 #
 # The HTML Help Workshop contains a compiler that can convert all HTML output
 # generated by doxygen into a single compiled HTML file (.chm). Compiled HTML
@@ -1247,7 +1396,7 @@ CHM_FILE               =
 HHC_LOCATION           =
 
 # The GENERATE_CHI flag controls if a separate .chi index file is generated
-# (YES) or that it should be included in the master .chm file (NO).
+# (YES) or that it should be included in the main .chm file (NO).
 # The default value is: NO.
 # This tag requires that the tag GENERATE_HTMLHELP is set to YES.
 
@@ -1292,7 +1441,8 @@ QCH_FILE               =
 
 # The QHP_NAMESPACE tag specifies the namespace to use when generating Qt Help
 # Project output. For more information please see Qt Help Project / Namespace
-# (see: http://qt-project.org/doc/qt-4.8/qthelpproject.html#namespace).
+# (see:
+# https://doc.qt.io/archives/qt-4.8/qthelpproject.html#namespace).
 # The default value is: org.doxygen.Project.
 # This tag requires that the tag GENERATE_QHP is set to YES.
 
@@ -1300,8 +1450,8 @@ QHP_NAMESPACE          = org.doxygen.Project
 
 # The QHP_VIRTUAL_FOLDER tag specifies the namespace to use when generating Qt
 # Help Project output. For more information please see Qt Help Project / Virtual
-# Folders (see: http://qt-project.org/doc/qt-4.8/qthelpproject.html#virtual-
-# folders).
+# Folders (see:
+# https://doc.qt.io/archives/qt-4.8/qthelpproject.html#virtual-folders).
 # The default value is: doc.
 # This tag requires that the tag GENERATE_QHP is set to YES.
 
@@ -1309,30 +1459,30 @@ QHP_VIRTUAL_FOLDER     = doc
 
 # If the QHP_CUST_FILTER_NAME tag is set, it specifies the name of a custom
 # filter to add. For more information please see Qt Help Project / Custom
-# Filters (see: http://qt-project.org/doc/qt-4.8/qthelpproject.html#custom-
-# filters).
+# Filters (see:
+# https://doc.qt.io/archives/qt-4.8/qthelpproject.html#custom-filters).
 # This tag requires that the tag GENERATE_QHP is set to YES.
 
 QHP_CUST_FILTER_NAME   =
 
 # The QHP_CUST_FILTER_ATTRS tag specifies the list of the attributes of the
 # custom filter to add. For more information please see Qt Help Project / Custom
-# Filters (see: http://qt-project.org/doc/qt-4.8/qthelpproject.html#custom-
-# filters).
+# Filters (see:
+# https://doc.qt.io/archives/qt-4.8/qthelpproject.html#custom-filters).
 # This tag requires that the tag GENERATE_QHP is set to YES.
 
 QHP_CUST_FILTER_ATTRS  =
 
 # The QHP_SECT_FILTER_ATTRS tag specifies the list of the attributes this
 # project's filter section matches. Qt Help Project / Filter Attributes (see:
-# http://qt-project.org/doc/qt-4.8/qthelpproject.html#filter-attributes).
+# https://doc.qt.io/archives/qt-4.8/qthelpproject.html#filter-attributes).
 # This tag requires that the tag GENERATE_QHP is set to YES.
 
 QHP_SECT_FILTER_ATTRS  =
 
-# The QHG_LOCATION tag can be used to specify the location of Qt's
-# qhelpgenerator. If non-empty doxygen will try to run qhelpgenerator on the
-# generated .qhp file.
+# The QHG_LOCATION tag can be used to specify the location (absolute path
+# including file name) of Qt's qhelpgenerator. If non-empty doxygen will try to
+# run qhelpgenerator on the generated .qhp file.
 # This tag requires that the tag GENERATE_QHP is set to YES.
 
 QHG_LOCATION           =
@@ -1366,7 +1516,7 @@ ECLIPSE_DOC_ID         = org.doxygen.Project
 # The default value is: NO.
 # This tag requires that the tag GENERATE_HTML is set to YES.
 
-DISABLE_INDEX          = NO
+DISABLE_INDEX          = YES
 
 # The GENERATE_TREEVIEW tag is used to specify whether a tree-like index
 # structure should be generated to display hierarchical information. If the tag
@@ -1409,6 +1559,17 @@ TREEVIEW_WIDTH         = 250
 
 EXT_LINKS_IN_WINDOW    = NO
 
+# If the HTML_FORMULA_FORMAT option is set to svg, doxygen will use the pdf2svg
+# tool (see https://github.com/dawbarton/pdf2svg) or inkscape (see
+# https://inkscape.org) to generate formulas as SVG images instead of PNGs for
+# the HTML output. These images will generally look nicer at scaled resolutions.
+# Possible values are: png (the default) and svg (looks nicer but requires the
+# pdf2svg or inkscape tool).
+# The default value is: png.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+HTML_FORMULA_FORMAT    = svg
+
 # Use this tag to change the font size of LaTeX formulas included as images in
 # the HTML documentation. When you change the font size after a successful
 # doxygen run you need to manually remove any form_*.png images from the HTML
@@ -1418,7 +1579,7 @@ EXT_LINKS_IN_WINDOW    = NO
 
 FORMULA_FONTSIZE       = 10
 
-# Use the FORMULA_TRANPARENT tag to determine whether or not the images
+# Use the FORMULA_TRANSPARENT tag to determine whether or not the images
 # generated for formulas are transparent PNGs. Transparent PNGs are not
 # supported properly for IE 6.0, but are supported on all modern browsers.
 #
@@ -1429,8 +1590,14 @@ FORMULA_FONTSIZE       = 10
 
 FORMULA_TRANSPARENT    = YES
 
+# The FORMULA_MACROFILE can contain LaTeX \newcommand and \renewcommand commands
+# to create new LaTeX commands to be used in formulas as building blocks. See
+# the section "Including formulas" for details.
+
+FORMULA_MACROFILE      =
+
 # Enable the USE_MATHJAX option to render LaTeX formulas using MathJax (see
-# http://www.mathjax.org) which uses client side Javascript for the rendering
+# https://www.mathjax.org) which uses client side JavaScript for the rendering
 # instead of using pre-rendered bitmaps. Use this if you do not have LaTeX
 # installed or if you want to formulas look prettier in the HTML output. When
 # enabled you may also need to install MathJax separately and configure the path
@@ -1442,7 +1609,7 @@ USE_MATHJAX            = NO
 
 # When MathJax is enabled you can set the default output format to be used for
 # the MathJax output. See the MathJax site (see:
-# http://docs.mathjax.org/en/latest/output.html) for more details.
+# http://docs.mathjax.org/en/v2.7-latest/output.html) for more details.
 # Possible values are: HTML-CSS (which is slower, but has the best
 # compatibility), NativeMML (i.e. MathML) and SVG.
 # The default value is: HTML-CSS.
@@ -1457,8 +1624,8 @@ MATHJAX_FORMAT         = HTML-CSS
 # MATHJAX_RELPATH should be ../mathjax. The default value points to the MathJax
 # Content Delivery Network so you can quickly see the result without installing
 # MathJax. However, it is strongly recommended to install a local copy of
-# MathJax from http://www.mathjax.org before deployment.
-# The default value is: http://cdn.mathjax.org/mathjax/latest.
+# MathJax from https://www.mathjax.org before deployment.
+# The default value is: https://cdn.jsdelivr.net/npm/mathjax@2.
 # This tag requires that the tag USE_MATHJAX is set to YES.
 
 MATHJAX_RELPATH        = http://cdn.mathjax.org/mathjax/latest
@@ -1472,7 +1639,8 @@ MATHJAX_EXTENSIONS     =
 
 # The MATHJAX_CODEFILE tag can be used to specify a file with javascript pieces
 # of code that will be used on startup of the MathJax code. See the MathJax site
-# (see: http://docs.mathjax.org/en/latest/output.html) for more details. For an
+# (see:
+# http://docs.mathjax.org/en/v2.7-latest/output.html) for more details. For an
 # example see the documentation.
 # This tag requires that the tag USE_MATHJAX is set to YES.
 
@@ -1500,7 +1668,7 @@ MATHJAX_CODEFILE       =
 SEARCHENGINE           = YES
 
 # When the SERVER_BASED_SEARCH tag is enabled the search engine will be
-# implemented using a web server instead of a web client using Javascript. There
+# implemented using a web server instead of a web client using JavaScript. There
 # are two flavors of web server based searching depending on the EXTERNAL_SEARCH
 # setting. When disabled, doxygen will generate a PHP script for searching and
 # an index file used by the script. When EXTERNAL_SEARCH is enabled the indexing
@@ -1509,7 +1677,7 @@ SEARCHENGINE           = YES
 # The default value is: NO.
 # This tag requires that the tag SEARCHENGINE is set to YES.
 
-SERVER_BASED_SEARCH    = NO
+SERVER_BASED_SEARCH    = YES
 
 # When EXTERNAL_SEARCH tag is enabled doxygen will no longer generate the PHP
 # script for searching. Instead the search results are written to an XML file
@@ -1519,7 +1687,8 @@ SERVER_BASED_SEARCH    = NO
 #
 # Doxygen ships with an example indexer (doxyindexer) and search engine
 # (doxysearch.cgi) which are based on the open source search engine library
-# Xapian (see: http://xapian.org/).
+# Xapian (see:
+# https://xapian.org/).
 #
 # See the section "External Indexing and Searching" for details.
 # The default value is: NO.
@@ -1532,8 +1701,9 @@ EXTERNAL_SEARCH        = NO
 #
 # Doxygen ships with an example indexer (doxyindexer) and search engine
 # (doxysearch.cgi) which are based on the open source search engine library
-# Xapian (see: http://xapian.org/). See the section "External Indexing and
-# Searching" for details.
+# Xapian (see:
+# https://xapian.org/). See the section "External Indexing and Searching" for
+# details.
 # This tag requires that the tag SEARCHENGINE is set to YES.
 
 SEARCHENGINE_URL       =
@@ -1584,21 +1754,35 @@ LATEX_OUTPUT           = latex
 # The LATEX_CMD_NAME tag can be used to specify the LaTeX command name to be
 # invoked.
 #
-# Note that when enabling USE_PDFLATEX this option is only used for generating
-# bitmaps for formulas in the HTML output, but not in the Makefile that is
-# written to the output directory.
-# The default file is: latex.
+# Note that when not enabling USE_PDFLATEX the default is latex when enabling
+# USE_PDFLATEX the default is pdflatex and when in the later case latex is
+# chosen this is overwritten by pdflatex. For specific output languages the
+# default can have been set differently, this depends on the implementation of
+# the output language.
 # This tag requires that the tag GENERATE_LATEX is set to YES.
 
 LATEX_CMD_NAME         = latex
 
 # The MAKEINDEX_CMD_NAME tag can be used to specify the command name to generate
 # index for LaTeX.
+# Note: This tag is used in the Makefile / make.bat.
+# See also: LATEX_MAKEINDEX_CMD for the part in the generated output file
+# (.tex).
 # The default file is: makeindex.
 # This tag requires that the tag GENERATE_LATEX is set to YES.
 
 MAKEINDEX_CMD_NAME     = makeindex
 
+# The LATEX_MAKEINDEX_CMD tag can be used to specify the command name to
+# generate index for LaTeX. In case there is no backslash (\) as first character
+# it will be automatically added in the LaTeX code.
+# Note: This tag is used in the generated output file (.tex).
+# See also: MAKEINDEX_CMD_NAME for the part in the Makefile / make.bat.
+# The default value is: makeindex.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+LATEX_MAKEINDEX_CMD    = makeindex
+
 # If the COMPACT_LATEX tag is set to YES, doxygen generates more compact LaTeX
 # documents. This may be useful for small projects and may help to save some
 # trees in general.
@@ -1683,9 +1867,11 @@ LATEX_EXTRA_FILES      =
 
 PDF_HYPERLINKS         = YES
 
-# If the USE_PDFLATEX tag is set to YES, doxygen will use pdflatex to generate
-# the PDF file directly from the LaTeX files. Set this option to YES, to get a
-# higher quality PDF documentation.
+# If the USE_PDFLATEX tag is set to YES, doxygen will use the engine as
+# specified with LATEX_CMD_NAME to generate the PDF file directly from the LaTeX
+# files. Set this option to YES, to get a higher quality PDF documentation.
+#
+# See also section LATEX_CMD_NAME for selecting the engine.
 # The default value is: YES.
 # This tag requires that the tag GENERATE_LATEX is set to YES.
 
@@ -1719,12 +1905,28 @@ LATEX_SOURCE_CODE      = NO
 
 # The LATEX_BIB_STYLE tag can be used to specify the style to use for the
 # bibliography, e.g. plainnat, or ieeetr. See
-# http://en.wikipedia.org/wiki/BibTeX and \cite for more info.
+# https://en.wikipedia.org/wiki/BibTeX and \cite for more info.
 # The default value is: plain.
 # This tag requires that the tag GENERATE_LATEX is set to YES.
 
 LATEX_BIB_STYLE        = plain
 
+# If the LATEX_TIMESTAMP tag is set to YES then the footer of each generated
+# page will contain the date and time when the page was generated. Setting this
+# to NO can help when comparing the output of multiple runs.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+LATEX_TIMESTAMP        = NO
+
+# The LATEX_EMOJI_DIRECTORY tag is used to specify the (relative or absolute)
+# path from which the emoji images will be read. If a relative path is entered,
+# it will be relative to the LATEX_OUTPUT directory. If left blank the
+# LATEX_OUTPUT directory will be used.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+LATEX_EMOJI_DIRECTORY  =
+
 #---------------------------------------------------------------------------
 # Configuration options related to the RTF output
 #---------------------------------------------------------------------------
@@ -1764,9 +1966,9 @@ COMPACT_RTF            = NO
 
 RTF_HYPERLINKS         = NO
 
-# Load stylesheet definitions from file. Syntax is similar to doxygen's config
-# file, i.e. a series of assignments. You only have to provide replacements,
-# missing definitions are set to their default value.
+# Load stylesheet definitions from file. Syntax is similar to doxygen's
+# configuration file, i.e. a series of assignments. You only have to provide
+# replacements, missing definitions are set to their default value.
 #
 # See also section "Doxygen usage" for information on how to generate the
 # default style sheet that doxygen normally uses.
@@ -1775,8 +1977,8 @@ RTF_HYPERLINKS         = NO
 RTF_STYLESHEET_FILE    =
 
 # Set optional variables used in the generation of an RTF document. Syntax is
-# similar to doxygen's config file. A template extensions file can be generated
-# using doxygen -e rtf extensionFile.
+# similar to doxygen's configuration file. A template extensions file can be
+# generated using doxygen -e rtf extensionFile.
 # This tag requires that the tag GENERATE_RTF is set to YES.
 
 RTF_EXTENSIONS_FILE    =
@@ -1862,6 +2064,13 @@ XML_OUTPUT             = xml
 
 XML_PROGRAMLISTING     = YES
 
+# If the XML_NS_MEMB_FILE_SCOPE tag is set to YES, doxygen will include
+# namespace members in file scope as well, matching the HTML output.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_XML is set to YES.
+
+XML_NS_MEMB_FILE_SCOPE = NO
+
 #---------------------------------------------------------------------------
 # Configuration options related to the DOCBOOK output
 #---------------------------------------------------------------------------
@@ -1894,9 +2103,9 @@ DOCBOOK_PROGRAMLISTING = NO
 #---------------------------------------------------------------------------
 
 # If the GENERATE_AUTOGEN_DEF tag is set to YES, doxygen will generate an
-# AutoGen Definitions (see http://autogen.sf.net) file that captures the
-# structure of the code including all documentation. Note that this feature is
-# still experimental and incomplete at the moment.
+# AutoGen Definitions (see http://autogen.sourceforge.net/) file that captures
+# the structure of the code including all documentation. Note that this feature
+# is still experimental and incomplete at the moment.
 # The default value is: NO.
 
 GENERATE_AUTOGEN_DEF   = NO
@@ -1996,21 +2205,24 @@ INCLUDE_FILE_PATTERNS  =
 # recursively expanded use the := operator instead of the = operator.
 # This tag requires that the tag ENABLE_PREPROCESSING is set to YES.
 
-PREDEFINED             = \
-    "XONOTIC" \
-    "USING(name, T)=using name = T" \
-    "CLASS(name, base)=class name : public base { public:" \
-    "INIT(class)=class::class()" \
-    "CONSTRUCTOR(class)=class::class(" \
-    "DESTRUCTOR(class)=class::~class()" \
-    "ATTRIB(class, name, T, val)=T name = val" \
-    "ATTRIB_STRZONE(class, name, T, val)=T name = val" \
-    "ATTRIBARRAY(class, name, T, val)=T name[val]" \
-    "STATIC_ATTRIB(class, name, T, val)=static T name = val" \
-    "STATIC_ATTRIB_STRZONE(class, name, T, val)=static T name = val" \
-    "METHOD(class, name, prototype)=virtual void class::name()" \
-    "ENDCLASS(class)=};" \
-    __STDC__
+PREDEFINED             = XONOTIC \
+                         SVQC \
+                         CSQC \
+                         MENUQC \
+                         GAMEQC \
+                         "USING(name, T)=using name = T" \
+                         "CLASS(name, base)=class name : public base { public:" \
+                         INIT(class)=class::class() \
+                         CONSTRUCTOR(class)=class::class( \
+                         DESTRUCTOR(class)=class::~class() \
+                         "ATTRIB(class, name, T, val)=T name = val" \
+                         "ATTRIB_STRZONE(class, name, T, val)=T name = val" \
+                         "ATTRIBARRAY(class, name, T, val)=T name[val]" \
+                         "STATIC_ATTRIB(class, name, T, val)=static T name = val" \
+                         "STATIC_ATTRIB_STRZONE(class, name, T, val)=static T name = val" \
+                         "METHOD(class, name, prototype)=virtual void class::name()" \
+                         ENDCLASS(class)=}; \
+                         __STDC__
 
 # If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then this
 # tag can be used to specify a list of macro names that should be expanded. The
@@ -2019,16 +2231,19 @@ PREDEFINED             = \
 # definition found in the source code.
 # This tag requires that the tag ENABLE_PREPROCESSING is set to YES.
 
-EXPAND_AS_DEFINED      = \
-    USING \
-    CLASS \
-    INIT CONSTRUCTOR DESTRUCTOR \
-    ATTRIB ATTRIB_STRZONE \
-    STATIC_ATTRIB STATIC_ATTRIB_STRZONE \
-    METHOD \
-    ENDCLASS \
-    LABEL \
-    __STDC__
+EXPAND_AS_DEFINED      = USING \
+                         CLASS \
+                         INIT \
+                         CONSTRUCTOR \
+                         DESTRUCTOR \
+                         ATTRIB \
+                         ATTRIB_STRZONE \
+                         STATIC_ATTRIB \
+                         STATIC_ATTRIB_STRZONE \
+                         METHOD \
+                         ENDCLASS \
+                         LABEL \
+                         __STDC__
 
 # If the SKIP_FUNCTION_MACROS tag is set to YES then doxygen's preprocessor will
 # remove all references to function-like macros that are alone on a line, have
@@ -2086,12 +2301,6 @@ EXTERNAL_GROUPS        = YES
 
 EXTERNAL_PAGES         = YES
 
-# The PERL_PATH should be the absolute path and name of the perl script
-# interpreter (i.e. the result of 'which perl').
-# The default file (with absolute path) is: /usr/bin/perl.
-
-PERL_PATH              = /usr/bin/perl
-
 #---------------------------------------------------------------------------
 # Configuration options related to the dot tool
 #---------------------------------------------------------------------------
@@ -2105,15 +2314,6 @@ PERL_PATH              = /usr/bin/perl
 
 CLASS_DIAGRAMS         = YES
 
-# You can define message sequence charts within doxygen comments using the \msc
-# command. Doxygen will then run the mscgen tool (see:
-# http://www.mcternan.me.uk/mscgen/)) to produce the chart and insert it in the
-# documentation. The MSCGEN_PATH tag allows you to specify the directory where
-# the mscgen tool resides. If left empty the tool is assumed to be found in the
-# default search path.
-
-MSCGEN_PATH            =
-
 # You can include diagrams made with dia in doxygen documentation. Doxygen will
 # then run dia to produce the diagram and insert it in the documentation. The
 # DIA_PATH tag allows you to specify the directory where the dia binary resides.
@@ -2132,7 +2332,7 @@ HIDE_UNDOC_RELATIONS   = NO
 # http://www.graphviz.org/), a graph visualization toolkit from AT&T and Lucent
 # Bell Labs. The other options in this section have no effect if this option is
 # set to NO
-# The default value is: NO.
+# The default value is: YES.
 
 HAVE_DOT               = YES
 
@@ -2144,7 +2344,7 @@ HAVE_DOT               = YES
 # Minimum value: 0, maximum value: 32, default value: 0.
 # This tag requires that the tag HAVE_DOT is set to YES.
 
-DOT_NUM_THREADS        = 2
+DOT_NUM_THREADS        = 0
 
 # When you want a differently looking font in the dot files that doxygen
 # generates you can specify the font name using DOT_FONTNAME. You need to make
@@ -2211,10 +2411,32 @@ UML_LOOK               = NO
 # but if the number exceeds 15, the total amount of fields shown is limited to
 # 10.
 # Minimum value: 0, maximum value: 100, default value: 10.
-# This tag requires that the tag HAVE_DOT is set to YES.
+# This tag requires that the tag UML_LOOK is set to YES.
 
 UML_LIMIT_NUM_FIELDS   = 10
 
+# If the DOT_UML_DETAILS tag is set to NO, doxygen will show attributes and
+# methods without types and arguments in the UML graphs. If the DOT_UML_DETAILS
+# tag is set to YES, doxygen will add type and arguments for attributes and
+# methods in the UML graphs. If the DOT_UML_DETAILS tag is set to NONE, doxygen
+# will not generate fields with class member information in the UML graphs. The
+# class diagrams will look similar to the default class diagrams but using UML
+# notation for the relationships.
+# Possible values are: NO, YES and NONE.
+# The default value is: NO.
+# This tag requires that the tag UML_LOOK is set to YES.
+
+DOT_UML_DETAILS        = NO
+
+# The DOT_WRAP_THRESHOLD tag can be used to set the maximum number of characters
+# to display on a single line. If the actual line length exceeds this threshold
+# significantly it will wrapped across multiple lines. Some heuristics are apply
+# to avoid ugly line breaks.
+# Minimum value: 0, maximum value: 1000, default value: 17.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+DOT_WRAP_THRESHOLD     = 17
+
 # If the TEMPLATE_RELATIONS tag is set to YES then the inheritance and
 # collaboration graphs will show the relations between templates and their
 # instances.
@@ -2251,7 +2473,7 @@ INCLUDED_BY_GRAPH      = YES
 # The default value is: NO.
 # This tag requires that the tag HAVE_DOT is set to YES.
 
-CALL_GRAPH             = YES
+CALL_GRAPH             = NO
 
 # If the CALLER_GRAPH tag is set to YES then doxygen will generate a caller
 # dependency graph for every global function or class method.
@@ -2263,7 +2485,7 @@ CALL_GRAPH             = YES
 # The default value is: NO.
 # This tag requires that the tag HAVE_DOT is set to YES.
 
-CALLER_GRAPH           = YES
+CALLER_GRAPH           = NO
 
 # If the GRAPHICAL_HIERARCHY tag is set to YES then doxygen will graphical
 # hierarchy of all classes instead of a textual one.
@@ -2288,7 +2510,9 @@ DIRECTORY_GRAPH        = YES
 # Note: If you choose svg you need to set HTML_FILE_EXTENSION to xhtml in order
 # to make the SVG files visible in IE 9+ (other browsers do not have this
 # requirement).
-# Possible values are: png, jpg, gif, svg, png:gd, png:gd:gd, png:cairo,
+# Possible values are: png, png:cairo, png:cairo:cairo, png:cairo:gd, png:gd,
+# png:gd:gd, jpg, jpg:cairo, jpg:cairo:gd, jpg:gd, jpg:gd:gd, gif, gif:cairo,
+# gif:cairo:gd, gif:gd, gif:gd:gd, svg, png:gd, png:gd:gd, png:cairo,
 # png:cairo:gd, png:cairo:cairo, png:cairo:gdiplus, png:gdiplus and
 # png:gdiplus:gdiplus.
 # The default value is: png.
@@ -2341,6 +2565,11 @@ DIAFILE_DIRS           =
 
 PLANTUML_JAR_PATH      =
 
+# When using plantuml, the PLANTUML_CFG_FILE tag can be used to specify a
+# configuration file for plantuml.
+
+PLANTUML_CFG_FILE      =
+
 # When using plantuml, the specified paths are searched for files specified by
 # the !include statement in a plantuml block.
 
@@ -2399,9 +2628,11 @@ DOT_MULTI_TARGETS      = YES
 
 GENERATE_LEGEND        = YES
 
-# If the DOT_CLEANUP tag is set to YES, doxygen will remove the intermediate dot
+# If the DOT_CLEANUP tag is set to YES, doxygen will remove the intermediate
 # files that are used to generate the various graphs.
+#
+# Note: This setting is not only used for dot files but also for msc and
+# plantuml temporary files.
 # The default value is: YES.
-# This tag requires that the tag HAVE_DOT is set to YES.
 
 DOT_CLEANUP            = YES
index 58c2727f7705a34bdb4a6ae3510804c970b25671..64606a6846f413d771bcd79fba52645156660d1d 100644 (file)
@@ -30,8 +30,6 @@ void Announcer_Countdown(entity this)
                centerprint_ClearTitle();
                return;
        }
-       if(starttime <= time && roundstarttime != starttime) // game start time has passed
-               announcer_5min = announcer_1min = false; // reset maptime announcers now as well
 
        bool inround = (roundstarttime && time >= starttime);
        float countdown = (inround ? roundstarttime - time : starttime - time);
@@ -135,9 +133,25 @@ MACRO_END
 
 void Announcer_Time()
 {
+       static bool warmup_stage_prev;
+
        if(intermission)
                return;
 
+       if (warmup_stage != warmup_stage_prev)
+       {
+               announcer_5min = announcer_1min = false;
+               warmup_stage_prev = warmup_stage;
+               return;
+       }
+
+       float starttime = STAT(GAMESTARTTIME);
+       if(time < starttime)
+       {
+               announcer_5min = announcer_1min = false;
+               return;
+       }
+
        float timeleft;
        if(warmup_stage)
        {
@@ -148,7 +162,7 @@ void Announcer_Time()
                        timeleft = 0;
        }
        else
-               timeleft = max(0, STAT(TIMELIMIT) * 60 + STAT(GAMESTARTTIME) - time);
+               timeleft = max(0, STAT(TIMELIMIT) * 60 + starttime - time);
 
        if(autocvar_cl_announcer_maptime >= 2)
                ANNOUNCER_CHECKMINUTE(5);
index 252c5032dee4f7687dd5af0d3bc04e6673274393..7c9234fae33511d22a321fe1188f550c14c8cd3e 100644 (file)
@@ -236,7 +236,7 @@ void CSQCPlayer_ModelAppearance_Apply(entity this, bool islocalplayer)
 
        bool forceplayercolors_enabled = false;
        #define fpc autocvar_cl_forceplayercolors
-       if (ISGAMETYPE(DUEL))
+       if (gametype.m_1v1)
        {
                if ((myteam != NUM_SPECTATOR) && (fpc == 1 || fpc == 2 || fpc == 3 || fpc == 5))
                        forceplayercolors_enabled = true;
@@ -301,7 +301,7 @@ void CSQCPlayer_ModelAppearance_Apply(entity this, bool islocalplayer)
        {
                if(autocvar_cl_forcemyplayercolors && islocalplayer)
                        this.colormap = 1024 + autocvar_cl_forcemyplayercolors;
-               else if (autocvar_cl_forceuniqueplayercolors && !islocalplayer && !ISGAMETYPE(DUEL))
+               else if (autocvar_cl_forceuniqueplayercolors && !islocalplayer && !gametype.m_1v1)
                {
                        // Assign each enemy unique colors
                        // pick colors from 0 to 14 since 15 is the rainbow color
index 2c05285e282a13a3dbfdc582b57d0adbe709442d..78ed8442adecd81d685aaba6d2a183f6c47464bf 100644 (file)
@@ -537,27 +537,21 @@ float HUD_Panel_InputEvent(float bInputType, float nPrimary, float nSecondary)
                return true;
        }
 
-       // allow console bind to work
-       string con_keys = findkeysforcommand("toggleconsole", 0);
-       int keys = tokenize(con_keys); // findkeysforcommand returns data for this
-
-       bool hit_con_bind = false;
-       int i;
-       for (i = 0; i < keys; ++i)
-       {
-               if(nPrimary == stof(argv(i)))
-                       hit_con_bind = true;
-       }
-
+       int hudShiftState_prev = hudShiftState;
+       int mouseClicked_prev = mouseClicked;
        if(key_pressed) {
                if(nPrimary == K_ALT) hudShiftState |= S_ALT;
                if(nPrimary == K_CTRL) hudShiftState |= S_CTRL;
                if(nPrimary == K_SHIFT) hudShiftState |= S_SHIFT;
+               if(nPrimary == K_MOUSE1) mouseClicked |= S_MOUSE1;
+               if(nPrimary == K_MOUSE2) mouseClicked |= S_MOUSE2;
        }
        else {
                if(nPrimary == K_ALT) hudShiftState -= (hudShiftState & S_ALT);
                if(nPrimary == K_CTRL) hudShiftState -= (hudShiftState & S_CTRL);
                if(nPrimary == K_SHIFT) hudShiftState -= (hudShiftState & S_SHIFT);
+               if(nPrimary == K_MOUSE1) mouseClicked -= (mouseClicked & S_MOUSE1);
+               if(nPrimary == K_MOUSE2) mouseClicked -= (mouseClicked & S_MOUSE2);
        }
 
        if(nPrimary == K_CTRL)
@@ -576,21 +570,7 @@ float HUD_Panel_InputEvent(float bInputType, float nPrimary, float nSecondary)
                }
        }
 
-       if(nPrimary == K_MOUSE1)
-       {
-               if(key_pressed)
-                       mouseClicked |= S_MOUSE1;
-               else
-                       mouseClicked -= (mouseClicked & S_MOUSE1);
-       }
-       else if(nPrimary == K_MOUSE2)
-       {
-               if(key_pressed)
-                       mouseClicked |= S_MOUSE2;
-               else
-                       mouseClicked -= (mouseClicked & S_MOUSE2);
-       }
-       else if(nPrimary == K_ESCAPE)
+       if(nPrimary == K_ESCAPE)
        {
                if (!key_pressed)
                        return true;
@@ -639,7 +619,7 @@ float HUD_Panel_InputEvent(float bInputType, float nPrimary, float nSecondary)
                vector candidate_pos = '0 0 0';
                const float LEVELS_NUM = 4;
                float level_height = vid_conheight / LEVELS_NUM;
-LABEL(find_tab_panel)
+               LABEL(find_tab_panel)
                level = floor(tab_panel_pos.y / level_height) * level_height; //starting level
                candidate_pos.x = (!tab_backward) ? vid_conwidth : 0;
                start_posX = tab_panel_pos.x;
@@ -647,7 +627,7 @@ LABEL(find_tab_panel)
                k=0;
                while(++k)
                {
-                       for(i = 0; i < REGISTRY_COUNT(hud_panels); ++i)
+                       for(int i = 0; i < REGISTRY_COUNT(hud_panels); ++i)
                        {
                                panel = REGISTRY_GET(hud_panels, i);
                                if(!(panel.panel_configflags & PANEL_CONFIG_MAIN))
@@ -787,8 +767,19 @@ LABEL(find_tab_panel)
                if (highlightedPanel)
                        HUD_Panel_EnableMenu();
        }
-       else if(hit_con_bind || nPrimary == K_PAUSE)
+       else if(nPrimary == K_PAUSE)
                return false;
+       else if (hudShiftState_prev == hudShiftState && mouseClicked_prev == mouseClicked)
+       {
+               // allow console bind to work
+               string con_keys = findkeysforcommand("toggleconsole", 0);
+               int keys = tokenize(con_keys); // findkeysforcommand returns data for this
+               for (int i = 0; i < keys; ++i)
+               {
+                       if(nPrimary == stof(argv(i)))
+                               return false; // hit console bind
+               }
+       }
 
        return true;
 }
index 3c3a5ba864c5ea2a8e0be619c58337d5b20007ad..245bdad1ba9b3d7178830fc470913ef4222bdc1d 100644 (file)
@@ -449,34 +449,26 @@ bool QuickMenu_InputEvent(int bInputType, float nPrimary, float nSecondary)
        // at this point bInputType can only be 0 or 1 (key pressed or released)
        bool key_pressed = (bInputType == 0);
 
+       int hudShiftState_prev = hudShiftState;
+       int mouseClicked_prev = mouseClicked;
        if(key_pressed)
        {
                if(nPrimary == K_ALT) hudShiftState |= S_ALT;
                if(nPrimary == K_CTRL) hudShiftState |= S_CTRL;
                if(nPrimary == K_SHIFT) hudShiftState |= S_SHIFT;
+               if(nPrimary == K_MOUSE1) mouseClicked |= S_MOUSE1;
+               if(nPrimary == K_MOUSE2) mouseClicked |= S_MOUSE2;
        }
        else
        {
                if(nPrimary == K_ALT) hudShiftState -= (hudShiftState & S_ALT);
                if(nPrimary == K_CTRL) hudShiftState -= (hudShiftState & S_CTRL);
                if(nPrimary == K_SHIFT) hudShiftState -= (hudShiftState & S_SHIFT);
+               if(nPrimary == K_MOUSE1) mouseClicked -= (mouseClicked & S_MOUSE1);
+               if(nPrimary == K_MOUSE2) mouseClicked -= (mouseClicked & S_MOUSE2);
        }
 
-       if(nPrimary == K_MOUSE1)
-       {
-               if(key_pressed)
-                       mouseClicked |= S_MOUSE1;
-               else
-                       mouseClicked -= (mouseClicked & S_MOUSE1);
-       }
-       else if(nPrimary == K_MOUSE2)
-       {
-               if(key_pressed)
-                       mouseClicked |= S_MOUSE2;
-               else
-                       mouseClicked -= (mouseClicked & S_MOUSE2);
-       }
-       else if(nPrimary == K_ESCAPE && key_pressed)
+       if(nPrimary == K_ESCAPE && key_pressed)
        {
                QuickMenu_Close();
        }
@@ -484,13 +476,12 @@ bool QuickMenu_InputEvent(int bInputType, float nPrimary, float nSecondary)
        {
                QuickMenu_Page_ActiveEntry(stof(chr2str(nPrimary)));
        }
-       else
+       else if (hudShiftState_prev == hudShiftState && mouseClicked_prev == mouseClicked)
        {
                // allow console bind to work
                string con_keys = findkeysforcommand("toggleconsole", 0);
                int keys = tokenize(con_keys); // findkeysforcommand returns data for this
-               int i;
-               for (i = 0; i < keys; ++i)
+               for (int i = 0; i < keys; ++i)
                {
                        if(nPrimary == stof(argv(i)))
                                return false; // hit console bind
index 034ae3802307b043d6f37c6bdab35394c4529ce7..cdf635f2273063bce61e865a5add4bec653ef33d 100644 (file)
@@ -12,12 +12,12 @@ void HUD_Timer_Export(int fh)
 
 vector HUD_Timer_Color(float timeleft)
 {
-       if(timeleft >= 300)
-               return '1 1 1'; //white
-       else if(timeleft >= 60)
-               return '1 1 0'; //yellow
+       if(timeleft <= 60)
+               return '1 0 0'; // red
+       else if(timeleft <= 300)
+               return '1 1 0'; // yellow
        else
-               return '1 0 0'; //red
+               return '1 1 1'; // white
 }
 
 float HUD_Timer_TimeElapsed(float curtime, float starttime)
index 298e62e0035af660e920317f57de78e2616aedf3..cacf13fa55c59fe6d6929445b8dad7806e841fe6 100644 (file)
@@ -6,7 +6,7 @@
 CLASS(Duel, Gametype)
     INIT(Duel)
     {
-        this.gametype_init(this, _("Duel"),"duel","g_duel",GAMETYPE_FLAG_USEPOINTS,"","timelimit=10 pointlimit=0 leadlimit=0",_("Fight in a one versus one arena battle to decide the winner"));
+        this.gametype_init(this, _("Duel"),"duel","g_duel",GAMETYPE_FLAG_USEPOINTS | GAMETYPE_FLAG_1V1,"","timelimit=10 pointlimit=0 leadlimit=0",_("Fight in a one versus one arena battle to decide the winner"));
     }
     METHOD(Duel, m_isAlwaysSupported, bool(Gametype this, int spawnpoints, float diameter))
     {
index 0ac0c6230548692303cf5c685cdd10dddbb6f882..a7bf6ce0aab77fdcb4718c0f084998c30da9f517 100644 (file)
@@ -22,6 +22,7 @@ const int GAMETYPE_FLAG_PREFERRED       = BIT(2); // preferred (when available)
 const int GAMETYPE_FLAG_PRIORITY        = BIT(3); // priority selection when preferred gametype isn't available in random selections
 const int GAMETYPE_FLAG_HIDELIMITS      = BIT(4); // don't display a score limit needed for winning the match in the scoreboard
 const int GAMETYPE_FLAG_WEAPONARENA     = BIT(5); // gametype has a forced weapon arena, weapon arena mutators should disable themselves when this is set
+const int GAMETYPE_FLAG_1V1             = BIT(6); // 1v1 gameplay
 
 int MAPINFO_TYPE_ALL;
 .int m_flags;
@@ -44,6 +45,8 @@ CLASS(Gametype, Object)
     ATTRIB(Gametype, m_hidelimits, bool, false);
     /** does this gametype enforce its own weapon arena? */
     ATTRIB(Gametype, m_weaponarena, bool, false);
+    /** 1v1 gameplay? */
+    ATTRIB(Gametype, m_1v1, bool, false);
     /** game type defaults */
     ATTRIB(Gametype, model2, string);
     /** game type description */
@@ -111,6 +114,7 @@ CLASS(Gametype, Object)
         this.m_priority = ((gflags & GAMETYPE_FLAG_PREFERRED) ? 2 : ((gflags & GAMETYPE_FLAG_PRIORITY) ? 1 : 0));
         this.m_hidelimits = (gflags & GAMETYPE_FLAG_HIDELIMITS);
         this.m_weaponarena = (gflags & GAMETYPE_FLAG_WEAPONARENA);
+        this.m_1v1 = (gflags & GAMETYPE_FLAG_1V1);
 
         // same as `1 << m_id`
         MAPINFO_TYPE_ALL |= this.items = this.m_flags = (MAPINFO_TYPE_ALL + 1);
index c2a3250d8062ed47988623e92de6b8e707690e6b..5d663e876dff2bd4e9a37940b4d90143102df4ba 100644 (file)
@@ -54,6 +54,7 @@ MUTATOR_HOOKFUNCTION(spawn_near_teammate, Spawn_Score)
        M_ARGV(2, vector) = spawn_score;
 }
 
+vector snt_ofs[6];
 MUTATOR_HOOKFUNCTION(spawn_near_teammate, PlayerSpawn)
 {
        if (!teamplay) return;
@@ -116,30 +117,16 @@ MUTATOR_HOOKFUNCTION(spawn_near_teammate, PlayerSpawn)
                        // test different spots close to mate - trace upwards so it works on uneven surfaces
                        // don't spawn in front of player or directly behind to avoid players shooting each other
                        // test the potential spots in pairs (first pair is better than second and so on) but don't prefer one side
+                       snt_ofs[0] = up * 64 + right * 128 - forward * 64;
+                       snt_ofs[1] = up * 64 - right * 128 - forward * 64;
+                       snt_ofs[2] = up * 64 + right * 192;
+                       snt_ofs[3] = up * 64 - right * 192;
+                       snt_ofs[4] = up * 64 + right * 64 - forward * 128;
+                       snt_ofs[5] = up * 64 - right * 64 - forward * 128;
                        RandomSelection_Init();
                        for(int i = 0; i < 6; ++i)
                        {
-                               switch(i)
-                               {
-                                       case 0:
-                                               tracebox(it.origin, STAT(PL_MIN, player), STAT(PL_MAX, player), it.origin - forward * 64 + right * 128 + up * 64, MOVE_NOMONSTERS, it);
-                                               break;
-                                       case 1:
-                                               tracebox(it.origin, STAT(PL_MIN, player), STAT(PL_MAX, player), it.origin - forward * 64 - right * 128 + up * 64, MOVE_NOMONSTERS, it);
-                                               break;
-                                       case 2:
-                                               tracebox(it.origin, STAT(PL_MIN, player), STAT(PL_MAX, player), it.origin + right * 192 + up * 64, MOVE_NOMONSTERS, it);
-                                               break;
-                                       case 3:
-                                               tracebox(it.origin, STAT(PL_MIN, player), STAT(PL_MAX, player), it.origin - right * 192 + up * 64, MOVE_NOMONSTERS, it);
-                                               break;
-                                       case 4:
-                                               tracebox(it.origin, STAT(PL_MIN, player), STAT(PL_MAX, player), it.origin - forward * 128 + right * 64 + up * 64, MOVE_NOMONSTERS, it);
-                                               break;
-                                       case 5:
-                                               tracebox(it.origin, STAT(PL_MIN, player), STAT(PL_MAX, player), it.origin - forward * 128 - right * 64 + up * 64, MOVE_NOMONSTERS, it);
-                                               break;
-                               }
+                               tracebox(it.origin, STAT(PL_MIN, player), STAT(PL_MAX, player), it.origin + snt_ofs[i], MOVE_NOMONSTERS, it);
 
                                vector horizontal_trace_endpos = trace_endpos;
                                //te_lightning1(NULL, it.origin, horizontal_trace_endpos);
@@ -179,7 +166,7 @@ MUTATOR_HOOKFUNCTION(spawn_near_teammate, PlayerSpawn)
                                RandomSelection_Add(it, 0, string_null, vectical_trace_endpos, 1, 1);
                                //te_lightning1(NULL, vectical_trace_endpos, vectical_trace_endpos + forward * 10);
 
-LABEL(skip)
+                               LABEL(skip)
                                if (i % 2 == 1 && RandomSelection_chosen_ent)
                                {
                                        if (autocvar_g_spawn_near_teammate_ignore_spawnpoint_closetodeath)
index 1bd0eb7aeb5bb54bc9ba30a69d3cb32b6ac12ad9..48aa9dd106ca24f744de5e5f66d2307c6550e127 100644 (file)
@@ -179,6 +179,8 @@ int _Movetype_FlyMove(entity this, float dt, bool applygravity, bool applystepno
                if(trace_fraction == 1)
                        break;
 
+               time_left *= 1 - trace_fraction;
+
                float my_trace_fraction = trace_fraction;
                vector my_trace_plane_normal = trace_plane_normal;
 
@@ -204,6 +206,7 @@ int _Movetype_FlyMove(entity this, float dt, bool applygravity, bool applystepno
                        // step - handle it immediately
                        vector org = this.origin;
                        vector steppush = '0 0 1' * stepheight;
+                       push = this.velocity * time_left;
 
                        if(!_Movetype_PushEntity(this, steppush, true, false))
                        {
@@ -224,7 +227,8 @@ int _Movetype_FlyMove(entity this, float dt, bool applygravity, bool applystepno
                        }
 
                        // accept the new position if it made some progress...
-                       if(fabs(this.origin_x - org.x) >= 0.03125 || fabs(this.origin_y - org.y) >= 0.03125)
+                       // previously this checked if absolute distance >= 0.03125 which made stepping up unreliable
+                       if(this.origin_x - org.x || this.origin_y - org.y)
                        {
                                trace_endpos = this.origin;
                                time_left *= 1 - trace2_fraction;
@@ -250,8 +254,6 @@ int _Movetype_FlyMove(entity this, float dt, bool applygravity, bool applystepno
                        numplanes = 0;
                }
 
-               time_left *= 1 - my_trace_fraction;
-
                // clipped to another plane
                if(numplanes >= MAX_CLIP_PLANES)
                {
index 7d096a90ad35d8d0ecb98d9d5f19cb98e14d7eaa..4ec6c08267aff96fc4c4ae8329a0c7fc54a2bc6e 100644 (file)
                        PERSON(Victor "LegendGuard" Jaume) \
                NL() \
                FUNCTION(_("Kazakh")) \
-                       PERSON("Артем "bystrov.arterm" Быстров") \
+                       PERSON(Артем "bystrov.arterm" Быстров) \
                NL() \
                FUNCTION(_("Korean")) \
                        PERSON(Jisoo "s6e9x" Lim) \
                PERSON(... and a goat) \
                /**/
 
-int credits_get()
+
+int CREDITS_TYPE_TITLE = 2;
+int CREDITS_TYPE_FUNCTION = 1;
+int CREDITS_TYPE_PERSON = 0;
+int CREDITS_TYPE_NL = -1;
+void credits_add_line(int fh, int n, int type, string line)
 {
-       int n = buf_create();
-       #define CREDITS_TITLE(t) bufstr_add(n, strcat("**", t), 0);
-       #define CREDITS_FUNCTION(f) bufstr_add(n, strcat("*", f), 0);
-       #define CREDITS_PERSON(p) bufstr_add(n, p, 0);
+       if (type == CREDITS_TYPE_TITLE)
+               line = strcat("**", line);
+       else if (type == CREDITS_TYPE_FUNCTION)
+               line = strcat("*", line);
+
+       if (fh >= 0)
+               fputs(fh, strcat(line, "\n"));
+       if (n >= 0)
+               bufstr_add(n, line, 0);
+}
+
+void credits_build(int fh, int n)
+{
+       #define CREDITS_TITLE(t) credits_add_line(fh, n, CREDITS_TYPE_TITLE, t);
+       #define CREDITS_FUNCTION(f) credits_add_line(fh, n, CREDITS_TYPE_FUNCTION, f);
+       #define CREDITS_PERSON(p) credits_add_line(fh, n, CREDITS_TYPE_PERSON, p);
        #define _CREDITS_PERSON(p) CREDITS_PERSON(#p)
-       #define CREDITS_NL() bufstr_add(n, "", 0);
-    CREDITS(CREDITS_TITLE, CREDITS_FUNCTION, _CREDITS_PERSON, CREDITS_PERSON, CREDITS_NL)
+       #define CREDITS_NL() credits_add_line(fh, n, CREDITS_TYPE_NL, "");
+       CREDITS(CREDITS_TITLE, CREDITS_FUNCTION, _CREDITS_PERSON, CREDITS_PERSON, CREDITS_NL)
        #undef CREDITS_TITLE
        #undef CREDITS_FUNCTION
        #undef CREDITS_PERSON
        #undef _CREDITS_PERSON
        #undef CREDITS_NL
+}
+
+int credits_get()
+{
+       int n = buf_create();
+       credits_build(-1, n);
        return n;
 }
 
+void credits_export()
+{
+       int fh = fopen("credits.txt", FILE_WRITE);
+       if(fh < 0)
+               return;
+       credits_build(fh, -1);
+}
+
 #undef CREDITS
 
 entity makeXonoticCreditsList()
@@ -435,8 +466,13 @@ entity makeXonoticCreditsList()
 void XonoticCreditsList_configureXonoticCreditsList(entity me)
 {
        me.configureXonoticListBox(me);
-    me.bufferIndex = credits_get();
+       me.bufferIndex = credits_get();
        me.nItems = buf_getsize(me.bufferIndex);
+       if (cvar("_menu_credits_export")) // set by the menu_credits_export alias
+       {
+               credits_export();
+               cvar_set("_menu_credits_export", "0");
+       }
 }
 void XonoticCreditsList_destroy(entity me)
 {
index 9587d5432d83c7ebc80dcbac53a26dfc0af370e8..85cf3254caee1eb76a4f15ab50be4b15c97649af 100644 (file)
@@ -23,7 +23,7 @@ void CvarList_Load(entity me, string filter)
        if(me.handle < 0)
                return;
 
-       buf_cvarlist(me.handle, filter, "_");
+       buf_cvarlist(me.handle, filter, "_"); // cvars starting with "_" are excluded
        me.nItems = buf_getsize(me.handle);
        if(autocvar_menu_cvarlist_onlymodified)
        {
index 8ae3df19380ab918478f3514035d0e0fc9a970c7..1e32b0d33c339a2d83369f9171e97d1790a621fc 100644 (file)
@@ -1447,10 +1447,9 @@ void respawn(entity this)
 void play_countdown(entity this, float finished, Sound samp)
 {
        TC(Sound, samp);
-       if(IS_REAL_CLIENT(this))
-               if(floor(finished - time - frametime) != floor(finished - time))
-                       if(finished - time < 6)
-                               sound (this, CH_INFO, samp, VOL_BASE, ATTEN_NORM);
+       float time_left = finished - time;
+       if(IS_REAL_CLIENT(this) && time_left < 6 && floor(time_left - frametime) != floor(time_left))
+               sound(this, CH_INFO, samp, VOL_BASE, ATTEN_NORM);
 }
 
 // it removes special powerups not handled by StatusEffects
@@ -1459,8 +1458,11 @@ void player_powerups_remove_all(entity this)
        if (this.items & (IT_SUPERWEAPON | IT_UNLIMITED_AMMO | IT_UNLIMITED_SUPERWEAPONS))
        {
                // don't play the poweroff sound when the game restarts or the player disconnects
-               if (time > game_starttime + 1 && IS_CLIENT(this))
+               if (time > game_starttime + 1 && IS_CLIENT(this)
+                       && !(start_items & (IT_UNLIMITED_AMMO | IT_UNLIMITED_SUPERWEAPONS)))
+               {
                        sound(this, CH_INFO, SND_POWEROFF, VOL_BASE, ATTEN_NORM);
+               }
                if (this.items & (IT_UNLIMITED_AMMO | IT_UNLIMITED_SUPERWEAPONS))
                        stopsound(this, CH_TRIGGER_SINGLE); // get rid of the pickup sound
                this.items -= (this.items & (IT_SUPERWEAPON | IT_UNLIMITED_AMMO | IT_UNLIMITED_SUPERWEAPONS));
index 19206daf368647fdf9555e52b24e991b10786171..fbdebd359c90703ae6b66d06e151155eaffcc96a 100644 (file)
@@ -147,7 +147,6 @@ bool Heal(entity targ, entity inflictor, float amount, float limit);
 .float fire_deathtype;
 .entity fire_owner;
 .float fire_hitsound;
-.entity fire_burner;
 
 float Fire_AddDamage(entity e, entity o, float d, float t, float dt);
 
index 7e7d308a09e26b2754aa7c02ec954f6b72e9fdff..8f622bbcaa332efba9454986903397d625036e4c 100644 (file)
@@ -25,12 +25,6 @@ sv_vote_nospectators 1
 timelimit_override 20
 sv_maxidle_playertospectator 0
 
-// speed powerup (q3 haste replacement)
-g_movement_highspeed_q3_compat 1
-g_balance_powerup_speed_time 30 // q3 haste lasts 30 seconds unless count field set otherwise
-g_balance_powerup_speed_highspeed 1.3
-g_balance_powerup_speed_attackrate 0.7692307692   // 1/1.3
-
 // game mode settings
 g_cts_finish_kill_delay 2
 g_cts_selfdamage 0
index c5777051871e81e8e8c6fce4f8fc7fff04835ab6..09602a54325dfac4dce504df1bea44e8570d6087 100644 (file)
@@ -487,6 +487,9 @@ set menu_showboxes 0 "show item bounding boxes (debug)"
 set menu_cvarlist_onlymodified 0 "show only modified cvars in the cvar list"
 set menu_force_on_disconnection 1 "force to show the menu this number of seconds after you get disconnected (0 to disable)"
 
+set _menu_credits_export 0 "set to 1 and restart the menu to export credits to credits.txt (menu will automatically reset to 0)"
+alias menu_credits_export "_menu_credits_export 1; menu_restart"
+
 r_textbrightness 0.2
 r_textcontrast 0.8
 r_textshadow 0