Bring languages into the tree (#1625)
* translations: bring languages into tree * Update translation phrases changed since 2021 * Update packaging script to include all translations * Update languages.cfg * Add Latin American Spanish translations This is a copy of spanish for now. * Ignore "en" when looking for translation folders English is the default and doesn't use a subfolder. * Only add each translation folder once Korean "ko" is in there twice. * Compare language coverage to english All phrases are compared to the english baseline files and any differences are reported. The differences are pushed to a Github Project as well for an easier overview. Thank you to @nosoop for sharing the Python SMC parser! * Add link to README --------- Co-authored-by: Peace-Maker <peace-maker@wcfan.de>
This commit is contained in:
parent
d8fd60b562
commit
48150e0c7a
38
.github/workflows/translations.yml
vendored
Normal file
38
.github/workflows/translations.yml
vendored
Normal file
@ -0,0 +1,38 @@
|
||||
name: Update translation project
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- master
|
||||
paths:
|
||||
- 'translations/**'
|
||||
jobs:
|
||||
update_translations:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/setup-python@v4
|
||||
name: Setup Python 3.10
|
||||
with:
|
||||
python-version: 3.10
|
||||
|
||||
- name: Install Python dependencies
|
||||
working-directory: tools/language_check
|
||||
run: |
|
||||
python -m pip install --upgrade -r requirements.txt
|
||||
|
||||
- name: Generate token
|
||||
id: generate_token
|
||||
uses: tibdex/github-app-token@36464acb844fc53b9b8b2401da68844f6b05ebb0
|
||||
with:
|
||||
app_id: ${{ secrets.APP_ID }}
|
||||
private_key: ${{ secrets.APP_PEM }}
|
||||
|
||||
- name: Get project data
|
||||
working-directory: tools/language_check
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ steps.generate_token.outputs.token }}
|
||||
ORGANIZATION: alliedmodders
|
||||
PROJECT_NUMBER: 1
|
||||
run: |
|
||||
python ./compare_translation_phrases.py
|
||||
|
||||
|
@ -16,6 +16,7 @@ Development
|
||||
- [SourcePawn scripting](https://wiki.alliedmods.net/Category:SourceMod_Scripting): SourcePawn examples and introduction to the language
|
||||
- [SourceMod plugin API](https://sm.alliedmods.net/new-api): Online SourceMod plugin API reference generated from the include files
|
||||
- [SourceMod extension development](https://wiki.alliedmods.net/Category:SourceMod_Development): C++ examples and introduction to various extension interfaces
|
||||
- [Translation project](https://github.com/orgs/alliedmodders/projects/1): Help [translate SourceMod](https://wiki.alliedmods.net/Translations_(SourceMod_Scripting)) into your language
|
||||
|
||||
Contact
|
||||
-------
|
||||
|
@ -1,4 +1,37 @@
|
||||
"Languages"
|
||||
{
|
||||
"en" "English"
|
||||
"en" "English" // English
|
||||
"ar" "Arabic" // Arabic
|
||||
"pt" "Brazilian" // Brazilian Portuguese
|
||||
"bg" "Bulgarian" // Bulgarian
|
||||
"cze" "Czech" // Czech
|
||||
"da" "Danish" // Danish
|
||||
"nl" "Dutch" // Dutch
|
||||
"fi" "Finnish" // Finnish
|
||||
"fr" "French" // French
|
||||
"de" "German" // German
|
||||
"el" "Greek" // Greek
|
||||
"he" "Hebrew" // Hebrew
|
||||
"hu" "Hungarian" // Hungarian
|
||||
"it" "Italian" // Italian
|
||||
"jp" "Japanese" // Japanese
|
||||
"ko" "KoreanA" // Korean
|
||||
"ko" "Korean" // Korean
|
||||
"las" "LatAm" // Latin American Spanish
|
||||
"lv" "Latvian" // Latvian
|
||||
"lt" "Lithuanian" // Lithuanian
|
||||
"no" "Norwegian" // Norwegian
|
||||
"pl" "Polish" // Polish
|
||||
"pt_p" "Portuguese" // Portuguese
|
||||
"ro" "Romanian" // Romanian
|
||||
"ru" "Russian" // Russian
|
||||
"chi" "SChinese" // Chinese (Simplified)
|
||||
"sk" "Slovak" // Slovak
|
||||
"es" "Spanish" // Spanish
|
||||
"sv" "Swedish" // Swedish
|
||||
"zho" "TChinese" // Chinese (Traditional)
|
||||
"th" "Thai" // Thai
|
||||
"tr" "Turkish" // Turkish
|
||||
"ua" "Ukrainian" // Ukrainian
|
||||
"vi" "Vietnamese" // Vietnamese
|
||||
}
|
||||
|
@ -1,5 +1,6 @@
|
||||
# vim: set ts=8 sts=2 sw=2 tw=99 et ft=python:
|
||||
import os
|
||||
import re
|
||||
|
||||
builder.SetBuildFolder('package')
|
||||
|
||||
@ -126,3 +127,17 @@ helpers.CopyFiles('plugins/basevotes', 'addons/sourcemod/scripting/basevotes')
|
||||
helpers.CopyFiles('plugins/basebans', 'addons/sourcemod/scripting/basebans')
|
||||
helpers.CopyFiles('plugins/funcommands', 'addons/sourcemod/scripting/funcommands')
|
||||
helpers.CopyFiles('plugins/playercommands', 'addons/sourcemod/scripting/playercommands')
|
||||
|
||||
with open(os.path.join(builder.sourcePath, 'configs/languages.cfg'), 'r') as f:
|
||||
language_re = re.compile(r'^\s*"([^"]+)"\s+"[^"]+"')
|
||||
added_languages = set(["en"])
|
||||
for line in f.read().splitlines():
|
||||
match = language_re.match(line)
|
||||
if match:
|
||||
lang_code = match.group(1)
|
||||
if lang_code in added_languages:
|
||||
continue
|
||||
output_path = os.path.join('addons/sourcemod/translations', lang_code)
|
||||
helpers.CreateFolders([output_path])
|
||||
helpers.CopyFiles(os.path.join('translations', lang_code), output_path)
|
||||
added_languages.add(lang_code)
|
||||
|
@ -36,27 +36,6 @@ require 'helpers.pm';
|
||||
#Switch to the output folder.
|
||||
chdir(Build::PathFormat('../../../OUTPUT/package'));
|
||||
|
||||
print "Downloading languages.cfg...\n";
|
||||
# Don't check certificate. It will fail on the slaves and we're resolving to internal addressing anyway
|
||||
system('wget --no-check-certificate -q -O addons/sourcemod/configs/languages.cfg "https://sm.alliedmods.net/translator/index.php?go=translate&op=export_langs"');
|
||||
open(my $fh, '<', 'addons/sourcemod/configs/languages.cfg')
|
||||
or die "Could not open languages.cfg' $!";
|
||||
|
||||
while (my $ln = <$fh>) {
|
||||
if ($ln =~ /"([^"]+)"\s*"[^"]+.*\((\d+)\) /)
|
||||
{
|
||||
my $abbr = $1;
|
||||
my $id = $2;
|
||||
|
||||
print "Downloading language pack $abbr.zip...\n";
|
||||
# Don't check certificate. It will fail on the slaves and we're resolving to internal addressing anyway
|
||||
system("wget --no-check-certificate -q -O $abbr.zip \"https://sm.alliedmods.net/translator/index.php?go=translate&op=export&lang_id=$id\"");
|
||||
system("unzip -qo $abbr.zip -d addons/sourcemod/translations/");
|
||||
unlink("$abbr.zip");
|
||||
}
|
||||
}
|
||||
close($fh);
|
||||
|
||||
unless (-e '../GeoLite2-City_20191217.tar')
|
||||
{
|
||||
print "Downloading GeoLite2-City.mmdb...\n";
|
||||
|
283
tools/language_check/compare_translation_phrases.py
Normal file
283
tools/language_check/compare_translation_phrases.py
Normal file
@ -0,0 +1,283 @@
|
||||
#!/usr/bin/python3
|
||||
# Copyright (c) 2023 Peace-Maker
|
||||
from collections import defaultdict
|
||||
from dataclasses import dataclass
|
||||
import os
|
||||
import pathlib
|
||||
import re
|
||||
from smc_parser import smc_string_to_dict
|
||||
from typing import Dict, List, Union
|
||||
from github_gql import GithubGQL
|
||||
|
||||
|
||||
@dataclass
|
||||
class Translation:
|
||||
langid: str
|
||||
translation: str
|
||||
param_count: int
|
||||
|
||||
|
||||
@dataclass
|
||||
class Phrase:
|
||||
key: str
|
||||
format: Union[Translation, None]
|
||||
translations: List[Translation]
|
||||
|
||||
|
||||
@dataclass
|
||||
class PhraseFile:
|
||||
filename: str
|
||||
phrases: List[Phrase]
|
||||
error: Union[str, None] = None
|
||||
|
||||
|
||||
@dataclass
|
||||
class Language:
|
||||
langid: str
|
||||
name: str
|
||||
files: List[PhraseFile]
|
||||
|
||||
|
||||
@dataclass
|
||||
class Report:
|
||||
langid: str
|
||||
filename: str
|
||||
file_warning: str = ''
|
||||
phrase_key: str = ''
|
||||
phrase_warning: str = ''
|
||||
|
||||
|
||||
def parse_translations(path: str):
|
||||
param_regex = re.compile(r'\{[0-9]+\}', re.MULTILINE)
|
||||
units = []
|
||||
for file in pathlib.Path(path).glob('*.txt'):
|
||||
if not file.is_file():
|
||||
continue
|
||||
|
||||
try:
|
||||
phrases = smc_string_to_dict(file.read_text('utf-8'))
|
||||
except Exception as ex:
|
||||
print(f'Error parsing {file.name}: {ex}')
|
||||
units.append(PhraseFile(file.name, [], str(ex)))
|
||||
continue
|
||||
|
||||
if 'Phrases' not in phrases:
|
||||
print(f'File {file.name} does not start with a "Phrases" section')
|
||||
continue
|
||||
|
||||
parsed_phrases = []
|
||||
for phrase in phrases['Phrases']:
|
||||
for phrase_ident, raw_translations in phrase.items():
|
||||
translations = []
|
||||
format_special = None
|
||||
for child_langid, translation in raw_translations.items():
|
||||
if child_langid == '#format':
|
||||
format_special = Translation(
|
||||
child_langid, translation,
|
||||
translation.count(',') + 1)
|
||||
else:
|
||||
translations.append(
|
||||
Translation(child_langid, translation,
|
||||
len(param_regex.findall(translation))))
|
||||
parsed_phrases.append(
|
||||
Phrase(phrase_ident, format_special, translations))
|
||||
units.append(PhraseFile(file.name, parsed_phrases))
|
||||
return units
|
||||
|
||||
|
||||
# Parse the languages.cfg file to know which languages could be available
|
||||
print('Parsing languages.cfg...')
|
||||
available_languages: Dict[str, Language] = {}
|
||||
languages_cfg = smc_string_to_dict(
|
||||
pathlib.Path('../../configs/languages.cfg').read_text('utf-8'))
|
||||
for langid, lang in languages_cfg['Languages'][0].items():
|
||||
available_languages[langid] = Language(langid, lang, [])
|
||||
|
||||
print(f'Available languages: {len(available_languages)}')
|
||||
|
||||
# Parse the english translation, since it doesn't use a subdirectory and is the baseline for all other translations
|
||||
available_languages['en'].files = parse_translations('../../translations')
|
||||
|
||||
# Parse the other translations
|
||||
for langid, lang in available_languages.items():
|
||||
if langid == 'en':
|
||||
continue
|
||||
lang.files = parse_translations(f'../../translations/{langid}')
|
||||
|
||||
reports: Dict[str, Dict[str,
|
||||
List[Report]]] = defaultdict(lambda: defaultdict(list))
|
||||
|
||||
# Compare the english translation with the other translations
|
||||
english = available_languages['en']
|
||||
for langid, lang in available_languages.items():
|
||||
if langid == 'en':
|
||||
continue
|
||||
|
||||
# See if this language has anything that English doesn't
|
||||
for file in lang.files:
|
||||
english_file = next(
|
||||
(x for x in english.files if x.filename == file.filename), None)
|
||||
if english_file is None:
|
||||
reports[langid][file.filename].append(
|
||||
Report(langid,
|
||||
file.filename,
|
||||
file_warning='File doesn\'t exist in English'))
|
||||
continue
|
||||
|
||||
if not file.phrases:
|
||||
reports[langid][file.filename].append(
|
||||
Report(langid, file.filename, file_warning='File is empty'))
|
||||
continue
|
||||
|
||||
for phrase in file.phrases:
|
||||
if phrase.format:
|
||||
reports[langid][file.filename].append(
|
||||
Report(langid,
|
||||
file.filename,
|
||||
phrase_key=phrase.key,
|
||||
phrase_warning='Includes a "#format" key'))
|
||||
english_phrase = next(
|
||||
(x for x in english_file.phrases if x.key == phrase.key), None)
|
||||
if english_phrase is None:
|
||||
# look for this phrase in a different english file
|
||||
warning = 'Phrase doesn\'t exist in English'
|
||||
for other_file in english.files:
|
||||
other_phrase = next(
|
||||
(x for x in other_file.phrases if x.key == phrase.key),
|
||||
None)
|
||||
if other_phrase:
|
||||
warning = f'Phrase exists in a different file in English: {other_file.filename}'
|
||||
break
|
||||
reports[langid][file.filename].append(
|
||||
Report(langid,
|
||||
file.filename,
|
||||
phrase_key=phrase.key,
|
||||
phrase_warning=warning))
|
||||
continue
|
||||
translation_found = False
|
||||
for translation in phrase.translations:
|
||||
if translation.langid == langid:
|
||||
translation_found = True
|
||||
else:
|
||||
reports[langid][file.filename].append(
|
||||
Report(
|
||||
langid,
|
||||
file.filename,
|
||||
phrase_key=phrase.key,
|
||||
phrase_warning=
|
||||
f'Includes a translation for language "{translation.langid}"'
|
||||
))
|
||||
if english_phrase.format and translation.param_count != english_phrase.format.param_count:
|
||||
reports[langid][file.filename].append(
|
||||
Report(
|
||||
langid,
|
||||
file.filename,
|
||||
phrase_key=phrase.key,
|
||||
phrase_warning=
|
||||
f'Has {translation.param_count} format parameters, but English has {english_phrase.format.param_count}'
|
||||
))
|
||||
if not translation_found:
|
||||
reports[langid][file.filename].append(
|
||||
Report(langid,
|
||||
file.filename,
|
||||
phrase_key=phrase.key,
|
||||
phrase_warning=
|
||||
'Phrase available, but translation missing'))
|
||||
|
||||
# See if this language is missing anything that English has
|
||||
for file in english.files:
|
||||
lang_file = next(
|
||||
(x for x in lang.files if x.filename == file.filename), None)
|
||||
if lang_file is None:
|
||||
reports[langid][file.filename].append(
|
||||
Report(langid, file.filename, file_warning='File missing'))
|
||||
continue
|
||||
|
||||
# The file doesn't contain any phrases. We reported that already, so don't spam every single missing phrase
|
||||
if not lang_file.phrases:
|
||||
continue
|
||||
|
||||
for phrase in file.phrases:
|
||||
lang_phrase = next(
|
||||
(x for x in lang_file.phrases if x.key == phrase.key), None)
|
||||
if lang_phrase is None:
|
||||
reports[langid][file.filename].append(
|
||||
Report(langid,
|
||||
file.filename,
|
||||
phrase_key=phrase.key,
|
||||
phrase_warning='Phrase missing'))
|
||||
|
||||
if langid not in reports:
|
||||
print(f'No issues found for {lang.name} ({langid})')
|
||||
else:
|
||||
print(
|
||||
f'Found {len(reports[langid])} issues for {lang.name} ({langid})')
|
||||
|
||||
GITHUB_TOKEN = os.environ.get('GITHUB_TOKEN')
|
||||
if not GITHUB_TOKEN:
|
||||
raise Exception('GITHUB_TOKEN environment variable not set')
|
||||
ORGANIZATION = os.environ.get('ORGANIZATION')
|
||||
if not ORGANIZATION:
|
||||
raise Exception('ORGANIZATION environment variable not set')
|
||||
PROJECT_NUMBER = os.environ.get('PROJECT_NUMBER')
|
||||
if not PROJECT_NUMBER:
|
||||
raise Exception('PROJECT_NUMBER environment variable not set')
|
||||
|
||||
# Get the project and its draft issues
|
||||
print('Getting project and draft issues...')
|
||||
githubgql = GithubGQL(GITHUB_TOKEN)
|
||||
project = githubgql.get_project(ORGANIZATION, int(PROJECT_NUMBER))
|
||||
project_id = project['id']
|
||||
field_ids = project['fields']['nodes']
|
||||
status_field = [field for field in field_ids if field['name'] == 'Status']
|
||||
assert len(status_field) == 1, 'Status field not found'
|
||||
status_field_id = status_field[0]['id']
|
||||
status_field_option_ids = {
|
||||
option['name']: option['id']
|
||||
for option in status_field[0]['options']
|
||||
}
|
||||
if 'Incomplete' not in status_field_option_ids:
|
||||
raise Exception('Incomplete status field option not found')
|
||||
if 'Complete' not in status_field_option_ids:
|
||||
raise Exception('Complete status field option not found')
|
||||
draft_issues = project['items']['nodes']
|
||||
|
||||
# Generate the report markdown for the project draft issues
|
||||
for langid, lang in available_languages.items():
|
||||
markdown = ''
|
||||
status = ''
|
||||
|
||||
if langid in reports:
|
||||
print(f'Generating report for {lang.name} ({langid})...')
|
||||
status = 'Incomplete'
|
||||
for filename, problems in reports[langid].items():
|
||||
markdown += f'## [{filename}](https://github.com/alliedmodders/sourcemod/blob/master/translations/{langid}/{filename})\n'
|
||||
added_phrase_warning = False
|
||||
for report in problems:
|
||||
if report.file_warning:
|
||||
markdown += f'**{report.file_warning}**\n'
|
||||
print(f' {report.file_warning} ({report.filename})')
|
||||
if report.phrase_warning:
|
||||
if not added_phrase_warning:
|
||||
markdown += '| Phrase | Issue |\n| ------- | --------- |\n'
|
||||
added_phrase_warning = True
|
||||
markdown += f'| `{report.phrase_key}` | {report.phrase_warning} |\n'
|
||||
print(
|
||||
f' {report.filename}: "{report.phrase_key}" -> {report.phrase_warning}'
|
||||
)
|
||||
markdown += '\n'
|
||||
else:
|
||||
status = 'Complete'
|
||||
markdown = 'No issues found'
|
||||
|
||||
print(f'Updating draft issue for {lang.name} ({langid})...')
|
||||
issue = next(
|
||||
(x for x in draft_issues if x['content']['title'] == lang.name), None)
|
||||
if issue is None:
|
||||
issue = githubgql.add_draft_issue(project_id, lang.name, markdown)
|
||||
else:
|
||||
githubgql.update_draft_issue(issue['content']['id'], lang.name,
|
||||
markdown)
|
||||
githubgql.update_item_field_value_option(project_id, issue['id'],
|
||||
status_field_id,
|
||||
status_field_option_ids[status])
|
156
tools/language_check/github_gql.py
Normal file
156
tools/language_check/github_gql.py
Normal file
@ -0,0 +1,156 @@
|
||||
# Copyright (c) 2023 Peace-Maker
|
||||
from gql import gql, Client
|
||||
from gql.transport.aiohttp import AIOHTTPTransport
|
||||
|
||||
|
||||
class GithubGQL:
|
||||
|
||||
def __init__(self, token):
|
||||
transport = AIOHTTPTransport(
|
||||
url="https://api.github.com/graphql",
|
||||
headers={"Authorization": f"Bearer {token}"})
|
||||
self.client = Client(transport=transport)
|
||||
|
||||
def get_project(self, orga, project_number):
|
||||
query = gql("""
|
||||
query getProjectId($login: String!, $projectNumber: Int!){
|
||||
organization(login: $login) {
|
||||
projectV2(number: $projectNumber) {
|
||||
id
|
||||
fields(first: 100) {
|
||||
nodes {
|
||||
... on ProjectV2Field {
|
||||
id
|
||||
name
|
||||
}
|
||||
... on ProjectV2SingleSelectField {
|
||||
id
|
||||
name
|
||||
options {
|
||||
id
|
||||
name
|
||||
}
|
||||
}
|
||||
... on ProjectV2SingleSelectField {
|
||||
id
|
||||
name
|
||||
options {
|
||||
id
|
||||
name
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
items(first: 100) {
|
||||
nodes {
|
||||
id
|
||||
fieldValues(first: 100) {
|
||||
nodes {
|
||||
... on ProjectV2ItemFieldTextValue {
|
||||
text
|
||||
field {
|
||||
... on ProjectV2FieldCommon {
|
||||
name
|
||||
}
|
||||
}
|
||||
}
|
||||
... on ProjectV2ItemFieldSingleSelectValue {
|
||||
name
|
||||
field {
|
||||
... on ProjectV2FieldCommon {
|
||||
name
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
content {
|
||||
... on DraftIssue {
|
||||
id
|
||||
title
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
""")
|
||||
variables = {"login": orga, "projectNumber": project_number}
|
||||
result = self.client.execute(query, variable_values=variables)
|
||||
# TODO: Handle pagination
|
||||
return result["organization"]["projectV2"]
|
||||
|
||||
def add_draft_issue(self, project_id, title, body):
|
||||
query = gql("""
|
||||
mutation addDraftIssue($projectId: ID!, $title: String!, $body: String!){
|
||||
addProjectV2DraftIssue(
|
||||
input: {
|
||||
projectId: $projectId,
|
||||
title: $title,
|
||||
body: $body
|
||||
}
|
||||
) {
|
||||
projectItem {
|
||||
id
|
||||
content {
|
||||
... on DraftIssue {
|
||||
id
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
""")
|
||||
variables = {"projectId": project_id, "title": title, "body": body}
|
||||
result = self.client.execute(query, variable_values=variables)
|
||||
return result["addProjectV2DraftIssue"]["projectItem"]
|
||||
|
||||
def update_draft_issue(self, issue_id, title, body):
|
||||
query = gql("""
|
||||
mutation updateDraftIssue($issueId: ID!, $title: String!, $body: String!){
|
||||
updateProjectV2DraftIssue(
|
||||
input: {
|
||||
draftIssueId: $issueId,
|
||||
title: $title,
|
||||
body: $body
|
||||
}
|
||||
) {
|
||||
draftIssue {
|
||||
id
|
||||
}
|
||||
}
|
||||
}
|
||||
""")
|
||||
variables = {"issueId": issue_id, "title": title, "body": body}
|
||||
result = self.client.execute(query, variable_values=variables)
|
||||
return result["updateProjectV2DraftIssue"]["draftIssue"]["id"]
|
||||
|
||||
def update_item_field_value_option(self, project_id, item_id, field_id,
|
||||
option_id):
|
||||
query = gql("""
|
||||
mutation updateDraftIssueStatus($projectId: ID!, $itemId: ID!, $fieldId: ID!, $optionId: String!){
|
||||
updateProjectV2ItemFieldValue(
|
||||
input: {
|
||||
projectId: $projectId,
|
||||
itemId: $itemId,
|
||||
fieldId: $fieldId,
|
||||
value: {
|
||||
singleSelectOptionId: $optionId
|
||||
}
|
||||
}
|
||||
) {
|
||||
projectV2Item {
|
||||
id
|
||||
}
|
||||
}
|
||||
}
|
||||
""")
|
||||
variables = {
|
||||
"projectId": project_id,
|
||||
"itemId": item_id,
|
||||
"fieldId": field_id,
|
||||
"optionId": option_id
|
||||
}
|
||||
result = self.client.execute(query, variable_values=variables)
|
||||
return result["updateProjectV2ItemFieldValue"]["projectV2Item"]["id"]
|
203
tools/language_check/smc_parser.py
Normal file
203
tools/language_check/smc_parser.py
Normal file
@ -0,0 +1,203 @@
|
||||
#!/usr/bin/python3
|
||||
|
||||
# BSD Zero Clause License
|
||||
#
|
||||
# Copyright (C) 2023 by nosoop
|
||||
#
|
||||
# Permission to use, copy, modify, and/or distribute this software for any purpose with or
|
||||
# without fee is hereby granted.
|
||||
#
|
||||
# THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS
|
||||
# SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
|
||||
# THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY
|
||||
# DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF
|
||||
# CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE
|
||||
# OR PERFORMANCE OF THIS SOFTWARE.
|
||||
|
||||
# https://gist.github.com/nosoop/8c6ccaec11b1d33340bec8dbc8096658
|
||||
import collections
|
||||
import enum
|
||||
import itertools
|
||||
|
||||
|
||||
class SMCOperation(enum.Enum):
|
||||
STRING = 1
|
||||
SUBSECTION_START = 2
|
||||
SUBSECTION_END = 3
|
||||
COMMENT = 4
|
||||
COMMENT_MULTILINE = 5
|
||||
KEYVALUE = 6
|
||||
|
||||
|
||||
# https://stackoverflow.com/a/70762559
|
||||
def takewhile_inclusive(predicate, it):
|
||||
for x in it:
|
||||
if predicate(x):
|
||||
yield x
|
||||
else:
|
||||
yield x
|
||||
break
|
||||
|
||||
|
||||
def _is_whitespace(ch):
|
||||
return ch in (' ', '\t', '\n', '\r')
|
||||
|
||||
|
||||
def _smc_stream_skip_whitespace(stream):
|
||||
# consumes whitespace and returns the first non-whitespace character if any, or None if EOS
|
||||
values = tuple(takewhile_inclusive(_is_whitespace, stream))
|
||||
if not values:
|
||||
return None
|
||||
*ws, last = values
|
||||
if not ws and not _is_whitespace(last):
|
||||
return last
|
||||
return last if ws and not _is_whitespace(last) else None
|
||||
|
||||
|
||||
def _smc_stream_extract_multiline_comment(stream):
|
||||
while True:
|
||||
yield from itertools.takewhile(lambda ch: ch != '*', stream)
|
||||
ch = next(stream, None)
|
||||
if ch == '/':
|
||||
return
|
||||
yield '*'
|
||||
yield ch
|
||||
|
||||
|
||||
_escape_mapping = str.maketrans({
|
||||
'"': '"',
|
||||
'n': '\n',
|
||||
'r': '\r',
|
||||
't': '\t',
|
||||
'\\': '\\',
|
||||
})
|
||||
|
||||
|
||||
def _smc_stream_extract_string(stream):
|
||||
for ch in stream:
|
||||
if ch == "\\":
|
||||
ch = next(stream).translate(_escape_mapping)
|
||||
elif ch == '"':
|
||||
return
|
||||
yield ch
|
||||
|
||||
|
||||
def parse_smc_string(data):
|
||||
stream = iter(data)
|
||||
while True:
|
||||
ch = _smc_stream_skip_whitespace(stream)
|
||||
if ch is None:
|
||||
return
|
||||
elif ch == '"':
|
||||
# consume until the next quote, then determine if:
|
||||
# - the string marks the subsection name '{'
|
||||
# - we have another string to consume, making this a key / value pair
|
||||
key = ''.join(_smc_stream_extract_string(stream))
|
||||
|
||||
ch = _smc_stream_skip_whitespace(stream)
|
||||
if ch == '{':
|
||||
yield SMCOperation.SUBSECTION_START, key
|
||||
elif ch == '"':
|
||||
value = ''.join(_smc_stream_extract_string(stream))
|
||||
yield SMCOperation.KEYVALUE, key, value
|
||||
else:
|
||||
raise ValueError(
|
||||
f"Unexpected character {ch.encode('ascii', 'backslashreplace')} after end of string"
|
||||
)
|
||||
elif ch == '}':
|
||||
yield SMCOperation.SUBSECTION_END, None
|
||||
elif ch == '/':
|
||||
ch = next(stream)
|
||||
if ch == '/':
|
||||
# single line comment: consume until the end of the line
|
||||
value = ''.join(
|
||||
itertools.takewhile(lambda ch: ch != '\n', stream))
|
||||
yield SMCOperation.COMMENT, value
|
||||
elif ch == '*':
|
||||
# multi line comment: consume until the sequence '*/' is reached
|
||||
value = ''.join(_smc_stream_extract_multiline_comment(stream))
|
||||
yield SMCOperation.COMMENT_MULTILINE, value
|
||||
else:
|
||||
raise ValueError(
|
||||
f"Unexpected character {ch.encode('ascii', 'backslashreplace')} at start of comment"
|
||||
)
|
||||
else:
|
||||
raise ValueError(
|
||||
f"Unexpected character {ch.encode('ascii', 'backslashreplace')}"
|
||||
)
|
||||
|
||||
|
||||
class MultiKeyDict(collections.defaultdict):
|
||||
# a dict that supports supports one-to-many mappings
|
||||
# init by passing keys pointing to a list of values
|
||||
def __init__(self, *args, **kwargs):
|
||||
super().__init__(list, *args, **kwargs)
|
||||
|
||||
# yields a key, value pair for every array item associated with a key
|
||||
def items(self):
|
||||
yield from ((k, iv) for k, v in super().items() for iv in v)
|
||||
|
||||
|
||||
def smc_string_to_dict(data):
|
||||
# returns a multidict instance
|
||||
root_node = MultiKeyDict()
|
||||
contexts = [root_node]
|
||||
for event, *info in parse_smc_string(data):
|
||||
if event == SMCOperation.SUBSECTION_START:
|
||||
key, *_ = info
|
||||
subkey = MultiKeyDict()
|
||||
contexts[-1][key].append(subkey)
|
||||
contexts.append(subkey)
|
||||
elif event == SMCOperation.SUBSECTION_END:
|
||||
contexts.pop()
|
||||
elif event == SMCOperation.KEYVALUE:
|
||||
key, value = info
|
||||
contexts[-1][key].append(value)
|
||||
return root_node
|
||||
|
||||
|
||||
def main():
|
||||
SMC_STRING = """
|
||||
"thing"
|
||||
{
|
||||
// this is a comment node
|
||||
"key" "value"
|
||||
|
||||
"subthing"
|
||||
{
|
||||
// and another
|
||||
"subthing key" "subthing value"
|
||||
"subthing key" "duplicate key value"
|
||||
}
|
||||
"subthing"
|
||||
{
|
||||
"duplicate subthing" "yes"
|
||||
}
|
||||
|
||||
/**
|
||||
* this is a multiline comment node
|
||||
*/
|
||||
"another key" "another value"
|
||||
}
|
||||
"""
|
||||
|
||||
# sections = []
|
||||
# for event, *data in parse_smc_string(SMC_STRING):
|
||||
# print(event, data, tuple(sections))
|
||||
# if event == SMCOperation.SUBSECTION_START:
|
||||
# section, *_ = data
|
||||
# sections.append(section)
|
||||
# elif event == SMCOperation.SUBSECTION_END:
|
||||
# sections.pop()
|
||||
# assert(not sections)
|
||||
|
||||
import json
|
||||
import pathlib
|
||||
# print(json.dumps(smc_string_to_dict(SMC_STRING), indent=4))
|
||||
for f in pathlib.Path('translations').rglob('*.txt'):
|
||||
print(f)
|
||||
print(json.dumps(smc_string_to_dict(f.read_text('utf8')), indent = 4))
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
33
translations/ar/adminhelp.phrases.txt
Normal file
33
translations/ar/adminhelp.phrases.txt
Normal file
@ -0,0 +1,33 @@
|
||||
"Phrases"
|
||||
{
|
||||
"SM help commands"
|
||||
{
|
||||
"ar" "مساعدة SourceMod: معلومات الامر"
|
||||
}
|
||||
|
||||
"No description available"
|
||||
{
|
||||
"ar" "لا وصف موجود"
|
||||
}
|
||||
|
||||
"No commands available"
|
||||
{
|
||||
"ar" "لا اوامر موجودة"
|
||||
}
|
||||
|
||||
"Type sm_help to see more"
|
||||
{
|
||||
"ar" "اكتب sm_help {1} لترى المزيد من الاوامر"
|
||||
}
|
||||
|
||||
"Entries n - m in page k"
|
||||
{
|
||||
"ar" "جزء {1} - {2} في الصفحة {3} "
|
||||
}
|
||||
|
||||
"No matching results found"
|
||||
{
|
||||
"ar" "لم يتم العثور على نتائج مطابقه"
|
||||
}
|
||||
|
||||
}
|
23
translations/ar/adminmenu.phrases.txt
Normal file
23
translations/ar/adminmenu.phrases.txt
Normal file
@ -0,0 +1,23 @@
|
||||
"Phrases"
|
||||
{
|
||||
"Admin Menu"
|
||||
{
|
||||
"ar" "قائمة المدير"
|
||||
}
|
||||
|
||||
"Player Commands"
|
||||
{
|
||||
"ar" "اوامر اللاعبين"
|
||||
}
|
||||
|
||||
"Server Commands"
|
||||
{
|
||||
"ar" "اوامر السيرفر"
|
||||
}
|
||||
|
||||
"Voting Commands"
|
||||
{
|
||||
"ar" "اوامر التصويت"
|
||||
}
|
||||
|
||||
}
|
8
translations/ar/antiflood.phrases.txt
Normal file
8
translations/ar/antiflood.phrases.txt
Normal file
@ -0,0 +1,8 @@
|
||||
"Phrases"
|
||||
{
|
||||
"Flooding the server"
|
||||
{
|
||||
"ar" "انت تفيض السيرفر!"
|
||||
}
|
||||
|
||||
}
|
63
translations/ar/basebans.phrases.txt
Normal file
63
translations/ar/basebans.phrases.txt
Normal file
@ -0,0 +1,63 @@
|
||||
"Phrases"
|
||||
{
|
||||
"Ban player"
|
||||
{
|
||||
"ar" "لاعب الحظر"
|
||||
}
|
||||
|
||||
"Ban reason"
|
||||
{
|
||||
"ar" "سبب الحظر"
|
||||
}
|
||||
|
||||
"Permabanned player"
|
||||
{
|
||||
"ar" "لاعب فرض حظر دائم \"{1}\""
|
||||
}
|
||||
|
||||
"Permabanned player reason"
|
||||
{
|
||||
"ar" "لاعب فرض حظر دائم \"{1}\" (السبب: {2})."
|
||||
}
|
||||
|
||||
"Banned player"
|
||||
{
|
||||
"ar" " حظرت \"{1}\" لمدة \"{2}\" دقيقة"
|
||||
}
|
||||
|
||||
"Banned player reason"
|
||||
{
|
||||
"ar" "لاعب المحظورة \"{1}\" ل{2} دقيقة (السبب: {3})"
|
||||
}
|
||||
|
||||
"Removed bans matching"
|
||||
{
|
||||
"ar" "يحظر إزالة مطابقة التصفية: {1}"
|
||||
}
|
||||
|
||||
"Ban added"
|
||||
{
|
||||
"ar" "تمت إضافة حظر"
|
||||
}
|
||||
|
||||
"Cannot ban that IP"
|
||||
{
|
||||
"ar" "لا يمكنك حظر عنوان IP"
|
||||
}
|
||||
|
||||
"Custom ban reason explanation"
|
||||
{
|
||||
"ar" "أكتب سبب الحظر. إستعمل {1} للإلغاء."
|
||||
}
|
||||
|
||||
"AbortBan applied successfully"
|
||||
{
|
||||
"ar" "تم إلغاء الحظر"
|
||||
}
|
||||
|
||||
"AbortBan not waiting for custom reason"
|
||||
{
|
||||
"ar" "لا حظر ليتم الإلغاء"
|
||||
}
|
||||
|
||||
}
|
73
translations/ar/basecomm.phrases.txt
Normal file
73
translations/ar/basecomm.phrases.txt
Normal file
@ -0,0 +1,73 @@
|
||||
"Phrases"
|
||||
{
|
||||
"Gag/Mute player"
|
||||
{
|
||||
"ar" "إحظر الكتابة/التكلم"
|
||||
}
|
||||
|
||||
"Choose Type"
|
||||
{
|
||||
"ar" "إختر"
|
||||
}
|
||||
|
||||
"Gagged target"
|
||||
{
|
||||
"ar" "ختابة محظورة على {1}"
|
||||
}
|
||||
|
||||
"Ungagged target"
|
||||
{
|
||||
"ar" "تم رفع حظرالكتابة على {1}"
|
||||
}
|
||||
|
||||
"Muted target"
|
||||
{
|
||||
"ar" "محظور من التكلم {1}"
|
||||
}
|
||||
|
||||
"Unmuted target"
|
||||
{
|
||||
"ar" "تم رفع حظرالتكلم على {1}"
|
||||
}
|
||||
|
||||
"Silenced target"
|
||||
{
|
||||
"ar" "لاعب ممنوع من التكلم و الكتابة {1}"
|
||||
}
|
||||
|
||||
"Unsilenced target"
|
||||
{
|
||||
"ar" "تم رفع حظرالتكلم و الكتابة على {1}"
|
||||
}
|
||||
|
||||
"Mute Player"
|
||||
{
|
||||
"ar" "إحظراللاعب من التكلم"
|
||||
}
|
||||
|
||||
"UnMute Player"
|
||||
{
|
||||
"ar" "إرفع حظرالتكلم"
|
||||
}
|
||||
|
||||
"Gag Player"
|
||||
{
|
||||
"ar" "إحظر الكتابة على اللاعب "
|
||||
}
|
||||
|
||||
"UnGag Player"
|
||||
{
|
||||
"ar" "إرفع حظرالكتابة"
|
||||
}
|
||||
|
||||
"Silence Player"
|
||||
{
|
||||
"ar" "إمنع اللاعب من التكلم و الكتابة"
|
||||
}
|
||||
|
||||
"UnSilence Player"
|
||||
{
|
||||
"ar" "إرفع حظرالتكلم و الكتابة"
|
||||
}
|
||||
|
||||
}
|
108
translations/ar/basetriggers.phrases.txt
Normal file
108
translations/ar/basetriggers.phrases.txt
Normal file
@ -0,0 +1,108 @@
|
||||
"Phrases"
|
||||
{
|
||||
"Timeleft"
|
||||
{
|
||||
"ar" "الوقت المتبقي للخريطة: {1}"
|
||||
}
|
||||
|
||||
"Thetime"
|
||||
{
|
||||
"ar" "توقيت السيرفر الحالي هو: {1}"
|
||||
}
|
||||
|
||||
"Friendly Fire On"
|
||||
{
|
||||
"ar" "النار الصديقة مستعملة"
|
||||
}
|
||||
|
||||
"Friendly Fire Off"
|
||||
{
|
||||
"ar" "النار الصديقة موقوفة "
|
||||
}
|
||||
|
||||
"Current Map"
|
||||
{
|
||||
"ar" "الخريطة الحالية هي: {1}"
|
||||
}
|
||||
|
||||
"LastRound"
|
||||
{
|
||||
"ar" "هذه هي الدورة الأخيرة!!"
|
||||
}
|
||||
|
||||
"NoTimelimit"
|
||||
{
|
||||
"ar" "لا وقت محدود للخريطة"
|
||||
}
|
||||
|
||||
"Next Map"
|
||||
{
|
||||
"ar" "الخريطة التالية: {1}"
|
||||
}
|
||||
|
||||
"Pending Vote"
|
||||
{
|
||||
"ar" "لم يتم التصويت بعد"
|
||||
}
|
||||
|
||||
"WinLimitAppend"
|
||||
{
|
||||
"ar" "، أو غير الخريطة بعد فوز فريق دورا واحد"
|
||||
}
|
||||
|
||||
"WinLimit"
|
||||
{
|
||||
"ar" "سيتم تغيير الخريطة بعد فوز فريق دورا واحد"
|
||||
}
|
||||
|
||||
"MaxRoundsAppend"
|
||||
{
|
||||
"ar" "، أو غير الخريطة بعد دور واحد"
|
||||
}
|
||||
|
||||
"MaxRounds"
|
||||
{
|
||||
"ar" "سيتم تغيير الخريطة بعد دور واحد"
|
||||
}
|
||||
|
||||
"FragLimitAppend"
|
||||
{
|
||||
"ar" "، أو عند قتل لاعب."
|
||||
}
|
||||
|
||||
"FragLimit"
|
||||
{
|
||||
"ar" "سيتم تغيير الماپة بعد ميو لاعب ما."
|
||||
}
|
||||
|
||||
"WinLimitAppendPlural"
|
||||
{
|
||||
"ar" "، أو غير الخريطة بعد فوز فريق {1} دورة"
|
||||
}
|
||||
|
||||
"WinLimitPlural"
|
||||
{
|
||||
"ar" "سيتم تغيير الخريطة بعد فوز فريق ب{1} دور."
|
||||
}
|
||||
|
||||
"MaxRoundsAppendPlural"
|
||||
{
|
||||
"ar" "، أو غير الخريطة بعد {1} دورة"
|
||||
}
|
||||
|
||||
"MaxRoundsPlural"
|
||||
{
|
||||
"ar" "سيتم تغيير الخريطة بعد {1} دورة"
|
||||
}
|
||||
|
||||
"FragLimitAppendPlural"
|
||||
{
|
||||
"ar" "، أو عند قتل أكثر من {1} لاعب."
|
||||
}
|
||||
|
||||
"FragLimitPlural"
|
||||
{
|
||||
"ar" "سيتم تغير الخريطة بعد قتل {1}."
|
||||
}
|
||||
|
||||
}
|
93
translations/ar/basevotes.phrases.txt
Normal file
93
translations/ar/basevotes.phrases.txt
Normal file
@ -0,0 +1,93 @@
|
||||
"Phrases"
|
||||
{
|
||||
"Initiate Vote"
|
||||
{
|
||||
"ar" "أبدأ التصويت: {1}"
|
||||
}
|
||||
|
||||
"Initiated Vote Map"
|
||||
{
|
||||
"ar" "إبتدأ تصويت المابة "
|
||||
}
|
||||
|
||||
"Initiated Vote Kick"
|
||||
{
|
||||
"ar" "تصويت الطرد المبتدأ ضد {1}"
|
||||
}
|
||||
|
||||
"Initiated Vote Ban"
|
||||
{
|
||||
"ar" "تصويت الحظر المبتدأ ضد {1}"
|
||||
}
|
||||
|
||||
"Map Vote"
|
||||
{
|
||||
"ar" "تصويت المابة {1}:"
|
||||
}
|
||||
|
||||
"Change Map To"
|
||||
{
|
||||
"ar" "غير المابة ل: {1} ؟"
|
||||
}
|
||||
|
||||
"Votekick Player"
|
||||
{
|
||||
"ar" "إطرد اللاعب {1} ؟"
|
||||
}
|
||||
|
||||
"Voteban Player"
|
||||
{
|
||||
"ar" "إحظر اللعب على {1} ؟"
|
||||
}
|
||||
|
||||
"Vote Successful"
|
||||
{
|
||||
"ar" "تصويت ناجح. (تم الحصول على {1}%% من {2})"
|
||||
}
|
||||
|
||||
"Vote Failed"
|
||||
{
|
||||
"ar" "فشل التصويت. {1}%% تصويت لازم. (حصل {2}%% من {3} تصويتات)"
|
||||
}
|
||||
|
||||
"Vote End"
|
||||
{
|
||||
"ar" "الجواب ل {1} هو: {2}"
|
||||
}
|
||||
|
||||
"Kick vote"
|
||||
{
|
||||
"ar" "تصويت الطرد"
|
||||
}
|
||||
|
||||
"Ban vote"
|
||||
{
|
||||
"ar" "تصويت الحظر"
|
||||
}
|
||||
|
||||
"Map vote"
|
||||
{
|
||||
"ar" "تصويت المابة"
|
||||
}
|
||||
|
||||
"Confirm Vote"
|
||||
{
|
||||
"ar" "أكد التصويت"
|
||||
}
|
||||
|
||||
"Map Vote In Use"
|
||||
{
|
||||
"ar" "تصويت المابة في إستعمال"
|
||||
}
|
||||
|
||||
"Please select a map"
|
||||
{
|
||||
"ar" "من فضلك إختر"
|
||||
}
|
||||
|
||||
"Start the Vote"
|
||||
{
|
||||
"ar" "إبدأ التصويت"
|
||||
}
|
||||
|
||||
}
|
48
translations/ar/clientprefs.phrases.txt
Normal file
48
translations/ar/clientprefs.phrases.txt
Normal file
@ -0,0 +1,48 @@
|
||||
"Phrases"
|
||||
{
|
||||
"Cookie List"
|
||||
{
|
||||
"ar" "لائحة الكوكيز "
|
||||
}
|
||||
|
||||
"Printing Cookie List"
|
||||
{
|
||||
"ar" "يتم عرض لائحة الكوكيز إلى وحدة التحكم"
|
||||
}
|
||||
|
||||
"Cookie not Found"
|
||||
{
|
||||
"ar" "لم يتم العثور على الكوكي {1}"
|
||||
}
|
||||
|
||||
"Cookie Value"
|
||||
{
|
||||
"ar" "{1} قيمة هي {2}"
|
||||
}
|
||||
|
||||
"Protected Cookie"
|
||||
{
|
||||
"ar" "لا يمكن تغيروحدة الكوكي المحمية \"{1}\""
|
||||
}
|
||||
|
||||
"Cookie Changed Value"
|
||||
{
|
||||
"ar" "تم تغيير الكوكيز من \"{1}\" إلى \"{2}\""
|
||||
}
|
||||
|
||||
"No Console"
|
||||
{
|
||||
"ar" "لا يمكن عرض التعديلات في وحدت التحكم"
|
||||
}
|
||||
|
||||
"Choose Option"
|
||||
{
|
||||
"ar" "إختر إختيارا :"
|
||||
}
|
||||
|
||||
"Client Settings"
|
||||
{
|
||||
"ar" "تعديلات اللاعب"
|
||||
}
|
||||
|
||||
}
|
253
translations/ar/common.phrases.txt
Normal file
253
translations/ar/common.phrases.txt
Normal file
@ -0,0 +1,253 @@
|
||||
"Phrases"
|
||||
{
|
||||
"Yes"
|
||||
{
|
||||
"ar" "نعم"
|
||||
}
|
||||
|
||||
"No"
|
||||
{
|
||||
"ar" "لا"
|
||||
}
|
||||
|
||||
"No matching client"
|
||||
{
|
||||
"ar" "لم يتم العثور على لاعب مطابق."
|
||||
}
|
||||
|
||||
"No matching clients"
|
||||
{
|
||||
"ar" "لم يتم العثور على لاعبين مطابقين."
|
||||
}
|
||||
|
||||
"More than one client matches"
|
||||
{
|
||||
"ar" "أكثر من لاعب يطابق الأمر المعطى \"{1}\""
|
||||
}
|
||||
|
||||
"More than one client matched"
|
||||
{
|
||||
"ar" "أكثر من لاعب يطابق الأمر المعطى"
|
||||
}
|
||||
|
||||
"Player no longer available"
|
||||
{
|
||||
"ar" "اللاعب الذي إخترت غير موجود."
|
||||
}
|
||||
|
||||
"Kick player"
|
||||
{
|
||||
"ar" "إطرد اللاعب"
|
||||
}
|
||||
|
||||
"Kicked by admin"
|
||||
{
|
||||
"ar" "طرد من قبل الآدمن"
|
||||
}
|
||||
|
||||
"Changing map"
|
||||
{
|
||||
"ar" "يتم تغيير المابة ل {1}..."
|
||||
}
|
||||
|
||||
"Map was not found"
|
||||
{
|
||||
"ar" "لم يتم العثور على المابة {1}."
|
||||
}
|
||||
|
||||
"Unable to target"
|
||||
{
|
||||
"ar" "لا يمكن الإسعمال على هذا اللاعب."
|
||||
}
|
||||
|
||||
"Name"
|
||||
{
|
||||
"ar" "الإسم"
|
||||
}
|
||||
|
||||
"Access"
|
||||
{
|
||||
"ar" "إذن الدخول"
|
||||
}
|
||||
|
||||
"See console for output"
|
||||
{
|
||||
"ar" "أنظر ال'console' للمعلومات."
|
||||
}
|
||||
|
||||
"Cannot target bot"
|
||||
{
|
||||
"ar" "لا يمكنك تنفيذ العمليةعلى لاعب(إلكتروني)."
|
||||
}
|
||||
|
||||
"Unable to find cvar"
|
||||
{
|
||||
"ar" "لا يمكن العثور على الإعداد: {1}"
|
||||
}
|
||||
|
||||
"No access to cvar"
|
||||
{
|
||||
"ar" "ليس لديك الحق لتمارس الأمر."
|
||||
}
|
||||
|
||||
"Value of cvar"
|
||||
{
|
||||
"ar" "قيمت الإعداد \"{1}\": \"{2}\""
|
||||
}
|
||||
|
||||
"Cvar changed"
|
||||
{
|
||||
"ar" "تم تغير التعديل \"{1}\" إلى \"{2}\""
|
||||
}
|
||||
|
||||
"Config not found"
|
||||
{
|
||||
"ar" "لم يتم العثور على ملف التعديلات {1}"
|
||||
}
|
||||
|
||||
"Executed config"
|
||||
{
|
||||
"ar" "التعديلات المستعملة {1}."
|
||||
}
|
||||
|
||||
"Admin cache refreshed"
|
||||
{
|
||||
"ar" "تم تنعيش تخزين الأدمن ."
|
||||
}
|
||||
|
||||
"Invalid Amount"
|
||||
{
|
||||
"ar" "الحجم المحدد غير مسموح"
|
||||
}
|
||||
|
||||
"Cannot be performed on dead"
|
||||
{
|
||||
"ar" "لا يمكن تنفيد العملية على لاعب ميت \"{1}\""
|
||||
}
|
||||
|
||||
"Player has since died"
|
||||
{
|
||||
"ar" "لا يمكن تنفيد العملية على اللاعب، منذ موته."
|
||||
}
|
||||
|
||||
"Vote in Progress"
|
||||
{
|
||||
"ar" "هناك تصويت حاليا."
|
||||
}
|
||||
|
||||
"Vote Not In Progress"
|
||||
{
|
||||
"ar" "لا يوجد هناك تصويت حاليا."
|
||||
}
|
||||
|
||||
"Cancelled Vote"
|
||||
{
|
||||
"ar" "الغى التصويت."
|
||||
}
|
||||
|
||||
"Cancel vote"
|
||||
{
|
||||
"ar" "تم إلغاء التصويت"
|
||||
}
|
||||
|
||||
"Vote Select"
|
||||
{
|
||||
"ar" "{1} إختار {2}."
|
||||
}
|
||||
|
||||
"No Votes Cast"
|
||||
{
|
||||
"ar" "لم يتم تلقي أي تصويت."
|
||||
}
|
||||
|
||||
"Vote Delay Minutes"
|
||||
{
|
||||
"ar" "يجب عليك الإنتظار {1} دقائق حتى إعادت تصويت آخر."
|
||||
}
|
||||
|
||||
"Vote Delay Seconds"
|
||||
{
|
||||
"ar" "يجب عليك الإنتظار {1} ثوان حتى إعادت تصويت آخر."
|
||||
}
|
||||
|
||||
"Could not connect to database"
|
||||
{
|
||||
"ar" "لم يمكن التوصل بقاعدة البيانات."
|
||||
}
|
||||
|
||||
"Failed to query database"
|
||||
{
|
||||
"ar" "لم يمكن استعاد المعلومات من قاعدة البيانات."
|
||||
}
|
||||
|
||||
"Invalid SteamID specified"
|
||||
{
|
||||
"ar" "لقد حددة رقم خاطئ(لابد أن يبدء ب STEAM_)"
|
||||
}
|
||||
|
||||
"Reload admins"
|
||||
{
|
||||
"ar" "أعد تحميل لائحت الأدمن."
|
||||
}
|
||||
|
||||
"Command is in-game only"
|
||||
{
|
||||
"ar" "لا يمكنك من خارج اللعبة."
|
||||
}
|
||||
|
||||
"Target must be dead"
|
||||
{
|
||||
"ar" "العملية يمكن إستعمالها على اللاعبين الأموات فقط."
|
||||
}
|
||||
|
||||
"Target must be alive"
|
||||
{
|
||||
"ar" "العملية يمكن إستعمالها على اللاعبين الأحياء فقط."
|
||||
}
|
||||
|
||||
"Target is not in game"
|
||||
{
|
||||
"ar" "اللاعب ليس بالداخل كاملا."
|
||||
}
|
||||
|
||||
"Played Sound"
|
||||
{
|
||||
"ar" "شغل الصوت على اللاعب '{1}'"
|
||||
}
|
||||
|
||||
"Slapped player"
|
||||
{
|
||||
"ar" "صفع اللاعب '{1}'"
|
||||
}
|
||||
|
||||
"Slayed player"
|
||||
{
|
||||
"ar" "قتل اللاعب '{1}'"
|
||||
}
|
||||
|
||||
"Kicked player"
|
||||
{
|
||||
"ar" "إطرد اللاعب '{1}'"
|
||||
}
|
||||
|
||||
"Cannot participate in vote"
|
||||
{
|
||||
"ar" "لا يمكنك المشاركة في هذا التصويت."
|
||||
}
|
||||
|
||||
"Cannot change vote"
|
||||
{
|
||||
"ar" "لا يمكنك تغيير مجموعتك لهذا التصويت."
|
||||
}
|
||||
|
||||
"On"
|
||||
{
|
||||
"ar" "مشغل"
|
||||
}
|
||||
|
||||
"Off"
|
||||
{
|
||||
"ar" "مطفأ"
|
||||
}
|
||||
|
||||
}
|
88
translations/ar/core.phrases.txt
Normal file
88
translations/ar/core.phrases.txt
Normal file
@ -0,0 +1,88 @@
|
||||
"Phrases"
|
||||
{
|
||||
"No Access"
|
||||
{
|
||||
"ar" "ليس لديك صلاحية لهذا الامر"
|
||||
}
|
||||
|
||||
"Back"
|
||||
{
|
||||
"ar" "الرجوع"
|
||||
}
|
||||
|
||||
"Next"
|
||||
{
|
||||
"ar" "التالي"
|
||||
}
|
||||
|
||||
"Exit"
|
||||
{
|
||||
"ar" "الخروج"
|
||||
}
|
||||
|
||||
"Previous"
|
||||
{
|
||||
"ar" "السابق"
|
||||
}
|
||||
|
||||
"all players"
|
||||
{
|
||||
"ar" "كل اللاعبين"
|
||||
}
|
||||
|
||||
"all humans"
|
||||
{
|
||||
"ar" "كل البشر"
|
||||
}
|
||||
|
||||
"all bots"
|
||||
{
|
||||
"ar" "كل اللاعبين(الحاسوب)"
|
||||
}
|
||||
|
||||
"all dead players"
|
||||
{
|
||||
"ar" "كل اللاعبين الاموات"
|
||||
}
|
||||
|
||||
"all alive players"
|
||||
{
|
||||
"ar" "كل اللاعبين الاحياء"
|
||||
}
|
||||
|
||||
"_s"
|
||||
{
|
||||
"ar" "{1}"
|
||||
}
|
||||
|
||||
"all spectators"
|
||||
{
|
||||
"ar" "كل المشاهدين"
|
||||
}
|
||||
|
||||
"Vote Count"
|
||||
{
|
||||
"ar" "تسويتات: {1}/{2}، {3} باقية"
|
||||
}
|
||||
|
||||
"Voted For"
|
||||
{
|
||||
"ar" "{1} صوت ل {2}"
|
||||
}
|
||||
|
||||
"Changed Vote"
|
||||
{
|
||||
"ar" "{1} غير تصويته ل {2}"
|
||||
}
|
||||
|
||||
"No Vote"
|
||||
{
|
||||
"ar" "لا تصويت"
|
||||
}
|
||||
|
||||
"Name Reserved"
|
||||
{
|
||||
"ar" "إسمك محجوز؛ عدل رقم سري لإتسعماله."
|
||||
}
|
||||
|
||||
}
|
168
translations/ar/funcommands.phrases.txt
Normal file
168
translations/ar/funcommands.phrases.txt
Normal file
@ -0,0 +1,168 @@
|
||||
"Phrases"
|
||||
{
|
||||
"Burn player"
|
||||
{
|
||||
"ar" "أحرق اللاعب"
|
||||
}
|
||||
|
||||
"FireBomb player"
|
||||
{
|
||||
"ar" "فجر اللاعب"
|
||||
}
|
||||
|
||||
"Freeze player"
|
||||
{
|
||||
"ar" "جمد اللاعب"
|
||||
}
|
||||
|
||||
"FreezeBomb player"
|
||||
{
|
||||
"ar" "جمد و فجر اللاعب"
|
||||
}
|
||||
|
||||
"TimeBomb player"
|
||||
{
|
||||
"ar" "حدد وقت إنفجار اللاعب"
|
||||
}
|
||||
|
||||
"Beacon player"
|
||||
{
|
||||
"ar" "حدد موقع اللاعب"
|
||||
}
|
||||
|
||||
"NoClip player"
|
||||
{
|
||||
"ar" "حرر اللاعب"
|
||||
}
|
||||
|
||||
"Blind player"
|
||||
{
|
||||
"ar" "إجعل اللاعب أعمى"
|
||||
}
|
||||
|
||||
"Drug player"
|
||||
{
|
||||
"ar" "خدر اللاعب"
|
||||
}
|
||||
|
||||
"Gravity player"
|
||||
{
|
||||
"ar" "مارس الجاجبية على اللاعب"
|
||||
}
|
||||
|
||||
"Blind amount"
|
||||
{
|
||||
"ar" "مستوى العمى"
|
||||
}
|
||||
|
||||
"Fully blind"
|
||||
{
|
||||
"ar" "أعمى بالكامل"
|
||||
}
|
||||
|
||||
"Half blind"
|
||||
{
|
||||
"ar" "نصف أعمى"
|
||||
}
|
||||
|
||||
"No blind"
|
||||
{
|
||||
"ar" "لا أعمى"
|
||||
}
|
||||
|
||||
"Gravity amount"
|
||||
{
|
||||
"ar" "جاذبية؟"
|
||||
}
|
||||
|
||||
"Gravity Very High"
|
||||
{
|
||||
"ar" "جاذبية جد عالية"
|
||||
}
|
||||
|
||||
"Gravity High"
|
||||
{
|
||||
"ar" "جاذبية عالية"
|
||||
}
|
||||
|
||||
"Gravity Normal"
|
||||
{
|
||||
"ar" "جاذبية عادية"
|
||||
}
|
||||
|
||||
"Gravity Low"
|
||||
{
|
||||
"ar" "جاذبية خفيفة"
|
||||
}
|
||||
|
||||
"Gravity Very Low"
|
||||
{
|
||||
"ar" "جاذبية جد خفيفة"
|
||||
}
|
||||
|
||||
"Set target on fire"
|
||||
{
|
||||
"ar" "احرق اللاعب {1}"
|
||||
}
|
||||
|
||||
"Toggled FireBomb on target"
|
||||
{
|
||||
"ar" "مارس الإنفجار على {1}"
|
||||
}
|
||||
|
||||
"Froze target"
|
||||
{
|
||||
"ar" "جامد {1}"
|
||||
}
|
||||
|
||||
"Toggled FreezeBomb on target"
|
||||
{
|
||||
"ar" "مارس التجميد و الانفجار على {1}"
|
||||
}
|
||||
|
||||
"Toggled beacon on target"
|
||||
{
|
||||
"ar" "مارس تحديد الموقع على {1ç"
|
||||
}
|
||||
|
||||
"Toggled TimeBomb on target"
|
||||
{
|
||||
"ar" "حدد الإنفجار المبرمج على {1}"
|
||||
}
|
||||
|
||||
"Toggled noclip on target"
|
||||
{
|
||||
"ar" "مارس التحرير على {1}"
|
||||
}
|
||||
|
||||
"Toggled drug on target"
|
||||
{
|
||||
"ar" "مارس التخدير على {1}"
|
||||
}
|
||||
|
||||
"Set blind on target"
|
||||
{
|
||||
"ar" "إجعل اللاعب أعمى {1}"
|
||||
}
|
||||
|
||||
"Set gravity on target"
|
||||
{
|
||||
"ar" "إجعل جاذبية اللاعب {1}"
|
||||
}
|
||||
|
||||
"Till Explodes"
|
||||
{
|
||||
"ar" "{2} حتى إنفجار {1}"
|
||||
}
|
||||
|
||||
"Unfrozen"
|
||||
{
|
||||
"ar" "تم عسك التجميد عنك"
|
||||
}
|
||||
|
||||
"You will be unfrozen"
|
||||
{
|
||||
"ar" "سيتم عكس تجميدك في {1} ثوان"
|
||||
}
|
||||
|
||||
}
|
98
translations/ar/funvotes.phrases.txt
Normal file
98
translations/ar/funvotes.phrases.txt
Normal file
@ -0,0 +1,98 @@
|
||||
"Phrases"
|
||||
{
|
||||
"Initiated Vote Gravity"
|
||||
{
|
||||
"ar" "إبتدء تصويت الجاذبية."
|
||||
}
|
||||
|
||||
"Initiated Vote Burn"
|
||||
{
|
||||
"ar" "إبتدء التصويت لحرق {1}."
|
||||
}
|
||||
|
||||
"Initiated Vote Slay"
|
||||
{
|
||||
"ar" "إبتدء التصية لقتل {1}."
|
||||
}
|
||||
|
||||
"Initiated Vote Alltalk"
|
||||
{
|
||||
"ar" "إبتدء تصويت 'الجميع يتكلم'."
|
||||
}
|
||||
|
||||
"Initiated Vote FF"
|
||||
{
|
||||
"ar" "إبتدء تصويت النيران الصديقة."
|
||||
}
|
||||
|
||||
"Gravity Vote"
|
||||
{
|
||||
"ar" "تصويت الجاذبية: {1}"
|
||||
}
|
||||
|
||||
"Change Gravity To"
|
||||
{
|
||||
"ar" "تغيير الجاذبية إلى {1}؟"
|
||||
}
|
||||
|
||||
"Voteburn player"
|
||||
{
|
||||
"ar" "حرق اللاعب {1}؟"
|
||||
}
|
||||
|
||||
"Voteslay Player"
|
||||
{
|
||||
"ar" "قتل {1}؟"
|
||||
}
|
||||
|
||||
"Votealltalk Off"
|
||||
{
|
||||
"ar" "إيقاف تكلم الجميع؟ {1}"
|
||||
}
|
||||
|
||||
"Votealltalk On"
|
||||
{
|
||||
"ar" "إمكان تكلم الجميع؟ {1}"
|
||||
}
|
||||
|
||||
"Voteff Off"
|
||||
{
|
||||
"ar" "إيقاف النيران الصديقة؟ {1}"
|
||||
}
|
||||
|
||||
"Voteff On"
|
||||
{
|
||||
"ar" "تشغيل النيران الصديقة؟ {1}"
|
||||
}
|
||||
|
||||
"Gravity vote"
|
||||
{
|
||||
"ar" "تصويت الجاذبية"
|
||||
}
|
||||
|
||||
"Vote FF"
|
||||
{
|
||||
"ar" "تصويت النيران الصديقة"
|
||||
}
|
||||
|
||||
"Burn vote"
|
||||
{
|
||||
"ar" "تصويت الإحراق"
|
||||
}
|
||||
|
||||
"Alltalk vote"
|
||||
{
|
||||
"ar" "تصويت الجميع يتكلم"
|
||||
}
|
||||
|
||||
"Slay vote"
|
||||
{
|
||||
"ar" "تصويت للقتل"
|
||||
}
|
||||
|
||||
"Slayed player"
|
||||
{
|
||||
"ar" "قتل اللاعب '{1}'"
|
||||
}
|
||||
|
||||
}
|
48
translations/ar/mapchooser.phrases.txt
Normal file
48
translations/ar/mapchooser.phrases.txt
Normal file
@ -0,0 +1,48 @@
|
||||
"Phrases"
|
||||
{
|
||||
"Vote Nextmap"
|
||||
{
|
||||
"ar" "صوت للخريطة الآتية!"
|
||||
}
|
||||
|
||||
"Nextmap Voting Started"
|
||||
{
|
||||
"ar" "إبتدأ التصويت للخريطة الآتية."
|
||||
}
|
||||
|
||||
"Nextmap Voting Finished"
|
||||
{
|
||||
"ar" "تم التصويت. الخريطة الآتية هي: {1} (قبل {2}%% من {3} تسويت)."
|
||||
}
|
||||
|
||||
"Current Map Extended"
|
||||
{
|
||||
"ar" "تم إطالت وقت الخريطة الحالية(قبل {1}%% من {2} تصويت)."
|
||||
}
|
||||
|
||||
"Extend Map"
|
||||
{
|
||||
"ar" "أطل وقت الخريطة الحالية"
|
||||
}
|
||||
|
||||
"Dont Change"
|
||||
{
|
||||
"ar" "لا تغير"
|
||||
}
|
||||
|
||||
"Current Map Stays"
|
||||
{
|
||||
"ar" "الخريطة الحالية تستأنف! تم التصويت!(قبل {1}%% من {2} تصويت)."
|
||||
}
|
||||
|
||||
"Changed Next Map"
|
||||
{
|
||||
"ar" "غير الخريطة الآتية ل\"{1}\"."
|
||||
}
|
||||
|
||||
"Starting Runoff"
|
||||
{
|
||||
"ar" "لم تحصل أي خريطة على أكثر من {1} %% تصويت({2} [{3}%%] و {4} [{5}%%])، يتم إعادت التصويت"
|
||||
}
|
||||
|
||||
}
|
43
translations/ar/nextmap.phrases.txt
Normal file
43
translations/ar/nextmap.phrases.txt
Normal file
@ -0,0 +1,43 @@
|
||||
"Phrases"
|
||||
{
|
||||
"Next Map"
|
||||
{
|
||||
"ar" "الخريطة الآتية: {1}"
|
||||
}
|
||||
|
||||
"Map History"
|
||||
{
|
||||
"ar" "تاريخ الخرائط"
|
||||
}
|
||||
|
||||
"Map"
|
||||
{
|
||||
"ar" "[الخريطة]"
|
||||
}
|
||||
|
||||
"Started"
|
||||
{
|
||||
"ar" "[إبتدء]"
|
||||
}
|
||||
|
||||
"Played Time"
|
||||
{
|
||||
"ar" "[الوقت الملعوب]"
|
||||
}
|
||||
|
||||
"Reason"
|
||||
{
|
||||
"ar" "[سب الإنهاء]"
|
||||
}
|
||||
|
||||
"Current Map"
|
||||
{
|
||||
"ar" "الخريطة الحالية"
|
||||
}
|
||||
|
||||
"ago"
|
||||
{
|
||||
"ar" "قبلاً "
|
||||
}
|
||||
|
||||
}
|
68
translations/ar/nominations.phrases.txt
Normal file
68
translations/ar/nominations.phrases.txt
Normal file
@ -0,0 +1,68 @@
|
||||
"Phrases"
|
||||
{
|
||||
"Already Nominated"
|
||||
{
|
||||
"ar" "لقد سمية خريطة مسبقا."
|
||||
}
|
||||
|
||||
"Max Nominations"
|
||||
{
|
||||
"ar" "العدد المسموح للتسمية تم وصوله."
|
||||
}
|
||||
|
||||
"Map Already In Vote"
|
||||
{
|
||||
"ar" "الخريطة \"{1}\" موجودة مسبقا على لائحت التصويت."
|
||||
}
|
||||
|
||||
"Map Inserted"
|
||||
{
|
||||
"ar" "تم إضافة الخريطة \"{1}\" إلى لائحت التصويث."
|
||||
}
|
||||
|
||||
"Map Already Nominated"
|
||||
{
|
||||
"ar" "الخريطة التي إخترت تم تسميها مسبقا."
|
||||
}
|
||||
|
||||
"Map Nominated"
|
||||
{
|
||||
"ar" "{1} سمى {2}."
|
||||
}
|
||||
|
||||
"Map Nomination Changed"
|
||||
{
|
||||
"ar" "{1} غير تسميه ل\"{1}\"."
|
||||
}
|
||||
|
||||
"Nominate Title"
|
||||
{
|
||||
"ar" "سم خريطة:"
|
||||
}
|
||||
|
||||
"Can't Nominate Current Map"
|
||||
{
|
||||
"ar" "الخريطة التي أخترت هي الحالية ولا يمكن تسميهتها."
|
||||
}
|
||||
|
||||
"Map in Exclude List"
|
||||
{
|
||||
"ar" "الخريطة التي إخترت تم لعبها من قبل ولا يمكن تسميتها"
|
||||
}
|
||||
|
||||
"Current Map"
|
||||
{
|
||||
"ar" "الخريطة الحالية."
|
||||
}
|
||||
|
||||
"Recently Played"
|
||||
{
|
||||
"ar" "تم اللعب فيها قبل قليل."
|
||||
}
|
||||
|
||||
"Nominated"
|
||||
{
|
||||
"ar" "أختيرت"
|
||||
}
|
||||
|
||||
}
|
48
translations/ar/playercommands.phrases.txt
Normal file
48
translations/ar/playercommands.phrases.txt
Normal file
@ -0,0 +1,48 @@
|
||||
"Phrases"
|
||||
{
|
||||
"Slap player"
|
||||
{
|
||||
"ar" "صفع اللاعب"
|
||||
}
|
||||
|
||||
"Slap damage"
|
||||
{
|
||||
"ar" "ضرر الصفعة"
|
||||
}
|
||||
|
||||
"Slay player"
|
||||
{
|
||||
"ar" "قتل اللاعب"
|
||||
}
|
||||
|
||||
"Slapped target"
|
||||
{
|
||||
"ar" "صفع {1}."
|
||||
}
|
||||
|
||||
"Slayed target"
|
||||
{
|
||||
"ar" "تم قتل {1}"
|
||||
}
|
||||
|
||||
"Name changed"
|
||||
{
|
||||
"ar" "آدمن غير إسمك"
|
||||
}
|
||||
|
||||
"Renamed target"
|
||||
{
|
||||
"ar" "غير إسم {1}"
|
||||
}
|
||||
|
||||
"Rename player"
|
||||
{
|
||||
"ar" "غير إسم اللاعب"
|
||||
}
|
||||
|
||||
"Dead Player Rename"
|
||||
{
|
||||
"ar" "{1} سيتم تغيير إسمه الدور الآتي."
|
||||
}
|
||||
|
||||
}
|
128
translations/ar/plugin.basecommands.txt
Normal file
128
translations/ar/plugin.basecommands.txt
Normal file
@ -0,0 +1,128 @@
|
||||
"Phrases"
|
||||
{
|
||||
"Unable to find cvar"
|
||||
{
|
||||
"ar" "لم يتم العثور على الإعداد: {1}"
|
||||
}
|
||||
|
||||
"No access to cvar"
|
||||
{
|
||||
"ar" "ليس لك الحق لإسعمال هذا الإعداد."
|
||||
}
|
||||
|
||||
"Value of cvar"
|
||||
{
|
||||
"ar" "قيمة الإعداد \"{1}\": \"{2}\""
|
||||
}
|
||||
|
||||
"Cvar changed"
|
||||
{
|
||||
"ar" "غير ال'cvar' من \"{1}\" إلى \"{2}\"."
|
||||
}
|
||||
|
||||
"Config not found"
|
||||
{
|
||||
"ar" "لم يتم العثور على ملف الأعدادات {1}."
|
||||
}
|
||||
|
||||
"Executed config"
|
||||
{
|
||||
"ar" "شغل الإعداد \"{1}\"."
|
||||
}
|
||||
|
||||
"Permabanned player"
|
||||
{
|
||||
"ar" "حضر الاعب \"{1}\" من الدخول أبديا."
|
||||
}
|
||||
|
||||
"Permabanned player reason"
|
||||
{
|
||||
"ar" "حضر الاعب \"{1}\" من الدخول أبديا(السبب: {1})."
|
||||
}
|
||||
|
||||
"Banned player"
|
||||
{
|
||||
"ar" "حظر اللاعب \"{1}\" لمدت {2} دقائق."
|
||||
}
|
||||
|
||||
"Banned player reason"
|
||||
{
|
||||
"ar" "حظر اللاعب \"{1}\" لمدت {2} دقائق(السبب: {3})."
|
||||
}
|
||||
|
||||
"Removed bans matching"
|
||||
{
|
||||
"ar" "تم حذف الأحظار المطابقة: {1}"
|
||||
}
|
||||
|
||||
"Ban added"
|
||||
{
|
||||
"ar" "تم إضافة الحظر."
|
||||
}
|
||||
|
||||
"Admin cache refreshed"
|
||||
{
|
||||
"ar" "تم إنعاش ترخيصات الآدمن."
|
||||
}
|
||||
|
||||
"Identify player"
|
||||
{
|
||||
"ar" "تعريف اللاعب"
|
||||
}
|
||||
|
||||
"Choose Map"
|
||||
{
|
||||
"ar" "إختر خريطة"
|
||||
}
|
||||
|
||||
"Exec CFG"
|
||||
{
|
||||
"ar" "إستعمل ملف إعداد"
|
||||
}
|
||||
|
||||
"Admin logged in as"
|
||||
{
|
||||
"ar" "\"{1}\" دخل ك\"{2}\" بالترخيص: {3}"
|
||||
}
|
||||
|
||||
"Admin logged in anon"
|
||||
{
|
||||
"ar" "\"{1}\" لديه ترخيص: {2}"
|
||||
}
|
||||
|
||||
"Player is not an admin"
|
||||
{
|
||||
"ar" "\"{1}\" ليس بآدمن."
|
||||
}
|
||||
|
||||
"Player is an admin"
|
||||
{
|
||||
"ar" "\"{1}\" هو آدمن."
|
||||
}
|
||||
|
||||
"Username"
|
||||
{
|
||||
"ar" "إسم المستخدم"
|
||||
}
|
||||
|
||||
"Kicked target"
|
||||
{
|
||||
"ar" "طرد {1}"
|
||||
}
|
||||
|
||||
"Admin access"
|
||||
{
|
||||
"ar" "ترخيص للآدمن"
|
||||
}
|
||||
|
||||
"Cvar is now protected"
|
||||
{
|
||||
"ar" "تم تحصين ال'cvar' \"{1}\"."
|
||||
}
|
||||
|
||||
"Kicked target reason"
|
||||
{
|
||||
"ar" "طرد {1} (السبب: {2})."
|
||||
}
|
||||
|
||||
}
|
8
translations/ar/reservedslots.phrases.txt
Normal file
8
translations/ar/reservedslots.phrases.txt
Normal file
@ -0,0 +1,8 @@
|
||||
"Phrases"
|
||||
{
|
||||
"Slot reserved"
|
||||
{
|
||||
"ar" "تم إلقاءك لمكان محجوز."
|
||||
}
|
||||
|
||||
}
|
103
translations/ar/rockthevote.phrases.txt
Normal file
103
translations/ar/rockthevote.phrases.txt
Normal file
@ -0,0 +1,103 @@
|
||||
"Phrases"
|
||||
{
|
||||
"Rock The Vote"
|
||||
{
|
||||
"ar" "عجل التصويت:"
|
||||
}
|
||||
|
||||
"RTV Not Allowed"
|
||||
{
|
||||
"ar" "لا يمكن التصويت بعد."
|
||||
}
|
||||
|
||||
"RTV Started"
|
||||
{
|
||||
"ar" "لقد تم بدأ التصويت مسبقا."
|
||||
}
|
||||
|
||||
"RTV Ended"
|
||||
{
|
||||
"ar" "لقد تم التصويت. لا يمكنك إختيار أو تسمية خريطة."
|
||||
}
|
||||
|
||||
"Already Voted"
|
||||
{
|
||||
"ar" "لقد أردت التصويت مسبقا!"
|
||||
}
|
||||
|
||||
"Minimal Players Not Met"
|
||||
{
|
||||
"ar" "عدد اللاعبين المطليب غير موجود."
|
||||
}
|
||||
|
||||
"Map Already In Vote"
|
||||
{
|
||||
"ar" "تم إختيار الخريطة '{1}' مسبقا."
|
||||
}
|
||||
|
||||
"Map Inserted"
|
||||
{
|
||||
"ar" "تم إضافت الخريطة '{1}' إلى التصويت."
|
||||
}
|
||||
|
||||
"RTV Requested"
|
||||
{
|
||||
"ar" "{1} يريد أن يبدأ التصويت.({2} تصويت. {3} لازمة)"
|
||||
}
|
||||
|
||||
"RTV Vote Ready"
|
||||
{
|
||||
"ar" "يتم تعجيل التصويت!"
|
||||
}
|
||||
|
||||
"Don't Change"
|
||||
{
|
||||
"ar" "إستئناف الخريطة الحالية"
|
||||
}
|
||||
|
||||
"Already Nominated"
|
||||
{
|
||||
"ar" "لقد إخترت خريطة مسبقا."
|
||||
}
|
||||
|
||||
"Max Nominations"
|
||||
{
|
||||
"ar" "تم الوصول إلى العدد المحدود للإختيار."
|
||||
}
|
||||
|
||||
"Selected Map"
|
||||
{
|
||||
"ar" "{1} إختار {2}"
|
||||
}
|
||||
|
||||
"No Votes"
|
||||
{
|
||||
"ar" "لا تصويت. يتم إستئناف الخريطة الحالية."
|
||||
}
|
||||
|
||||
"Current Map Stays"
|
||||
{
|
||||
"ar" "الخريطة الحالية تستأنف! لقد أستعمل التصويت!"
|
||||
}
|
||||
|
||||
"Changing Maps"
|
||||
{
|
||||
"ar" "لقد أردت التصويت مسبقا.({1} تصويت، {1} لازمة)"
|
||||
}
|
||||
|
||||
"Map Already Nominated"
|
||||
{
|
||||
"ar" "الخريطة التي أخترت تم إختيارها مسبقا."
|
||||
}
|
||||
|
||||
"Map Nominated"
|
||||
{
|
||||
"ar" "{1} إختار الخريطة {2} للتصويت."
|
||||
}
|
||||
|
||||
"Nominate Title"
|
||||
{
|
||||
"ar" "سم الخريطة."
|
||||
}
|
||||
|
||||
}
|
8
translations/ar/sounds.phrases.txt
Normal file
8
translations/ar/sounds.phrases.txt
Normal file
@ -0,0 +1,8 @@
|
||||
"Phrases"
|
||||
{
|
||||
"Played sound to target"
|
||||
{
|
||||
"ar" "شغل الصوت ل{1}"
|
||||
}
|
||||
|
||||
}
|
78
translations/ar/sqladmins.phrases.txt
Normal file
78
translations/ar/sqladmins.phrases.txt
Normal file
@ -0,0 +1,78 @@
|
||||
"Phrases"
|
||||
{
|
||||
"Invalid authtype"
|
||||
{
|
||||
"ar" "يجب أن يتم الترخيص بإستعمال 'steam'، 'الإسم' أو 'ip'."
|
||||
}
|
||||
|
||||
"Invalid immunity"
|
||||
{
|
||||
"ar" "يجب أن تكون الحصانة عدد صحيح."
|
||||
}
|
||||
|
||||
"SQL Admin already exists"
|
||||
{
|
||||
"ar" "هناك آدمن مسبقا بنفس الترخيص المعطى."
|
||||
}
|
||||
|
||||
"SQL Admin added"
|
||||
{
|
||||
"ar" "تمت إضافة الآدمن بنجاح."
|
||||
}
|
||||
|
||||
"SQL Admin deleted"
|
||||
{
|
||||
"ar" "تم حذف الآدمن بنجاح."
|
||||
}
|
||||
|
||||
"SQL Admin not found"
|
||||
{
|
||||
"ar" "لم يتم العثور على الآدمن بالمعطيات المعطى."
|
||||
}
|
||||
|
||||
"SQL Group already exists"
|
||||
{
|
||||
"ar" "آدمن بنفس اللإسم موجود مسبقا."
|
||||
}
|
||||
|
||||
"SQL Group added"
|
||||
{
|
||||
"ar" "تمت إضافة المجموعة بنجاح."
|
||||
}
|
||||
|
||||
"SQL Group deleted"
|
||||
{
|
||||
"ar" "تم حذف المجموعة بنجاح."
|
||||
}
|
||||
|
||||
"SQL Group not found"
|
||||
{
|
||||
"ar" "لم يتم العثور على المجموعة بالمعطياة المعطى."
|
||||
}
|
||||
|
||||
"SQL Admin groups reset"
|
||||
{
|
||||
"ar" "تمت إعادت مجموعة الآدمن للحالة الأصلية."
|
||||
}
|
||||
|
||||
"SQL Group X not found"
|
||||
{
|
||||
"ar" "لم يتم العثور على مجموعة: \"{1}\""
|
||||
}
|
||||
|
||||
"SQL Group X failed to bind"
|
||||
{
|
||||
"ar" "تم فشل محاولت ربط: \"{1}\""
|
||||
}
|
||||
|
||||
"Added group to user"
|
||||
{
|
||||
"ar" "تمت إضافة المجموعة المعطاة للآدمن بنجاح."
|
||||
}
|
||||
|
||||
"Added groups to user"
|
||||
{
|
||||
"ar" "تمت إضافة {1} مجموعة معطاة للآدمن بنجاح."
|
||||
}
|
||||
|
||||
}
|
33
translations/bg/adminhelp.phrases.txt
Normal file
33
translations/bg/adminhelp.phrases.txt
Normal file
@ -0,0 +1,33 @@
|
||||
"Phrases"
|
||||
{
|
||||
"SM help commands"
|
||||
{
|
||||
"bg" "SM помощни команди"
|
||||
}
|
||||
|
||||
"No description available"
|
||||
{
|
||||
"bg" "Няма налично описание"
|
||||
}
|
||||
|
||||
"No commands available"
|
||||
{
|
||||
"bg" "Няма налични команди"
|
||||
}
|
||||
|
||||
"Type sm_help to see more"
|
||||
{
|
||||
"bg" "Напишете sm_help {1}, за да видите още команди"
|
||||
}
|
||||
|
||||
"Entries n - m in page k"
|
||||
{
|
||||
"bg" "Резултати {1} - {2} на страница {3} "
|
||||
}
|
||||
|
||||
"No matching results found"
|
||||
{
|
||||
"bg" "Не са намерени резултати по дадените критерии"
|
||||
}
|
||||
|
||||
}
|
23
translations/bg/adminmenu.phrases.txt
Normal file
23
translations/bg/adminmenu.phrases.txt
Normal file
@ -0,0 +1,23 @@
|
||||
"Phrases"
|
||||
{
|
||||
"Admin Menu"
|
||||
{
|
||||
"bg" "Администраторско меню"
|
||||
}
|
||||
|
||||
"Player Commands"
|
||||
{
|
||||
"bg" "Клиентски команди"
|
||||
}
|
||||
|
||||
"Server Commands"
|
||||
{
|
||||
"bg" "Сървърни команди"
|
||||
}
|
||||
|
||||
"Voting Commands"
|
||||
{
|
||||
"bg" "Команди за гласуване"
|
||||
}
|
||||
|
||||
}
|
3
translations/bg/antiflood.phrases.txt
Normal file
3
translations/bg/antiflood.phrases.txt
Normal file
@ -0,0 +1,3 @@
|
||||
"Phrases"
|
||||
{
|
||||
}
|
48
translations/bg/basebans.phrases.txt
Normal file
48
translations/bg/basebans.phrases.txt
Normal file
@ -0,0 +1,48 @@
|
||||
"Phrases"
|
||||
{
|
||||
"Ban player"
|
||||
{
|
||||
"bg" "Блокиране на играча"
|
||||
}
|
||||
|
||||
"Ban reason"
|
||||
{
|
||||
"bg" "Причина за блокиране"
|
||||
}
|
||||
|
||||
"Permabanned player"
|
||||
{
|
||||
"bg" "Играчът {1} е блокиран за постоянно."
|
||||
}
|
||||
|
||||
"Permabanned player reason"
|
||||
{
|
||||
"bg" "Играчът {1} е блокиран за постоянно. (причина: {2}."
|
||||
}
|
||||
|
||||
"Banned player"
|
||||
{
|
||||
"bg" "Играчът {1} е блокиран за {2} минути."
|
||||
}
|
||||
|
||||
"Banned player reason"
|
||||
{
|
||||
"bg" "Играчът {1} е блокиран за {2} минути (причина: {3})."
|
||||
}
|
||||
|
||||
"Removed bans matching"
|
||||
{
|
||||
"bg" "Премахнатите забрани отговарят на филтъра: {1}"
|
||||
}
|
||||
|
||||
"Ban added"
|
||||
{
|
||||
"bg" "Забраната беше добавена."
|
||||
}
|
||||
|
||||
"Cannot ban that IP"
|
||||
{
|
||||
"bg" "Не можете да блокирате този IP адрес."
|
||||
}
|
||||
|
||||
}
|
18
translations/bg/basecomm.phrases.txt
Normal file
18
translations/bg/basecomm.phrases.txt
Normal file
@ -0,0 +1,18 @@
|
||||
"Phrases"
|
||||
{
|
||||
"Choose Type"
|
||||
{
|
||||
"bg" "Избиране на тип"
|
||||
}
|
||||
|
||||
"Silenced target"
|
||||
{
|
||||
"bg" "{1} е заглушен."
|
||||
}
|
||||
|
||||
"Unsilenced target"
|
||||
{
|
||||
"bg" "{1} вече не е заглушен."
|
||||
}
|
||||
|
||||
}
|
108
translations/bg/basetriggers.phrases.txt
Normal file
108
translations/bg/basetriggers.phrases.txt
Normal file
@ -0,0 +1,108 @@
|
||||
"Phrases"
|
||||
{
|
||||
"Timeleft"
|
||||
{
|
||||
"bg" "Време, оставащо от картата:"
|
||||
}
|
||||
|
||||
"Thetime"
|
||||
{
|
||||
"bg" "Текущото сървърно време е {1}"
|
||||
}
|
||||
|
||||
"Friendly Fire On"
|
||||
{
|
||||
"bg" "Приятелският огън е включен."
|
||||
}
|
||||
|
||||
"Friendly Fire Off"
|
||||
{
|
||||
"bg" "Приятелският огън е изключен."
|
||||
}
|
||||
|
||||
"Current Map"
|
||||
{
|
||||
"bg" "Текущата карта е {1}."
|
||||
}
|
||||
|
||||
"LastRound"
|
||||
{
|
||||
"bg" "Това е последният рунд!"
|
||||
}
|
||||
|
||||
"NoTimelimit"
|
||||
{
|
||||
"bg" "Няма ограничение на времето за картата"
|
||||
}
|
||||
|
||||
"Next Map"
|
||||
{
|
||||
"bg" "Следваща карта: {1}"
|
||||
}
|
||||
|
||||
"Pending Vote"
|
||||
{
|
||||
"bg" "Гласуване в очакване"
|
||||
}
|
||||
|
||||
"WinLimitAppend"
|
||||
{
|
||||
"bg" " или да се смени картата, след като отбор спечели един рунд"
|
||||
}
|
||||
|
||||
"WinLimit"
|
||||
{
|
||||
"bg" "Картата ще се смени, след като отбор спечели един рунд"
|
||||
}
|
||||
|
||||
"MaxRoundsAppend"
|
||||
{
|
||||
"bg" "или картата ще се смени след още един рунд"
|
||||
}
|
||||
|
||||
"MaxRounds"
|
||||
{
|
||||
"bg" "Картата ще се смени след още един рунд"
|
||||
}
|
||||
|
||||
"FragLimitAppend"
|
||||
{
|
||||
"bg" "или да се смени картата, след като играч достигне едно убийство"
|
||||
}
|
||||
|
||||
"FragLimit"
|
||||
{
|
||||
"bg" "Картата ще се смени, след като играч достигне едно убийство"
|
||||
}
|
||||
|
||||
"WinLimitAppendPlural"
|
||||
{
|
||||
"bg" "или да се смени картата, след като отбор спечели {1} рунда"
|
||||
}
|
||||
|
||||
"WinLimitPlural"
|
||||
{
|
||||
"bg" "Картата ще се смени, след като отбор спечели {1} рунда"
|
||||
}
|
||||
|
||||
"MaxRoundsAppendPlural"
|
||||
{
|
||||
"bg" "или картата ще се смени след още {1} рунда"
|
||||
}
|
||||
|
||||
"MaxRoundsPlural"
|
||||
{
|
||||
"bg" "Картата ще се смени след още {1} рунда"
|
||||
}
|
||||
|
||||
"FragLimitAppendPlural"
|
||||
{
|
||||
"bg" "или да се смени картата, след като играч достигне {1} убийства"
|
||||
}
|
||||
|
||||
"FragLimitPlural"
|
||||
{
|
||||
"bg" "Картата ще се смени, след като играч достигне {1} убийства"
|
||||
}
|
||||
|
||||
}
|
63
translations/bg/basevotes.phrases.txt
Normal file
63
translations/bg/basevotes.phrases.txt
Normal file
@ -0,0 +1,63 @@
|
||||
"Phrases"
|
||||
{
|
||||
"Map Vote"
|
||||
{
|
||||
"bg" "Гласуване за карта: {1}"
|
||||
}
|
||||
|
||||
"Change Map To"
|
||||
{
|
||||
"bg" "Да се смени ли картата на {1}?"
|
||||
}
|
||||
|
||||
"Votekick Player"
|
||||
{
|
||||
"bg" "Да бъде ли изритан {1}?"
|
||||
}
|
||||
|
||||
"Voteban Player"
|
||||
{
|
||||
"bg" "Да бъде ли блокиран {1}?"
|
||||
}
|
||||
|
||||
"Vote Successful"
|
||||
{
|
||||
"bg" "Гласуването е успешно. {Получени са {1}%% от {2} гласа)"
|
||||
}
|
||||
|
||||
"Vote Failed"
|
||||
{
|
||||
"bg" "Гласуването се провали. {1}%% гласа са нужни. (Получени са {2}%% от {3} гласа)"
|
||||
}
|
||||
|
||||
"Vote End"
|
||||
{
|
||||
"bg" "Отговорът на {1} е: {2}."
|
||||
}
|
||||
|
||||
"Kick vote"
|
||||
{
|
||||
"bg" "Гласуване за изритване"
|
||||
}
|
||||
|
||||
"Ban vote"
|
||||
{
|
||||
"bg" "Забрана на гласуването"
|
||||
}
|
||||
|
||||
"Map vote"
|
||||
{
|
||||
"bg" "Гласуване за карта"
|
||||
}
|
||||
|
||||
"Confirm Vote"
|
||||
{
|
||||
"bg" "Потвърждаване на гласуването"
|
||||
}
|
||||
|
||||
"Map Vote In Use"
|
||||
{
|
||||
"bg" "Друг администратор в момента ползва менюто за гласуване за карта."
|
||||
}
|
||||
|
||||
}
|
48
translations/bg/clientprefs.phrases.txt
Normal file
48
translations/bg/clientprefs.phrases.txt
Normal file
@ -0,0 +1,48 @@
|
||||
"Phrases"
|
||||
{
|
||||
"Cookie List"
|
||||
{
|
||||
"bg" "Sourcemod списък с бисквити"
|
||||
}
|
||||
|
||||
"Printing Cookie List"
|
||||
{
|
||||
"bg" "Извеждане на списъка с бисквитите в конзолата"
|
||||
}
|
||||
|
||||
"Cookie not Found"
|
||||
{
|
||||
"bg" "Бисквитата \"{1} не може да бъде намерена"
|
||||
}
|
||||
|
||||
"Cookie Value"
|
||||
{
|
||||
"bg" "Стойността на {1} е {2}"
|
||||
}
|
||||
|
||||
"Protected Cookie"
|
||||
{
|
||||
"bg" "Стойността на защитената бисквита \"{1} не може да бъде променена"
|
||||
}
|
||||
|
||||
"Cookie Changed Value"
|
||||
{
|
||||
"bg" "Стойността на бисквитата е сменена от \"{1}\" на \"{2}\""
|
||||
}
|
||||
|
||||
"No Console"
|
||||
{
|
||||
"bg" " Менюто за настройките не може да бъде показано в конзолата "
|
||||
}
|
||||
|
||||
"Choose Option"
|
||||
{
|
||||
"bg" "Изберете опция"
|
||||
}
|
||||
|
||||
"Client Settings"
|
||||
{
|
||||
"bg" "Клиентски настройки"
|
||||
}
|
||||
|
||||
}
|
178
translations/bg/common.phrases.txt
Normal file
178
translations/bg/common.phrases.txt
Normal file
@ -0,0 +1,178 @@
|
||||
"Phrases"
|
||||
{
|
||||
"Yes"
|
||||
{
|
||||
"bg" "Да"
|
||||
}
|
||||
|
||||
"No"
|
||||
{
|
||||
"bg" "Не"
|
||||
}
|
||||
|
||||
"Player no longer available"
|
||||
{
|
||||
"bg" "Играчът, когото избрахте, вече не е на разположение."
|
||||
}
|
||||
|
||||
"Kick player"
|
||||
{
|
||||
"bg" "Изритване на играч"
|
||||
}
|
||||
|
||||
"Kicked by admin"
|
||||
{
|
||||
"bg" "Изритан от администратор"
|
||||
}
|
||||
|
||||
"Changing map"
|
||||
{
|
||||
"bg" "Картата се сменя на {1}..."
|
||||
}
|
||||
|
||||
"Map was not found"
|
||||
{
|
||||
"bg" "Картата {1} не беше намерена."
|
||||
}
|
||||
|
||||
"Unable to target"
|
||||
{
|
||||
"bg" "Не можете да изберете този играч."
|
||||
}
|
||||
|
||||
"Name"
|
||||
{
|
||||
"bg" "Име"
|
||||
}
|
||||
|
||||
"Access"
|
||||
{
|
||||
"bg" "Достъп"
|
||||
}
|
||||
|
||||
"Cannot target bot"
|
||||
{
|
||||
"bg" "Тази команда не може да се използва върху бот."
|
||||
}
|
||||
|
||||
"Config not found"
|
||||
{
|
||||
"bg" "Конфигурационният файл \"{1} не е намерен."
|
||||
}
|
||||
|
||||
"Executed config"
|
||||
{
|
||||
"bg" "Конфигурационният файл \"{1}\" е изпълнен."
|
||||
}
|
||||
|
||||
"Admin cache refreshed"
|
||||
{
|
||||
"bg" "Администраторският кеш е обновен"
|
||||
}
|
||||
|
||||
"Cannot be performed on dead"
|
||||
{
|
||||
"bg" "Това действие не може да се приложи върху мъртвия играч {1}"
|
||||
}
|
||||
|
||||
"Vote in Progress"
|
||||
{
|
||||
"bg" "Вече тече гласуване"
|
||||
}
|
||||
|
||||
"Vote Not In Progress"
|
||||
{
|
||||
"bg" "В момента не тече гласуване."
|
||||
}
|
||||
|
||||
"Cancelled Vote"
|
||||
{
|
||||
"bg" "Гласуването е прекъснато."
|
||||
}
|
||||
|
||||
"Cancel vote"
|
||||
{
|
||||
"bg" "Прекъсване на гласуването"
|
||||
}
|
||||
|
||||
"Vote Select"
|
||||
{
|
||||
"bg" "{1} избра {2}. "
|
||||
}
|
||||
|
||||
"Vote Delay Minutes"
|
||||
{
|
||||
"bg" "Трябва да изчакате {1} минути преди да започнете ново гласуване."
|
||||
}
|
||||
|
||||
"Vote Delay Seconds"
|
||||
{
|
||||
"bg" "Трябва да изчакате {1} секунди преди да започнете ново гласуване."
|
||||
}
|
||||
|
||||
"Could not connect to database"
|
||||
{
|
||||
"bg" "Няма връзка с базата от данни."
|
||||
}
|
||||
|
||||
"Reload admins"
|
||||
{
|
||||
"bg" "Презареждане на админите"
|
||||
}
|
||||
|
||||
"Command is in-game only"
|
||||
{
|
||||
"bg" "Тази команда може да се ползва само по време на игра."
|
||||
}
|
||||
|
||||
"Target must be dead"
|
||||
{
|
||||
"bg" "Тази команда може да се използва само върху мъртви играчи."
|
||||
}
|
||||
|
||||
"Target must be alive"
|
||||
{
|
||||
"bg" "Тази команда може да се използва само върху живи играчи."
|
||||
}
|
||||
|
||||
"Target is not in game"
|
||||
{
|
||||
"bg" "Избраният играч все още не е влязъл напълно в играта."
|
||||
}
|
||||
|
||||
"Slapped player"
|
||||
{
|
||||
"bg" "Играчът {1} е шамаросан"
|
||||
}
|
||||
|
||||
"Slayed player"
|
||||
{
|
||||
"bg" "Играчът {1} е убит"
|
||||
}
|
||||
|
||||
"Kicked player"
|
||||
{
|
||||
"bg" "Играчът {1} е изритан"
|
||||
}
|
||||
|
||||
"Cannot participate in vote"
|
||||
{
|
||||
"bg" "Не можете да участвате в това гласуване."
|
||||
}
|
||||
|
||||
"Cannot change vote"
|
||||
{
|
||||
"bg" "Не можете да промените избора си в това гласуване."
|
||||
}
|
||||
|
||||
"On"
|
||||
{
|
||||
"bg" "Включено"
|
||||
}
|
||||
|
||||
"Off"
|
||||
{
|
||||
"bg" "Изключено"
|
||||
}
|
||||
|
||||
}
|
83
translations/bg/core.phrases.txt
Normal file
83
translations/bg/core.phrases.txt
Normal file
@ -0,0 +1,83 @@
|
||||
"Phrases"
|
||||
{
|
||||
"No Access"
|
||||
{
|
||||
"bg" "Нямате достъп до тази команда"
|
||||
}
|
||||
|
||||
"Back"
|
||||
{
|
||||
"bg" "Назад"
|
||||
}
|
||||
|
||||
"Next"
|
||||
{
|
||||
"bg" "Напред"
|
||||
}
|
||||
|
||||
"Exit"
|
||||
{
|
||||
"bg" "Изход"
|
||||
}
|
||||
|
||||
"Previous"
|
||||
{
|
||||
"bg" "Предишен"
|
||||
}
|
||||
|
||||
"all players"
|
||||
{
|
||||
"bg" "всички играчи"
|
||||
}
|
||||
|
||||
"all humans"
|
||||
{
|
||||
"bg" "всички хора"
|
||||
}
|
||||
|
||||
"all bots"
|
||||
{
|
||||
"bg" "всички ботове"
|
||||
}
|
||||
|
||||
"all dead players"
|
||||
{
|
||||
"bg" "всички мъртви играчи"
|
||||
}
|
||||
|
||||
"all alive players"
|
||||
{
|
||||
"bg" "всички живи играчи"
|
||||
}
|
||||
|
||||
"_s"
|
||||
{
|
||||
"bg" "{1}"
|
||||
}
|
||||
|
||||
"all spectators"
|
||||
{
|
||||
"bg" "всички наблюдатели"
|
||||
}
|
||||
|
||||
"Vote Count"
|
||||
{
|
||||
"bg" "Гласове {1}/{2}, {3} остават"
|
||||
}
|
||||
|
||||
"Voted For"
|
||||
{
|
||||
"bg" "{1} гласува за {2}"
|
||||
}
|
||||
|
||||
"Changed Vote"
|
||||
{
|
||||
"bg" "{1} промени гласа си на {2}"
|
||||
}
|
||||
|
||||
"No Vote"
|
||||
{
|
||||
"bg" "Няма гласуване"
|
||||
}
|
||||
|
||||
}
|
78
translations/bg/funcommands.phrases.txt
Normal file
78
translations/bg/funcommands.phrases.txt
Normal file
@ -0,0 +1,78 @@
|
||||
"Phrases"
|
||||
{
|
||||
"Burn player"
|
||||
{
|
||||
"bg" "Запалване на играч"
|
||||
}
|
||||
|
||||
"Freeze player"
|
||||
{
|
||||
"bg" "Замразяване на играч"
|
||||
}
|
||||
|
||||
"Blind player"
|
||||
{
|
||||
"bg" "Заслепяване на играч"
|
||||
}
|
||||
|
||||
"Drug player"
|
||||
{
|
||||
"bg" "Дрогиране на играч"
|
||||
}
|
||||
|
||||
"Gravity player"
|
||||
{
|
||||
"bg" "Промяна гравитацията на играч"
|
||||
}
|
||||
|
||||
"Fully blind"
|
||||
{
|
||||
"bg" "Напълно сляп"
|
||||
}
|
||||
|
||||
"Half blind"
|
||||
{
|
||||
"bg" "Наполовина сляп"
|
||||
}
|
||||
|
||||
"No blind"
|
||||
{
|
||||
"bg" "Не е сляп"
|
||||
}
|
||||
|
||||
"Gravity amount"
|
||||
{
|
||||
"bg" "Гравитация?"
|
||||
}
|
||||
|
||||
"Gravity Very High"
|
||||
{
|
||||
"bg" "Много висока гравитация"
|
||||
}
|
||||
|
||||
"Gravity High"
|
||||
{
|
||||
"bg" "Висока гравитация"
|
||||
}
|
||||
|
||||
"Gravity Normal"
|
||||
{
|
||||
"bg" "Нормална гравитация"
|
||||
}
|
||||
|
||||
"Gravity Low"
|
||||
{
|
||||
"bg" "Ниска гравитация"
|
||||
}
|
||||
|
||||
"Gravity Very Low"
|
||||
{
|
||||
"bg" "Много ниска гравитация"
|
||||
}
|
||||
|
||||
"Unfrozen"
|
||||
{
|
||||
"bg" "Вече не сте замразен"
|
||||
}
|
||||
|
||||
}
|
3
translations/bg/funvotes.phrases.txt
Normal file
3
translations/bg/funvotes.phrases.txt
Normal file
@ -0,0 +1,3 @@
|
||||
"Phrases"
|
||||
{
|
||||
}
|
43
translations/bg/mapchooser.phrases.txt
Normal file
43
translations/bg/mapchooser.phrases.txt
Normal file
@ -0,0 +1,43 @@
|
||||
"Phrases"
|
||||
{
|
||||
"Vote Nextmap"
|
||||
{
|
||||
"bg" "Гласувайте за следваща карта!"
|
||||
}
|
||||
|
||||
"Nextmap Voting Started"
|
||||
{
|
||||
"bg" "Започна гласуване за следваща карта."
|
||||
}
|
||||
|
||||
"Nextmap Voting Finished"
|
||||
{
|
||||
"bg" "Гласуването за карта приключи. Следващата карта ще бъде {1}. (Получени са {2}%% от {3} гласа)"
|
||||
}
|
||||
|
||||
"Current Map Extended"
|
||||
{
|
||||
"bg" "Текущата карта беше удължена. (Получени са {1}%% от {2} гласа)"
|
||||
}
|
||||
|
||||
"Extend Map"
|
||||
{
|
||||
"bg" "Удължаване на текущата карта"
|
||||
}
|
||||
|
||||
"Dont Change"
|
||||
{
|
||||
"bg" "Без промяна"
|
||||
}
|
||||
|
||||
"Current Map Stays"
|
||||
{
|
||||
"bg" "Текущата карта продължава! Гласуването приключи! (Получени са {1}%% от {2} гласа)"
|
||||
}
|
||||
|
||||
"Changed Next Map"
|
||||
{
|
||||
"bg" "Следващата карта е сменена на \"{1}\"."
|
||||
}
|
||||
|
||||
}
|
43
translations/bg/nextmap.phrases.txt
Normal file
43
translations/bg/nextmap.phrases.txt
Normal file
@ -0,0 +1,43 @@
|
||||
"Phrases"
|
||||
{
|
||||
"Next Map"
|
||||
{
|
||||
"bg" "Следваща карта: {1}"
|
||||
}
|
||||
|
||||
"Map History"
|
||||
{
|
||||
"bg" "История на картите"
|
||||
}
|
||||
|
||||
"Map"
|
||||
{
|
||||
"bg" "[Карта]"
|
||||
}
|
||||
|
||||
"Started"
|
||||
{
|
||||
"bg" "[Започнатa]"
|
||||
}
|
||||
|
||||
"Played Time"
|
||||
{
|
||||
"bg" "[Изиграно време]"
|
||||
}
|
||||
|
||||
"Reason"
|
||||
{
|
||||
"bg" "[Причина за приключване]"
|
||||
}
|
||||
|
||||
"Current Map"
|
||||
{
|
||||
"bg" "Текуща карта"
|
||||
}
|
||||
|
||||
"ago"
|
||||
{
|
||||
"bg" "преди"
|
||||
}
|
||||
|
||||
}
|
68
translations/bg/nominations.phrases.txt
Normal file
68
translations/bg/nominations.phrases.txt
Normal file
@ -0,0 +1,68 @@
|
||||
"Phrases"
|
||||
{
|
||||
"Already Nominated"
|
||||
{
|
||||
"bg" "Вече номинирахте карта."
|
||||
}
|
||||
|
||||
"Max Nominations"
|
||||
{
|
||||
"bg" "Максимално позволеният брой номинации беше достигнат."
|
||||
}
|
||||
|
||||
"Map Already In Vote"
|
||||
{
|
||||
"bg" "Картата {1} вече е в списъка на номинираните."
|
||||
}
|
||||
|
||||
"Map Inserted"
|
||||
{
|
||||
"bg" "Картата {1} е добавена в списъка на номинираните."
|
||||
}
|
||||
|
||||
"Map Already Nominated"
|
||||
{
|
||||
"bg" "Картата, която избрахте, вече е номинирана."
|
||||
}
|
||||
|
||||
"Map Nominated"
|
||||
{
|
||||
"bg" "{1} номинира {2}"
|
||||
}
|
||||
|
||||
"Map Nomination Changed"
|
||||
{
|
||||
"bg" "{1} промени номинацията си на {2}."
|
||||
}
|
||||
|
||||
"Nominate Title"
|
||||
{
|
||||
"bg" "Номиниране на карта:"
|
||||
}
|
||||
|
||||
"Can't Nominate Current Map"
|
||||
{
|
||||
"bg" "Картата, която избрахте, е текущата карта и тя не може да бъде номинирана"
|
||||
}
|
||||
|
||||
"Map in Exclude List"
|
||||
{
|
||||
"bg" "Картата, която избрахте, е играна наскоро и не може да бъде номинирана"
|
||||
}
|
||||
|
||||
"Current Map"
|
||||
{
|
||||
"bg" "Текуща карта"
|
||||
}
|
||||
|
||||
"Recently Played"
|
||||
{
|
||||
"bg" "Наскоро играна"
|
||||
}
|
||||
|
||||
"Nominated"
|
||||
{
|
||||
"bg" "Номинирана"
|
||||
}
|
||||
|
||||
}
|
48
translations/bg/playercommands.phrases.txt
Normal file
48
translations/bg/playercommands.phrases.txt
Normal file
@ -0,0 +1,48 @@
|
||||
"Phrases"
|
||||
{
|
||||
"Slap player"
|
||||
{
|
||||
"bg" "Шамаросване на играч"
|
||||
}
|
||||
|
||||
"Slap damage"
|
||||
{
|
||||
"bg" "Щети на шамара"
|
||||
}
|
||||
|
||||
"Slay player"
|
||||
{
|
||||
"bg" "Убиване на играч"
|
||||
}
|
||||
|
||||
"Slapped target"
|
||||
{
|
||||
"bg" "{1} е шамаросан."
|
||||
}
|
||||
|
||||
"Slayed target"
|
||||
{
|
||||
"bg" "{1} е убит."
|
||||
}
|
||||
|
||||
"Name changed"
|
||||
{
|
||||
"bg" "Администратор Ви смени името."
|
||||
}
|
||||
|
||||
"Renamed target"
|
||||
{
|
||||
"bg" "{1} е преименуван."
|
||||
}
|
||||
|
||||
"Rename player"
|
||||
{
|
||||
"bg" "Преименуване на играч"
|
||||
}
|
||||
|
||||
"Dead Player Rename"
|
||||
{
|
||||
"bg" "{1} ще бъде преименуван следващия рунд."
|
||||
}
|
||||
|
||||
}
|
23
translations/bg/plugin.basecommands.txt
Normal file
23
translations/bg/plugin.basecommands.txt
Normal file
@ -0,0 +1,23 @@
|
||||
"Phrases"
|
||||
{
|
||||
"Exec CFG"
|
||||
{
|
||||
"bg" "Изпълняване на CFG файл"
|
||||
}
|
||||
|
||||
"Player is an admin"
|
||||
{
|
||||
"bg" "\"{1}\" е администратор."
|
||||
}
|
||||
|
||||
"Username"
|
||||
{
|
||||
"bg" "Потребителско име"
|
||||
}
|
||||
|
||||
"Admin access"
|
||||
{
|
||||
"bg" "Администраторски достъп"
|
||||
}
|
||||
|
||||
}
|
8
translations/bg/reservedslots.phrases.txt
Normal file
8
translations/bg/reservedslots.phrases.txt
Normal file
@ -0,0 +1,8 @@
|
||||
"Phrases"
|
||||
{
|
||||
"Slot reserved"
|
||||
{
|
||||
"bg" "Изхвърлен сте поради наличието на резервиран слот"
|
||||
}
|
||||
|
||||
}
|
3
translations/bg/rockthevote.phrases.txt
Normal file
3
translations/bg/rockthevote.phrases.txt
Normal file
@ -0,0 +1,3 @@
|
||||
"Phrases"
|
||||
{
|
||||
}
|
3
translations/bg/sounds.phrases.txt
Normal file
3
translations/bg/sounds.phrases.txt
Normal file
@ -0,0 +1,3 @@
|
||||
"Phrases"
|
||||
{
|
||||
}
|
3
translations/bg/sqladmins.phrases.txt
Normal file
3
translations/bg/sqladmins.phrases.txt
Normal file
@ -0,0 +1,3 @@
|
||||
"Phrases"
|
||||
{
|
||||
}
|
33
translations/chi/adminhelp.phrases.txt
Normal file
33
translations/chi/adminhelp.phrases.txt
Normal file
@ -0,0 +1,33 @@
|
||||
"Phrases"
|
||||
{
|
||||
"SM help commands"
|
||||
{
|
||||
"chi" "SourceMod 帮助: 指令信息"
|
||||
}
|
||||
|
||||
"No description available"
|
||||
{
|
||||
"chi" "无详细描述"
|
||||
}
|
||||
|
||||
"No commands available"
|
||||
{
|
||||
"chi" "无适用指令"
|
||||
}
|
||||
|
||||
"Type sm_help to see more"
|
||||
{
|
||||
"chi" "键入 sm_help {1} 查看更多指令"
|
||||
}
|
||||
|
||||
"Entries n - m in page k"
|
||||
{
|
||||
"chi" "条目 {1} - {2} 于第 {3} 页"
|
||||
}
|
||||
|
||||
"No matching results found"
|
||||
{
|
||||
"chi" "无匹配结果可寻"
|
||||
}
|
||||
|
||||
}
|
23
translations/chi/adminmenu.phrases.txt
Normal file
23
translations/chi/adminmenu.phrases.txt
Normal file
@ -0,0 +1,23 @@
|
||||
"Phrases"
|
||||
{
|
||||
"Admin Menu"
|
||||
{
|
||||
"chi" "管理员菜单"
|
||||
}
|
||||
|
||||
"Player Commands"
|
||||
{
|
||||
"chi" "玩家指令"
|
||||
}
|
||||
|
||||
"Server Commands"
|
||||
{
|
||||
"chi" "服务器指令"
|
||||
}
|
||||
|
||||
"Voting Commands"
|
||||
{
|
||||
"chi" "投票指令"
|
||||
}
|
||||
|
||||
}
|
8
translations/chi/antiflood.phrases.txt
Normal file
8
translations/chi/antiflood.phrases.txt
Normal file
@ -0,0 +1,8 @@
|
||||
"Phrases"
|
||||
{
|
||||
"Flooding the server"
|
||||
{
|
||||
"chi" "请勿刷屏!"
|
||||
}
|
||||
|
||||
}
|
63
translations/chi/basebans.phrases.txt
Normal file
63
translations/chi/basebans.phrases.txt
Normal file
@ -0,0 +1,63 @@
|
||||
"Phrases"
|
||||
{
|
||||
"Ban player"
|
||||
{
|
||||
"chi" "封禁玩家"
|
||||
}
|
||||
|
||||
"Ban reason"
|
||||
{
|
||||
"chi" "封禁原因"
|
||||
}
|
||||
|
||||
"Permabanned player"
|
||||
{
|
||||
"chi" "玩家 \"{1}\" 已被永久封禁."
|
||||
}
|
||||
|
||||
"Permabanned player reason"
|
||||
{
|
||||
"chi" "玩家 \"{1}\" 已被永久封禁 (原因: {2})."
|
||||
}
|
||||
|
||||
"Banned player"
|
||||
{
|
||||
"chi" "封禁玩家 \"{1}\" {2} 分钟."
|
||||
}
|
||||
|
||||
"Banned player reason"
|
||||
{
|
||||
"chi" "封禁玩家 \"{1}\" {2} 分钟 (原因: {3})."
|
||||
}
|
||||
|
||||
"Removed bans matching"
|
||||
{
|
||||
"chi" "移除符合条件: {1} 的封禁"
|
||||
}
|
||||
|
||||
"Ban added"
|
||||
{
|
||||
"chi" "封禁已添加."
|
||||
}
|
||||
|
||||
"Cannot ban that IP"
|
||||
{
|
||||
"chi" "您无法封禁该 IP 地址."
|
||||
}
|
||||
|
||||
"Custom ban reason explanation"
|
||||
{
|
||||
"chi" "以聊天信息方式输入理由. 按 {1} 则中止."
|
||||
}
|
||||
|
||||
"AbortBan applied successfully"
|
||||
{
|
||||
"chi" "中止封禁."
|
||||
}
|
||||
|
||||
"AbortBan not waiting for custom reason"
|
||||
{
|
||||
"chi" "不等待键入封禁理由, 无封禁可中止."
|
||||
}
|
||||
|
||||
}
|
73
translations/chi/basecomm.phrases.txt
Normal file
73
translations/chi/basecomm.phrases.txt
Normal file
@ -0,0 +1,73 @@
|
||||
"Phrases"
|
||||
{
|
||||
"Gag/Mute player"
|
||||
{
|
||||
"chi" "将玩家禁言/禁声"
|
||||
}
|
||||
|
||||
"Choose Type"
|
||||
{
|
||||
"chi" "选择类别"
|
||||
}
|
||||
|
||||
"Gagged target"
|
||||
{
|
||||
"chi" "{1} 已被禁言."
|
||||
}
|
||||
|
||||
"Ungagged target"
|
||||
{
|
||||
"chi" "{1} 已被解除禁言."
|
||||
}
|
||||
|
||||
"Muted target"
|
||||
{
|
||||
"chi" "{1} 已被禁声."
|
||||
}
|
||||
|
||||
"Unmuted target"
|
||||
{
|
||||
"chi" "{1} 已被解除禁声."
|
||||
}
|
||||
|
||||
"Silenced target"
|
||||
{
|
||||
"chi" "{1} 已被静音."
|
||||
}
|
||||
|
||||
"Unsilenced target"
|
||||
{
|
||||
"chi" "{1} 已被解除静音."
|
||||
}
|
||||
|
||||
"Mute Player"
|
||||
{
|
||||
"chi" "将玩家禁声"
|
||||
}
|
||||
|
||||
"UnMute Player"
|
||||
{
|
||||
"chi" "解除玩家禁声"
|
||||
}
|
||||
|
||||
"Gag Player"
|
||||
{
|
||||
"chi" "将玩家禁言"
|
||||
}
|
||||
|
||||
"UnGag Player"
|
||||
{
|
||||
"chi" "解除玩家禁言"
|
||||
}
|
||||
|
||||
"Silence Player"
|
||||
{
|
||||
"chi" "将玩家禁音"
|
||||
}
|
||||
|
||||
"UnSilence Player"
|
||||
{
|
||||
"chi" "解除玩家禁音"
|
||||
}
|
||||
|
||||
}
|
108
translations/chi/basetriggers.phrases.txt
Normal file
108
translations/chi/basetriggers.phrases.txt
Normal file
@ -0,0 +1,108 @@
|
||||
"Phrases"
|
||||
{
|
||||
"Timeleft"
|
||||
{
|
||||
"chi" "当前地图剩余时间: "
|
||||
}
|
||||
|
||||
"Thetime"
|
||||
{
|
||||
"chi" "当前服务器时间为 {1}"
|
||||
}
|
||||
|
||||
"Friendly Fire On"
|
||||
{
|
||||
"chi" "友军伤害已开启"
|
||||
}
|
||||
|
||||
"Friendly Fire Off"
|
||||
{
|
||||
"chi" "友军伤害已关闭"
|
||||
}
|
||||
|
||||
"Current Map"
|
||||
{
|
||||
"chi" "当前地图为 {1}."
|
||||
}
|
||||
|
||||
"LastRound"
|
||||
{
|
||||
"chi" "最后一局了!!"
|
||||
}
|
||||
|
||||
"NoTimelimit"
|
||||
{
|
||||
"chi" "当前地图无时间限制"
|
||||
}
|
||||
|
||||
"Next Map"
|
||||
{
|
||||
"chi" "下一幅地图: {1}"
|
||||
}
|
||||
|
||||
"Pending Vote"
|
||||
{
|
||||
"chi" "投票正在进行中"
|
||||
}
|
||||
|
||||
"WinLimitAppend"
|
||||
{
|
||||
"chi" ", 或当某方赢得一局后更换地图"
|
||||
}
|
||||
|
||||
"WinLimit"
|
||||
{
|
||||
"chi" "地图将于某方赢得一局后更换"
|
||||
}
|
||||
|
||||
"MaxRoundsAppend"
|
||||
{
|
||||
"chi" ", 或再过一局后更换地图"
|
||||
}
|
||||
|
||||
"MaxRounds"
|
||||
{
|
||||
"chi" "地图将再过一局后更换"
|
||||
}
|
||||
|
||||
"FragLimitAppend"
|
||||
{
|
||||
"chi" ", 或当某玩家杀满一人后更换地图"
|
||||
}
|
||||
|
||||
"FragLimit"
|
||||
{
|
||||
"chi" "地图将于某玩家杀满一人后更换"
|
||||
}
|
||||
|
||||
"WinLimitAppendPlural"
|
||||
{
|
||||
"chi" ", 或当某方赢得 {1} 局后更换地图"
|
||||
}
|
||||
|
||||
"WinLimitPlural"
|
||||
{
|
||||
"chi" "地图将于某方赢得 {1} 局后更换"
|
||||
}
|
||||
|
||||
"MaxRoundsAppendPlural"
|
||||
{
|
||||
"chi" ", 或再过 {1} 局后更换地图"
|
||||
}
|
||||
|
||||
"MaxRoundsPlural"
|
||||
{
|
||||
"chi" "地图将再过 {1} 局后更换"
|
||||
}
|
||||
|
||||
"FragLimitAppendPlural"
|
||||
{
|
||||
"chi" ", 或当某玩家杀满 {1} 人后更换地图"
|
||||
}
|
||||
|
||||
"FragLimitPlural"
|
||||
{
|
||||
"chi" "地图将于某玩家杀满 {1} 人后更换"
|
||||
}
|
||||
|
||||
}
|
93
translations/chi/basevotes.phrases.txt
Normal file
93
translations/chi/basevotes.phrases.txt
Normal file
@ -0,0 +1,93 @@
|
||||
"Phrases"
|
||||
{
|
||||
"Initiate Vote"
|
||||
{
|
||||
"chi" "已启动投票: {1}"
|
||||
}
|
||||
|
||||
"Initiated Vote Map"
|
||||
{
|
||||
"chi" "已启动地图投票."
|
||||
}
|
||||
|
||||
"Initiated Vote Kick"
|
||||
{
|
||||
"chi" "已启动踢出 {1} 的投票."
|
||||
}
|
||||
|
||||
"Initiated Vote Ban"
|
||||
{
|
||||
"chi" "已启动封禁 {1} 的投票."
|
||||
}
|
||||
|
||||
"Map Vote"
|
||||
{
|
||||
"chi" "地图投票: {1}"
|
||||
}
|
||||
|
||||
"Change Map To"
|
||||
{
|
||||
"chi" "更换地图为 {1}?"
|
||||
}
|
||||
|
||||
"Votekick Player"
|
||||
{
|
||||
"chi" "踢出 {1}?"
|
||||
}
|
||||
|
||||
"Voteban Player"
|
||||
{
|
||||
"chi" "封禁 {1}?"
|
||||
}
|
||||
|
||||
"Vote Successful"
|
||||
{
|
||||
"chi" "投票通过. (同意 {1}%% 总共 {2} 票)"
|
||||
}
|
||||
|
||||
"Vote Failed"
|
||||
{
|
||||
"chi" "投票失败. 至少需要 {1}%% 支持. (同意 {2}%% 总共 {3} 票)"
|
||||
}
|
||||
|
||||
"Vote End"
|
||||
{
|
||||
"chi" "投票 {1} 的结果为: {2}."
|
||||
}
|
||||
|
||||
"Kick vote"
|
||||
{
|
||||
"chi" "踢出投票"
|
||||
}
|
||||
|
||||
"Ban vote"
|
||||
{
|
||||
"chi" "封禁投票"
|
||||
}
|
||||
|
||||
"Map vote"
|
||||
{
|
||||
"chi" "地图投票"
|
||||
}
|
||||
|
||||
"Confirm Vote"
|
||||
{
|
||||
"chi" "确认投票"
|
||||
}
|
||||
|
||||
"Map Vote In Use"
|
||||
{
|
||||
"chi" "地图投票正被调用"
|
||||
}
|
||||
|
||||
"Please select a map"
|
||||
{
|
||||
"chi" "请选择地图"
|
||||
}
|
||||
|
||||
"Start the Vote"
|
||||
{
|
||||
"chi" "开始投票"
|
||||
}
|
||||
|
||||
}
|
48
translations/chi/clientprefs.phrases.txt
Normal file
48
translations/chi/clientprefs.phrases.txt
Normal file
@ -0,0 +1,48 @@
|
||||
"Phrases"
|
||||
{
|
||||
"Cookie List"
|
||||
{
|
||||
"chi" "Sourcemod Cookie 列表"
|
||||
}
|
||||
|
||||
"Printing Cookie List"
|
||||
{
|
||||
"chi" "打印 cookie 列表至控制台"
|
||||
}
|
||||
|
||||
"Cookie not Found"
|
||||
{
|
||||
"chi" "无法找到 cookie \"{1}\""
|
||||
}
|
||||
|
||||
"Cookie Value"
|
||||
{
|
||||
"chi" "{1} 的值为 {2}"
|
||||
}
|
||||
|
||||
"Protected Cookie"
|
||||
{
|
||||
"chi" "无法更改受保护 cookie \"{1}\" 的值"
|
||||
}
|
||||
|
||||
"Cookie Changed Value"
|
||||
{
|
||||
"chi" "更改 cookie \"{1}\" 的值为 \"{2}\""
|
||||
}
|
||||
|
||||
"No Console"
|
||||
{
|
||||
"chi" "无法显示设置菜单至控制台"
|
||||
}
|
||||
|
||||
"Choose Option"
|
||||
{
|
||||
"chi" "择取选项"
|
||||
}
|
||||
|
||||
"Client Settings"
|
||||
{
|
||||
"chi" "客户端设定"
|
||||
}
|
||||
|
||||
}
|
253
translations/chi/common.phrases.txt
Normal file
253
translations/chi/common.phrases.txt
Normal file
@ -0,0 +1,253 @@
|
||||
"Phrases"
|
||||
{
|
||||
"Yes"
|
||||
{
|
||||
"chi" "是"
|
||||
}
|
||||
|
||||
"No"
|
||||
{
|
||||
"chi" "否"
|
||||
}
|
||||
|
||||
"No matching client"
|
||||
{
|
||||
"chi" "未发现匹配的客户端."
|
||||
}
|
||||
|
||||
"No matching clients"
|
||||
{
|
||||
"chi" "未发现匹配的客户端."
|
||||
}
|
||||
|
||||
"More than one client matches"
|
||||
{
|
||||
"chi" "存在多个符合样式 \"{1}\" 的客户端"
|
||||
}
|
||||
|
||||
"More than one client matched"
|
||||
{
|
||||
"chi" "存在多个符合所提样式的客户端."
|
||||
}
|
||||
|
||||
"Player no longer available"
|
||||
{
|
||||
"chi" "您选定的玩家已不再适用."
|
||||
}
|
||||
|
||||
"Kick player"
|
||||
{
|
||||
"chi" "踢出玩家"
|
||||
}
|
||||
|
||||
"Kicked by admin"
|
||||
{
|
||||
"chi" "被管理员踢出"
|
||||
}
|
||||
|
||||
"Changing map"
|
||||
{
|
||||
"chi" "更换地图为 {1}..."
|
||||
}
|
||||
|
||||
"Map was not found"
|
||||
{
|
||||
"chi" "地图 {1} 未找到."
|
||||
}
|
||||
|
||||
"Unable to target"
|
||||
{
|
||||
"chi" "您无法操作该玩家."
|
||||
}
|
||||
|
||||
"Name"
|
||||
{
|
||||
"chi" "名称"
|
||||
}
|
||||
|
||||
"Access"
|
||||
{
|
||||
"chi" "权限"
|
||||
}
|
||||
|
||||
"See console for output"
|
||||
{
|
||||
"chi" "请看控制台输出."
|
||||
}
|
||||
|
||||
"Cannot target bot"
|
||||
{
|
||||
"chi" "无法对机器人发出该指令."
|
||||
}
|
||||
|
||||
"Unable to find cvar"
|
||||
{
|
||||
"chi" "无法找到 cvar: {1}"
|
||||
}
|
||||
|
||||
"No access to cvar"
|
||||
{
|
||||
"chi" "您无权设置该 cvar."
|
||||
}
|
||||
|
||||
"Value of cvar"
|
||||
{
|
||||
"chi" "cvar \"{1}\" 值: \"{2}\""
|
||||
}
|
||||
|
||||
"Cvar changed"
|
||||
{
|
||||
"chi" "更改 cvar \"{1}\" 为 \"{2}\"."
|
||||
}
|
||||
|
||||
"Config not found"
|
||||
{
|
||||
"chi" "配置文件 \"{1}\" 未找到."
|
||||
}
|
||||
|
||||
"Executed config"
|
||||
{
|
||||
"chi" "执行配置 \"{1}\"."
|
||||
}
|
||||
|
||||
"Admin cache refreshed"
|
||||
{
|
||||
"chi" "管理员缓存已被刷新."
|
||||
}
|
||||
|
||||
"Invalid Amount"
|
||||
{
|
||||
"chi" "指定数量无效"
|
||||
}
|
||||
|
||||
"Cannot be performed on dead"
|
||||
{
|
||||
"chi" "该操作无法在暂时“死亡”的客户端 \"{1}\" 上生效"
|
||||
}
|
||||
|
||||
"Player has since died"
|
||||
{
|
||||
"chi" "操作无法执行, 玩家已死亡."
|
||||
}
|
||||
|
||||
"Vote in Progress"
|
||||
{
|
||||
"chi" "已有投票在进行中."
|
||||
}
|
||||
|
||||
"Vote Not In Progress"
|
||||
{
|
||||
"chi" "当前无投票进行."
|
||||
}
|
||||
|
||||
"Cancelled Vote"
|
||||
{
|
||||
"chi" "投票已取消."
|
||||
}
|
||||
|
||||
"Cancel vote"
|
||||
{
|
||||
"chi" "取消投票"
|
||||
}
|
||||
|
||||
"Vote Select"
|
||||
{
|
||||
"chi" "{1} 选了 {2}."
|
||||
}
|
||||
|
||||
"No Votes Cast"
|
||||
{
|
||||
"chi" "无投票发起."
|
||||
}
|
||||
|
||||
"Vote Delay Minutes"
|
||||
{
|
||||
"chi" "您必须再等 {1} 分钟后才能发起新一轮投票."
|
||||
}
|
||||
|
||||
"Vote Delay Seconds"
|
||||
{
|
||||
"chi" "您必须再等 {1} 秒钟后才能发起新一轮投票."
|
||||
}
|
||||
|
||||
"Could not connect to database"
|
||||
{
|
||||
"chi" "无法连接至该数据库."
|
||||
}
|
||||
|
||||
"Failed to query database"
|
||||
{
|
||||
"chi" "查询数据库失败."
|
||||
}
|
||||
|
||||
"Invalid SteamID specified"
|
||||
{
|
||||
"chi" "您指定了一个无效 Steam ID (有效格式须以 'STEAM_:' 开头)."
|
||||
}
|
||||
|
||||
"Reload admins"
|
||||
{
|
||||
"chi" "重载管理员"
|
||||
}
|
||||
|
||||
"Command is in-game only"
|
||||
{
|
||||
"chi" "该指令只能在游戏界面中使用."
|
||||
}
|
||||
|
||||
"Target must be dead"
|
||||
{
|
||||
"chi" "该指令只能用于已死玩家."
|
||||
}
|
||||
|
||||
"Target must be alive"
|
||||
{
|
||||
"chi" "该指令只能用于活人玩家."
|
||||
}
|
||||
|
||||
"Target is not in game"
|
||||
{
|
||||
"chi" "指定玩家尚未完全进入游戏."
|
||||
}
|
||||
|
||||
"Played Sound"
|
||||
{
|
||||
"chi" "已播放声音给玩家 '{1}'"
|
||||
}
|
||||
|
||||
"Slapped player"
|
||||
{
|
||||
"chi" "已拍打玩家 '{1}'"
|
||||
}
|
||||
|
||||
"Slayed player"
|
||||
{
|
||||
"chi" "已处死玩家 '{1}'"
|
||||
}
|
||||
|
||||
"Kicked player"
|
||||
{
|
||||
"chi" "已踢出玩家 '{1}'"
|
||||
}
|
||||
|
||||
"Cannot participate in vote"
|
||||
{
|
||||
"chi" "您无法参与该项投票."
|
||||
}
|
||||
|
||||
"Cannot change vote"
|
||||
{
|
||||
"chi" "您无法改变对该项投票作出的选择."
|
||||
}
|
||||
|
||||
"On"
|
||||
{
|
||||
"chi" "开"
|
||||
}
|
||||
|
||||
"Off"
|
||||
{
|
||||
"chi" "关"
|
||||
}
|
||||
|
||||
}
|
88
translations/chi/core.phrases.txt
Normal file
88
translations/chi/core.phrases.txt
Normal file
@ -0,0 +1,88 @@
|
||||
"Phrases"
|
||||
{
|
||||
"No Access"
|
||||
{
|
||||
"chi" "您无权使用该指令"
|
||||
}
|
||||
|
||||
"Back"
|
||||
{
|
||||
"chi" "返回"
|
||||
}
|
||||
|
||||
"Next"
|
||||
{
|
||||
"chi" "下一页"
|
||||
}
|
||||
|
||||
"Exit"
|
||||
{
|
||||
"chi" "退出"
|
||||
}
|
||||
|
||||
"Previous"
|
||||
{
|
||||
"chi" "上一页"
|
||||
}
|
||||
|
||||
"all players"
|
||||
{
|
||||
"chi" "全体玩家"
|
||||
}
|
||||
|
||||
"all humans"
|
||||
{
|
||||
"chi" "全体真人"
|
||||
}
|
||||
|
||||
"all bots"
|
||||
{
|
||||
"chi" "全体机器人"
|
||||
}
|
||||
|
||||
"all dead players"
|
||||
{
|
||||
"chi" "全体已死玩家"
|
||||
}
|
||||
|
||||
"all alive players"
|
||||
{
|
||||
"chi" "全体活人玩家"
|
||||
}
|
||||
|
||||
"_s"
|
||||
{
|
||||
"chi" "{1}"
|
||||
}
|
||||
|
||||
"all spectators"
|
||||
{
|
||||
"chi" "所有旁观者"
|
||||
}
|
||||
|
||||
"Vote Count"
|
||||
{
|
||||
"chi" "投票计数:{1}/{2},剩余{3}人"
|
||||
}
|
||||
|
||||
"Voted For"
|
||||
{
|
||||
"chi" "{1}投票选择了{2}"
|
||||
}
|
||||
|
||||
"Changed Vote"
|
||||
{
|
||||
"chi" "{1} 已更改其投票为 {2} "
|
||||
}
|
||||
|
||||
"No Vote"
|
||||
{
|
||||
"chi" "无投票"
|
||||
}
|
||||
|
||||
"Name Reserved"
|
||||
{
|
||||
"chi" "你所用名称已由 SourceMod 保留; 请输入相应密码启用."
|
||||
}
|
||||
|
||||
}
|
168
translations/chi/funcommands.phrases.txt
Normal file
168
translations/chi/funcommands.phrases.txt
Normal file
@ -0,0 +1,168 @@
|
||||
"Phrases"
|
||||
{
|
||||
"Burn player"
|
||||
{
|
||||
"chi" "烧烤玩家"
|
||||
}
|
||||
|
||||
"FireBomb player"
|
||||
{
|
||||
"chi" "把玩家变成燃烧弹"
|
||||
}
|
||||
|
||||
"Freeze player"
|
||||
{
|
||||
"chi" "冰冻玩家"
|
||||
}
|
||||
|
||||
"FreezeBomb player"
|
||||
{
|
||||
"chi" "把玩家变成冰冻弹"
|
||||
}
|
||||
|
||||
"TimeBomb player"
|
||||
{
|
||||
"chi" "把玩家变成定时炸弹"
|
||||
}
|
||||
|
||||
"Beacon player"
|
||||
{
|
||||
"chi" "点玩家灯"
|
||||
}
|
||||
|
||||
"NoClip player"
|
||||
{
|
||||
"chi" "设置穿墙模式"
|
||||
}
|
||||
|
||||
"Blind player"
|
||||
{
|
||||
"chi" "把玩家变成瞎子"
|
||||
}
|
||||
|
||||
"Drug player"
|
||||
{
|
||||
"chi" "给玩家下毒药"
|
||||
}
|
||||
|
||||
"Gravity player"
|
||||
{
|
||||
"chi" "改变玩家重力指标"
|
||||
}
|
||||
|
||||
"Blind amount"
|
||||
{
|
||||
"chi" "致盲到何程度?"
|
||||
}
|
||||
|
||||
"Fully blind"
|
||||
{
|
||||
"chi" "全盲"
|
||||
}
|
||||
|
||||
"Half blind"
|
||||
{
|
||||
"chi" "半盲"
|
||||
}
|
||||
|
||||
"No blind"
|
||||
{
|
||||
"chi" "不盲"
|
||||
}
|
||||
|
||||
"Gravity amount"
|
||||
{
|
||||
"chi" "改重力指标为多少?"
|
||||
}
|
||||
|
||||
"Gravity Very High"
|
||||
{
|
||||
"chi" "超高重力"
|
||||
}
|
||||
|
||||
"Gravity High"
|
||||
{
|
||||
"chi" "高重力"
|
||||
}
|
||||
|
||||
"Gravity Normal"
|
||||
{
|
||||
"chi" "常规重力"
|
||||
}
|
||||
|
||||
"Gravity Low"
|
||||
{
|
||||
"chi" "低重力"
|
||||
}
|
||||
|
||||
"Gravity Very Low"
|
||||
{
|
||||
"chi" "超低重力"
|
||||
}
|
||||
|
||||
"Set target on fire"
|
||||
{
|
||||
"chi" "将 {1} 点燃."
|
||||
}
|
||||
|
||||
"Toggled FireBomb on target"
|
||||
{
|
||||
"chi" "触发 {1} 身上的燃烧弹."
|
||||
}
|
||||
|
||||
"Froze target"
|
||||
{
|
||||
"chi" "冰冻了 {1}."
|
||||
}
|
||||
|
||||
"Toggled FreezeBomb on target"
|
||||
{
|
||||
"chi" "触发 {1} 身上的冰冻弹."
|
||||
}
|
||||
|
||||
"Toggled beacon on target"
|
||||
{
|
||||
"chi" "触发 {1} 身上的灯."
|
||||
}
|
||||
|
||||
"Toggled TimeBomb on target"
|
||||
{
|
||||
"chi" "触发 {1} 身上的定时炸弹."
|
||||
}
|
||||
|
||||
"Toggled noclip on target"
|
||||
{
|
||||
"chi" "触发{1}的穿墙模式"
|
||||
}
|
||||
|
||||
"Toggled drug on target"
|
||||
{
|
||||
"chi" "激活 {1} 身上的毒药."
|
||||
}
|
||||
|
||||
"Set blind on target"
|
||||
{
|
||||
"chi" "使 {1} 致盲."
|
||||
}
|
||||
|
||||
"Set gravity on target"
|
||||
{
|
||||
"chi" "更改 {1} 的重力指标."
|
||||
}
|
||||
|
||||
"Till Explodes"
|
||||
{
|
||||
"chi" "还有 {2} 秒钟 {1} 就要爆炸."
|
||||
}
|
||||
|
||||
"Unfrozen"
|
||||
{
|
||||
"chi" "您已被冻结."
|
||||
}
|
||||
|
||||
"You will be unfrozen"
|
||||
{
|
||||
"chi" "您将被解冻."
|
||||
}
|
||||
|
||||
}
|
98
translations/chi/funvotes.phrases.txt
Normal file
98
translations/chi/funvotes.phrases.txt
Normal file
@ -0,0 +1,98 @@
|
||||
"Phrases"
|
||||
{
|
||||
"Initiated Vote Gravity"
|
||||
{
|
||||
"chi" "发起重力投票."
|
||||
}
|
||||
|
||||
"Initiated Vote Burn"
|
||||
{
|
||||
"chi" "发起烧烤 {1} 的投票."
|
||||
}
|
||||
|
||||
"Initiated Vote Slay"
|
||||
{
|
||||
"chi" "发起处死 {1} 的投票."
|
||||
}
|
||||
|
||||
"Initiated Vote Alltalk"
|
||||
{
|
||||
"chi" "发起开启全局语音通讯的投票."
|
||||
}
|
||||
|
||||
"Initiated Vote FF"
|
||||
{
|
||||
"chi" "发起友军伤害投票"
|
||||
}
|
||||
|
||||
"Gravity Vote"
|
||||
{
|
||||
"chi" "重力投票: {1}"
|
||||
}
|
||||
|
||||
"Change Gravity To"
|
||||
{
|
||||
"chi" "更改重力为 {1}?"
|
||||
}
|
||||
|
||||
"Voteburn player"
|
||||
{
|
||||
"chi" "烧烤玩家 {1}?"
|
||||
}
|
||||
|
||||
"Voteslay Player"
|
||||
{
|
||||
"chi" "处死 {1}?"
|
||||
}
|
||||
|
||||
"Votealltalk Off"
|
||||
{
|
||||
"chi" "关闭全局语音通讯? {1}"
|
||||
}
|
||||
|
||||
"Votealltalk On"
|
||||
{
|
||||
"chi" "开启全局语音通讯? {1}"
|
||||
}
|
||||
|
||||
"Voteff Off"
|
||||
{
|
||||
"chi" "关闭友军伤害? {1}"
|
||||
}
|
||||
|
||||
"Voteff On"
|
||||
{
|
||||
"chi" "开启友军伤害? {1}"
|
||||
}
|
||||
|
||||
"Gravity vote"
|
||||
{
|
||||
"chi" "重力投票"
|
||||
}
|
||||
|
||||
"Vote FF"
|
||||
{
|
||||
"chi" "队友伤害投票"
|
||||
}
|
||||
|
||||
"Burn vote"
|
||||
{
|
||||
"chi" "烧烤投票"
|
||||
}
|
||||
|
||||
"Alltalk vote"
|
||||
{
|
||||
"chi" "全局语音投票"
|
||||
}
|
||||
|
||||
"Slay vote"
|
||||
{
|
||||
"chi" "处死投票"
|
||||
}
|
||||
|
||||
"Slayed player"
|
||||
{
|
||||
"chi" "处死了玩家 '{1}'"
|
||||
}
|
||||
|
||||
}
|
48
translations/chi/mapchooser.phrases.txt
Normal file
48
translations/chi/mapchooser.phrases.txt
Normal file
@ -0,0 +1,48 @@
|
||||
"Phrases"
|
||||
{
|
||||
"Vote Nextmap"
|
||||
{
|
||||
"chi" "下一幅地图投票了!"
|
||||
}
|
||||
|
||||
"Nextmap Voting Started"
|
||||
{
|
||||
"chi" "下一幅地图投选已开始."
|
||||
}
|
||||
|
||||
"Nextmap Voting Finished"
|
||||
{
|
||||
"chi" " 地图投票已结束. 下一幅地图将为 {1}. ( 得票{2}%% , {3}票)"
|
||||
}
|
||||
|
||||
"Current Map Extended"
|
||||
{
|
||||
"chi" "当前地图已被延长."
|
||||
}
|
||||
|
||||
"Extend Map"
|
||||
{
|
||||
"chi" "延长当前地图"
|
||||
}
|
||||
|
||||
"Dont Change"
|
||||
{
|
||||
"chi" "请勿更换"
|
||||
}
|
||||
|
||||
"Current Map Stays"
|
||||
{
|
||||
"chi" "当前地图已被延长! 投票显示! (得票 {1}%% 共 {2} 票)"
|
||||
}
|
||||
|
||||
"Changed Next Map"
|
||||
{
|
||||
"chi" "更换下一幅地图为 \"{1}\"."
|
||||
}
|
||||
|
||||
"Starting Runoff"
|
||||
{
|
||||
"chi" "无地图获得 {1}%% 以上票数 ({2} [{3}%%] & {4} [{5}%%]), 开始决胜轮投票"
|
||||
}
|
||||
|
||||
}
|
43
translations/chi/nextmap.phrases.txt
Normal file
43
translations/chi/nextmap.phrases.txt
Normal file
@ -0,0 +1,43 @@
|
||||
"Phrases"
|
||||
{
|
||||
"Next Map"
|
||||
{
|
||||
"chi" "下一幅地图: {1}"
|
||||
}
|
||||
|
||||
"Map History"
|
||||
{
|
||||
"chi" "地图历史纪录"
|
||||
}
|
||||
|
||||
"Map"
|
||||
{
|
||||
"chi" "[地图]"
|
||||
}
|
||||
|
||||
"Started"
|
||||
{
|
||||
"chi" "[已启动]"
|
||||
}
|
||||
|
||||
"Played Time"
|
||||
{
|
||||
"chi" "[已运行时间]"
|
||||
}
|
||||
|
||||
"Reason"
|
||||
{
|
||||
"chi" "[终止理由]"
|
||||
}
|
||||
|
||||
"Current Map"
|
||||
{
|
||||
"chi" "当前地图"
|
||||
}
|
||||
|
||||
"ago"
|
||||
{
|
||||
"chi" "之前"
|
||||
}
|
||||
|
||||
}
|
68
translations/chi/nominations.phrases.txt
Normal file
68
translations/chi/nominations.phrases.txt
Normal file
@ -0,0 +1,68 @@
|
||||
"Phrases"
|
||||
{
|
||||
"Already Nominated"
|
||||
{
|
||||
"chi" "您已预订了一幅地图."
|
||||
}
|
||||
|
||||
"Max Nominations"
|
||||
{
|
||||
"chi" "已达最大预订数."
|
||||
}
|
||||
|
||||
"Map Already In Vote"
|
||||
{
|
||||
"chi" "地图 '{1}' 已在预订列表中."
|
||||
}
|
||||
|
||||
"Map Inserted"
|
||||
{
|
||||
"chi" "地图 '{1}' 加入了预订列表."
|
||||
}
|
||||
|
||||
"Map Already Nominated"
|
||||
{
|
||||
"chi" "您所选的地图已被预订."
|
||||
}
|
||||
|
||||
"Map Nominated"
|
||||
{
|
||||
"chi" "{1} 预订了 {2}."
|
||||
}
|
||||
|
||||
"Map Nomination Changed"
|
||||
{
|
||||
"chi" "{1} 将其所订改为了 {2}."
|
||||
}
|
||||
|
||||
"Nominate Title"
|
||||
{
|
||||
"chi" "预订地图:"
|
||||
}
|
||||
|
||||
"Can't Nominate Current Map"
|
||||
{
|
||||
"chi" "您所选的图正是当前地图, 无法预订"
|
||||
}
|
||||
|
||||
"Map in Exclude List"
|
||||
{
|
||||
"chi" "您所选的图是最近已玩过的地图, 无法预订"
|
||||
}
|
||||
|
||||
"Current Map"
|
||||
{
|
||||
"chi" "当前地图"
|
||||
}
|
||||
|
||||
"Recently Played"
|
||||
{
|
||||
"chi" "最近玩过的地图"
|
||||
}
|
||||
|
||||
"Nominated"
|
||||
{
|
||||
"chi" "已预订的地图"
|
||||
}
|
||||
|
||||
}
|
48
translations/chi/playercommands.phrases.txt
Normal file
48
translations/chi/playercommands.phrases.txt
Normal file
@ -0,0 +1,48 @@
|
||||
"Phrases"
|
||||
{
|
||||
"Slap player"
|
||||
{
|
||||
"chi" "拍打玩家"
|
||||
}
|
||||
|
||||
"Slap damage"
|
||||
{
|
||||
"chi" "拍打伤害值"
|
||||
}
|
||||
|
||||
"Slay player"
|
||||
{
|
||||
"chi" "处死玩家"
|
||||
}
|
||||
|
||||
"Slapped target"
|
||||
{
|
||||
"chi" "拍打了 {1}."
|
||||
}
|
||||
|
||||
"Slayed target"
|
||||
{
|
||||
"chi" "处死了 {1}."
|
||||
}
|
||||
|
||||
"Name changed"
|
||||
{
|
||||
"chi" "某管理员更改了您的名称"
|
||||
}
|
||||
|
||||
"Renamed target"
|
||||
{
|
||||
"chi" "更改了 {1} 的名称."
|
||||
}
|
||||
|
||||
"Rename player"
|
||||
{
|
||||
"chi" "玩家更名"
|
||||
}
|
||||
|
||||
"Dead Player Rename"
|
||||
{
|
||||
"chi" "{1} 将会在下局被改名"
|
||||
}
|
||||
|
||||
}
|
128
translations/chi/plugin.basecommands.txt
Normal file
128
translations/chi/plugin.basecommands.txt
Normal file
@ -0,0 +1,128 @@
|
||||
"Phrases"
|
||||
{
|
||||
"Unable to find cvar"
|
||||
{
|
||||
"chi" "无法找到 cvar: {1}"
|
||||
}
|
||||
|
||||
"No access to cvar"
|
||||
{
|
||||
"chi" "你无权操作这个键值"
|
||||
}
|
||||
|
||||
"Value of cvar"
|
||||
{
|
||||
"chi" "cvar \"{1}\" 的值: \"{2}\""
|
||||
}
|
||||
|
||||
"Cvar changed"
|
||||
{
|
||||
"chi" "更改键值 \"{1}\" 为 \"{2}\". "
|
||||
}
|
||||
|
||||
"Config not found"
|
||||
{
|
||||
"chi" "配置文件 \"{1}\" 未找到."
|
||||
}
|
||||
|
||||
"Executed config"
|
||||
{
|
||||
"chi" "执行配置文件 \"{1}\"."
|
||||
}
|
||||
|
||||
"Permabanned player"
|
||||
{
|
||||
"chi" "已永久封禁玩家 \"{1}\"."
|
||||
}
|
||||
|
||||
"Permabanned player reason"
|
||||
{
|
||||
"chi" "已永久封禁玩家 \"{1}\" (原因: {2})."
|
||||
}
|
||||
|
||||
"Banned player"
|
||||
{
|
||||
"chi" "封禁玩家 \"{1}\" {2} 分钟."
|
||||
}
|
||||
|
||||
"Banned player reason"
|
||||
{
|
||||
"chi" "封禁玩家 \"{1}\" {2} 分钟 (原因: {3})."
|
||||
}
|
||||
|
||||
"Removed bans matching"
|
||||
{
|
||||
"chi" "移除了符合过滤条件: {1} 的封禁"
|
||||
}
|
||||
|
||||
"Ban added"
|
||||
{
|
||||
"chi" "封禁记录已添加."
|
||||
}
|
||||
|
||||
"Admin cache refreshed"
|
||||
{
|
||||
"chi" "管理员缓存已刷新."
|
||||
}
|
||||
|
||||
"Identify player"
|
||||
{
|
||||
"chi" "玩家认证"
|
||||
}
|
||||
|
||||
"Choose Map"
|
||||
{
|
||||
"chi" "选择地图"
|
||||
}
|
||||
|
||||
"Exec CFG"
|
||||
{
|
||||
"chi" "执行 CFG"
|
||||
}
|
||||
|
||||
"Admin logged in as"
|
||||
{
|
||||
"chi" "\"{1}\" 以 \"{2}\" 身份登录并带权限: {3}"
|
||||
}
|
||||
|
||||
"Admin logged in anon"
|
||||
{
|
||||
"chi" "\"{1}\" 具备权限: {2}"
|
||||
}
|
||||
|
||||
"Player is not an admin"
|
||||
{
|
||||
"chi" "\"{1}\" 非管理员."
|
||||
}
|
||||
|
||||
"Player is an admin"
|
||||
{
|
||||
"chi" "\"{1}\" 为管理员."
|
||||
}
|
||||
|
||||
"Username"
|
||||
{
|
||||
"chi" "用户名"
|
||||
}
|
||||
|
||||
"Kicked target"
|
||||
{
|
||||
"chi" "已踢出 {1}"
|
||||
}
|
||||
|
||||
"Admin access"
|
||||
{
|
||||
"chi" "管理员权限"
|
||||
}
|
||||
|
||||
"Cvar is now protected"
|
||||
{
|
||||
"chi" "键值{1}已经受保护"
|
||||
}
|
||||
|
||||
"Kicked target reason"
|
||||
{
|
||||
"chi" "踢出 {1} (理由: {2})"
|
||||
}
|
||||
|
||||
}
|
8
translations/chi/reservedslots.phrases.txt
Normal file
8
translations/chi/reservedslots.phrases.txt
Normal file
@ -0,0 +1,8 @@
|
||||
"Phrases"
|
||||
{
|
||||
"Slot reserved"
|
||||
{
|
||||
"chi" "无权使用保留通道而被踢出"
|
||||
}
|
||||
|
||||
}
|
103
translations/chi/rockthevote.phrases.txt
Normal file
103
translations/chi/rockthevote.phrases.txt
Normal file
@ -0,0 +1,103 @@
|
||||
"Phrases"
|
||||
{
|
||||
"Rock The Vote"
|
||||
{
|
||||
"chi" "滚动投票:"
|
||||
}
|
||||
|
||||
"RTV Not Allowed"
|
||||
{
|
||||
"chi" "当前无法启动RTV (滚动投票)."
|
||||
}
|
||||
|
||||
"RTV Started"
|
||||
{
|
||||
"chi" "RTV (滚动投票)已开始."
|
||||
}
|
||||
|
||||
"RTV Ended"
|
||||
{
|
||||
"chi" "RTV (滚动投票)已结束, 您无法重来或再预订地图."
|
||||
}
|
||||
|
||||
"Already Voted"
|
||||
{
|
||||
"chi" "您已经发起了投票(现有{1}票,仍需{2}票)"
|
||||
}
|
||||
|
||||
"Minimal Players Not Met"
|
||||
{
|
||||
"chi" "未达所需人数下限."
|
||||
}
|
||||
|
||||
"Map Already In Vote"
|
||||
{
|
||||
"chi" "地图 '{1}' 已在 RTV (滚动投票)列表中."
|
||||
}
|
||||
|
||||
"Map Inserted"
|
||||
{
|
||||
"chi" "地图 '{1}' 加入了 RTV (滚动投票)."
|
||||
}
|
||||
|
||||
"RTV Requested"
|
||||
{
|
||||
"chi" "{1} 要滚动投票. ({2} 票同意, 至少需要 {3} 票)"
|
||||
}
|
||||
|
||||
"RTV Vote Ready"
|
||||
{
|
||||
"chi" "开始滚动投票!"
|
||||
}
|
||||
|
||||
"Don't Change"
|
||||
{
|
||||
"chi" "继续运行当前地图"
|
||||
}
|
||||
|
||||
"Already Nominated"
|
||||
{
|
||||
"chi" "您已经提名过一张地图"
|
||||
}
|
||||
|
||||
"Max Nominations"
|
||||
{
|
||||
"chi" "已达最大预订数"
|
||||
}
|
||||
|
||||
"Selected Map"
|
||||
{
|
||||
"chi" "{1} 选了 {2}"
|
||||
}
|
||||
|
||||
"No Votes"
|
||||
{
|
||||
"chi" "RTV (滚动投票)无选票投递, 当前地图继续运行."
|
||||
}
|
||||
|
||||
"Current Map Stays"
|
||||
{
|
||||
"chi" "当前地图继续运行! 滚动投票已显示!"
|
||||
}
|
||||
|
||||
"Changing Maps"
|
||||
{
|
||||
"chi" "更换地图为 {1}! 滚动投票已显示!"
|
||||
}
|
||||
|
||||
"Map Already Nominated"
|
||||
{
|
||||
"chi" "您所选的地图已有人预订."
|
||||
}
|
||||
|
||||
"Map Nominated"
|
||||
{
|
||||
"chi" "{1} 预订了地图 {2} 加入滚动投票."
|
||||
}
|
||||
|
||||
"Nominate Title"
|
||||
{
|
||||
"chi" "预订地图:"
|
||||
}
|
||||
|
||||
}
|
28
translations/chi/slapslay.phrases.txt
Normal file
28
translations/chi/slapslay.phrases.txt
Normal file
@ -0,0 +1,28 @@
|
||||
"Phrases"
|
||||
{
|
||||
"Slap player"
|
||||
{
|
||||
"chi" "拍打玩家"
|
||||
}
|
||||
|
||||
"Slap damage"
|
||||
{
|
||||
"chi" "拍打伤害值"
|
||||
}
|
||||
|
||||
"Slay player"
|
||||
{
|
||||
"chi" "处死玩家"
|
||||
}
|
||||
|
||||
"Slapped target"
|
||||
{
|
||||
"chi" "拍打了 {1}."
|
||||
}
|
||||
|
||||
"Slayed target"
|
||||
{
|
||||
"chi" "处死了 {1}."
|
||||
}
|
||||
|
||||
}
|
8
translations/chi/sounds.phrases.txt
Normal file
8
translations/chi/sounds.phrases.txt
Normal file
@ -0,0 +1,8 @@
|
||||
"Phrases"
|
||||
{
|
||||
"Played sound to target"
|
||||
{
|
||||
"chi" "播放音乐给 {1}"
|
||||
}
|
||||
|
||||
}
|
78
translations/chi/sqladmins.phrases.txt
Normal file
78
translations/chi/sqladmins.phrases.txt
Normal file
@ -0,0 +1,78 @@
|
||||
"Phrases"
|
||||
{
|
||||
"Invalid authtype"
|
||||
{
|
||||
"chi" "认证方式必须为 'steam', 'name', 或 'ip'."
|
||||
}
|
||||
|
||||
"Invalid immunity"
|
||||
{
|
||||
"chi" "免疫级别必须为正整数."
|
||||
}
|
||||
|
||||
"SQL Admin already exists"
|
||||
{
|
||||
"chi" "授予该凭证标志的管理员已存在."
|
||||
}
|
||||
|
||||
"SQL Admin added"
|
||||
{
|
||||
"chi" "管理员被成功添加进数据库."
|
||||
}
|
||||
|
||||
"SQL Admin deleted"
|
||||
{
|
||||
"chi" "管理员被已从数据库中成功删除."
|
||||
}
|
||||
|
||||
"SQL Admin not found"
|
||||
{
|
||||
"chi" "授予该凭证标志的管理员未找到."
|
||||
}
|
||||
|
||||
"SQL Group already exists"
|
||||
{
|
||||
"chi" "符合该名称的组已存在."
|
||||
}
|
||||
|
||||
"SQL Group added"
|
||||
{
|
||||
"chi" "组被成功添加进数据库."
|
||||
}
|
||||
|
||||
"SQL Group deleted"
|
||||
{
|
||||
"chi" "组已从数据库中成功删除."
|
||||
}
|
||||
|
||||
"SQL Group not found"
|
||||
{
|
||||
"chi" "符合该名称的组未找到."
|
||||
}
|
||||
|
||||
"SQL Admin groups reset"
|
||||
{
|
||||
"chi" "管理员组已被成功重置."
|
||||
}
|
||||
|
||||
"SQL Group X not found"
|
||||
{
|
||||
"chi" "未找到组: \"{1}\""
|
||||
}
|
||||
|
||||
"SQL Group X failed to bind"
|
||||
{
|
||||
"chi" "无法绑定组: \"{1}\""
|
||||
}
|
||||
|
||||
"Added group to user"
|
||||
{
|
||||
"chi" "成功添加一个组至指定管理员类别."
|
||||
}
|
||||
|
||||
"Added groups to user"
|
||||
{
|
||||
"chi" "成功添加 {1} 个组至指定管理员类别."
|
||||
}
|
||||
|
||||
}
|
33
translations/cze/adminhelp.phrases.txt
Normal file
33
translations/cze/adminhelp.phrases.txt
Normal file
@ -0,0 +1,33 @@
|
||||
"Phrases"
|
||||
{
|
||||
"SM help commands"
|
||||
{
|
||||
"cze" "SourceMod Help: Informace o prikazech "
|
||||
}
|
||||
|
||||
"No description available"
|
||||
{
|
||||
"cze" "Zadny dostupny popis "
|
||||
}
|
||||
|
||||
"No commands available"
|
||||
{
|
||||
"cze" "Zadne dostupne prikazy"
|
||||
}
|
||||
|
||||
"Type sm_help to see more"
|
||||
{
|
||||
"cze" "Napiste sm_help {1} pro vice prikazu "
|
||||
}
|
||||
|
||||
"Entries n - m in page k"
|
||||
{
|
||||
"cze" "Polozky {1} - {2} na strance {3} "
|
||||
}
|
||||
|
||||
"No matching results found"
|
||||
{
|
||||
"cze" "Nebyly nalezeny zadne vhodne vysledky "
|
||||
}
|
||||
|
||||
}
|
23
translations/cze/adminmenu.phrases.txt
Normal file
23
translations/cze/adminmenu.phrases.txt
Normal file
@ -0,0 +1,23 @@
|
||||
"Phrases"
|
||||
{
|
||||
"Admin Menu"
|
||||
{
|
||||
"cze" "Admin Menu"
|
||||
}
|
||||
|
||||
"Player Commands"
|
||||
{
|
||||
"cze" "Hracske prikazy"
|
||||
}
|
||||
|
||||
"Server Commands"
|
||||
{
|
||||
"cze" "Serverove prikazy"
|
||||
}
|
||||
|
||||
"Voting Commands"
|
||||
{
|
||||
"cze" "Hlasovani"
|
||||
}
|
||||
|
||||
}
|
8
translations/cze/antiflood.phrases.txt
Normal file
8
translations/cze/antiflood.phrases.txt
Normal file
@ -0,0 +1,8 @@
|
||||
"Phrases"
|
||||
{
|
||||
"Flooding the server"
|
||||
{
|
||||
"cze" "Zahlcujete server!"
|
||||
}
|
||||
|
||||
}
|
63
translations/cze/basebans.phrases.txt
Normal file
63
translations/cze/basebans.phrases.txt
Normal file
@ -0,0 +1,63 @@
|
||||
"Phrases"
|
||||
{
|
||||
"Ban player"
|
||||
{
|
||||
"cze" "Zabanovat hrace"
|
||||
}
|
||||
|
||||
"Ban reason"
|
||||
{
|
||||
"cze" "Duvod banu"
|
||||
}
|
||||
|
||||
"Permabanned player"
|
||||
{
|
||||
"cze" "Permanentne zabanoval hrace \"{1}\"."
|
||||
}
|
||||
|
||||
"Permabanned player reason"
|
||||
{
|
||||
"cze" "Permanentne zabanoval hrace \"{1}\" (duvod: {2})"
|
||||
}
|
||||
|
||||
"Banned player"
|
||||
{
|
||||
"cze" "Zabanoval hrace \"{1}\" na {2} minut."
|
||||
}
|
||||
|
||||
"Banned player reason"
|
||||
{
|
||||
"cze" "Zabanoval hrace \"{1}\" na {2} minut (duvod: {3})."
|
||||
}
|
||||
|
||||
"Removed bans matching"
|
||||
{
|
||||
"cze" "Byly odstraneny bany splnujici filter: {1}"
|
||||
}
|
||||
|
||||
"Ban added"
|
||||
{
|
||||
"cze" "Ban byl pridan."
|
||||
}
|
||||
|
||||
"Cannot ban that IP"
|
||||
{
|
||||
"cze" "Nemuzete zabanovat tuto IP adresu."
|
||||
}
|
||||
|
||||
"Custom ban reason explanation"
|
||||
{
|
||||
"cze" "Zadejte duvod zpravou do chatu. Pouzijte {1} pro zruseni."
|
||||
}
|
||||
|
||||
"AbortBan applied successfully"
|
||||
{
|
||||
"cze" "Ban zrusen."
|
||||
}
|
||||
|
||||
"AbortBan not waiting for custom reason"
|
||||
{
|
||||
"cze" "Neceka se na zadani duvodu banu, zadny ban na zruseni."
|
||||
}
|
||||
|
||||
}
|
73
translations/cze/basecomm.phrases.txt
Normal file
73
translations/cze/basecomm.phrases.txt
Normal file
@ -0,0 +1,73 @@
|
||||
"Phrases"
|
||||
{
|
||||
"Gag/Mute player"
|
||||
{
|
||||
"cze" "Umlcet hrace"
|
||||
}
|
||||
|
||||
"Choose Type"
|
||||
{
|
||||
"cze" "Vyberte typ"
|
||||
}
|
||||
|
||||
"Gagged target"
|
||||
{
|
||||
"cze" "Hrac {1} byl odstrihnut od chatu."
|
||||
}
|
||||
|
||||
"Ungagged target"
|
||||
{
|
||||
"cze" "Hrac {1} muze znovu psat."
|
||||
}
|
||||
|
||||
"Muted target"
|
||||
{
|
||||
"cze" "Hrac {1} byl utisen."
|
||||
}
|
||||
|
||||
"Unmuted target"
|
||||
{
|
||||
"cze" "Hrac {1} muze znovu mluvit."
|
||||
}
|
||||
|
||||
"Silenced target"
|
||||
{
|
||||
"cze" "Hrac {1} byl uplne umlcen."
|
||||
}
|
||||
|
||||
"Unsilenced target"
|
||||
{
|
||||
"cze" "Hrac {1} se muze znovu projevovat."
|
||||
}
|
||||
|
||||
"Mute Player"
|
||||
{
|
||||
"cze" "Utisit hrace"
|
||||
}
|
||||
|
||||
"UnMute Player"
|
||||
{
|
||||
"cze" "Povolit hraci mluvit"
|
||||
}
|
||||
|
||||
"Gag Player"
|
||||
{
|
||||
"cze" "Odstrihnout hrace od chatu"
|
||||
}
|
||||
|
||||
"UnGag Player"
|
||||
{
|
||||
"cze" "Povolit hraci psat"
|
||||
}
|
||||
|
||||
"Silence Player"
|
||||
{
|
||||
"cze" "Umlcet hrace"
|
||||
}
|
||||
|
||||
"UnSilence Player"
|
||||
{
|
||||
"cze" "Povolit hraci mluvit a psat"
|
||||
}
|
||||
|
||||
}
|
108
translations/cze/basetriggers.phrases.txt
Normal file
108
translations/cze/basetriggers.phrases.txt
Normal file
@ -0,0 +1,108 @@
|
||||
"Phrases"
|
||||
{
|
||||
"Timeleft"
|
||||
{
|
||||
"cze" "Zbyvajici cas:"
|
||||
}
|
||||
|
||||
"Thetime"
|
||||
{
|
||||
"cze" "Soucasny cas je {1}"
|
||||
}
|
||||
|
||||
"Friendly Fire On"
|
||||
{
|
||||
"cze" "Friendly Fire je zapnut."
|
||||
}
|
||||
|
||||
"Friendly Fire Off"
|
||||
{
|
||||
"cze" "Friendly Fire je vypnut."
|
||||
}
|
||||
|
||||
"Current Map"
|
||||
{
|
||||
"cze" "Aktualni mapa je {1}."
|
||||
}
|
||||
|
||||
"LastRound"
|
||||
{
|
||||
"cze" "Toto je posledni kolo!!"
|
||||
}
|
||||
|
||||
"NoTimelimit"
|
||||
{
|
||||
"cze" "Tato mapa neni casove omezena"
|
||||
}
|
||||
|
||||
"Next Map"
|
||||
{
|
||||
"cze" "Pristi mapa: {1}"
|
||||
}
|
||||
|
||||
"Pending Vote"
|
||||
{
|
||||
"cze" "Neprobehlo hlasovani"
|
||||
}
|
||||
|
||||
"WinLimitAppend"
|
||||
{
|
||||
"cze" ", nebo se mapa zmeni pote, co nejaky tym vyhraje jedno kolo "
|
||||
}
|
||||
|
||||
"WinLimit"
|
||||
{
|
||||
"cze" "Mapa se zmeni pote, co nejaky tym vyhraje jedno kolo"
|
||||
}
|
||||
|
||||
"MaxRoundsAppend"
|
||||
{
|
||||
"cze" ", nebo se mapa zmeni po pristim kole"
|
||||
}
|
||||
|
||||
"MaxRounds"
|
||||
{
|
||||
"cze" "Mapa se zmeni po pristim kole"
|
||||
}
|
||||
|
||||
"FragLimitAppend"
|
||||
{
|
||||
"cze" ", nebo se mapa zmeni pote, co hrac dosahne jednoho zabiti"
|
||||
}
|
||||
|
||||
"FragLimit"
|
||||
{
|
||||
"cze" "Mapa se zmeni pote, co hrac dosahne jednoho zabiti"
|
||||
}
|
||||
|
||||
"WinLimitAppendPlural"
|
||||
{
|
||||
"cze" ", nebo se mapa zmeni pote, co nejaky tym vyhraje {1} kol"
|
||||
}
|
||||
|
||||
"WinLimitPlural"
|
||||
{
|
||||
"cze" "Mapa se zmeni pote, co nejaky tym vyhraje {1} kol"
|
||||
}
|
||||
|
||||
"MaxRoundsAppendPlural"
|
||||
{
|
||||
"cze" ", nebo se mapa zmeni po {1} kolech"
|
||||
}
|
||||
|
||||
"MaxRoundsPlural"
|
||||
{
|
||||
"cze" "Mapa se zmeni po {1} kolech"
|
||||
}
|
||||
|
||||
"FragLimitAppendPlural"
|
||||
{
|
||||
"cze" " , nebo se mapa zmeni pote, co hrac dosahne {1} zabiti "
|
||||
}
|
||||
|
||||
"FragLimitPlural"
|
||||
{
|
||||
"cze" "Mapa se zmeni pote, co hrac dosahne {1} zabiti"
|
||||
}
|
||||
|
||||
}
|
93
translations/cze/basevotes.phrases.txt
Normal file
93
translations/cze/basevotes.phrases.txt
Normal file
@ -0,0 +1,93 @@
|
||||
"Phrases"
|
||||
{
|
||||
"Initiate Vote"
|
||||
{
|
||||
"cze" " Zahajil hlasovani: {1}"
|
||||
}
|
||||
|
||||
"Initiated Vote Map"
|
||||
{
|
||||
"cze" "Zahajil hlasovani o mape."
|
||||
}
|
||||
|
||||
"Initiated Vote Kick"
|
||||
{
|
||||
"cze" "Zahajil hlasovani o vyhozeni proti hraci {1}."
|
||||
}
|
||||
|
||||
"Initiated Vote Ban"
|
||||
{
|
||||
"cze" "Zahajil hlasovani o banu proti hraci {1}"
|
||||
}
|
||||
|
||||
"Map Vote"
|
||||
{
|
||||
"cze" "Hlasovani o mape: {1}"
|
||||
}
|
||||
|
||||
"Change Map To"
|
||||
{
|
||||
"cze" "Zmenit mapu na {1}?"
|
||||
}
|
||||
|
||||
"Votekick Player"
|
||||
{
|
||||
"cze" "Vyhodit {1}?"
|
||||
}
|
||||
|
||||
"Voteban Player"
|
||||
{
|
||||
"cze" "Zabanovat {1}?"
|
||||
}
|
||||
|
||||
"Vote Successful"
|
||||
{
|
||||
"cze" "Hlasovani prijato. (Obdrzeno {1}%% z {2} hlasu)"
|
||||
}
|
||||
|
||||
"Vote Failed"
|
||||
{
|
||||
"cze" "Hlasovani selhalo. Bylo potreba {1}%% hlasu. (Obdrzeno {2}%% z {3} hlasu)"
|
||||
}
|
||||
|
||||
"Vote End"
|
||||
{
|
||||
"cze" "Odpoved na otazku {1} je: {2}."
|
||||
}
|
||||
|
||||
"Kick vote"
|
||||
{
|
||||
"cze" "Hlasovani o vyhozeni"
|
||||
}
|
||||
|
||||
"Ban vote"
|
||||
{
|
||||
"cze" "Hlasovani o banu"
|
||||
}
|
||||
|
||||
"Map vote"
|
||||
{
|
||||
"cze" "Hlasovani o mape"
|
||||
}
|
||||
|
||||
"Confirm Vote"
|
||||
{
|
||||
"cze" "Potvrdit hlasovani"
|
||||
}
|
||||
|
||||
"Map Vote In Use"
|
||||
{
|
||||
"cze" "Jiny admin prave pouziva hlasovaci menu."
|
||||
}
|
||||
|
||||
"Please select a map"
|
||||
{
|
||||
"cze" "Prosim, zvol mapu"
|
||||
}
|
||||
|
||||
"Start the Vote"
|
||||
{
|
||||
"cze" "Zacit hlasovani"
|
||||
}
|
||||
|
||||
}
|
48
translations/cze/clientprefs.phrases.txt
Normal file
48
translations/cze/clientprefs.phrases.txt
Normal file
@ -0,0 +1,48 @@
|
||||
"Phrases"
|
||||
{
|
||||
"Cookie List"
|
||||
{
|
||||
"cze" "Seznam Sourcemod Cookies"
|
||||
}
|
||||
|
||||
"Printing Cookie List"
|
||||
{
|
||||
"cze" "Vypisuji seznam cookie do konzole"
|
||||
}
|
||||
|
||||
"Cookie not Found"
|
||||
{
|
||||
"cze" "Nelze nalezt cookie \"{1}\""
|
||||
}
|
||||
|
||||
"Cookie Value"
|
||||
{
|
||||
"cze" "Hodnota hrace {1} je {2}"
|
||||
}
|
||||
|
||||
"Protected Cookie"
|
||||
{
|
||||
"cze" "Nelze zmenit hodnotu chranene cookie \"{1}\""
|
||||
}
|
||||
|
||||
"Cookie Changed Value"
|
||||
{
|
||||
"cze" "Zmena hodnoty cookie \"{1}\" na \"{2}\""
|
||||
}
|
||||
|
||||
"No Console"
|
||||
{
|
||||
"cze" "Nelze zobrazit menu nastaveni do konzole"
|
||||
}
|
||||
|
||||
"Choose Option"
|
||||
{
|
||||
"cze" "Zvolte moznost"
|
||||
}
|
||||
|
||||
"Client Settings"
|
||||
{
|
||||
"cze" "Nastaveni hrace"
|
||||
}
|
||||
|
||||
}
|
273
translations/cze/common.phrases.txt
Normal file
273
translations/cze/common.phrases.txt
Normal file
@ -0,0 +1,273 @@
|
||||
"Phrases"
|
||||
{
|
||||
"Yes"
|
||||
{
|
||||
"cze" "Ano"
|
||||
}
|
||||
|
||||
"No"
|
||||
{
|
||||
"cze" "Ne"
|
||||
}
|
||||
|
||||
"No matching client"
|
||||
{
|
||||
"cze" "Nebyl nalezen zadny shodny hrac."
|
||||
}
|
||||
|
||||
"No matching clients"
|
||||
{
|
||||
"cze" "Nebyli nalezeni zadni shodni hraci."
|
||||
}
|
||||
|
||||
"More than one client matches"
|
||||
{
|
||||
"cze" "Vice nez jeden hrac splnuje podminku \"{1}\""
|
||||
}
|
||||
|
||||
"More than one client matched"
|
||||
{
|
||||
"cze" "Vice nez jeden hrac splnuje danou podminku."
|
||||
}
|
||||
|
||||
"Player no longer available"
|
||||
{
|
||||
"cze" "Hrac, ktereho jste zvolil, jiz neni dostupny."
|
||||
}
|
||||
|
||||
"Kick player"
|
||||
{
|
||||
"cze" "Vyhodit hrace"
|
||||
}
|
||||
|
||||
"Kicked by admin"
|
||||
{
|
||||
"cze" "Vyhozen administratorem"
|
||||
}
|
||||
|
||||
"Changing map"
|
||||
{
|
||||
"cze" "Zmena mapy na {1}..."
|
||||
}
|
||||
|
||||
"Map was not found"
|
||||
{
|
||||
"cze" "Mapa {1} nebyla nalezena."
|
||||
}
|
||||
|
||||
"Unable to target"
|
||||
{
|
||||
"cze" "Nemuzete zvolit tohoto hrace."
|
||||
}
|
||||
|
||||
"Name"
|
||||
{
|
||||
"cze" "Jmeno"
|
||||
}
|
||||
|
||||
"Access"
|
||||
{
|
||||
"cze" "Pristup"
|
||||
}
|
||||
|
||||
"See console for output"
|
||||
{
|
||||
"cze" "Pro vystup se podivejte do konzole."
|
||||
}
|
||||
|
||||
"Cannot target bot"
|
||||
{
|
||||
"cze" "Tento prikaz nelze vykonat na botovi."
|
||||
}
|
||||
|
||||
"Unable to find cvar"
|
||||
{
|
||||
"cze" "Nelze nalezt cvar: {1}"
|
||||
}
|
||||
|
||||
"No access to cvar"
|
||||
{
|
||||
"cze" "Nemate pristup k tomuto cvaru."
|
||||
}
|
||||
|
||||
"Value of cvar"
|
||||
{
|
||||
"cze" "Hodnota cvaru \"{1}\" je: \"{2}\""
|
||||
}
|
||||
|
||||
"Cvar changed"
|
||||
{
|
||||
"cze" "Zmenen cvar \"{1}\" na \"{2}\"."
|
||||
}
|
||||
|
||||
"Config not found"
|
||||
{
|
||||
"cze" "Konfiguracni soubor \"{1}\" nebyl nalezen."
|
||||
}
|
||||
|
||||
"Executed config"
|
||||
{
|
||||
"cze" "Spustil konfiguracni soubor \"{1}\"."
|
||||
}
|
||||
|
||||
"Admin cache refreshed"
|
||||
{
|
||||
"cze" "Cache adminu byla obnovena."
|
||||
}
|
||||
|
||||
"Invalid Amount"
|
||||
{
|
||||
"cze" "Byla zadana neplatna hodnota"
|
||||
}
|
||||
|
||||
"Cannot be performed on dead"
|
||||
{
|
||||
"cze" "Tato akce nemuze byt vykonana na mrtvem hraci \"{1}\""
|
||||
}
|
||||
|
||||
"Player has since died"
|
||||
{
|
||||
"cze" "Akce nemuze byt vykonana, hrac mezitim zemrel."
|
||||
}
|
||||
|
||||
"Vote in Progress"
|
||||
{
|
||||
"cze" "Hlasovani jiz probiha."
|
||||
}
|
||||
|
||||
"Vote Not In Progress"
|
||||
{
|
||||
"cze" "V tuto chvili neprobiha zadne hlasovani."
|
||||
}
|
||||
|
||||
"Cancelled Vote"
|
||||
{
|
||||
"cze" "Zrusil hlasovani."
|
||||
}
|
||||
|
||||
"Cancel vote"
|
||||
{
|
||||
"cze" "Zrusit hlasovani"
|
||||
}
|
||||
|
||||
"Vote Select"
|
||||
{
|
||||
"cze" "{1} zvolil {2}."
|
||||
}
|
||||
|
||||
"No Votes Cast"
|
||||
{
|
||||
"cze" "Nebyly prijaty zadne hlasy."
|
||||
}
|
||||
|
||||
"Vote Delay Minutes"
|
||||
{
|
||||
"cze" "Musite pockat {1} minut pred zapocetim dalsiho hlasovani."
|
||||
}
|
||||
|
||||
"Vote Delay Seconds"
|
||||
{
|
||||
"cze" "Musite pockat {1} vterin pred zapocetim dalsiho hlasovani."
|
||||
}
|
||||
|
||||
"Could not connect to database"
|
||||
{
|
||||
"cze" "Nelze se pripojit k databazi."
|
||||
}
|
||||
|
||||
"Failed to query database"
|
||||
{
|
||||
"cze" "Nelze se spojit s databazi."
|
||||
}
|
||||
|
||||
"Invalid SteamID specified"
|
||||
{
|
||||
"cze" "Byl zadan neplatny Steam ID (musi zacinat 'STEAM_')"
|
||||
}
|
||||
|
||||
"Reload admins"
|
||||
{
|
||||
"cze" "Obnovit adminy"
|
||||
}
|
||||
|
||||
"Command is in-game only"
|
||||
{
|
||||
"cze" "Tento prikaz lze pouzit pouze ze hry."
|
||||
}
|
||||
|
||||
"Target must be dead"
|
||||
{
|
||||
"cze" "Tento prikaz muze byt pouzit pouze na mrtve hrace."
|
||||
}
|
||||
|
||||
"Target must be alive"
|
||||
{
|
||||
"cze" "Tento prikaz muze byt pouzit pouze na zive hrace."
|
||||
}
|
||||
|
||||
"Target is not in game"
|
||||
{
|
||||
"cze" "Zvoleny hrac jeste neni plne pripojen do hry."
|
||||
}
|
||||
|
||||
"Played Sound"
|
||||
{
|
||||
"cze" " Byl prehran zvuk hraci '{1}'"
|
||||
}
|
||||
|
||||
"Slapped player"
|
||||
{
|
||||
"cze" "Vyliskal hrace '{1}'"
|
||||
}
|
||||
|
||||
"Slayed player"
|
||||
{
|
||||
"cze" "Zabil hrace '{1}'"
|
||||
}
|
||||
|
||||
"Kicked player"
|
||||
{
|
||||
"cze" "Vyhodil hrace '{1}'"
|
||||
}
|
||||
|
||||
"Cannot participate in vote"
|
||||
{
|
||||
"cze" "Nemuzete se zucastnit tohoto hlasovani."
|
||||
}
|
||||
|
||||
"Cannot change vote"
|
||||
{
|
||||
"cze" "Nemuzete zmenit svoji volbu v tomto hlasovani."
|
||||
}
|
||||
|
||||
"On"
|
||||
{
|
||||
"cze" "Zapnout"
|
||||
}
|
||||
|
||||
"Off"
|
||||
{
|
||||
"cze" "Vypnout"
|
||||
}
|
||||
|
||||
"Say all"
|
||||
{
|
||||
"cze" "(VSEM) {1}"
|
||||
}
|
||||
|
||||
"Chat admins"
|
||||
{
|
||||
"cze" "(ADMINOVE) {1}"
|
||||
}
|
||||
|
||||
"Chat to admins"
|
||||
{
|
||||
"cze" "(ADMINUM) {1}"
|
||||
}
|
||||
|
||||
"Private say to"
|
||||
{
|
||||
"cze" "(Privatne {1}) {2}"
|
||||
}
|
||||
|
||||
}
|
88
translations/cze/core.phrases.txt
Normal file
88
translations/cze/core.phrases.txt
Normal file
@ -0,0 +1,88 @@
|
||||
"Phrases"
|
||||
{
|
||||
"No Access"
|
||||
{
|
||||
"cze" "Nemate pristup k tomuto prikazu"
|
||||
}
|
||||
|
||||
"Back"
|
||||
{
|
||||
"cze" "Zpet"
|
||||
}
|
||||
|
||||
"Next"
|
||||
{
|
||||
"cze" "Dalsi"
|
||||
}
|
||||
|
||||
"Exit"
|
||||
{
|
||||
"cze" "Exit"
|
||||
}
|
||||
|
||||
"Previous"
|
||||
{
|
||||
"cze" "Predchozi"
|
||||
}
|
||||
|
||||
"all players"
|
||||
{
|
||||
"cze" "vsichni hraci"
|
||||
}
|
||||
|
||||
"all humans"
|
||||
{
|
||||
"cze" "vsichni lide"
|
||||
}
|
||||
|
||||
"all bots"
|
||||
{
|
||||
"cze" "vsichni boti"
|
||||
}
|
||||
|
||||
"all dead players"
|
||||
{
|
||||
"cze" "vsichni mrtvi hraci"
|
||||
}
|
||||
|
||||
"all alive players"
|
||||
{
|
||||
"cze" "vsichni zivi hraci"
|
||||
}
|
||||
|
||||
"_s"
|
||||
{
|
||||
"cze" "{1}"
|
||||
}
|
||||
|
||||
"all spectators"
|
||||
{
|
||||
"cze" "vsichni pozorovatele"
|
||||
}
|
||||
|
||||
"Vote Count"
|
||||
{
|
||||
"cze" "Hlasy: {1}/{2}, zbyva {3}s"
|
||||
}
|
||||
|
||||
"Voted For"
|
||||
{
|
||||
"cze" "{1} hlasoval pro {2}"
|
||||
}
|
||||
|
||||
"Changed Vote"
|
||||
{
|
||||
"cze" " {1} zmenil svou volbu na {2}"
|
||||
}
|
||||
|
||||
"No Vote"
|
||||
{
|
||||
"cze" "Zadny hlas"
|
||||
}
|
||||
|
||||
"Name Reserved"
|
||||
{
|
||||
"cze" "Tvuj nick je rezervovan SourceModem; nastav sve heslo, abys ho mohl pouzivat."
|
||||
}
|
||||
|
||||
}
|
168
translations/cze/funcommands.phrases.txt
Normal file
168
translations/cze/funcommands.phrases.txt
Normal file
@ -0,0 +1,168 @@
|
||||
"Phrases"
|
||||
{
|
||||
"Burn player"
|
||||
{
|
||||
"cze" "Zapalit hrace"
|
||||
}
|
||||
|
||||
"FireBomb player"
|
||||
{
|
||||
"cze" "Udelat z hrace ohnivou bombu"
|
||||
}
|
||||
|
||||
"Freeze player"
|
||||
{
|
||||
"cze" " Zmrazit hrace"
|
||||
}
|
||||
|
||||
"FreezeBomb player"
|
||||
{
|
||||
"cze" "Udelat z hrace mrazici bombu"
|
||||
}
|
||||
|
||||
"TimeBomb player"
|
||||
{
|
||||
"cze" " Udelat z hrace casovanou bombu"
|
||||
}
|
||||
|
||||
"Beacon player"
|
||||
{
|
||||
"cze" "Oznacit hrace"
|
||||
}
|
||||
|
||||
"NoClip player"
|
||||
{
|
||||
"cze" "Dat hraci NoClip"
|
||||
}
|
||||
|
||||
"Blind player"
|
||||
{
|
||||
"cze" "Oslepit hrace"
|
||||
}
|
||||
|
||||
"Drug player"
|
||||
{
|
||||
"cze" "Zfetovat hrace"
|
||||
}
|
||||
|
||||
"Gravity player"
|
||||
{
|
||||
"cze" "Nastavit hraci gravitaci"
|
||||
}
|
||||
|
||||
"Blind amount"
|
||||
{
|
||||
"cze" "Sila oslepeni?"
|
||||
}
|
||||
|
||||
"Fully blind"
|
||||
{
|
||||
"cze" "Uplne oslepeni"
|
||||
}
|
||||
|
||||
"Half blind"
|
||||
{
|
||||
"cze" "Polovicni oslepeni"
|
||||
}
|
||||
|
||||
"No blind"
|
||||
{
|
||||
"cze" "Zadne oslepeni"
|
||||
}
|
||||
|
||||
"Gravity amount"
|
||||
{
|
||||
"cze" "Sila gravitace?"
|
||||
}
|
||||
|
||||
"Gravity Very High"
|
||||
{
|
||||
"cze" "Velmi vysoka gravitace"
|
||||
}
|
||||
|
||||
"Gravity High"
|
||||
{
|
||||
"cze" "Vysoka gravitace"
|
||||
}
|
||||
|
||||
"Gravity Normal"
|
||||
{
|
||||
"cze" "Normalni gravitace"
|
||||
}
|
||||
|
||||
"Gravity Low"
|
||||
{
|
||||
"cze" "Nizka gravitace"
|
||||
}
|
||||
|
||||
"Gravity Very Low"
|
||||
{
|
||||
"cze" "Velmi nizka gravitace"
|
||||
}
|
||||
|
||||
"Set target on fire"
|
||||
{
|
||||
"cze" "zapalil hrace {1}."
|
||||
}
|
||||
|
||||
"Toggled FireBomb on target"
|
||||
{
|
||||
"cze" "zmenil hrace {1} v ohnivou bombu."
|
||||
}
|
||||
|
||||
"Froze target"
|
||||
{
|
||||
"cze" "zmrazil hrace {1}."
|
||||
}
|
||||
|
||||
"Toggled FreezeBomb on target"
|
||||
{
|
||||
"cze" "zmenil hrace {1} v mrazici bombu."
|
||||
}
|
||||
|
||||
"Toggled beacon on target"
|
||||
{
|
||||
"cze" "oznacil hrace {1}."
|
||||
}
|
||||
|
||||
"Toggled TimeBomb on target"
|
||||
{
|
||||
"cze" "zmenil hrace {1} v casovanou bombu."
|
||||
}
|
||||
|
||||
"Toggled noclip on target"
|
||||
{
|
||||
"cze" "prepl NoClip na hraci {1}."
|
||||
}
|
||||
|
||||
"Toggled drug on target"
|
||||
{
|
||||
"cze" "zfetoval hrace {1}."
|
||||
}
|
||||
|
||||
"Set blind on target"
|
||||
{
|
||||
"cze" "oslepil hrace {1}."
|
||||
}
|
||||
|
||||
"Set gravity on target"
|
||||
{
|
||||
"cze" "nastavil gravitaci hraci {1}."
|
||||
}
|
||||
|
||||
"Till Explodes"
|
||||
{
|
||||
"cze" "{2} sekund(y) nez {1} vybuchne."
|
||||
}
|
||||
|
||||
"Unfrozen"
|
||||
{
|
||||
"cze" "Byl jsi rozmrazen."
|
||||
}
|
||||
|
||||
"You will be unfrozen"
|
||||
{
|
||||
"cze" "Budes rozmrazen za {1} vterin."
|
||||
}
|
||||
|
||||
}
|
98
translations/cze/funvotes.phrases.txt
Normal file
98
translations/cze/funvotes.phrases.txt
Normal file
@ -0,0 +1,98 @@
|
||||
"Phrases"
|
||||
{
|
||||
"Initiated Vote Gravity"
|
||||
{
|
||||
"cze" "Zahajil hlasovani o gravitaci."
|
||||
}
|
||||
|
||||
"Initiated Vote Burn"
|
||||
{
|
||||
"cze" "Zahajil hlasovani o zapaleni proti hraci {1}."
|
||||
}
|
||||
|
||||
"Initiated Vote Slay"
|
||||
{
|
||||
"cze" "Zahajil hlasovani o zabiti proti hraci {1}."
|
||||
}
|
||||
|
||||
"Initiated Vote Alltalk"
|
||||
{
|
||||
"cze" "Zahajil hlasovani o alltalku."
|
||||
}
|
||||
|
||||
"Initiated Vote FF"
|
||||
{
|
||||
"cze" "Zahajil hlasovani o Friendly Fire."
|
||||
}
|
||||
|
||||
"Gravity Vote"
|
||||
{
|
||||
"cze" "Hlasovani o gravitaci: {1}"
|
||||
}
|
||||
|
||||
"Change Gravity To"
|
||||
{
|
||||
"cze" "Zmenit gravitaci na {1}?"
|
||||
}
|
||||
|
||||
"Voteburn player"
|
||||
{
|
||||
"cze" " Zapalit hrace {1}?"
|
||||
}
|
||||
|
||||
"Voteslay Player"
|
||||
{
|
||||
"cze" "Zabit hrace {1}?"
|
||||
}
|
||||
|
||||
"Votealltalk Off"
|
||||
{
|
||||
"cze" " Vypnout alltalk? {1}"
|
||||
}
|
||||
|
||||
"Votealltalk On"
|
||||
{
|
||||
"cze" "Zapnout alltalk? {1}"
|
||||
}
|
||||
|
||||
"Voteff Off"
|
||||
{
|
||||
"cze" "Vypnout FriendlyFire? {1}"
|
||||
}
|
||||
|
||||
"Voteff On"
|
||||
{
|
||||
"cze" "Zapnout FriendlyFire? {1}"
|
||||
}
|
||||
|
||||
"Gravity vote"
|
||||
{
|
||||
"cze" "Hlasovani o gravitaci"
|
||||
}
|
||||
|
||||
"Vote FF"
|
||||
{
|
||||
"cze" "Hlasovani o FriendlyFire"
|
||||
}
|
||||
|
||||
"Burn vote"
|
||||
{
|
||||
"cze" "Hlasovani o zapaleni"
|
||||
}
|
||||
|
||||
"Alltalk vote"
|
||||
{
|
||||
"cze" "Hlasovani o Alltalk"
|
||||
}
|
||||
|
||||
"Slay vote"
|
||||
{
|
||||
"cze" "Hlasovani o zabiti"
|
||||
}
|
||||
|
||||
"Slayed player"
|
||||
{
|
||||
"cze" "Zabil hrace '{1}'"
|
||||
}
|
||||
|
||||
}
|
48
translations/cze/mapchooser.phrases.txt
Normal file
48
translations/cze/mapchooser.phrases.txt
Normal file
@ -0,0 +1,48 @@
|
||||
"Phrases"
|
||||
{
|
||||
"Vote Nextmap"
|
||||
{
|
||||
"cze" "Hlasujte o pristi mape!"
|
||||
}
|
||||
|
||||
"Nextmap Voting Started"
|
||||
{
|
||||
"cze" "Hlasovani o pristi mape zacalo."
|
||||
}
|
||||
|
||||
"Nextmap Voting Finished"
|
||||
{
|
||||
"cze" "Hlasovani o mape skoncilo. Pristi mapou bude {1}. (Obdrzela {2}%% z {3} hlasu)"
|
||||
}
|
||||
|
||||
"Current Map Extended"
|
||||
{
|
||||
"cze" "Soucasna mapa byla prodlouzena. (Obdrzela {1}%% z {2} hlasu)"
|
||||
}
|
||||
|
||||
"Extend Map"
|
||||
{
|
||||
"cze" "Prodlouzit soucasnou mapu"
|
||||
}
|
||||
|
||||
"Dont Change"
|
||||
{
|
||||
"cze" " Nemenit soucasnou mapu"
|
||||
}
|
||||
|
||||
"Current Map Stays"
|
||||
{
|
||||
"cze" "Soucasna mapa pokracuje! Hlasovani rozhodlo! (Obdrzela {1}%% z {2} hlasu)"
|
||||
}
|
||||
|
||||
"Changed Next Map"
|
||||
{
|
||||
"cze" "Zmenil pristi mapu na \"{1}\"."
|
||||
}
|
||||
|
||||
"Starting Runoff"
|
||||
{
|
||||
"cze" "Zadna mapa neziskala {1]%% hlasu ({2} [{3}%%] & {4} [{5}%%]), zacina rozhodujici hlasovani."
|
||||
}
|
||||
|
||||
}
|
43
translations/cze/nextmap.phrases.txt
Normal file
43
translations/cze/nextmap.phrases.txt
Normal file
@ -0,0 +1,43 @@
|
||||
"Phrases"
|
||||
{
|
||||
"Next Map"
|
||||
{
|
||||
"cze" "Pristi mapa: {1}"
|
||||
}
|
||||
|
||||
"Map History"
|
||||
{
|
||||
"cze" "Historie map"
|
||||
}
|
||||
|
||||
"Map"
|
||||
{
|
||||
"cze" "[Mapa]"
|
||||
}
|
||||
|
||||
"Started"
|
||||
{
|
||||
"cze" "[Zacala]"
|
||||
}
|
||||
|
||||
"Played Time"
|
||||
{
|
||||
"cze" "[Odehrany cas]"
|
||||
}
|
||||
|
||||
"Reason"
|
||||
{
|
||||
"cze" " [Duvod k ukonceni]"
|
||||
}
|
||||
|
||||
"Current Map"
|
||||
{
|
||||
"cze" "Soucasna mapa"
|
||||
}
|
||||
|
||||
"ago"
|
||||
{
|
||||
"cze" "pred"
|
||||
}
|
||||
|
||||
}
|
68
translations/cze/nominations.phrases.txt
Normal file
68
translations/cze/nominations.phrases.txt
Normal file
@ -0,0 +1,68 @@
|
||||
"Phrases"
|
||||
{
|
||||
"Already Nominated"
|
||||
{
|
||||
"cze" "Uz jsi nominoval mapu."
|
||||
}
|
||||
|
||||
"Max Nominations"
|
||||
{
|
||||
"cze" "Maximalni pocet nominaci byl dosahnut."
|
||||
}
|
||||
|
||||
"Map Already In Vote"
|
||||
{
|
||||
"cze" "Mapa '{1}' byla jiz nominovana."
|
||||
}
|
||||
|
||||
"Map Inserted"
|
||||
{
|
||||
"cze" "Mapa '{1}' byla pridana do nominaci."
|
||||
}
|
||||
|
||||
"Map Already Nominated"
|
||||
{
|
||||
"cze" "Mapa, kterou jsi zvolil, byla jiz nominovana."
|
||||
}
|
||||
|
||||
"Map Nominated"
|
||||
{
|
||||
"cze" "{1} nominoval {2}."
|
||||
}
|
||||
|
||||
"Map Nomination Changed"
|
||||
{
|
||||
"cze" "{1} zmenil svou nominaci na {2}."
|
||||
}
|
||||
|
||||
"Nominate Title"
|
||||
{
|
||||
"cze" "Nominovat mapu:"
|
||||
}
|
||||
|
||||
"Can't Nominate Current Map"
|
||||
{
|
||||
"cze" "Mapa, kterou jsi zvolil, je soucasna mapa a nemuze byt nominovana."
|
||||
}
|
||||
|
||||
"Map in Exclude List"
|
||||
{
|
||||
"cze" "Mapa, kterou jsi zvolil, se nedavno hrala a nemuze byt nominovana."
|
||||
}
|
||||
|
||||
"Current Map"
|
||||
{
|
||||
"cze" "Soucasna mapa"
|
||||
}
|
||||
|
||||
"Recently Played"
|
||||
{
|
||||
"cze" "Nedavno hrana"
|
||||
}
|
||||
|
||||
"Nominated"
|
||||
{
|
||||
"cze" "Nominovana"
|
||||
}
|
||||
|
||||
}
|
48
translations/cze/playercommands.phrases.txt
Normal file
48
translations/cze/playercommands.phrases.txt
Normal file
@ -0,0 +1,48 @@
|
||||
"Phrases"
|
||||
{
|
||||
"Slap player"
|
||||
{
|
||||
"cze" "Vyliskat hrace"
|
||||
}
|
||||
|
||||
"Slap damage"
|
||||
{
|
||||
"cze" "Sila lisknuti"
|
||||
}
|
||||
|
||||
"Slay player"
|
||||
{
|
||||
"cze" "Zabit hrace"
|
||||
}
|
||||
|
||||
"Slapped target"
|
||||
{
|
||||
"cze" "Vyliskal hrace {1}."
|
||||
}
|
||||
|
||||
"Slayed target"
|
||||
{
|
||||
"cze" "Zabil hrace {1}."
|
||||
}
|
||||
|
||||
"Name changed"
|
||||
{
|
||||
"cze" "Admin zmenil tve jmeno"
|
||||
}
|
||||
|
||||
"Renamed target"
|
||||
{
|
||||
"cze" "Prejmenoval hrace {1}."
|
||||
}
|
||||
|
||||
"Rename player"
|
||||
{
|
||||
"cze" " Prejmenovat hrace"
|
||||
}
|
||||
|
||||
"Dead Player Rename"
|
||||
{
|
||||
"cze" "Hrac {1} bude pristi kolo prejmenovan."
|
||||
}
|
||||
|
||||
}
|
138
translations/cze/plugin.basecommands.txt
Normal file
138
translations/cze/plugin.basecommands.txt
Normal file
@ -0,0 +1,138 @@
|
||||
"Phrases"
|
||||
{
|
||||
"Unable to find cvar"
|
||||
{
|
||||
"cze" "Nelze nalezt cvar: {1}"
|
||||
}
|
||||
|
||||
"No access to cvar"
|
||||
{
|
||||
"cze" "Nemate pristup k tomuto cvaru."
|
||||
}
|
||||
|
||||
"Value of cvar"
|
||||
{
|
||||
"cze" "Hodnota cvaru \"{1}\" je: \"{2}\""
|
||||
}
|
||||
|
||||
"Cvar changed"
|
||||
{
|
||||
"cze" "Zmenil cvar \"{1}\" na \"{2}\"."
|
||||
}
|
||||
|
||||
"Config not found"
|
||||
{
|
||||
"cze" "Konfiguracni soubor \"{1}\" nebyl nalezen."
|
||||
}
|
||||
|
||||
"Executed config"
|
||||
{
|
||||
"cze" "Spustil konfiguracni soubor \"{1}\"."
|
||||
}
|
||||
|
||||
"Permabanned player"
|
||||
{
|
||||
"cze" "Permanentne zabanoval hrace \"{1}\"."
|
||||
}
|
||||
|
||||
"Permabanned player reason"
|
||||
{
|
||||
"cze" "Permanentne zabanoval hrace \"{1}\" (Duvod: {2})."
|
||||
}
|
||||
|
||||
"Banned player"
|
||||
{
|
||||
"cze" "Zabanoval hrace \"{1}\" na {2} minut."
|
||||
}
|
||||
|
||||
"Banned player reason"
|
||||
{
|
||||
"cze" "Zabanoval hrace \"{1}\" na {2} minut (duvod: {3})."
|
||||
}
|
||||
|
||||
"Removed bans matching"
|
||||
{
|
||||
"cze" "Byly odstraneny bany splnujici filtr: {1}"
|
||||
}
|
||||
|
||||
"Ban added"
|
||||
{
|
||||
"cze" "Ban byl pridan."
|
||||
}
|
||||
|
||||
"Admin cache refreshed"
|
||||
{
|
||||
"cze" "Cache adminu byla obnovena."
|
||||
}
|
||||
|
||||
"Identify player"
|
||||
{
|
||||
"cze" "Identifikovat hrace"
|
||||
}
|
||||
|
||||
"Choose Map"
|
||||
{
|
||||
"cze" "Vyberte mapu"
|
||||
}
|
||||
|
||||
"Exec CFG"
|
||||
{
|
||||
"cze" "Spustit CFG"
|
||||
}
|
||||
|
||||
"Admin logged in as"
|
||||
{
|
||||
"cze" "\"{1}\" je prihlasen jako \"{2}\" s pristupem: {3}"
|
||||
}
|
||||
|
||||
"Admin logged in anon"
|
||||
{
|
||||
"cze" "\"{1}\" ma pristup: {2}"
|
||||
}
|
||||
|
||||
"Player is not an admin"
|
||||
{
|
||||
"cze" "Hrac \"{1}\" neni admin."
|
||||
}
|
||||
|
||||
"Player is an admin"
|
||||
{
|
||||
"cze" " Hrac \"{1}\" je admin."
|
||||
}
|
||||
|
||||
"Username"
|
||||
{
|
||||
"cze" "Uzivatelske jmeno"
|
||||
}
|
||||
|
||||
"Kicked target"
|
||||
{
|
||||
"cze" "Vyhodil hrace {1}."
|
||||
}
|
||||
|
||||
"Admin access"
|
||||
{
|
||||
"cze" "Administratorsky pristup"
|
||||
}
|
||||
|
||||
"Cvar is now protected"
|
||||
{
|
||||
"cze" "Cvar {1} je nyni chranen."
|
||||
}
|
||||
|
||||
"Kicked target reason"
|
||||
{
|
||||
"cze" "Vyhodil hrace {1} (Duvod: {2})"
|
||||
}
|
||||
|
||||
"Please select a map"
|
||||
{
|
||||
"cze" "Prosim zvolte mapu"
|
||||
}
|
||||
|
||||
"Choose Config"
|
||||
{
|
||||
"cze" "Vyberte konfiguraci"
|
||||
}
|
||||
|
||||
}
|
8
translations/cze/reservedslots.phrases.txt
Normal file
8
translations/cze/reservedslots.phrases.txt
Normal file
@ -0,0 +1,8 @@
|
||||
"Phrases"
|
||||
{
|
||||
"Slot reserved"
|
||||
{
|
||||
"cze" "Pokousite se pripojit na rezervovany slot"
|
||||
}
|
||||
|
||||
}
|
103
translations/cze/rockthevote.phrases.txt
Normal file
103
translations/cze/rockthevote.phrases.txt
Normal file
@ -0,0 +1,103 @@
|
||||
"Phrases"
|
||||
{
|
||||
"Rock The Vote"
|
||||
{
|
||||
"cze" "Rock the Vote:"
|
||||
}
|
||||
|
||||
"RTV Not Allowed"
|
||||
{
|
||||
"cze" "Rock the Vote zatim neni povoleno."
|
||||
}
|
||||
|
||||
"RTV Started"
|
||||
{
|
||||
"cze" "Rock the Vote jiz zacalo."
|
||||
}
|
||||
|
||||
"RTV Ended"
|
||||
{
|
||||
"cze" "RTV jiz skoncilo, nemuzete ho znovu zacit ani nominovat mapy."
|
||||
}
|
||||
|
||||
"Already Voted"
|
||||
{
|
||||
"cze" "Uz jste hlasoval pro Rock the Vote. ({1} hlasu z {2} potrebnych)"
|
||||
}
|
||||
|
||||
"Minimal Players Not Met"
|
||||
{
|
||||
"cze" "Nebyl dosahnut minimalni pocet potrebnych hracu."
|
||||
}
|
||||
|
||||
"Map Already In Vote"
|
||||
{
|
||||
"cze" "Mapa '{1}' je jiz v Rock the Vote seznamu."
|
||||
}
|
||||
|
||||
"Map Inserted"
|
||||
{
|
||||
"cze" "Mapa '{1}' byla pridana do Rock the Vote."
|
||||
}
|
||||
|
||||
"RTV Requested"
|
||||
{
|
||||
"cze" "{1} chce zacit Rock the Vote. ({2} hlasu z {3} potrebnych)"
|
||||
}
|
||||
|
||||
"RTV Vote Ready"
|
||||
{
|
||||
"cze" "Rock the Vote zacalo!"
|
||||
}
|
||||
|
||||
"Don't Change"
|
||||
{
|
||||
"cze" "Zachovat soucasnou mapu"
|
||||
}
|
||||
|
||||
"Already Nominated"
|
||||
{
|
||||
"cze" "Uz jsi nominoval mapu."
|
||||
}
|
||||
|
||||
"Max Nominations"
|
||||
{
|
||||
"cze" "Maximalni pocet nominaci byl dosahnut."
|
||||
}
|
||||
|
||||
"Selected Map"
|
||||
{
|
||||
"cze" "{1} hlasoval pro {2}"
|
||||
}
|
||||
|
||||
"No Votes"
|
||||
{
|
||||
"cze" "Nebyly prijaty zadne hlasy pro Rock the Vote, zachovana soucasna mapa."
|
||||
}
|
||||
|
||||
"Current Map Stays"
|
||||
{
|
||||
"cze" "Soucasna mapa pokracuje! Rock the Vote promluvilo!"
|
||||
}
|
||||
|
||||
"Changing Maps"
|
||||
{
|
||||
"cze" "Zmena mapy na {1}! Rock the Vote promluvilo!"
|
||||
}
|
||||
|
||||
"Map Already Nominated"
|
||||
{
|
||||
"cze" "Mapa, kterou jsi zvolil, byla jiz nominovana."
|
||||
}
|
||||
|
||||
"Map Nominated"
|
||||
{
|
||||
"cze" "{1} nominoval {2} pro Rock the Vote."
|
||||
}
|
||||
|
||||
"Nominate Title"
|
||||
{
|
||||
"cze" "Nominovat mapu:"
|
||||
}
|
||||
|
||||
}
|
8
translations/cze/sounds.phrases.txt
Normal file
8
translations/cze/sounds.phrases.txt
Normal file
@ -0,0 +1,8 @@
|
||||
"Phrases"
|
||||
{
|
||||
"Played sound to target"
|
||||
{
|
||||
"cze" "Prehral zvuk hraci {1}"
|
||||
}
|
||||
|
||||
}
|
78
translations/cze/sqladmins.phrases.txt
Normal file
78
translations/cze/sqladmins.phrases.txt
Normal file
@ -0,0 +1,78 @@
|
||||
"Phrases"
|
||||
{
|
||||
"Invalid authtype"
|
||||
{
|
||||
"cze" "Typ autorizace musi byt bud 'steam', 'name', nebo 'ip'."
|
||||
}
|
||||
|
||||
"Invalid immunity"
|
||||
{
|
||||
"cze" "Hodnota imunity musi byt kladne cele cislo."
|
||||
}
|
||||
|
||||
"SQL Admin already exists"
|
||||
{
|
||||
"cze" "Administrator se zadanymi hodnotami jiz existuje."
|
||||
}
|
||||
|
||||
"SQL Admin added"
|
||||
{
|
||||
"cze" "Administrator byl uspesne pridan do databaze."
|
||||
}
|
||||
|
||||
"SQL Admin deleted"
|
||||
{
|
||||
"cze" "Administrator byl uspesne smazan z databaze."
|
||||
}
|
||||
|
||||
"SQL Admin not found"
|
||||
{
|
||||
"cze" "Zadny administrator se zadanymi hodnotami nebyl nalezen."
|
||||
}
|
||||
|
||||
"SQL Group already exists"
|
||||
{
|
||||
"cze" "Skupina s timto nazvem jiz existuje."
|
||||
}
|
||||
|
||||
"SQL Group added"
|
||||
{
|
||||
"cze" "Skupina byla uspesne pridana do databaze."
|
||||
}
|
||||
|
||||
"SQL Group deleted"
|
||||
{
|
||||
"cze" "Skupina byla uspesne smazana z databaze."
|
||||
}
|
||||
|
||||
"SQL Group not found"
|
||||
{
|
||||
"cze" "Zadna skupina se zadanym nazvem nebyla nalezena."
|
||||
}
|
||||
|
||||
"SQL Admin groups reset"
|
||||
{
|
||||
"cze" "Administratorske skupiny byly uspesne resetovany."
|
||||
}
|
||||
|
||||
"SQL Group X not found"
|
||||
{
|
||||
"cze" "Nelze nalezt skupinu: \"{1}\""
|
||||
}
|
||||
|
||||
"SQL Group X failed to bind"
|
||||
{
|
||||
"cze" "Nelze priradit skupinu: \"{1}\""
|
||||
}
|
||||
|
||||
"Added group to user"
|
||||
{
|
||||
"cze" "Skupina byla uspesne pridana zvolenemu administratorovi."
|
||||
}
|
||||
|
||||
"Added groups to user"
|
||||
{
|
||||
"cze" "{1} skupin bylo uspesne pridano zvolenemu administratorovi."
|
||||
}
|
||||
|
||||
}
|
33
translations/da/adminhelp.phrases.txt
Normal file
33
translations/da/adminhelp.phrases.txt
Normal file
@ -0,0 +1,33 @@
|
||||
"Phrases"
|
||||
{
|
||||
"SM help commands"
|
||||
{
|
||||
"da" "SourceMod Hjælp: Kommando Information"
|
||||
}
|
||||
|
||||
"No description available"
|
||||
{
|
||||
"da" "Ingen beskrivelse tilgængelig"
|
||||
}
|
||||
|
||||
"No commands available"
|
||||
{
|
||||
"da" "Ingen kommandoer tilgængelige"
|
||||
}
|
||||
|
||||
"Type sm_help to see more"
|
||||
{
|
||||
"da" "Skriv sm_help {1} for at se flere kommandoer"
|
||||
}
|
||||
|
||||
"Entries n - m in page k"
|
||||
{
|
||||
"da" "Opslag {1} - {2} på side {3}"
|
||||
}
|
||||
|
||||
"No matching results found"
|
||||
{
|
||||
"da" "Ingen matchende resultater fundet "
|
||||
}
|
||||
|
||||
}
|
23
translations/da/adminmenu.phrases.txt
Normal file
23
translations/da/adminmenu.phrases.txt
Normal file
@ -0,0 +1,23 @@
|
||||
"Phrases"
|
||||
{
|
||||
"Admin Menu"
|
||||
{
|
||||
"da" "Administrator menu"
|
||||
}
|
||||
|
||||
"Player Commands"
|
||||
{
|
||||
"da" "Spiller kommandoer"
|
||||
}
|
||||
|
||||
"Server Commands"
|
||||
{
|
||||
"da" "Server kommandoer"
|
||||
}
|
||||
|
||||
"Voting Commands"
|
||||
{
|
||||
"da" "Afstemnings kommandoer"
|
||||
}
|
||||
|
||||
}
|
8
translations/da/antiflood.phrases.txt
Normal file
8
translations/da/antiflood.phrases.txt
Normal file
@ -0,0 +1,8 @@
|
||||
"Phrases"
|
||||
{
|
||||
"Flooding the server"
|
||||
{
|
||||
"da" "Du overbelaster serveren!"
|
||||
}
|
||||
|
||||
}
|
63
translations/da/basebans.phrases.txt
Normal file
63
translations/da/basebans.phrases.txt
Normal file
@ -0,0 +1,63 @@
|
||||
"Phrases"
|
||||
{
|
||||
"Ban player"
|
||||
{
|
||||
"da" "Bandlys spiller"
|
||||
}
|
||||
|
||||
"Ban reason"
|
||||
{
|
||||
"da" "Bandlysnings årsag"
|
||||
}
|
||||
|
||||
"Permabanned player"
|
||||
{
|
||||
"da" "Spiller \"{1}\" er blevet bandlyst permanent."
|
||||
}
|
||||
|
||||
"Permabanned player reason"
|
||||
{
|
||||
"da" " Spiller \"{1}\" er blevet bandlyst permanent (årsag: {2})."
|
||||
}
|
||||
|
||||
"Banned player"
|
||||
{
|
||||
"da" "Spiller \"{1}\" er blevet bandlyst i {2} minutter."
|
||||
}
|
||||
|
||||
"Banned player reason"
|
||||
{
|
||||
"da" " Spiller \"{1}\" er blevet bandlyst i {2} minutter (årsag: {3})."
|
||||
}
|
||||
|
||||
"Removed bans matching"
|
||||
{
|
||||
"da" "Bandlysninger som matcher filter: \"{1}\" er blevet fjernet."
|
||||
}
|
||||
|
||||
"Ban added"
|
||||
{
|
||||
"da" "Bandlysningen er blevet tilføjet. "
|
||||
}
|
||||
|
||||
"Cannot ban that IP"
|
||||
{
|
||||
"da" "Du kan ikke bandlyse den IP adresse."
|
||||
}
|
||||
|
||||
"Custom ban reason explanation"
|
||||
{
|
||||
"da" "Skriv årsag som en chat besked. Brug {1} for at afbryde dette."
|
||||
}
|
||||
|
||||
"AbortBan applied successfully"
|
||||
{
|
||||
"da" "Bandlysning afbrudt."
|
||||
}
|
||||
|
||||
"AbortBan not waiting for custom reason"
|
||||
{
|
||||
"da" "Venter ikke på at en bandlysnings årsag bliver skrevet ind, ingen bandlysning til at afbryde."
|
||||
}
|
||||
|
||||
}
|
73
translations/da/basecomm.phrases.txt
Normal file
73
translations/da/basecomm.phrases.txt
Normal file
@ -0,0 +1,73 @@
|
||||
"Phrases"
|
||||
{
|
||||
"Gag/Mute player"
|
||||
{
|
||||
"da" "Gør spiller stum/tavs"
|
||||
}
|
||||
|
||||
"Choose Type"
|
||||
{
|
||||
"da" "Vælg type"
|
||||
}
|
||||
|
||||
"Gagged target"
|
||||
{
|
||||
"da" "{1} er blevet gjort tavs."
|
||||
}
|
||||
|
||||
"Ungagged target"
|
||||
{
|
||||
"da" "{1} er ikke længere tavs."
|
||||
}
|
||||
|
||||
"Muted target"
|
||||
{
|
||||
"da" "{1} er nu stum."
|
||||
}
|
||||
|
||||
"Unmuted target"
|
||||
{
|
||||
"da" "{1} er ikke længere stum."
|
||||
}
|
||||
|
||||
"Silenced target"
|
||||
{
|
||||
"da" "{1} er blevet gjort stum og tavs."
|
||||
}
|
||||
|
||||
"Unsilenced target"
|
||||
{
|
||||
"da" "{1} kan tale igen."
|
||||
}
|
||||
|
||||
"Mute Player"
|
||||
{
|
||||
"da" "Gør spiller stum"
|
||||
}
|
||||
|
||||
"UnMute Player"
|
||||
{
|
||||
"da" "Fjern stumhed fra spiller "
|
||||
}
|
||||
|
||||
"Gag Player"
|
||||
{
|
||||
"da" "Gør spiller tavs"
|
||||
}
|
||||
|
||||
"UnGag Player"
|
||||
{
|
||||
"da" "Fjern tavshed fra spiller"
|
||||
}
|
||||
|
||||
"Silence Player"
|
||||
{
|
||||
"da" "Gør spiller stum og tavs "
|
||||
}
|
||||
|
||||
"UnSilence Player"
|
||||
{
|
||||
"da" "Fjern stumhed og tavshed fra spiller"
|
||||
}
|
||||
|
||||
}
|
108
translations/da/basetriggers.phrases.txt
Normal file
108
translations/da/basetriggers.phrases.txt
Normal file
@ -0,0 +1,108 @@
|
||||
"Phrases"
|
||||
{
|
||||
"Timeleft"
|
||||
{
|
||||
"da" "Resterende tid for denne bane:"
|
||||
}
|
||||
|
||||
"Thetime"
|
||||
{
|
||||
"da" "Den nuværende server tid er {1}"
|
||||
}
|
||||
|
||||
"Friendly Fire On"
|
||||
{
|
||||
"da" "Friendly Fire er slået til."
|
||||
}
|
||||
|
||||
"Friendly Fire Off"
|
||||
{
|
||||
"da" "Friendly Fire er slået fra."
|
||||
}
|
||||
|
||||
"Current Map"
|
||||
{
|
||||
"da" "Den nuværende bane er {1}."
|
||||
}
|
||||
|
||||
"LastRound"
|
||||
{
|
||||
"da" "Dette er den sidste runde!!"
|
||||
}
|
||||
|
||||
"NoTimelimit"
|
||||
{
|
||||
"da" "Ingen tidsbegrænsninger for banen"
|
||||
}
|
||||
|
||||
"Next Map"
|
||||
{
|
||||
"da" "Næste bane: {1} "
|
||||
}
|
||||
|
||||
"Pending Vote"
|
||||
{
|
||||
"da" "Afventende Afstemning"
|
||||
}
|
||||
|
||||
"WinLimitAppend"
|
||||
{
|
||||
"da" ", eller skifte bane efter et hold vinder en runde"
|
||||
}
|
||||
|
||||
"WinLimit"
|
||||
{
|
||||
"da" "Banen vil skifte efter et hold vinder en runde"
|
||||
}
|
||||
|
||||
"MaxRoundsAppend"
|
||||
{
|
||||
"da" ", eller skifte bane efter en runde mere"
|
||||
}
|
||||
|
||||
"MaxRounds"
|
||||
{
|
||||
"da" "Banen vil skifte efter en runde mere"
|
||||
}
|
||||
|
||||
"FragLimitAppend"
|
||||
{
|
||||
"da" ", eller skifte map efter en spiller når et frag"
|
||||
}
|
||||
|
||||
"FragLimit"
|
||||
{
|
||||
"da" "Banen vil skifte efter en spiller når et frag"
|
||||
}
|
||||
|
||||
"WinLimitAppendPlural"
|
||||
{
|
||||
"da" ", eller skifte bane efter et hold vinder {1} runder"
|
||||
}
|
||||
|
||||
"WinLimitPlural"
|
||||
{
|
||||
"da" "Banen vil skifte efter et hold vinder {1} runder"
|
||||
}
|
||||
|
||||
"MaxRoundsAppendPlural"
|
||||
{
|
||||
"da" ", eller skifte bane efter {1} runder mere"
|
||||
}
|
||||
|
||||
"MaxRoundsPlural"
|
||||
{
|
||||
"da" "Bane vil skifte efter {1} runder mere."
|
||||
}
|
||||
|
||||
"FragLimitAppendPlural"
|
||||
{
|
||||
"da" ", eller skifte bane efter en spiller når {1} frags"
|
||||
}
|
||||
|
||||
"FragLimitPlural"
|
||||
{
|
||||
"da" "Banen vil skifte, efter en spiller når {1} frags"
|
||||
}
|
||||
|
||||
}
|
93
translations/da/basevotes.phrases.txt
Normal file
93
translations/da/basevotes.phrases.txt
Normal file
@ -0,0 +1,93 @@
|
||||
"Phrases"
|
||||
{
|
||||
"Initiate Vote"
|
||||
{
|
||||
"da" "Afstemning startet: {1}"
|
||||
}
|
||||
|
||||
"Initiated Vote Map"
|
||||
{
|
||||
"da" "Afsteming om bane-skift startet."
|
||||
}
|
||||
|
||||
"Initiated Vote Kick"
|
||||
{
|
||||
"da" "Afstemning om udsmidning mod {1} startet."
|
||||
}
|
||||
|
||||
"Initiated Vote Ban"
|
||||
{
|
||||
"da" "Afstemning om bandlysning mod {1} startet."
|
||||
}
|
||||
|
||||
"Map Vote"
|
||||
{
|
||||
"da" "Bane afstemning: {1}"
|
||||
}
|
||||
|
||||
"Change Map To"
|
||||
{
|
||||
"da" "Skift bane til {1}?"
|
||||
}
|
||||
|
||||
"Votekick Player"
|
||||
{
|
||||
"da" "Smid {1} ud?"
|
||||
}
|
||||
|
||||
"Voteban Player"
|
||||
{
|
||||
"da" "Bandlys {1}?"
|
||||
}
|
||||
|
||||
"Vote Successful"
|
||||
{
|
||||
"da" "Afstemning er succesfuld. (Modtog {1}%% af {2} stemmer)"
|
||||
}
|
||||
|
||||
"Vote Failed"
|
||||
{
|
||||
"da" "Afstemning slog fejl. {1}%% stemmer er påkrævet. (Modtog {2}%% af {3} stemmer)"
|
||||
}
|
||||
|
||||
"Vote End"
|
||||
{
|
||||
"da" "Svaret på {1} er: {2}"
|
||||
}
|
||||
|
||||
"Kick vote"
|
||||
{
|
||||
"da" "Stem om udsmidning"
|
||||
}
|
||||
|
||||
"Ban vote"
|
||||
{
|
||||
"da" "Stem om bandlysning"
|
||||
}
|
||||
|
||||
"Map vote"
|
||||
{
|
||||
"da" "Stem om bane skift"
|
||||
}
|
||||
|
||||
"Confirm Vote"
|
||||
{
|
||||
"da" "Bekræft stemme"
|
||||
}
|
||||
|
||||
"Map Vote In Use"
|
||||
{
|
||||
"da" "Map afstemningen er allerede i brug."
|
||||
}
|
||||
|
||||
"Please select a map"
|
||||
{
|
||||
"da" "Vælg venligst en bane"
|
||||
}
|
||||
|
||||
"Start the Vote"
|
||||
{
|
||||
"da" "Start afstemningen"
|
||||
}
|
||||
|
||||
}
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user