Add tag to catch link-dead puppet. Resolve #2829, #2737

This commit is contained in:
Griatch 2022-10-29 20:54:57 +02:00
parent 7c44294628
commit 3fc913e3c6
16 changed files with 741 additions and 643 deletions

View file

@ -364,6 +364,8 @@ class DefaultAccount(AccountDB, metaclass=TypeclassBase):
# do the puppeting
obj.at_pre_puppet(self, session=session)
# used to track in case of crash so we can clean up later
obj.tags.add("puppeted", category="account")
# do the connection
obj.sessions.add(session)
@ -398,6 +400,7 @@ class DefaultAccount(AccountDB, metaclass=TypeclassBase):
if not obj.sessions.count():
del obj.account
obj.at_post_unpuppet(self, session=session)
obj.tags.remove("puppeted", category="account")
SIGNAL_OBJECT_POST_UNPUPPET.send(sender=obj, session=session, account=self)
# Just to be sure we're always clear.
session.puppet = None

View file

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-10-02 09:27+0000\n"
"POT-Creation-Date: 2022-10-29 18:53+0000\n"
"PO-Revision-Date: 2019-08-16 16:14-0300\n"
"Last-Translator: \n"
"Language-Team: \n"
@ -29,64 +29,64 @@ msgid ""
"You cannot control any more puppets (max {_MAX_NR_SIMULTANEOUS_PUPPETS})"
msgstr ""
#: accounts/accounts.py:552
#: accounts/accounts.py:555
msgid "Too many login failures; please try again in a few minutes."
msgstr ""
#: accounts/accounts.py:565 accounts/accounts.py:829
#: accounts/accounts.py:568 accounts/accounts.py:832
msgid ""
"|rYou have been banned and cannot continue from here.\n"
"If you feel this ban is in error, please email an admin.|x"
msgstr ""
#: accounts/accounts.py:577
#: accounts/accounts.py:580
msgid "Username and/or password is incorrect."
msgstr ""
#: accounts/accounts.py:584
#: accounts/accounts.py:587
msgid "Too many authentication failures."
msgstr ""
#: accounts/accounts.py:800
#: accounts/accounts.py:803
msgid ""
"You are creating too many accounts. Please log into an existing account."
msgstr ""
#: accounts/accounts.py:846
#: accounts/accounts.py:849
msgid ""
"There was an error creating the Account. If this problem persists, contact "
"an admin."
msgstr ""
#: accounts/accounts.py:882 accounts/accounts.py:1798
#: accounts/accounts.py:885 accounts/accounts.py:1801
msgid "An error occurred. Please e-mail an admin if the problem persists."
msgstr ""
#: accounts/accounts.py:915
#: accounts/accounts.py:918
msgid "Account being deleted."
msgstr "Cuenta siendo eliminada."
#: accounts/accounts.py:1472 accounts/accounts.py:1816
#: accounts/accounts.py:1475 accounts/accounts.py:1819
#, python-brace-format
msgid "|G{key} connected|n"
msgstr ""
#: accounts/accounts.py:1478
#: accounts/accounts.py:1481
#, fuzzy
#| msgid "The destination doesn't exist."
msgid "The Character does not exist."
msgstr "El destino no existe."
#: accounts/accounts.py:1517
#: accounts/accounts.py:1520
#, python-brace-format
msgid "|R{key} disconnected{reason}|n"
msgstr ""
#: accounts/accounts.py:1751
#: accounts/accounts.py:1754
msgid "Guest accounts are not enabled on this server."
msgstr ""
#: accounts/accounts.py:1761
#: accounts/accounts.py:1764
msgid "All guest accounts are in use. Please try again later."
msgstr ""
@ -323,96 +323,96 @@ msgstr "Bloqueo: '{lockdef}' tiene paréntesis que no se relacionan."
msgid "Lock: '{lockdef}' has no valid lock functions."
msgstr "Bloqueo: '{lockdef}' no tiene funciones de bloqueo válidas."
#: objects/objects.py:855
#: objects/objects.py:856
#, fuzzy, python-brace-format
#| msgid "Couldn't perform move ('%s'). Contact an admin."
msgid "Couldn't perform move ({err}). Contact an admin."
msgstr "No se puede realizar el movimiento ('%s'). Contacta a un admin."
#: objects/objects.py:865
#: objects/objects.py:866
msgid "The destination doesn't exist."
msgstr "El destino no existe."
#: objects/objects.py:977
#: objects/objects.py:978
#, fuzzy, python-brace-format
#| msgid "Could not find default home '(#%d)'."
msgid "Could not find default home '(#{dbid})'."
msgstr "No se puede encontrar el hogar por defecto '(#%d)'."
#: objects/objects.py:991
#: objects/objects.py:992
msgid "Something went wrong! You are dumped into nowhere. Contact an admin."
msgstr "¡Algo salió mal! Estás en la nada. Contacta a un admin."
#: objects/objects.py:1144
#: objects/objects.py:1145
#, fuzzy, python-brace-format
#| msgid "Your character %s has been destroyed."
msgid "Your character {key} has been destroyed."
msgstr "Tu personaje %s ha sido destruído."
#: objects/objects.py:1852
#: objects/objects.py:1853
#, python-brace-format
msgid "You now have {name} in your possession."
msgstr ""
#: objects/objects.py:1862
#: objects/objects.py:1863
#, python-brace-format
msgid "{object} arrives to {destination} from {origin}."
msgstr ""
#: objects/objects.py:1864
#: objects/objects.py:1865
#, python-brace-format
msgid "{object} arrives to {destination}."
msgstr ""
#: objects/objects.py:2529
#: objects/objects.py:2530
msgid "Invalid character name."
msgstr ""
#: objects/objects.py:2548
#: objects/objects.py:2549
msgid "There are too many characters associated with this account."
msgstr ""
#: objects/objects.py:2574
#: objects/objects.py:2575
#, fuzzy
#| msgid "This is User #1."
msgid "This is a character."
msgstr "Este es el Usuario #1."
#: objects/objects.py:2663
#: objects/objects.py:2664
#, python-brace-format
msgid "|r{obj} has no location and no home is set.|n"
msgstr ""
#: objects/objects.py:2681
#: objects/objects.py:2682
#, python-brace-format
msgid ""
"\n"
"You become |c{name}|n.\n"
msgstr ""
#: objects/objects.py:2686
#: objects/objects.py:2687
#, python-brace-format
msgid "{name} has entered the game."
msgstr ""
#: objects/objects.py:2712
#: objects/objects.py:2716
#, python-brace-format
msgid "{name} has left the game."
msgid "{name} has left the game{reason}."
msgstr ""
#: objects/objects.py:2831
#: objects/objects.py:2838
#, fuzzy
#| msgid "This is User #1."
msgid "This is a room."
msgstr "Este es el Usuario #1."
#: objects/objects.py:3038
#: objects/objects.py:3045
#, fuzzy
#| msgid "This is User #1."
msgid "This is an exit."
msgstr "Este es el Usuario #1."
#: objects/objects.py:3135
#: objects/objects.py:3142
msgid "You cannot go there."
msgstr ""
@ -424,83 +424,83 @@ msgstr ""
msgid "Warning"
msgstr ""
#: prototypes/prototypes.py:390
#: prototypes/prototypes.py:389
msgid "Prototype requires a prototype_key"
msgstr ""
#: prototypes/prototypes.py:398 prototypes/prototypes.py:467
#: prototypes/prototypes.py:1087
#: prototypes/prototypes.py:397 prototypes/prototypes.py:466
#: prototypes/prototypes.py:1092
#, python-brace-format
msgid "{protkey} is a read-only prototype (defined as code in {module})."
msgstr ""
#: prototypes/prototypes.py:400 prototypes/prototypes.py:469
#: prototypes/prototypes.py:1089
#: prototypes/prototypes.py:399 prototypes/prototypes.py:468
#: prototypes/prototypes.py:1094
#, python-brace-format
msgid "{protkey} is a read-only prototype (passed directly as a dict)."
msgstr ""
#: prototypes/prototypes.py:476
#: prototypes/prototypes.py:475
#, python-brace-format
msgid "Prototype {prototype_key} was not found."
msgstr ""
#: prototypes/prototypes.py:484
#: prototypes/prototypes.py:483
#, python-brace-format
msgid ""
"{caller} needs explicit 'edit' permissions to delete prototype "
"{prototype_key}."
msgstr ""
#: prototypes/prototypes.py:606
#: prototypes/prototypes.py:605
#, python-brace-format
msgid "Found {num} matching prototypes among {module_prototypes}."
msgstr ""
#: prototypes/prototypes.py:766
#: prototypes/prototypes.py:765
msgid "No prototypes found."
msgstr ""
#: prototypes/prototypes.py:817
#: prototypes/prototypes.py:816
msgid "Prototype lacks a 'prototype_key'."
msgstr ""
#: prototypes/prototypes.py:826
#: prototypes/prototypes.py:825
#, python-brace-format
msgid "Prototype {protkey} requires `typeclass` or 'prototype_parent'."
msgstr ""
#: prototypes/prototypes.py:833
#: prototypes/prototypes.py:832
#, python-brace-format
msgid ""
"Prototype {protkey} can only be used as a mixin since it lacks 'typeclass' "
"or 'prototype_parent' keys."
msgstr ""
#: prototypes/prototypes.py:844
#: prototypes/prototypes.py:843
#, python-brace-format
msgid ""
"{err}: Prototype {protkey} is based on typeclass {typeclass}, which could "
"not be imported!"
msgstr ""
#: prototypes/prototypes.py:863
#: prototypes/prototypes.py:862
#, python-brace-format
msgid "Prototype {protkey} tries to parent itself."
msgstr ""
#: prototypes/prototypes.py:869
#: prototypes/prototypes.py:868
#, python-brace-format
msgid ""
"Prototype {protkey}'s `prototype_parent` (named '{parent}') was not found."
msgstr ""
#: prototypes/prototypes.py:877
#: prototypes/prototypes.py:875
#, python-brace-format
msgid "{protkey} has infinite nesting of prototypes."
msgstr ""
#: prototypes/prototypes.py:902
#: prototypes/prototypes.py:900
#, python-brace-format
msgid ""
"Prototype {protkey} has no `typeclass` defined anywhere in its parent\n"
@ -508,7 +508,7 @@ msgid ""
"with a typeclass."
msgstr ""
#: prototypes/spawner.py:497
#: prototypes/spawner.py:495
#, python-brace-format
msgid ""
"Diff contains non-dicts that are not on the form (old, new, action_to_take): "
@ -582,10 +582,14 @@ msgid ""
"seconds ..."
msgstr ""
#: server/server.py:157
#: server/server.py:156
msgid "idle timeout exceeded"
msgstr "tiempo sin actividad excedido"
#: server/server.py:177
msgid " (connection lost)"
msgstr ""
#: server/sessionhandler.py:41
msgid "Your client sent an incorrect UTF-8 sequence."
msgstr ""
@ -1038,27 +1042,27 @@ msgstr "Hubo varias coincidencias."
msgid "Please be more specific."
msgstr ""
#: utils/utils.py:2121
#: utils/utils.py:2127
#, python-brace-format
msgid ""
"{obj}.{handlername} is a handler and can't be set directly. To add values, "
"use `{obj}.{handlername}.add()` instead."
msgstr ""
#: utils/utils.py:2131
#: utils/utils.py:2137
#, python-brace-format
msgid ""
"{obj}.{handlername} is a handler and can't be deleted directly. To remove "
"values, use `{obj}.{handlername}.remove()` instead."
msgstr ""
#: utils/utils.py:2272
#: utils/utils.py:2278
#, fuzzy, python-brace-format
#| msgid "Could not find '%s'."
msgid "Could not find '{query}'."
msgstr "No se pudo encontrar '%s'."
#: utils/utils.py:2279
#: utils/utils.py:2285
#, fuzzy, python-brace-format
#| msgid "More than one match for '%s' (please narrow target):\n"
msgid "More than one match for '{query}' (please narrow target):\n"

View file

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-10-02 09:27+0000\n"
"POT-Creation-Date: 2022-10-29 18:53+0000\n"
"PO-Revision-Date: 2022-03-20 19:55+0100\n"
"Last-Translator: Christophe Petry <toktoktheeo@outlook.com>\n"
"Language-Team: \n"
@ -29,13 +29,13 @@ msgid ""
"You cannot control any more puppets (max {_MAX_NR_SIMULTANEOUS_PUPPETS})"
msgstr ""
#: accounts/accounts.py:552
#: accounts/accounts.py:555
msgid "Too many login failures; please try again in a few minutes."
msgstr ""
"Trop d'échecs de tentatives de connexion; veuillez réessayer dans quelques "
"minutes."
#: accounts/accounts.py:565 accounts/accounts.py:829
#: accounts/accounts.py:568 accounts/accounts.py:832
msgid ""
"|rYou have been banned and cannot continue from here.\n"
"If you feel this ban is in error, please email an admin.|x"
@ -44,21 +44,21 @@ msgstr ""
"Si vous pensez que c'est une erreur, veuillez contacter un admin par e-mail.|"
"x"
#: accounts/accounts.py:577
#: accounts/accounts.py:580
msgid "Username and/or password is incorrect."
msgstr "Nom d'utilisateur et/ou mot de passe incorrect(s)."
#: accounts/accounts.py:584
#: accounts/accounts.py:587
msgid "Too many authentication failures."
msgstr "Trop d'échecs de tentatives de connexion."
#: accounts/accounts.py:800
#: accounts/accounts.py:803
msgid ""
"You are creating too many accounts. Please log into an existing account."
msgstr ""
"Vous créez trop de comptes. Veuillez vous connecter à un compte existant."
#: accounts/accounts.py:846
#: accounts/accounts.py:849
msgid ""
"There was an error creating the Account. If this problem persists, contact "
"an admin."
@ -66,36 +66,36 @@ msgstr ""
"Il y a eu une erreur lors de la création du compte. Si le problème persiste "
"veuillez contacter un admin."
#: accounts/accounts.py:882 accounts/accounts.py:1798
#: accounts/accounts.py:885 accounts/accounts.py:1801
msgid "An error occurred. Please e-mail an admin if the problem persists."
msgstr ""
"Une erreur s'est produite. Veuillez contacter un admin par e-mail si le "
"problème persiste."
#: accounts/accounts.py:915
#: accounts/accounts.py:918
#, fuzzy
msgid "Account being deleted."
msgstr "Suppression du compte."
#: accounts/accounts.py:1472 accounts/accounts.py:1816
#: accounts/accounts.py:1475 accounts/accounts.py:1819
#, python-brace-format
msgid "|G{key} connected|n"
msgstr "|G{key} s'est connecté(e)|n"
#: accounts/accounts.py:1478
#: accounts/accounts.py:1481
msgid "The Character does not exist."
msgstr "Ce personnage n'existe pas."
#: accounts/accounts.py:1517
#: accounts/accounts.py:1520
#, python-brace-format
msgid "|R{key} disconnected{reason}|n"
msgstr "|R{key} s'est déconnecté(e){reason}|n"
#: accounts/accounts.py:1751
#: accounts/accounts.py:1754
msgid "Guest accounts are not enabled on this server."
msgstr "Les comptes visiteurs ne sont pas actifs sur ce serveur."
#: accounts/accounts.py:1761
#: accounts/accounts.py:1764
msgid "All guest accounts are in use. Please try again later."
msgstr ""
"Tous les comptes visiteurs sont utilisés. Veuillez réessayer plus tard."
@ -348,65 +348,65 @@ msgstr "Verrou: '{lockdef}' comporte des parenthèses non concordantes."
msgid "Lock: '{lockdef}' has no valid lock functions."
msgstr "Verrou: '{lockdef}' ne possède pas de fonction de verrouillage valide."
#: objects/objects.py:855
#: objects/objects.py:856
#, python-brace-format
msgid "Couldn't perform move ({err}). Contact an admin."
msgstr ""
"Impossible d'effectuer le déplacement ({err}). Veuillez contacter un admin."
#: objects/objects.py:865
#: objects/objects.py:866
msgid "The destination doesn't exist."
msgstr "La destination n'existe pas."
#: objects/objects.py:977
#: objects/objects.py:978
#, python-brace-format
msgid "Could not find default home '(#{dbid})'."
msgstr "Impossible de trouver le foyer par défaut '(#{dbid})'."
#: objects/objects.py:991
#: objects/objects.py:992
msgid "Something went wrong! You are dumped into nowhere. Contact an admin."
msgstr ""
"Quelque chose a mal tourné ! Vous vous trouvez au milieu de nulle part. "
"Veuillez contacter un admin."
#: objects/objects.py:1144
#: objects/objects.py:1145
#, python-brace-format
msgid "Your character {key} has been destroyed."
msgstr "Votre personnage {key} a été détruit."
#: objects/objects.py:1852
#: objects/objects.py:1853
#, python-brace-format
msgid "You now have {name} in your possession."
msgstr "Vous avez maintenant {name} en votre possession."
#: objects/objects.py:1862
#: objects/objects.py:1863
#, python-brace-format
msgid "{object} arrives to {destination} from {origin}."
msgstr ""
#: objects/objects.py:1864
#: objects/objects.py:1865
#, python-brace-format
msgid "{object} arrives to {destination}."
msgstr ""
#: objects/objects.py:2529
#: objects/objects.py:2530
msgid "Invalid character name."
msgstr "Nom de personnage invalide."
#: objects/objects.py:2548
#: objects/objects.py:2549
msgid "There are too many characters associated with this account."
msgstr "Il y a trop de personnages associés à ce compte."
#: objects/objects.py:2574
#: objects/objects.py:2575
msgid "This is a character."
msgstr "C'est un personnage."
#: objects/objects.py:2663
#: objects/objects.py:2664
#, python-brace-format
msgid "|r{obj} has no location and no home is set.|n"
msgstr "|r{obj} n'a pas de localisation et aucun foyer n'est déterminé.|n"
#: objects/objects.py:2681
#: objects/objects.py:2682
#, python-brace-format
msgid ""
"\n"
@ -415,25 +415,26 @@ msgstr ""
"\n"
"Vous contrôlez maintenant |c{name}|n.\n"
#: objects/objects.py:2686
#: objects/objects.py:2687
#, python-brace-format
msgid "{name} has entered the game."
msgstr "{name} est entré(e) dans le jeu."
#: objects/objects.py:2712
#, python-brace-format
msgid "{name} has left the game."
#: objects/objects.py:2716
#, fuzzy, python-brace-format
#| msgid "{name} has left the game."
msgid "{name} has left the game{reason}."
msgstr "{name} est sorti(e) du jeu."
#: objects/objects.py:2831
#: objects/objects.py:2838
msgid "This is a room."
msgstr "C'est une pièce."
#: objects/objects.py:3038
#: objects/objects.py:3045
msgid "This is an exit."
msgstr "C'est une sortie."
#: objects/objects.py:3135
#: objects/objects.py:3142
msgid "You cannot go there."
msgstr "Vous ne pouvez pas aller là."
@ -445,32 +446,32 @@ msgstr "Erreur"
msgid "Warning"
msgstr "Avertissement"
#: prototypes/prototypes.py:390
#: prototypes/prototypes.py:389
msgid "Prototype requires a prototype_key"
msgstr "Le prototype requiert prototype_key"
#: prototypes/prototypes.py:398 prototypes/prototypes.py:467
#: prototypes/prototypes.py:1087
#: prototypes/prototypes.py:397 prototypes/prototypes.py:466
#: prototypes/prototypes.py:1092
#, python-brace-format
msgid "{protkey} is a read-only prototype (defined as code in {module})."
msgstr ""
"{protkey} est un prototype en lecture seule (définit comme code dans "
"{module})."
#: prototypes/prototypes.py:400 prototypes/prototypes.py:469
#: prototypes/prototypes.py:1089
#: prototypes/prototypes.py:399 prototypes/prototypes.py:468
#: prototypes/prototypes.py:1094
#, python-brace-format
msgid "{protkey} is a read-only prototype (passed directly as a dict)."
msgstr ""
"{protkey} est un prototype en lecture seule (passé directement comme un "
"dictionnaire)."
#: prototypes/prototypes.py:476
#: prototypes/prototypes.py:475
#, python-brace-format
msgid "Prototype {prototype_key} was not found."
msgstr "Le prototype {prototype_key} n'a pas été trouvé."
#: prototypes/prototypes.py:484
#: prototypes/prototypes.py:483
#, python-brace-format
msgid ""
"{caller} needs explicit 'edit' permissions to delete prototype "
@ -479,25 +480,25 @@ msgstr ""
"{caller} a besoin de la permission explicite 'edit' pour supprimer le "
"prototype {prototype_key}."
#: prototypes/prototypes.py:606
#: prototypes/prototypes.py:605
#, python-brace-format
msgid "Found {num} matching prototypes among {module_prototypes}."
msgstr "Trouvé {num} prototypes correspondants parmi {module_prototypes}."
#: prototypes/prototypes.py:766
#: prototypes/prototypes.py:765
msgid "No prototypes found."
msgstr "Aucun prototype trouvé."
#: prototypes/prototypes.py:817
#: prototypes/prototypes.py:816
msgid "Prototype lacks a 'prototype_key'."
msgstr "Le prototype n'a pas de 'prototype_key'."
#: prototypes/prototypes.py:826
#: prototypes/prototypes.py:825
#, python-brace-format
msgid "Prototype {protkey} requires `typeclass` or 'prototype_parent'."
msgstr "Le prototype {protkey} requiert `typeclass` ou 'prototype_parent'."
#: prototypes/prototypes.py:833
#: prototypes/prototypes.py:832
#, python-brace-format
msgid ""
"Prototype {protkey} can only be used as a mixin since it lacks 'typeclass' "
@ -506,7 +507,7 @@ msgstr ""
"Le prototype {protkey} ne peut être utilisé qu'en tant que mixin car il n'a "
"pas de clé 'typeclass' ou 'prototype_parent'."
#: prototypes/prototypes.py:844
#: prototypes/prototypes.py:843
#, python-brace-format
msgid ""
"{err}: Prototype {protkey} is based on typeclass {typeclass}, which could "
@ -515,12 +516,12 @@ msgstr ""
"{err} : Le prototype {protkey} est basé sur la typeclass {typeclass}, qui "
"n'a pas pu être importée !"
#: prototypes/prototypes.py:863
#: prototypes/prototypes.py:862
#, python-brace-format
msgid "Prototype {protkey} tries to parent itself."
msgstr "Le prototype {protkey} essaie d'être son propre parent."
#: prototypes/prototypes.py:869
#: prototypes/prototypes.py:868
#, python-brace-format
msgid ""
"Prototype {protkey}'s `prototype_parent` (named '{parent}') was not found."
@ -528,12 +529,12 @@ msgstr ""
"Le `prototype_parent` du prototype {protkey} (nommé '{parent}') n'a pas été "
"trouvé."
#: prototypes/prototypes.py:877
#: prototypes/prototypes.py:875
#, python-brace-format
msgid "{protkey} has infinite nesting of prototypes."
msgstr "{protkey} a une imbrication infinie de prototypes."
#: prototypes/prototypes.py:902
#: prototypes/prototypes.py:900
#, python-brace-format
msgid ""
"Prototype {protkey} has no `typeclass` defined anywhere in its parent\n"
@ -545,7 +546,7 @@ msgstr ""
"Ajoutez une `typeclass`, ou un `prototype_parent` pointant vers un prototype "
"avec une typeclass."
#: prototypes/spawner.py:497
#: prototypes/spawner.py:495
#, python-brace-format
msgid ""
"Diff contains non-dicts that are not on the form (old, new, action_to_take): "
@ -606,10 +607,14 @@ msgstr ""
"La protection DoS de {servername} est active. Vous êtes en attente de "
"connexion dans {num} secondes ..."
#: server/server.py:157
#: server/server.py:156
msgid "idle timeout exceeded"
msgstr "délai d'inactivité dépassé"
#: server/server.py:177
msgid " (connection lost)"
msgstr ""
#: server/sessionhandler.py:41
msgid "Your client sent an incorrect UTF-8 sequence."
msgstr "Votre client a envoyé une séquence UTF-8 incorrecte."
@ -1059,7 +1064,7 @@ msgstr "Plusieurs correspondances possibles:"
msgid "Please be more specific."
msgstr "Veuillez être plus précis."
#: utils/utils.py:2121
#: utils/utils.py:2127
#, python-brace-format
msgid ""
"{obj}.{handlername} is a handler and can't be set directly. To add values, "
@ -1068,7 +1073,7 @@ msgstr ""
"{obj}.{handlername} est un handler et ne peut pas être défini directement. "
"Pour ajouter des valeurs, utilisez `{obj}.{handlername}.add()` à la place."
#: utils/utils.py:2131
#: utils/utils.py:2137
#, python-brace-format
msgid ""
"{obj}.{handlername} is a handler and can't be deleted directly. To remove "
@ -1077,12 +1082,12 @@ msgstr ""
"{obj}.{handlername} est un handler et ne peut pas être supprimé directement. "
"Pour supprimer des valeurs, utilisez plutôt `{obj}.{handlername}.remove()` ."
#: utils/utils.py:2272
#: utils/utils.py:2278
#, python-brace-format
msgid "Could not find '{query}'."
msgstr "Impossible de trouver '{query}'."
#: utils/utils.py:2279
#: utils/utils.py:2285
#, python-brace-format
msgid "More than one match for '{query}' (please narrow target):\n"
msgstr ""

View file

@ -9,7 +9,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Evennia\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-10-02 09:27+0000\n"
"POT-Creation-Date: 2022-10-29 18:53+0000\n"
"PO-Revision-Date: 2021-02-16 11:55+0100\n"
"Last-Translator: Roberto PM <rpolverelli [at] gmail>\n"
"Language-Team: Tristano Ajmone <tajmone@gmail.com>\n"
@ -32,11 +32,11 @@ msgid ""
"You cannot control any more puppets (max {_MAX_NR_SIMULTANEOUS_PUPPETS})"
msgstr ""
#: accounts/accounts.py:552
#: accounts/accounts.py:555
msgid "Too many login failures; please try again in a few minutes."
msgstr "Troppi tentativi di login; per favore riprova tra qualche minuto."
#: accounts/accounts.py:565 accounts/accounts.py:829
#: accounts/accounts.py:568 accounts/accounts.py:832
msgid ""
"|rYou have been banned and cannot continue from here.\n"
"If you feel this ban is in error, please email an admin.|x"
@ -45,22 +45,22 @@ msgstr ""
"Se ritieni ciò sia avvenuto per errore, per favore contatta un "
"amministratore.|x"
#: accounts/accounts.py:577
#: accounts/accounts.py:580
msgid "Username and/or password is incorrect."
msgstr "L'username e/o la password sono errati."
#: accounts/accounts.py:584
#: accounts/accounts.py:587
msgid "Too many authentication failures."
msgstr ""
#: accounts/accounts.py:800
#: accounts/accounts.py:803
msgid ""
"You are creating too many accounts. Please log into an existing account."
msgstr ""
"Stai creando troppi account. Per favore effettua il login con un account "
"esistente."
#: accounts/accounts.py:846
#: accounts/accounts.py:849
msgid ""
"There was an error creating the Account. If this problem persists, contact "
"an admin."
@ -68,35 +68,35 @@ msgstr ""
"Si è verificato un errore durante la creazione dell'Account. Se questo "
"problema persiste, contatta un amministratore."
#: accounts/accounts.py:882 accounts/accounts.py:1798
#: accounts/accounts.py:885 accounts/accounts.py:1801
msgid "An error occurred. Please e-mail an admin if the problem persists."
msgstr ""
"Si è verificato un errore. Per favore contatta un amministratore se il "
"problema persiste."
#: accounts/accounts.py:915
#: accounts/accounts.py:918
msgid "Account being deleted."
msgstr "Cancellazione account in corso."
#: accounts/accounts.py:1472 accounts/accounts.py:1816
#: accounts/accounts.py:1475 accounts/accounts.py:1819
#, python-brace-format
msgid "|G{key} connected|n"
msgstr "|G{key} si è connesso|n"
#: accounts/accounts.py:1478
#: accounts/accounts.py:1481
msgid "The Character does not exist."
msgstr "Personaggio inesistente."
#: accounts/accounts.py:1517
#: accounts/accounts.py:1520
#, python-brace-format
msgid "|R{key} disconnected{reason}|n"
msgstr "|R{key} si è disconnesso{reason}|n"
#: accounts/accounts.py:1751
#: accounts/accounts.py:1754
msgid "Guest accounts are not enabled on this server."
msgstr "Su questo server non è abilitato alcun account ospite"
#: accounts/accounts.py:1761
#: accounts/accounts.py:1764
msgid "All guest accounts are in use. Please try again later."
msgstr ""
"Tutti gli account ospite stanno venendo utilizzati. Per favore riprova più "
@ -330,98 +330,98 @@ msgstr "Lock: '{lockdef}' presenta irregolarità nell'uso delle parentesi."
msgid "Lock: '{lockdef}' has no valid lock functions."
msgstr "Lock: '{lockdef}' non contiene funzioni di lock valide."
#: objects/objects.py:855
#: objects/objects.py:856
#, fuzzy, python-brace-format
#| msgid "Couldn't perform move ('%s'). Contact an admin."
msgid "Couldn't perform move ({err}). Contact an admin."
msgstr "Spostamento non riuscito ('%s'). Contatta un amministratore."
#: objects/objects.py:865
#: objects/objects.py:866
msgid "The destination doesn't exist."
msgstr "Destinazione inesistente."
#: objects/objects.py:977
#: objects/objects.py:978
#, fuzzy, python-brace-format
#| msgid "Could not find default home '(#%d)'."
msgid "Could not find default home '(#{dbid})'."
msgstr "Non è stata trovata la home predefinita '(#%d)'."
#: objects/objects.py:991
#: objects/objects.py:992
msgid "Something went wrong! You are dumped into nowhere. Contact an admin."
msgstr ""
"Qualcosa è andato storto! Sei stato gettato nel nulla. Contatta un "
"amministratore."
#: objects/objects.py:1144
#: objects/objects.py:1145
#, python-brace-format
msgid "Your character {key} has been destroyed."
msgstr "Il tuo personaggio {key} è stato distrutto."
#: objects/objects.py:1852
#: objects/objects.py:1853
#, python-brace-format
msgid "You now have {name} in your possession."
msgstr ""
#: objects/objects.py:1862
#: objects/objects.py:1863
#, python-brace-format
msgid "{object} arrives to {destination} from {origin}."
msgstr ""
#: objects/objects.py:1864
#: objects/objects.py:1865
#, python-brace-format
msgid "{object} arrives to {destination}."
msgstr ""
#: objects/objects.py:2529
#: objects/objects.py:2530
msgid "Invalid character name."
msgstr ""
#: objects/objects.py:2548
#: objects/objects.py:2549
msgid "There are too many characters associated with this account."
msgstr ""
# EN: Not clear if 'storage' refers to disk- or database-storage, or if it relates to game-world objects/containers.
# IT: Non è chiaro se se si riferisce a 'storage' nel sendo di dati su disco (o database) oppure a contenitori quali oggetti del MUD!
#: objects/objects.py:2574
#: objects/objects.py:2575
#, fuzzy
msgid "This is a character."
msgstr "Questo è un contenitore per immagazzinamento generico."
#: objects/objects.py:2663
#: objects/objects.py:2664
#, python-brace-format
msgid "|r{obj} has no location and no home is set.|n"
msgstr ""
#: objects/objects.py:2681
#: objects/objects.py:2682
#, python-brace-format
msgid ""
"\n"
"You become |c{name}|n.\n"
msgstr ""
#: objects/objects.py:2686
#: objects/objects.py:2687
#, python-brace-format
msgid "{name} has entered the game."
msgstr ""
#: objects/objects.py:2712
#: objects/objects.py:2716
#, python-brace-format
msgid "{name} has left the game."
msgid "{name} has left the game{reason}."
msgstr ""
#: objects/objects.py:2831
#: objects/objects.py:2838
#, fuzzy
#| msgid "This is User #1."
msgid "This is a room."
msgstr "Questo è l'Utente #1."
#: objects/objects.py:3038
#: objects/objects.py:3045
#, fuzzy
#| msgid "This is User #1."
msgid "This is an exit."
msgstr "Questo è l'Utente #1."
#: objects/objects.py:3135
#: objects/objects.py:3142
msgid "You cannot go there."
msgstr ""
@ -433,83 +433,83 @@ msgstr ""
msgid "Warning"
msgstr ""
#: prototypes/prototypes.py:390
#: prototypes/prototypes.py:389
msgid "Prototype requires a prototype_key"
msgstr ""
#: prototypes/prototypes.py:398 prototypes/prototypes.py:467
#: prototypes/prototypes.py:1087
#: prototypes/prototypes.py:397 prototypes/prototypes.py:466
#: prototypes/prototypes.py:1092
#, python-brace-format
msgid "{protkey} is a read-only prototype (defined as code in {module})."
msgstr ""
#: prototypes/prototypes.py:400 prototypes/prototypes.py:469
#: prototypes/prototypes.py:1089
#: prototypes/prototypes.py:399 prototypes/prototypes.py:468
#: prototypes/prototypes.py:1094
#, python-brace-format
msgid "{protkey} is a read-only prototype (passed directly as a dict)."
msgstr ""
#: prototypes/prototypes.py:476
#: prototypes/prototypes.py:475
#, python-brace-format
msgid "Prototype {prototype_key} was not found."
msgstr ""
#: prototypes/prototypes.py:484
#: prototypes/prototypes.py:483
#, python-brace-format
msgid ""
"{caller} needs explicit 'edit' permissions to delete prototype "
"{prototype_key}."
msgstr ""
#: prototypes/prototypes.py:606
#: prototypes/prototypes.py:605
#, python-brace-format
msgid "Found {num} matching prototypes among {module_prototypes}."
msgstr ""
#: prototypes/prototypes.py:766
#: prototypes/prototypes.py:765
msgid "No prototypes found."
msgstr ""
#: prototypes/prototypes.py:817
#: prototypes/prototypes.py:816
msgid "Prototype lacks a 'prototype_key'."
msgstr ""
#: prototypes/prototypes.py:826
#: prototypes/prototypes.py:825
#, python-brace-format
msgid "Prototype {protkey} requires `typeclass` or 'prototype_parent'."
msgstr ""
#: prototypes/prototypes.py:833
#: prototypes/prototypes.py:832
#, python-brace-format
msgid ""
"Prototype {protkey} can only be used as a mixin since it lacks 'typeclass' "
"or 'prototype_parent' keys."
msgstr ""
#: prototypes/prototypes.py:844
#: prototypes/prototypes.py:843
#, python-brace-format
msgid ""
"{err}: Prototype {protkey} is based on typeclass {typeclass}, which could "
"not be imported!"
msgstr ""
#: prototypes/prototypes.py:863
#: prototypes/prototypes.py:862
#, python-brace-format
msgid "Prototype {protkey} tries to parent itself."
msgstr ""
#: prototypes/prototypes.py:869
#: prototypes/prototypes.py:868
#, python-brace-format
msgid ""
"Prototype {protkey}'s `prototype_parent` (named '{parent}') was not found."
msgstr ""
#: prototypes/prototypes.py:877
#: prototypes/prototypes.py:875
#, python-brace-format
msgid "{protkey} has infinite nesting of prototypes."
msgstr ""
#: prototypes/prototypes.py:902
#: prototypes/prototypes.py:900
#, python-brace-format
msgid ""
"Prototype {protkey} has no `typeclass` defined anywhere in its parent\n"
@ -517,7 +517,7 @@ msgid ""
"with a typeclass."
msgstr ""
#: prototypes/spawner.py:497
#: prototypes/spawner.py:495
#, python-brace-format
msgid ""
"Diff contains non-dicts that are not on the form (old, new, action_to_take): "
@ -591,10 +591,14 @@ msgid ""
"seconds ..."
msgstr ""
#: server/server.py:157
#: server/server.py:156
msgid "idle timeout exceeded"
msgstr "Timeout di inattività superato"
#: server/server.py:177
msgid " (connection lost)"
msgstr ""
#: server/sessionhandler.py:41
msgid "Your client sent an incorrect UTF-8 sequence."
msgstr ""
@ -1046,27 +1050,27 @@ msgstr "Sono state trovate diverse corrispondenze."
msgid "Please be more specific."
msgstr ""
#: utils/utils.py:2121
#: utils/utils.py:2127
#, python-brace-format
msgid ""
"{obj}.{handlername} is a handler and can't be set directly. To add values, "
"use `{obj}.{handlername}.add()` instead."
msgstr ""
#: utils/utils.py:2131
#: utils/utils.py:2137
#, python-brace-format
msgid ""
"{obj}.{handlername} is a handler and can't be deleted directly. To remove "
"values, use `{obj}.{handlername}.remove()` instead."
msgstr ""
#: utils/utils.py:2272
#: utils/utils.py:2278
#, fuzzy, python-brace-format
#| msgid "Could not find '%s'."
msgid "Could not find '{query}'."
msgstr "Impossibile trovare '%s'."
#: utils/utils.py:2279
#: utils/utils.py:2285
#, python-brace-format
msgid "More than one match for '{query}' (please narrow target):\n"
msgstr ""

View file

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-10-02 09:27+0000\n"
"POT-Creation-Date: 2022-10-29 18:53+0000\n"
"PO-Revision-Date: 2019-09-21 05:00+0900\n"
"Last-Translator: \n"
"Language-Team: \n"
@ -27,64 +27,64 @@ msgid ""
"You cannot control any more puppets (max {_MAX_NR_SIMULTANEOUS_PUPPETS})"
msgstr ""
#: accounts/accounts.py:552
#: accounts/accounts.py:555
msgid "Too many login failures; please try again in a few minutes."
msgstr ""
#: accounts/accounts.py:565 accounts/accounts.py:829
#: accounts/accounts.py:568 accounts/accounts.py:832
msgid ""
"|rYou have been banned and cannot continue from here.\n"
"If you feel this ban is in error, please email an admin.|x"
msgstr ""
#: accounts/accounts.py:577
#: accounts/accounts.py:580
msgid "Username and/or password is incorrect."
msgstr ""
#: accounts/accounts.py:584
#: accounts/accounts.py:587
msgid "Too many authentication failures."
msgstr ""
#: accounts/accounts.py:800
#: accounts/accounts.py:803
msgid ""
"You are creating too many accounts. Please log into an existing account."
msgstr ""
#: accounts/accounts.py:846
#: accounts/accounts.py:849
msgid ""
"There was an error creating the Account. If this problem persists, contact "
"an admin."
msgstr ""
#: accounts/accounts.py:882 accounts/accounts.py:1798
#: accounts/accounts.py:885 accounts/accounts.py:1801
msgid "An error occurred. Please e-mail an admin if the problem persists."
msgstr ""
#: accounts/accounts.py:915
#: accounts/accounts.py:918
msgid "Account being deleted."
msgstr "계정이 삭제되었습니다."
#: accounts/accounts.py:1472 accounts/accounts.py:1816
#: accounts/accounts.py:1475 accounts/accounts.py:1819
#, python-brace-format
msgid "|G{key} connected|n"
msgstr ""
#: accounts/accounts.py:1478
#: accounts/accounts.py:1481
#, fuzzy
#| msgid "The destination doesn't exist."
msgid "The Character does not exist."
msgstr "The destination doesn't exist."
#: accounts/accounts.py:1517
#: accounts/accounts.py:1520
#, python-brace-format
msgid "|R{key} disconnected{reason}|n"
msgstr ""
#: accounts/accounts.py:1751
#: accounts/accounts.py:1754
msgid "Guest accounts are not enabled on this server."
msgstr ""
#: accounts/accounts.py:1761
#: accounts/accounts.py:1764
msgid "All guest accounts are in use. Please try again later."
msgstr ""
@ -318,97 +318,97 @@ msgstr "Lock: '{lockdef}' has mismatched parentheses."
msgid "Lock: '{lockdef}' has no valid lock functions."
msgstr "Lock: '{lockdef}' has no valid lock functions."
#: objects/objects.py:855
#: objects/objects.py:856
#, fuzzy, python-brace-format
#| msgid "Couldn't perform move ('%s'). Contact an admin."
msgid "Couldn't perform move ({err}). Contact an admin."
msgstr "Couldn't perform move ('%s'). 운영자에게 문의하세요."
#: objects/objects.py:865
#: objects/objects.py:866
msgid "The destination doesn't exist."
msgstr "The destination doesn't exist."
#: objects/objects.py:977
#: objects/objects.py:978
#, fuzzy, python-brace-format
#| msgid "Could not find default home '(#%d)'."
msgid "Could not find default home '(#{dbid})'."
msgstr "Could not find default home '(#%d)'."
#: objects/objects.py:991
#: objects/objects.py:992
msgid "Something went wrong! You are dumped into nowhere. Contact an admin."
msgstr ""
"Something went wrong! You are dumped into nowhere. 운영자에게 문의하세요."
#: objects/objects.py:1144
#: objects/objects.py:1145
#, fuzzy, python-brace-format
#| msgid "Your character %s has been destroyed."
msgid "Your character {key} has been destroyed."
msgstr "%s 캐릭터가 삭제되었습니다."
#: objects/objects.py:1852
#: objects/objects.py:1853
#, python-brace-format
msgid "You now have {name} in your possession."
msgstr ""
#: objects/objects.py:1862
#: objects/objects.py:1863
#, python-brace-format
msgid "{object} arrives to {destination} from {origin}."
msgstr ""
#: objects/objects.py:1864
#: objects/objects.py:1865
#, python-brace-format
msgid "{object} arrives to {destination}."
msgstr ""
#: objects/objects.py:2529
#: objects/objects.py:2530
msgid "Invalid character name."
msgstr ""
#: objects/objects.py:2548
#: objects/objects.py:2549
msgid "There are too many characters associated with this account."
msgstr ""
#: objects/objects.py:2574
#: objects/objects.py:2575
#, fuzzy
#| msgid "This is User #1."
msgid "This is a character."
msgstr "This is User #1."
#: objects/objects.py:2663
#: objects/objects.py:2664
#, python-brace-format
msgid "|r{obj} has no location and no home is set.|n"
msgstr ""
#: objects/objects.py:2681
#: objects/objects.py:2682
#, python-brace-format
msgid ""
"\n"
"You become |c{name}|n.\n"
msgstr ""
#: objects/objects.py:2686
#: objects/objects.py:2687
#, python-brace-format
msgid "{name} has entered the game."
msgstr ""
#: objects/objects.py:2712
#: objects/objects.py:2716
#, python-brace-format
msgid "{name} has left the game."
msgid "{name} has left the game{reason}."
msgstr ""
#: objects/objects.py:2831
#: objects/objects.py:2838
#, fuzzy
#| msgid "This is User #1."
msgid "This is a room."
msgstr "This is User #1."
#: objects/objects.py:3038
#: objects/objects.py:3045
#, fuzzy
#| msgid "This is User #1."
msgid "This is an exit."
msgstr "This is User #1."
#: objects/objects.py:3135
#: objects/objects.py:3142
msgid "You cannot go there."
msgstr ""
@ -420,83 +420,83 @@ msgstr ""
msgid "Warning"
msgstr ""
#: prototypes/prototypes.py:390
#: prototypes/prototypes.py:389
msgid "Prototype requires a prototype_key"
msgstr ""
#: prototypes/prototypes.py:398 prototypes/prototypes.py:467
#: prototypes/prototypes.py:1087
#: prototypes/prototypes.py:397 prototypes/prototypes.py:466
#: prototypes/prototypes.py:1092
#, python-brace-format
msgid "{protkey} is a read-only prototype (defined as code in {module})."
msgstr ""
#: prototypes/prototypes.py:400 prototypes/prototypes.py:469
#: prototypes/prototypes.py:1089
#: prototypes/prototypes.py:399 prototypes/prototypes.py:468
#: prototypes/prototypes.py:1094
#, python-brace-format
msgid "{protkey} is a read-only prototype (passed directly as a dict)."
msgstr ""
#: prototypes/prototypes.py:476
#: prototypes/prototypes.py:475
#, python-brace-format
msgid "Prototype {prototype_key} was not found."
msgstr ""
#: prototypes/prototypes.py:484
#: prototypes/prototypes.py:483
#, python-brace-format
msgid ""
"{caller} needs explicit 'edit' permissions to delete prototype "
"{prototype_key}."
msgstr ""
#: prototypes/prototypes.py:606
#: prototypes/prototypes.py:605
#, python-brace-format
msgid "Found {num} matching prototypes among {module_prototypes}."
msgstr ""
#: prototypes/prototypes.py:766
#: prototypes/prototypes.py:765
msgid "No prototypes found."
msgstr ""
#: prototypes/prototypes.py:817
#: prototypes/prototypes.py:816
msgid "Prototype lacks a 'prototype_key'."
msgstr ""
#: prototypes/prototypes.py:826
#: prototypes/prototypes.py:825
#, python-brace-format
msgid "Prototype {protkey} requires `typeclass` or 'prototype_parent'."
msgstr ""
#: prototypes/prototypes.py:833
#: prototypes/prototypes.py:832
#, python-brace-format
msgid ""
"Prototype {protkey} can only be used as a mixin since it lacks 'typeclass' "
"or 'prototype_parent' keys."
msgstr ""
#: prototypes/prototypes.py:844
#: prototypes/prototypes.py:843
#, python-brace-format
msgid ""
"{err}: Prototype {protkey} is based on typeclass {typeclass}, which could "
"not be imported!"
msgstr ""
#: prototypes/prototypes.py:863
#: prototypes/prototypes.py:862
#, python-brace-format
msgid "Prototype {protkey} tries to parent itself."
msgstr ""
#: prototypes/prototypes.py:869
#: prototypes/prototypes.py:868
#, python-brace-format
msgid ""
"Prototype {protkey}'s `prototype_parent` (named '{parent}') was not found."
msgstr ""
#: prototypes/prototypes.py:877
#: prototypes/prototypes.py:875
#, python-brace-format
msgid "{protkey} has infinite nesting of prototypes."
msgstr ""
#: prototypes/prototypes.py:902
#: prototypes/prototypes.py:900
#, python-brace-format
msgid ""
"Prototype {protkey} has no `typeclass` defined anywhere in its parent\n"
@ -504,7 +504,7 @@ msgid ""
"with a typeclass."
msgstr ""
#: prototypes/spawner.py:497
#: prototypes/spawner.py:495
#, python-brace-format
msgid ""
"Diff contains non-dicts that are not on the form (old, new, action_to_take): "
@ -576,10 +576,14 @@ msgid ""
"seconds ..."
msgstr ""
#: server/server.py:157
#: server/server.py:156
msgid "idle timeout exceeded"
msgstr "연결 시간 초과"
#: server/server.py:177
msgid " (connection lost)"
msgstr ""
#: server/sessionhandler.py:41
msgid "Your client sent an incorrect UTF-8 sequence."
msgstr ""
@ -1032,27 +1036,27 @@ msgstr "여러 개의 일치 항목을 찾았습니다."
msgid "Please be more specific."
msgstr ""
#: utils/utils.py:2121
#: utils/utils.py:2127
#, python-brace-format
msgid ""
"{obj}.{handlername} is a handler and can't be set directly. To add values, "
"use `{obj}.{handlername}.add()` instead."
msgstr ""
#: utils/utils.py:2131
#: utils/utils.py:2137
#, python-brace-format
msgid ""
"{obj}.{handlername} is a handler and can't be deleted directly. To remove "
"values, use `{obj}.{handlername}.remove()` instead."
msgstr ""
#: utils/utils.py:2272
#: utils/utils.py:2278
#, fuzzy, python-brace-format
#| msgid "Could not find '%s'."
msgid "Could not find '{query}'."
msgstr "'%s'를 찾을 수 없습니다."
#: utils/utils.py:2279
#: utils/utils.py:2285
#, fuzzy, python-brace-format
#| msgid "More than one match for '%s' (please narrow target):\n"
msgid "More than one match for '{query}' (please narrow target):\n"

View file

@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: 0.1\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-10-02 09:27+0000\n"
"POT-Creation-Date: 2022-10-29 18:53+0000\n"
"PO-Revision-Date: 2021-02-04 21:25-0600\n"
"Last-Translator: \n"
"Language-Team: \n"
@ -28,13 +28,13 @@ msgid ""
"You cannot control any more puppets (max {_MAX_NR_SIMULTANEOUS_PUPPETS})"
msgstr ""
#: accounts/accounts.py:552
#: accounts/accounts.py:555
msgid "Too many login failures; please try again in a few minutes."
msgstr ""
"Saepius nequīquam nōmen datum est; quaesō, paucis post mōmentīs rursus "
"conāre."
#: accounts/accounts.py:565 accounts/accounts.py:829
#: accounts/accounts.py:568 accounts/accounts.py:832
msgid ""
"|rYou have been banned and cannot continue from here.\n"
"If you feel this ban is in error, please email an admin.|x"
@ -43,20 +43,20 @@ msgstr ""
"Sī errōre tē prohibērī vidētur, quaesō litterās electronicās ad "
"administrātōrem mitte.|x"
#: accounts/accounts.py:577
#: accounts/accounts.py:580
msgid "Username and/or password is incorrect."
msgstr "Nōmen vel tessera male datur."
#: accounts/accounts.py:584
#: accounts/accounts.py:587
msgid "Too many authentication failures."
msgstr ""
#: accounts/accounts.py:800
#: accounts/accounts.py:803
msgid ""
"You are creating too many accounts. Please log into an existing account."
msgstr "Plūrēs ratiōnēs creās. Quaesō nōmen prō ratiōne iam factā da."
#: accounts/accounts.py:846
#: accounts/accounts.py:849
msgid ""
"There was an error creating the Account. If this problem persists, contact "
"an admin."
@ -64,33 +64,33 @@ msgstr ""
"Nequīquam ratiō creāta est. Sī semper tibi hic error obviam fit, "
"adminstrātōrem vocā "
#: accounts/accounts.py:882 accounts/accounts.py:1798
#: accounts/accounts.py:885 accounts/accounts.py:1801
msgid "An error occurred. Please e-mail an admin if the problem persists."
msgstr ""
#: accounts/accounts.py:915
#: accounts/accounts.py:918
msgid "Account being deleted."
msgstr "Ratiō dēlētur."
#: accounts/accounts.py:1472 accounts/accounts.py:1816
#: accounts/accounts.py:1475 accounts/accounts.py:1819
#, python-brace-format
msgid "|G{key} connected|n"
msgstr "|G{key} sē iunxit.|n"
#: accounts/accounts.py:1478
#: accounts/accounts.py:1481
msgid "The Character does not exist."
msgstr "Nōn est ista Persōna."
#: accounts/accounts.py:1517
#: accounts/accounts.py:1520
#, python-brace-format
msgid "|R{key} disconnected{reason}|n"
msgstr "|R{key} sē dissolvit{reason}|n"
#: accounts/accounts.py:1751
#: accounts/accounts.py:1754
msgid "Guest accounts are not enabled on this server."
msgstr "Hospitibus nōn licet ratiōnibus ūtī in hoc moderātrō."
#: accounts/accounts.py:1761
#: accounts/accounts.py:1764
msgid "All guest accounts are in use. Please try again later."
msgstr "Nōn iam sunt ratiōnēs hospitum. Quaesō in posterum rursus conāre."
@ -321,95 +321,95 @@ msgstr "Claustra: '{lockdef}' interclusiōnēs impārēs habet."
msgid "Lock: '{lockdef}' has no valid lock functions."
msgstr "Claustra: '{lockdef}' nullās functiōnēs clastrōrum idoneōs habet."
#: objects/objects.py:855
#: objects/objects.py:856
#, fuzzy, python-brace-format
#| msgid "Couldn't perform move ('%s'). Contact an admin."
msgid "Couldn't perform move ({err}). Contact an admin."
msgstr "Iste mōtus ('%s') efficī nōn potuit. Administrātōrem vocā."
#: objects/objects.py:865
#: objects/objects.py:866
msgid "The destination doesn't exist."
msgstr "Iste fīnis nōn est."
#: objects/objects.py:977
#: objects/objects.py:978
#, fuzzy, python-brace-format
#| msgid "Could not find default home '(#%d)'."
msgid "Could not find default home '(#{dbid})'."
msgstr "Domus data '(#%d)' nōn inventa est."
#: objects/objects.py:991
#: objects/objects.py:992
msgid "Something went wrong! You are dumped into nowhere. Contact an admin."
msgstr "Errātum est! In nūsquam cecidistī. Administrātōrem vocā."
#: objects/objects.py:1144
#: objects/objects.py:1145
#, python-brace-format
msgid "Your character {key} has been destroyed."
msgstr "Persōna tua {key} dēlēta est."
#: objects/objects.py:1852
#: objects/objects.py:1853
#, python-brace-format
msgid "You now have {name} in your possession."
msgstr ""
#: objects/objects.py:1862
#: objects/objects.py:1863
#, python-brace-format
msgid "{object} arrives to {destination} from {origin}."
msgstr ""
#: objects/objects.py:1864
#: objects/objects.py:1865
#, python-brace-format
msgid "{object} arrives to {destination}."
msgstr ""
#: objects/objects.py:2529
#: objects/objects.py:2530
msgid "Invalid character name."
msgstr ""
#: objects/objects.py:2548
#: objects/objects.py:2549
msgid "There are too many characters associated with this account."
msgstr ""
#: objects/objects.py:2574
#: objects/objects.py:2575
#, fuzzy
#| msgid "This is User #1."
msgid "This is a character."
msgstr "Haec est Ratiō #1."
#: objects/objects.py:2663
#: objects/objects.py:2664
#, python-brace-format
msgid "|r{obj} has no location and no home is set.|n"
msgstr ""
#: objects/objects.py:2681
#: objects/objects.py:2682
#, python-brace-format
msgid ""
"\n"
"You become |c{name}|n.\n"
msgstr ""
#: objects/objects.py:2686
#: objects/objects.py:2687
#, python-brace-format
msgid "{name} has entered the game."
msgstr ""
#: objects/objects.py:2712
#: objects/objects.py:2716
#, python-brace-format
msgid "{name} has left the game."
msgid "{name} has left the game{reason}."
msgstr ""
#: objects/objects.py:2831
#: objects/objects.py:2838
#, fuzzy
#| msgid "This is User #1."
msgid "This is a room."
msgstr "Haec est Ratiō #1."
#: objects/objects.py:3038
#: objects/objects.py:3045
#, fuzzy
#| msgid "This is User #1."
msgid "This is an exit."
msgstr "Haec est Ratiō #1."
#: objects/objects.py:3135
#: objects/objects.py:3142
msgid "You cannot go there."
msgstr ""
@ -421,83 +421,83 @@ msgstr ""
msgid "Warning"
msgstr ""
#: prototypes/prototypes.py:390
#: prototypes/prototypes.py:389
msgid "Prototype requires a prototype_key"
msgstr ""
#: prototypes/prototypes.py:398 prototypes/prototypes.py:467
#: prototypes/prototypes.py:1087
#: prototypes/prototypes.py:397 prototypes/prototypes.py:466
#: prototypes/prototypes.py:1092
#, python-brace-format
msgid "{protkey} is a read-only prototype (defined as code in {module})."
msgstr ""
#: prototypes/prototypes.py:400 prototypes/prototypes.py:469
#: prototypes/prototypes.py:1089
#: prototypes/prototypes.py:399 prototypes/prototypes.py:468
#: prototypes/prototypes.py:1094
#, python-brace-format
msgid "{protkey} is a read-only prototype (passed directly as a dict)."
msgstr ""
#: prototypes/prototypes.py:476
#: prototypes/prototypes.py:475
#, python-brace-format
msgid "Prototype {prototype_key} was not found."
msgstr ""
#: prototypes/prototypes.py:484
#: prototypes/prototypes.py:483
#, python-brace-format
msgid ""
"{caller} needs explicit 'edit' permissions to delete prototype "
"{prototype_key}."
msgstr ""
#: prototypes/prototypes.py:606
#: prototypes/prototypes.py:605
#, python-brace-format
msgid "Found {num} matching prototypes among {module_prototypes}."
msgstr ""
#: prototypes/prototypes.py:766
#: prototypes/prototypes.py:765
msgid "No prototypes found."
msgstr ""
#: prototypes/prototypes.py:817
#: prototypes/prototypes.py:816
msgid "Prototype lacks a 'prototype_key'."
msgstr ""
#: prototypes/prototypes.py:826
#: prototypes/prototypes.py:825
#, python-brace-format
msgid "Prototype {protkey} requires `typeclass` or 'prototype_parent'."
msgstr ""
#: prototypes/prototypes.py:833
#: prototypes/prototypes.py:832
#, python-brace-format
msgid ""
"Prototype {protkey} can only be used as a mixin since it lacks 'typeclass' "
"or 'prototype_parent' keys."
msgstr ""
#: prototypes/prototypes.py:844
#: prototypes/prototypes.py:843
#, python-brace-format
msgid ""
"{err}: Prototype {protkey} is based on typeclass {typeclass}, which could "
"not be imported!"
msgstr ""
#: prototypes/prototypes.py:863
#: prototypes/prototypes.py:862
#, python-brace-format
msgid "Prototype {protkey} tries to parent itself."
msgstr ""
#: prototypes/prototypes.py:869
#: prototypes/prototypes.py:868
#, python-brace-format
msgid ""
"Prototype {protkey}'s `prototype_parent` (named '{parent}') was not found."
msgstr ""
#: prototypes/prototypes.py:877
#: prototypes/prototypes.py:875
#, python-brace-format
msgid "{protkey} has infinite nesting of prototypes."
msgstr ""
#: prototypes/prototypes.py:902
#: prototypes/prototypes.py:900
#, python-brace-format
msgid ""
"Prototype {protkey} has no `typeclass` defined anywhere in its parent\n"
@ -505,7 +505,7 @@ msgid ""
"with a typeclass."
msgstr ""
#: prototypes/spawner.py:497
#: prototypes/spawner.py:495
#, python-brace-format
msgid ""
"Diff contains non-dicts that are not on the form (old, new, action_to_take): "
@ -578,10 +578,14 @@ msgid ""
"seconds ..."
msgstr ""
#: server/server.py:157
#: server/server.py:156
msgid "idle timeout exceeded"
msgstr "Nimis temporis in nihil agendō ēgistī."
#: server/server.py:177
msgid " (connection lost)"
msgstr ""
#: server/sessionhandler.py:41
msgid "Your client sent an incorrect UTF-8 sequence."
msgstr ""
@ -1031,27 +1035,27 @@ msgstr "Plūra quam ūnum inventa sunt."
msgid "Please be more specific."
msgstr ""
#: utils/utils.py:2121
#: utils/utils.py:2127
#, python-brace-format
msgid ""
"{obj}.{handlername} is a handler and can't be set directly. To add values, "
"use `{obj}.{handlername}.add()` instead."
msgstr ""
#: utils/utils.py:2131
#: utils/utils.py:2137
#, python-brace-format
msgid ""
"{obj}.{handlername} is a handler and can't be deleted directly. To remove "
"values, use `{obj}.{handlername}.remove()` instead."
msgstr ""
#: utils/utils.py:2272
#: utils/utils.py:2278
#, fuzzy, python-brace-format
#| msgid "Could not find '%s'."
msgid "Could not find '{query}'."
msgstr "'%s' nōn inventum est"
#: utils/utils.py:2279
#: utils/utils.py:2285
#, python-brace-format
msgid "More than one match for '{query}' (please narrow target):\n"
msgstr ""

View file

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: ArkMUD Polish translation v0.1\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-10-02 09:28+0000\n"
"POT-Creation-Date: 2022-10-29 18:53+0000\n"
"PO-Revision-Date: 2019-02-20 14:18+0100\n"
"Last-Translator: \n"
"Language-Team: ArkMUD team\n"
@ -31,64 +31,64 @@ msgid ""
"You cannot control any more puppets (max {_MAX_NR_SIMULTANEOUS_PUPPETS})"
msgstr ""
#: accounts/accounts.py:552
#: accounts/accounts.py:555
msgid "Too many login failures; please try again in a few minutes."
msgstr ""
#: accounts/accounts.py:565 accounts/accounts.py:829
#: accounts/accounts.py:568 accounts/accounts.py:832
msgid ""
"|rYou have been banned and cannot continue from here.\n"
"If you feel this ban is in error, please email an admin.|x"
msgstr ""
#: accounts/accounts.py:577
#: accounts/accounts.py:580
msgid "Username and/or password is incorrect."
msgstr ""
#: accounts/accounts.py:584
#: accounts/accounts.py:587
msgid "Too many authentication failures."
msgstr ""
#: accounts/accounts.py:800
#: accounts/accounts.py:803
msgid ""
"You are creating too many accounts. Please log into an existing account."
msgstr ""
#: accounts/accounts.py:846
#: accounts/accounts.py:849
msgid ""
"There was an error creating the Account. If this problem persists, contact "
"an admin."
msgstr ""
#: accounts/accounts.py:882 accounts/accounts.py:1798
#: accounts/accounts.py:885 accounts/accounts.py:1801
msgid "An error occurred. Please e-mail an admin if the problem persists."
msgstr ""
#: accounts/accounts.py:915
#: accounts/accounts.py:918
msgid "Account being deleted."
msgstr "Konto zostalo usuniete."
#: accounts/accounts.py:1472 accounts/accounts.py:1816
#: accounts/accounts.py:1475 accounts/accounts.py:1819
#, python-brace-format
msgid "|G{key} connected|n"
msgstr ""
#: accounts/accounts.py:1478
#: accounts/accounts.py:1481
#, fuzzy
#| msgid "The destination doesn't exist."
msgid "The Character does not exist."
msgstr "Punkt przeznaczenia nie istnieje."
#: accounts/accounts.py:1517
#: accounts/accounts.py:1520
#, python-brace-format
msgid "|R{key} disconnected{reason}|n"
msgstr ""
#: accounts/accounts.py:1751
#: accounts/accounts.py:1754
msgid "Guest accounts are not enabled on this server."
msgstr ""
#: accounts/accounts.py:1761
#: accounts/accounts.py:1764
msgid "All guest accounts are in use. Please try again later."
msgstr ""
@ -290,96 +290,96 @@ msgstr ""
msgid "Lock: '{lockdef}' has no valid lock functions."
msgstr ""
#: objects/objects.py:855
#: objects/objects.py:856
#, fuzzy, python-brace-format
#| msgid "Couldn't perform move ('%s'). Contact an admin."
msgid "Couldn't perform move ({err}). Contact an admin."
msgstr "Nie udalo sie wykonac ruchu ('%s'). Skontaktuj sie z adminem."
#: objects/objects.py:865
#: objects/objects.py:866
msgid "The destination doesn't exist."
msgstr "Punkt przeznaczenia nie istnieje."
#: objects/objects.py:977
#: objects/objects.py:978
#, fuzzy, python-brace-format
#| msgid "Could not find default home '(#%d)'."
msgid "Could not find default home '(#{dbid})'."
msgstr "Nie znaleziono domyslnego domu '(#%d)'."
#: objects/objects.py:991
#: objects/objects.py:992
msgid "Something went wrong! You are dumped into nowhere. Contact an admin."
msgstr "Cos poszlo zle! Zostales wrzucony w nicosc. Skontaktuj sie z adminem."
#: objects/objects.py:1144
#: objects/objects.py:1145
#, fuzzy, python-brace-format
#| msgid "Your character %s has been destroyed."
msgid "Your character {key} has been destroyed."
msgstr "Twoja postac %s zostala zniszczona."
#: objects/objects.py:1852
#: objects/objects.py:1853
#, python-brace-format
msgid "You now have {name} in your possession."
msgstr ""
#: objects/objects.py:1862
#: objects/objects.py:1863
#, python-brace-format
msgid "{object} arrives to {destination} from {origin}."
msgstr ""
#: objects/objects.py:1864
#: objects/objects.py:1865
#, python-brace-format
msgid "{object} arrives to {destination}."
msgstr ""
#: objects/objects.py:2529
#: objects/objects.py:2530
msgid "Invalid character name."
msgstr ""
#: objects/objects.py:2548
#: objects/objects.py:2549
msgid "There are too many characters associated with this account."
msgstr ""
#: objects/objects.py:2574
#: objects/objects.py:2575
#, fuzzy
#| msgid "This is User #1."
msgid "This is a character."
msgstr "To jest User #1."
#: objects/objects.py:2663
#: objects/objects.py:2664
#, python-brace-format
msgid "|r{obj} has no location and no home is set.|n"
msgstr ""
#: objects/objects.py:2681
#: objects/objects.py:2682
#, python-brace-format
msgid ""
"\n"
"You become |c{name}|n.\n"
msgstr ""
#: objects/objects.py:2686
#: objects/objects.py:2687
#, python-brace-format
msgid "{name} has entered the game."
msgstr ""
#: objects/objects.py:2712
#: objects/objects.py:2716
#, python-brace-format
msgid "{name} has left the game."
msgid "{name} has left the game{reason}."
msgstr ""
#: objects/objects.py:2831
#: objects/objects.py:2838
#, fuzzy
#| msgid "This is User #1."
msgid "This is a room."
msgstr "To jest User #1."
#: objects/objects.py:3038
#: objects/objects.py:3045
#, fuzzy
#| msgid "This is User #1."
msgid "This is an exit."
msgstr "To jest User #1."
#: objects/objects.py:3135
#: objects/objects.py:3142
msgid "You cannot go there."
msgstr ""
@ -391,83 +391,83 @@ msgstr ""
msgid "Warning"
msgstr ""
#: prototypes/prototypes.py:390
#: prototypes/prototypes.py:389
msgid "Prototype requires a prototype_key"
msgstr ""
#: prototypes/prototypes.py:398 prototypes/prototypes.py:467
#: prototypes/prototypes.py:1087
#: prototypes/prototypes.py:397 prototypes/prototypes.py:466
#: prototypes/prototypes.py:1092
#, python-brace-format
msgid "{protkey} is a read-only prototype (defined as code in {module})."
msgstr ""
#: prototypes/prototypes.py:400 prototypes/prototypes.py:469
#: prototypes/prototypes.py:1089
#: prototypes/prototypes.py:399 prototypes/prototypes.py:468
#: prototypes/prototypes.py:1094
#, python-brace-format
msgid "{protkey} is a read-only prototype (passed directly as a dict)."
msgstr ""
#: prototypes/prototypes.py:476
#: prototypes/prototypes.py:475
#, python-brace-format
msgid "Prototype {prototype_key} was not found."
msgstr ""
#: prototypes/prototypes.py:484
#: prototypes/prototypes.py:483
#, python-brace-format
msgid ""
"{caller} needs explicit 'edit' permissions to delete prototype "
"{prototype_key}."
msgstr ""
#: prototypes/prototypes.py:606
#: prototypes/prototypes.py:605
#, python-brace-format
msgid "Found {num} matching prototypes among {module_prototypes}."
msgstr ""
#: prototypes/prototypes.py:766
#: prototypes/prototypes.py:765
msgid "No prototypes found."
msgstr ""
#: prototypes/prototypes.py:817
#: prototypes/prototypes.py:816
msgid "Prototype lacks a 'prototype_key'."
msgstr ""
#: prototypes/prototypes.py:826
#: prototypes/prototypes.py:825
#, python-brace-format
msgid "Prototype {protkey} requires `typeclass` or 'prototype_parent'."
msgstr ""
#: prototypes/prototypes.py:833
#: prototypes/prototypes.py:832
#, python-brace-format
msgid ""
"Prototype {protkey} can only be used as a mixin since it lacks 'typeclass' "
"or 'prototype_parent' keys."
msgstr ""
#: prototypes/prototypes.py:844
#: prototypes/prototypes.py:843
#, python-brace-format
msgid ""
"{err}: Prototype {protkey} is based on typeclass {typeclass}, which could "
"not be imported!"
msgstr ""
#: prototypes/prototypes.py:863
#: prototypes/prototypes.py:862
#, python-brace-format
msgid "Prototype {protkey} tries to parent itself."
msgstr ""
#: prototypes/prototypes.py:869
#: prototypes/prototypes.py:868
#, python-brace-format
msgid ""
"Prototype {protkey}'s `prototype_parent` (named '{parent}') was not found."
msgstr ""
#: prototypes/prototypes.py:877
#: prototypes/prototypes.py:875
#, python-brace-format
msgid "{protkey} has infinite nesting of prototypes."
msgstr ""
#: prototypes/prototypes.py:902
#: prototypes/prototypes.py:900
#, python-brace-format
msgid ""
"Prototype {protkey} has no `typeclass` defined anywhere in its parent\n"
@ -475,7 +475,7 @@ msgid ""
"with a typeclass."
msgstr ""
#: prototypes/spawner.py:497
#: prototypes/spawner.py:495
#, python-brace-format
msgid ""
"Diff contains non-dicts that are not on the form (old, new, action_to_take): "
@ -539,10 +539,14 @@ msgid ""
"seconds ..."
msgstr ""
#: server/server.py:157
#: server/server.py:156
msgid "idle timeout exceeded"
msgstr "czas bezczynnosci przekroczony"
#: server/server.py:177
msgid " (connection lost)"
msgstr ""
#: server/sessionhandler.py:41
msgid "Your client sent an incorrect UTF-8 sequence."
msgstr ""
@ -990,27 +994,27 @@ msgstr "Znaleziono wiele dopasowan."
msgid "Please be more specific."
msgstr ""
#: utils/utils.py:2121
#: utils/utils.py:2127
#, python-brace-format
msgid ""
"{obj}.{handlername} is a handler and can't be set directly. To add values, "
"use `{obj}.{handlername}.add()` instead."
msgstr ""
#: utils/utils.py:2131
#: utils/utils.py:2137
#, python-brace-format
msgid ""
"{obj}.{handlername} is a handler and can't be deleted directly. To remove "
"values, use `{obj}.{handlername}.remove()` instead."
msgstr ""
#: utils/utils.py:2272
#: utils/utils.py:2278
#, fuzzy, python-brace-format
#| msgid "Could not find '%s'."
msgid "Could not find '{query}'."
msgstr "Nie odnaleziono '%s'."
#: utils/utils.py:2279
#: utils/utils.py:2285
#, fuzzy, python-brace-format
#| msgid "More than one match for '%s' (please narrow target):\n"
msgid "More than one match for '{query}' (please narrow target):\n"

View file

@ -13,7 +13,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Evennia Beta\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-10-02 09:28+0000\n"
"POT-Creation-Date: 2022-10-29 18:53+0000\n"
"PO-Revision-Date: 2022-10-02 18:12+0000\n"
"Last-Translator: Marcos Marado <mindboosternoori@gmail.com>\n"
"Language-Team: Nerun <nerunblogs@gmail.com>\n"
@ -36,69 +36,76 @@ msgid ""
msgstr ""
"Não pode controlar mais nenhum fantoche (max {_MAX_NR_SIMULTANEOUS_PUPPETS})"
#: accounts/accounts.py:552
#: accounts/accounts.py:555
msgid "Too many login failures; please try again in a few minutes."
msgstr "Demasiadas falhas de autenticação; por favor volta a tentar dentro de alguns minutos."
msgstr ""
"Demasiadas falhas de autenticação; por favor volta a tentar dentro de alguns "
"minutos."
#: accounts/accounts.py:565 accounts/accounts.py:829
#: accounts/accounts.py:568 accounts/accounts.py:832
msgid ""
"|rYou have been banned and cannot continue from here.\n"
"If you feel this ban is in error, please email an admin.|x"
msgstr ""
"|rVocê foi banido e não pode passar daqui.\n"
"Se acredita que este banimento foi um erro, por favor contacte um admin por email.|x"
"Se acredita que este banimento foi um erro, por favor contacte um admin por "
"email.|x"
#: accounts/accounts.py:577
#: accounts/accounts.py:580
msgid "Username and/or password is incorrect."
msgstr "Username e/ou password incorrectos."
#: accounts/accounts.py:584
#: accounts/accounts.py:587
msgid "Too many authentication failures."
msgstr "Demasiadas falhas de autenticação."
#: accounts/accounts.py:800
#: accounts/accounts.py:803
msgid ""
"You are creating too many accounts. Please log into an existing account."
msgstr "Está a criar demasiadas contas. Por favor ligue-se a uma conta existente."
msgstr ""
"Está a criar demasiadas contas. Por favor ligue-se a uma conta existente."
#: accounts/accounts.py:846
#: accounts/accounts.py:849
msgid ""
"There was an error creating the Account. If this problem persists, contact "
"an admin."
msgstr "Ocorreu um erro ao criar a conta. Se este problema persistir, contacte "
"um admin."
msgstr ""
"Ocorreu um erro ao criar a conta. Se este problema persistir, contacte um "
"admin."
#: accounts/accounts.py:882 accounts/accounts.py:1798
#: accounts/accounts.py:885 accounts/accounts.py:1801
msgid "An error occurred. Please e-mail an admin if the problem persists."
msgstr "Ocorreu um erro. Por favor contacte um admin por e-mail caso o problema persista."
msgstr ""
"Ocorreu um erro. Por favor contacte um admin por e-mail caso o problema "
"persista."
#: accounts/accounts.py:915
#: accounts/accounts.py:918
#, fuzzy
#| msgid "Player being deleted."
msgid "Account being deleted."
msgstr "Jogador sendo deletado."
#: accounts/accounts.py:1472 accounts/accounts.py:1816
#: accounts/accounts.py:1475 accounts/accounts.py:1819
#, python-brace-format
msgid "|G{key} connected|n"
msgstr "|G{key} ligado|n"
#: accounts/accounts.py:1478
#: accounts/accounts.py:1481
#, fuzzy
#| msgid "The destination doesn't exist."
msgid "The Character does not exist."
msgstr "O destino não existe."
#: accounts/accounts.py:1517
#: accounts/accounts.py:1520
#, python-brace-format
msgid "|R{key} disconnected{reason}|n"
msgstr "|R{key} desligado{reason}|n"
#: accounts/accounts.py:1751
#: accounts/accounts.py:1754
msgid "Guest accounts are not enabled on this server."
msgstr "Contas guest não estão activadas neste servidor."
#: accounts/accounts.py:1761
#: accounts/accounts.py:1764
msgid "All guest accounts are in use. Please try again later."
msgstr "Todas as contas guest estão em utilização. Por favor tente mais tarde."
@ -117,8 +124,8 @@ msgid ""
"reproduce.\n"
msgstr ""
"\n"
"Um erro não previsto ocorreu. Por favor reporte o problema detalhando os passos para "
"o reproduzir.\n"
"Um erro não previsto ocorreu. Por favor reporte o problema detalhando os "
"passos para o reproduzir.\n"
#: commands/cmdhandler.py:97
msgid ""
@ -127,7 +134,8 @@ msgid ""
"error in one of the cmdsets to merge.\n"
msgstr ""
"\n"
"Um cmdset merger-error ocorreu. Isto é tipicamente devido a um erro de sintaxe\n"
"Um cmdset merger-error ocorreu. Isto é tipicamente devido a um erro de "
"sintaxe\n"
"num dos cmdsets a fazer merge.\n"
#: commands/cmdhandler.py:103
@ -147,7 +155,8 @@ msgid ""
"multiple causes.\n"
msgstr ""
"\n"
"Nenhum conjunto de comandos foi encontrado! Este é um problema crítico que pode ter\n"
"Nenhum conjunto de comandos foi encontrado! Este é um problema crítico que "
"pode ter\n"
"múltiplas causas.\n"
#: commands/cmdhandler.py:118
@ -159,7 +168,8 @@ msgid ""
msgstr ""
"\n"
"Nenhum conjunto de comandos foi contrado! Ese é um sinal de um problema\n"
"crítico. Se desligar e voltar a ligar não resolve o problema, tente contactar\n"
"crítico. Se desligar e voltar a ligar não resolve o problema, tente "
"contactar\n"
"o admin do servidor através de outros meios para assistência.\n"
#: commands/cmdhandler.py:128
@ -170,7 +180,8 @@ msgid ""
"traceback and steps to reproduce.\n"
msgstr ""
"\n"
"Um problema aconteceu a lidar com um comando. Se isto não foi causado por uma\n"
"Um problema aconteceu a lidar com um comando. Se isto não foi causado por "
"uma\n"
"alteração local, por favor reporte um problema com no projecto Evennia,\n"
"incluindo o traceback e os passos de reprodução.\n"
@ -365,70 +376,70 @@ msgstr "Lock: '%s' apresenta irregularidade no uso dos parênteses."
msgid "Lock: '{lockdef}' has no valid lock functions."
msgstr "Lock: '%s' não possui funções de lock válidas."
#: objects/objects.py:855
#: objects/objects.py:856
#, fuzzy, python-brace-format
#| msgid "Couldn't perform move ('%s'). Contact an admin."
msgid "Couldn't perform move ({err}). Contact an admin."
msgstr ""
"Não foi possível executar o movimento ('%s'). Contacte um administrador."
#: objects/objects.py:865
#: objects/objects.py:866
msgid "The destination doesn't exist."
msgstr "O destino não existe."
#: objects/objects.py:977
#: objects/objects.py:978
#, fuzzy, python-brace-format
#| msgid "Could not find default home '(#%d)'."
msgid "Could not find default home '(#{dbid})'."
msgstr "Não foi possível encontrar a home predefinida '(#%d)'."
#: objects/objects.py:991
#: objects/objects.py:992
msgid "Something went wrong! You are dumped into nowhere. Contact an admin."
msgstr ""
"Algo deu errado! Você foi despejado em lugar nenhum. Contacte um "
"administrador."
#: objects/objects.py:1144
#: objects/objects.py:1145
#, fuzzy, python-brace-format
#| msgid "Your character %s has been destroyed."
msgid "Your character {key} has been destroyed."
msgstr "Seu personagem %s foi destruído."
#: objects/objects.py:1852
#: objects/objects.py:1853
#, python-brace-format
msgid "You now have {name} in your possession."
msgstr "Você tem agora {name} na sua posse."
#: objects/objects.py:1862
#: objects/objects.py:1863
#, python-brace-format
msgid "{object} arrives to {destination} from {origin}."
msgstr "{object} chega a {destination} de {origin}."
#: objects/objects.py:1864
#: objects/objects.py:1865
#, python-brace-format
msgid "{object} arrives to {destination}."
msgstr "{object} chega a {destination}."
#: objects/objects.py:2529
#: objects/objects.py:2530
msgid "Invalid character name."
msgstr "Nome de personagem inválido."
#: objects/objects.py:2548
#: objects/objects.py:2549
msgid "There are too many characters associated with this account."
msgstr "Existem demasiadas personagens associadas a esta conta."
#: objects/objects.py:2574
#: objects/objects.py:2575
#, fuzzy
#| msgid "This is User #1."
msgid "This is a character."
msgstr "Este é o Usuário #1."
#: objects/objects.py:2663
#: objects/objects.py:2664
#, python-brace-format
msgid "|r{obj} has no location and no home is set.|n"
msgstr "|r{obj} não tem localização e nenhuma home está configurada.|n"
#: objects/objects.py:2681
#: objects/objects.py:2682
#, python-brace-format
msgid ""
"\n"
@ -437,29 +448,30 @@ msgstr ""
"\n"
"Tornas-te |c{name}|n.\n"
#: objects/objects.py:2686
#: objects/objects.py:2687
#, python-brace-format
msgid "{name} has entered the game."
msgstr "{name} entrou no jogo."
#: objects/objects.py:2712
#, python-brace-format
msgid "{name} has left the game."
#: objects/objects.py:2716
#, fuzzy, python-brace-format
#| msgid "{name} has left the game."
msgid "{name} has left the game{reason}."
msgstr "{name} saiu do jogo."
#: objects/objects.py:2831
#: objects/objects.py:2838
#, fuzzy
#| msgid "This is User #1."
msgid "This is a room."
msgstr "Este é o Usuário #1."
#: objects/objects.py:3038
#: objects/objects.py:3045
#, fuzzy
#| msgid "This is User #1."
msgid "This is an exit."
msgstr "Este é o Usuário #1."
#: objects/objects.py:3135
#: objects/objects.py:3142
msgid "You cannot go there."
msgstr "Não pode ir para aí."
@ -471,28 +483,32 @@ msgstr "Erro"
msgid "Warning"
msgstr "Aviso"
#: prototypes/prototypes.py:390
#: prototypes/prototypes.py:389
msgid "Prototype requires a prototype_key"
msgstr "Protótipo precis ade uma prototype_key"
#: prototypes/prototypes.py:398 prototypes/prototypes.py:467
#: prototypes/prototypes.py:1087
#: prototypes/prototypes.py:397 prototypes/prototypes.py:466
#: prototypes/prototypes.py:1092
#, python-brace-format
msgid "{protkey} is a read-only prototype (defined as code in {module})."
msgstr "{protkey} é um protótipo apenas de leitura (definido como código em {module})."
msgstr ""
"{protkey} é um protótipo apenas de leitura (definido como código em "
"{module})."
#: prototypes/prototypes.py:400 prototypes/prototypes.py:469
#: prototypes/prototypes.py:1089
#: prototypes/prototypes.py:399 prototypes/prototypes.py:468
#: prototypes/prototypes.py:1094
#, python-brace-format
msgid "{protkey} is a read-only prototype (passed directly as a dict)."
msgstr "{protkey} é um protótipo apenas de leitura (passado directamene como um dict)."
msgstr ""
"{protkey} é um protótipo apenas de leitura (passado directamene como um "
"dict)."
#: prototypes/prototypes.py:476
#: prototypes/prototypes.py:475
#, python-brace-format
msgid "Prototype {prototype_key} was not found."
msgstr "Protótipo {prototype_key} não encontrado."
#: prototypes/prototypes.py:484
#: prototypes/prototypes.py:483
#, python-brace-format
msgid ""
"{caller} needs explicit 'edit' permissions to delete prototype "
@ -501,71 +517,74 @@ msgstr ""
"{caller} precisa permissões explícitas de edição para apagar o protótipo "
"{prototype_key}."
#: prototypes/prototypes.py:606
#: prototypes/prototypes.py:605
#, python-brace-format
msgid "Found {num} matching prototypes among {module_prototypes}."
msgstr "Encontrados {num} protótipos correspondentes entre {module_prototypes}."
msgstr ""
"Encontrados {num} protótipos correspondentes entre {module_prototypes}."
#: prototypes/prototypes.py:766
#: prototypes/prototypes.py:765
msgid "No prototypes found."
msgstr "Não foram encontrados protótipos."
#: prototypes/prototypes.py:817
#: prototypes/prototypes.py:816
msgid "Prototype lacks a 'prototype_key'."
msgstr "Falta ao protótipo uma 'prototype_key'."
#: prototypes/prototypes.py:826
#: prototypes/prototypes.py:825
#, python-brace-format
msgid "Prototype {protkey} requires `typeclass` or 'prototype_parent'."
msgstr "Protótipo {protkey} precisa de `typeclass` ou 'prototype_parent'."
#: prototypes/prototypes.py:833
#: prototypes/prototypes.py:832
#, python-brace-format
msgid ""
"Prototype {protkey} can only be used as a mixin since it lacks 'typeclass' "
"or 'prototype_parent' keys."
msgstr ""
"Protótipo {protkey} pode apenas ser usado como mixin visto que não tem chaves 'typeclass' "
"ou 'prototype_parent'."
"Protótipo {protkey} pode apenas ser usado como mixin visto que não tem "
"chaves 'typeclass' ou 'prototype_parent'."
#: prototypes/prototypes.py:844
#: prototypes/prototypes.py:843
#, python-brace-format
msgid ""
"{err}: Prototype {protkey} is based on typeclass {typeclass}, which could "
"not be imported!"
msgstr ""
"{err}: Protótipo {protkey} é baseado no typeclass {typeclass}, que não foi possível "
"importar!"
"{err}: Protótipo {protkey} é baseado no typeclass {typeclass}, que não foi "
"possível importar!"
#: prototypes/prototypes.py:863
#: prototypes/prototypes.py:862
#, python-brace-format
msgid "Prototype {protkey} tries to parent itself."
msgstr "Protótipo {protkey} tenta ser o seu próprio pai."
#: prototypes/prototypes.py:869
#: prototypes/prototypes.py:868
#, python-brace-format
msgid ""
"Prototype {protkey}'s `prototype_parent` (named '{parent}') was not found."
msgstr ""
"O `prototype_parent` (chamado '{parent}') do protótipo {protkey} não foi encontrado."
"O `prototype_parent` (chamado '{parent}') do protótipo {protkey} não foi "
"encontrado."
#: prototypes/prototypes.py:877
#: prototypes/prototypes.py:875
#, python-brace-format
msgid "{protkey} has infinite nesting of prototypes."
msgstr "{protkey} tem um nesting infinito de protótipos."
#: prototypes/prototypes.py:902
#: prototypes/prototypes.py:900
#, python-brace-format
msgid ""
"Prototype {protkey} has no `typeclass` defined anywhere in its parent\n"
" chain. Add `typeclass`, or a `prototype_parent` pointing to a prototype "
"with a typeclass."
msgstr ""
"Protótipo {protkey} não teu um `typeclass` definido em lado algum na sua cadeia de parentagem.\n"
"Protótipo {protkey} não teu um `typeclass` definido em lado algum na sua "
"cadeia de parentagem.\n"
"Adicione `typeclass`, ou um `prototype_parent` a apontar para um protótipo "
"com um typeclass."
#: prototypes/spawner.py:497
#: prototypes/spawner.py:495
#, python-brace-format
msgid ""
"Diff contains non-dicts that are not on the form (old, new, action_to_take): "
@ -642,12 +661,16 @@ msgstr ""
"{servername} Protecção DoS está activa. Está na fila para se ligar em {num} "
"segundos ..."
#: server/server.py:157
#: server/server.py:156
#, fuzzy
#| msgid "Idle timeout exceeded, disconnecting."
msgid "idle timeout exceeded"
msgstr "Tempo de inatividade esgotado, desconectando."
#: server/server.py:177
msgid " (connection lost)"
msgstr ""
#: server/sessionhandler.py:41
msgid "Your client sent an incorrect UTF-8 sequence."
msgstr "O seu cliente enviou uma sequência UTF-8 incorrecta."
@ -668,7 +691,8 @@ msgstr "Tempo de inatividade esgotado, desconectando."
msgid ""
"Too many failed attempts; you must wait a few minutes before trying again."
msgstr ""
"Demasiadas tentativas falhadas; tem de aguardar alguns minutos antes de tentar outra vez."
"Demasiadas tentativas falhadas; tem de aguardar alguns minutos antes de "
"tentar outra vez."
#: server/validators.py:31
msgid "Sorry, that username is reserved."
@ -684,8 +708,8 @@ msgid ""
"{policy} From a terminal client, you can also use a phrase of multiple words "
"if you enclose the password in double quotes."
msgstr ""
"{policy} A partir de um cliente terminal, pode também usar uma frase de múltimas palavras "
"se envolver a password em aspas duplas."
"{policy} A partir de um cliente terminal, pode também usar uma frase de "
"múltimas palavras se envolver a password em aspas duplas."
#: utils/eveditor.py:68
msgid ""
@ -746,24 +770,27 @@ msgstr ""
" :UU - limpa todas as alterações e regressa ao estado inicial\n"
"\n"
" :dd <l> - apaga a(s) última(s) linha(s) <l>\n"
" :dw <l> <w> - apaga a palavra ou expressão regular <w> em todo o buffer ou na linha <l>\n"
" :dw <l> <w> - apaga a palavra ou expressão regular <w> em todo o buffer ou "
"na linha <l>\n"
" :DD - apaga todo o buffer\n"
"\n"
" :y <l> - copia a(s) <l> linha(s) para o buffer de cópia\n"
" :x <l> - corta a(s) <l> linha(s) e guarda-as no buffer de cópia\n"
" :p <l> - cola as linhas anteriormente copiadas directamente após <l>\n"
" :i <l> <txt> - insere o novo texto <txt> na linha <l>. A linha antiga irá mover-se para "
"baixo\n"
" :p <l> - cola as linhas anteriormente copiadas directamente após "
"<l>\n"
" :i <l> <txt> - insere o novo texto <txt> na linha <l>. A linha antiga irá "
"mover-se para baixo\n"
" :r <l> <txt> - substitui a linha <l> com o texto <txt>\n"
" :I <l> <txt> - insere texto no início da linha <l>\n"
" :A <l> <txt> - adiciona text no final da linha <l>\n"
"\n"
" :s <l> <w> <txt> - encontra/substitui a palavra ou expressão regular <w> no buffer ou na linha "
"<l>\n"
" :s <l> <w> <txt> - encontra/substitui a palavra ou expressão regular <w> no "
"buffer ou na linha <l>\n"
"\n"
" :j <l> <w> - justifica buffer ou linha <l>. <w> é f, c, l ou r. Por omissão é f "
"(full/cheio)\n"
" :f <l> - inunda-preenche todo o buffer ou a linha <l>: Equivalente a fazer :j left\n"
" :j <l> <w> - justifica buffer ou linha <l>. <w> é f, c, l ou r. Por omissão "
"é f (full/cheio)\n"
" :f <l> - inunda-preenche todo o buffer ou a linha <l>: Equivalente a "
"fazer :j left\n"
" :fi <l> - indenta todo o buffer ou a linha <l>\n"
" :fd <l> - desindenta todo o buffer ou a linha <l>\n"
"\n"
@ -808,7 +835,8 @@ msgstr ""
"\n"
"{error}\n"
"\n"
"|rErro no carregamento da função no buffer. Não foi possível carregar os dados iniciais.|n\n"
"|rErro no carregamento da função no buffer. Não foi possível carregar os "
"dados iniciais.|n\n"
#: utils/eveditor.py:136
#, python-brace-format
@ -861,9 +889,11 @@ msgstr ""
"\n"
"{error}\n"
"\n"
"|rO estado do editor não pode ser gravado para modo persistente. Mudando para\n"
"|rO estado do editor não pode ser gravado para modo persistente. Mudando "
"para\n"
"o modo não-persistente (o que significa que a sessão do editor não irá\n"
"sobreviver um eventual reload do servidor - por isso grava frequentemente!)|n\n"
"sobreviver um eventual reload do servidor - por isso grava frequentemente!)|"
"n\n"
#: utils/eveditor.py:167
msgid ""
@ -871,9 +901,9 @@ msgid ""
"EvEditor callbacks could not be pickled, for example because it's a class "
"method or is defined inside another function."
msgstr ""
"Erro no modo persistente do EvEditor. Tipicamente, isto é porque um ou mais dos "
"callbacks do EvEditor não puderam ser pickled, por exemplo porque é um método de classe "
"ou é definido dentro de outra função."
"Erro no modo persistente do EvEditor. Tipicamente, isto é porque um ou mais "
"dos callbacks do EvEditor não puderam ser pickled, por exemplo porque é um "
"método de classe ou é definido dentro de outra função."
#: utils/eveditor.py:173
msgid "Nothing to undo."
@ -1134,7 +1164,6 @@ msgstr "|wp|Wágina anterior|n"
msgid "|wn|Wext page|n"
msgstr "|Wpróxima pági|wn|Wa|n"
#: utils/evmenu.py:1689
msgid "Aborted."
msgstr "Abortado."
@ -1165,31 +1194,31 @@ msgstr "Havia várias correspondências."
msgid "Please be more specific."
msgstr "Por favor seja mais específico."
#: utils/utils.py:2121
#: utils/utils.py:2127
#, python-brace-format
msgid ""
"{obj}.{handlername} is a handler and can't be set directly. To add values, "
"use `{obj}.{handlername}.add()` instead."
msgstr ""
"{obj}.{handlername} é um handler e não pode ser definido directamente. Para adicionar valores, "
"use `{obj}.{handlername}.add()`."
"{obj}.{handlername} é um handler e não pode ser definido directamente. Para "
"adicionar valores, use `{obj}.{handlername}.add()`."
#: utils/utils.py:2131
#: utils/utils.py:2137
#, python-brace-format
msgid ""
"{obj}.{handlername} is a handler and can't be deleted directly. To remove "
"values, use `{obj}.{handlername}.remove()` instead."
msgstr ""
"{obj}.{handlername} é um handler e não pode ser apagado directamente. Para remover "
"valores, use `{obj}.{handlername}.remove()`."
"{obj}.{handlername} é um handler e não pode ser apagado directamente. Para "
"remover valores, use `{obj}.{handlername}.remove()`."
#: utils/utils.py:2272
#: utils/utils.py:2278
#, fuzzy, python-brace-format
#| msgid "Could not find '%s'."
msgid "Could not find '{query}'."
msgstr "Não foi possível encontrar '%s'."
#: utils/utils.py:2279
#: utils/utils.py:2285
#, fuzzy, python-brace-format
#| msgid "More than one match for '%s' (please narrow target):"
msgid "More than one match for '{query}' (please narrow target):\n"
@ -1244,7 +1273,8 @@ msgstr "Tem de indicar um número inteiro para {option_key}!"
#: utils/validatorfuncs.py:169
#, python-brace-format
msgid "Could not convert '{entry}' to a whole number for {option_key}!"
msgstr "Não foi possível converter '{entry}' num número inteiro para {option_key}!"
msgstr ""
"Não foi possível converter '{entry}' num número inteiro para {option_key}!"
#: utils/validatorfuncs.py:180
#, python-brace-format
@ -1259,7 +1289,8 @@ msgstr "{option_key} deve ser um número inteiro maior ou igual a 0!"
#: utils/validatorfuncs.py:210
#, python-brace-format
msgid "Must enter a true/false input for {option_key}. Accepts {alternatives}."
msgstr "Deve inserir um input true/false para {option_key}. Aceita {alternatives}."
msgstr ""
"Deve inserir um input true/false para {option_key}. Aceita {alternatives}."
#: utils/validatorfuncs.py:240
#, python-brace-format

View file

@ -6,7 +6,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Evennia Russian Translation v0.1\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-10-02 09:28+0000\n"
"POT-Creation-Date: 2022-10-29 18:53+0000\n"
"PO-Revision-Date: 2020-04-19 18:32+0000\n"
"Last-Translator: 3eluk\n"
"Language-Team: Russian (Russia)\n"
@ -31,64 +31,64 @@ msgid ""
"You cannot control any more puppets (max {_MAX_NR_SIMULTANEOUS_PUPPETS})"
msgstr ""
#: accounts/accounts.py:552
#: accounts/accounts.py:555
msgid "Too many login failures; please try again in a few minutes."
msgstr ""
#: accounts/accounts.py:565 accounts/accounts.py:829
#: accounts/accounts.py:568 accounts/accounts.py:832
msgid ""
"|rYou have been banned and cannot continue from here.\n"
"If you feel this ban is in error, please email an admin.|x"
msgstr ""
#: accounts/accounts.py:577
#: accounts/accounts.py:580
msgid "Username and/or password is incorrect."
msgstr ""
#: accounts/accounts.py:584
#: accounts/accounts.py:587
msgid "Too many authentication failures."
msgstr ""
#: accounts/accounts.py:800
#: accounts/accounts.py:803
msgid ""
"You are creating too many accounts. Please log into an existing account."
msgstr ""
#: accounts/accounts.py:846
#: accounts/accounts.py:849
msgid ""
"There was an error creating the Account. If this problem persists, contact "
"an admin."
msgstr ""
#: accounts/accounts.py:882 accounts/accounts.py:1798
#: accounts/accounts.py:885 accounts/accounts.py:1801
msgid "An error occurred. Please e-mail an admin if the problem persists."
msgstr ""
#: accounts/accounts.py:915
#: accounts/accounts.py:918
msgid "Account being deleted."
msgstr "Аккаунт удаляется."
#: accounts/accounts.py:1472 accounts/accounts.py:1816
#: accounts/accounts.py:1475 accounts/accounts.py:1819
#, python-brace-format
msgid "|G{key} connected|n"
msgstr ""
#: accounts/accounts.py:1478
#: accounts/accounts.py:1481
#, fuzzy
#| msgid "The destination doesn't exist."
msgid "The Character does not exist."
msgstr "Такой точки назначения нету."
#: accounts/accounts.py:1517
#: accounts/accounts.py:1520
#, python-brace-format
msgid "|R{key} disconnected{reason}|n"
msgstr ""
#: accounts/accounts.py:1751
#: accounts/accounts.py:1754
msgid "Guest accounts are not enabled on this server."
msgstr ""
#: accounts/accounts.py:1761
#: accounts/accounts.py:1764
msgid "All guest accounts are in use. Please try again later."
msgstr ""
@ -290,97 +290,97 @@ msgstr ""
msgid "Lock: '{lockdef}' has no valid lock functions."
msgstr ""
#: objects/objects.py:855
#: objects/objects.py:856
#, fuzzy, python-brace-format
#| msgid "Couldn't perform move ('%s'). Contact an admin."
msgid "Couldn't perform move ({err}). Contact an admin."
msgstr "Не удалось выполнить действие ('%s'). Свяжитесь с администратором."
#: objects/objects.py:865
#: objects/objects.py:866
msgid "The destination doesn't exist."
msgstr "Такой точки назначения нету."
#: objects/objects.py:977
#: objects/objects.py:978
#, fuzzy, python-brace-format
#| msgid "Could not find default home '(#%d)'."
msgid "Could not find default home '(#{dbid})'."
msgstr "Не обнаружен дом по умолчанию '(#%d)'."
#: objects/objects.py:991
#: objects/objects.py:992
msgid "Something went wrong! You are dumped into nowhere. Contact an admin."
msgstr ""
"Что-то пошло не так! Тебя выбрасывает в пустоту. Свяжитесь с администратором."
#: objects/objects.py:1144
#: objects/objects.py:1145
#, fuzzy, python-brace-format
#| msgid "Your character %s has been destroyed."
msgid "Your character {key} has been destroyed."
msgstr "Ваш персонаж %s был уничтожен."
#: objects/objects.py:1852
#: objects/objects.py:1853
#, python-brace-format
msgid "You now have {name} in your possession."
msgstr ""
#: objects/objects.py:1862
#: objects/objects.py:1863
#, python-brace-format
msgid "{object} arrives to {destination} from {origin}."
msgstr ""
#: objects/objects.py:1864
#: objects/objects.py:1865
#, python-brace-format
msgid "{object} arrives to {destination}."
msgstr ""
#: objects/objects.py:2529
#: objects/objects.py:2530
msgid "Invalid character name."
msgstr ""
#: objects/objects.py:2548
#: objects/objects.py:2549
msgid "There are too many characters associated with this account."
msgstr ""
#: objects/objects.py:2574
#: objects/objects.py:2575
#, fuzzy
#| msgid "This is User #1."
msgid "This is a character."
msgstr "Это Пользователь №1."
#: objects/objects.py:2663
#: objects/objects.py:2664
#, python-brace-format
msgid "|r{obj} has no location and no home is set.|n"
msgstr ""
#: objects/objects.py:2681
#: objects/objects.py:2682
#, python-brace-format
msgid ""
"\n"
"You become |c{name}|n.\n"
msgstr ""
#: objects/objects.py:2686
#: objects/objects.py:2687
#, python-brace-format
msgid "{name} has entered the game."
msgstr ""
#: objects/objects.py:2712
#: objects/objects.py:2716
#, python-brace-format
msgid "{name} has left the game."
msgid "{name} has left the game{reason}."
msgstr ""
#: objects/objects.py:2831
#: objects/objects.py:2838
#, fuzzy
#| msgid "This is User #1."
msgid "This is a room."
msgstr "Это Пользователь №1."
#: objects/objects.py:3038
#: objects/objects.py:3045
#, fuzzy
#| msgid "This is User #1."
msgid "This is an exit."
msgstr "Это Пользователь №1."
#: objects/objects.py:3135
#: objects/objects.py:3142
msgid "You cannot go there."
msgstr ""
@ -392,83 +392,83 @@ msgstr ""
msgid "Warning"
msgstr ""
#: prototypes/prototypes.py:390
#: prototypes/prototypes.py:389
msgid "Prototype requires a prototype_key"
msgstr ""
#: prototypes/prototypes.py:398 prototypes/prototypes.py:467
#: prototypes/prototypes.py:1087
#: prototypes/prototypes.py:397 prototypes/prototypes.py:466
#: prototypes/prototypes.py:1092
#, python-brace-format
msgid "{protkey} is a read-only prototype (defined as code in {module})."
msgstr ""
#: prototypes/prototypes.py:400 prototypes/prototypes.py:469
#: prototypes/prototypes.py:1089
#: prototypes/prototypes.py:399 prototypes/prototypes.py:468
#: prototypes/prototypes.py:1094
#, python-brace-format
msgid "{protkey} is a read-only prototype (passed directly as a dict)."
msgstr ""
#: prototypes/prototypes.py:476
#: prototypes/prototypes.py:475
#, python-brace-format
msgid "Prototype {prototype_key} was not found."
msgstr ""
#: prototypes/prototypes.py:484
#: prototypes/prototypes.py:483
#, python-brace-format
msgid ""
"{caller} needs explicit 'edit' permissions to delete prototype "
"{prototype_key}."
msgstr ""
#: prototypes/prototypes.py:606
#: prototypes/prototypes.py:605
#, python-brace-format
msgid "Found {num} matching prototypes among {module_prototypes}."
msgstr ""
#: prototypes/prototypes.py:766
#: prototypes/prototypes.py:765
msgid "No prototypes found."
msgstr ""
#: prototypes/prototypes.py:817
#: prototypes/prototypes.py:816
msgid "Prototype lacks a 'prototype_key'."
msgstr ""
#: prototypes/prototypes.py:826
#: prototypes/prototypes.py:825
#, python-brace-format
msgid "Prototype {protkey} requires `typeclass` or 'prototype_parent'."
msgstr ""
#: prototypes/prototypes.py:833
#: prototypes/prototypes.py:832
#, python-brace-format
msgid ""
"Prototype {protkey} can only be used as a mixin since it lacks 'typeclass' "
"or 'prototype_parent' keys."
msgstr ""
#: prototypes/prototypes.py:844
#: prototypes/prototypes.py:843
#, python-brace-format
msgid ""
"{err}: Prototype {protkey} is based on typeclass {typeclass}, which could "
"not be imported!"
msgstr ""
#: prototypes/prototypes.py:863
#: prototypes/prototypes.py:862
#, python-brace-format
msgid "Prototype {protkey} tries to parent itself."
msgstr ""
#: prototypes/prototypes.py:869
#: prototypes/prototypes.py:868
#, python-brace-format
msgid ""
"Prototype {protkey}'s `prototype_parent` (named '{parent}') was not found."
msgstr ""
#: prototypes/prototypes.py:877
#: prototypes/prototypes.py:875
#, python-brace-format
msgid "{protkey} has infinite nesting of prototypes."
msgstr ""
#: prototypes/prototypes.py:902
#: prototypes/prototypes.py:900
#, python-brace-format
msgid ""
"Prototype {protkey} has no `typeclass` defined anywhere in its parent\n"
@ -476,7 +476,7 @@ msgid ""
"with a typeclass."
msgstr ""
#: prototypes/spawner.py:497
#: prototypes/spawner.py:495
#, python-brace-format
msgid ""
"Diff contains non-dicts that are not on the form (old, new, action_to_take): "
@ -540,10 +540,14 @@ msgid ""
"seconds ..."
msgstr ""
#: server/server.py:157
#: server/server.py:156
msgid "idle timeout exceeded"
msgstr "время бездействия превышено"
#: server/server.py:177
msgid " (connection lost)"
msgstr ""
#: server/sessionhandler.py:41
msgid "Your client sent an incorrect UTF-8 sequence."
msgstr ""
@ -991,27 +995,27 @@ msgstr "Здесь было несколько совпадений."
msgid "Please be more specific."
msgstr ""
#: utils/utils.py:2121
#: utils/utils.py:2127
#, python-brace-format
msgid ""
"{obj}.{handlername} is a handler and can't be set directly. To add values, "
"use `{obj}.{handlername}.add()` instead."
msgstr ""
#: utils/utils.py:2131
#: utils/utils.py:2137
#, python-brace-format
msgid ""
"{obj}.{handlername} is a handler and can't be deleted directly. To remove "
"values, use `{obj}.{handlername}.remove()` instead."
msgstr ""
#: utils/utils.py:2272
#: utils/utils.py:2278
#, fuzzy, python-brace-format
#| msgid "Could not find '%s'."
msgid "Could not find '{query}'."
msgstr "Не обнаружено '%s'."
#: utils/utils.py:2279
#: utils/utils.py:2285
#, fuzzy, python-brace-format
#| msgid "More than one match for '%s' (please narrow target):\n"
msgid "More than one match for '{query}' (please narrow target):\n"

View file

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Evennia 1.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-10-02 09:28+0000\n"
"POT-Creation-Date: 2022-10-29 18:53+0000\n"
"PO-Revision-Date: 2021-05-29 17:54+0200\n"
"Last-Translator: Griatch <griatch@gmail.com>\n"
"Language-Team: Swedish <>\n"
@ -27,13 +27,15 @@ msgstr "|c{key}|R styrs redan av ett annat Spelarkonto."
#, python-brace-format
msgid ""
"You cannot control any more puppets (max {_MAX_NR_SIMULTANEOUS_PUPPETS})"
msgstr "Du kan inte kontrollera fler karaktärer samtidigt (max {_MAX_NR_SIMULTANEOUS_PUPPETS})"
msgstr ""
"Du kan inte kontrollera fler karaktärer samtidigt (max "
"{_MAX_NR_SIMULTANEOUS_PUPPETS})"
#: accounts/accounts.py:552
#: accounts/accounts.py:555
msgid "Too many login failures; please try again in a few minutes."
msgstr "För många fel under inloggning. Vänligen försök igen om några minuter."
#: accounts/accounts.py:565 accounts/accounts.py:829
#: accounts/accounts.py:568 accounts/accounts.py:832
msgid ""
"|rYou have been banned and cannot continue from here.\n"
"If you feel this ban is in error, please email an admin.|x"
@ -41,22 +43,22 @@ msgstr ""
"|rDu har blivit bannlyst och kan inte fortsätta.\n"
"Om du anser detta är felaktigt, vänligen email:a en administrator.|x"
#: accounts/accounts.py:577
#: accounts/accounts.py:580
msgid "Username and/or password is incorrect."
msgstr "Användarnamn och/eller lösenord är felaktigt."
#: accounts/accounts.py:584
#: accounts/accounts.py:587
msgid "Too many authentication failures."
msgstr "För många auktoriserings-fel."
#: accounts/accounts.py:800
#: accounts/accounts.py:803
msgid ""
"You are creating too many accounts. Please log into an existing account."
msgstr ""
"Du håller pä att skapa för många konton. Vänligen anslut till ett "
"existerande konto."
#: accounts/accounts.py:846
#: accounts/accounts.py:849
msgid ""
"There was an error creating the Account. If this problem persists, contact "
"an admin."
@ -64,33 +66,33 @@ msgstr ""
"Ett fel uppstod när kontot skulle skapas. Kontakta en administrator om detta "
"fel består."
#: accounts/accounts.py:882 accounts/accounts.py:1798
#: accounts/accounts.py:885 accounts/accounts.py:1801
msgid "An error occurred. Please e-mail an admin if the problem persists."
msgstr "Ett fel uppstod. Om felet består, vänligen email:a en administrator."
#: accounts/accounts.py:915
#: accounts/accounts.py:918
msgid "Account being deleted."
msgstr "Kontot raderas."
#: accounts/accounts.py:1472 accounts/accounts.py:1816
#: accounts/accounts.py:1475 accounts/accounts.py:1819
#, python-brace-format
msgid "|G{key} connected|n"
msgstr "|G{key} anslöt|n"
#: accounts/accounts.py:1478
#: accounts/accounts.py:1481
msgid "The Character does not exist."
msgstr "Karaktären existerar inte."
#: accounts/accounts.py:1517
#: accounts/accounts.py:1520
#, python-brace-format
msgid "|R{key} disconnected{reason}|n"
msgstr "|R{key} frånkopplad{reason}|n"
#: accounts/accounts.py:1751
#: accounts/accounts.py:1754
msgid "Guest accounts are not enabled on this server."
msgstr "Gästkonton är inte aktiverade på denna server."
#: accounts/accounts.py:1761
#: accounts/accounts.py:1764
msgid "All guest accounts are in use. Please try again later."
msgstr "Alla gästkonton används redan. Vänligen försök senare."
@ -337,64 +339,64 @@ msgstr "Lås: '{lockdef}' has icke-matchande parenteser."
msgid "Lock: '{lockdef}' has no valid lock functions."
msgstr "Lås: '{lockdef}' innehåller inga acceptabla låsfunktioner."
#: objects/objects.py:855
#: objects/objects.py:856
#, python-brace-format
msgid "Couldn't perform move ({err}). Contact an admin."
msgstr "Kunde inte utföra föflyttningen ('{err}'). Kontakta en admininstrator."
#: objects/objects.py:865
#: objects/objects.py:866
msgid "The destination doesn't exist."
msgstr "Destinationen existerar inte."
#: objects/objects.py:977
#: objects/objects.py:978
#, python-brace-format
msgid "Could not find default home '(#{dbid})'."
msgstr "Kunde inte hitta standard-hem '(#{dbid})'."
#: objects/objects.py:991
#: objects/objects.py:992
msgid "Something went wrong! You are dumped into nowhere. Contact an admin."
msgstr ""
"Nåtgot gick fel! Du har blivit flyttat till en icke-existerande plats. "
"Kontakta en admininstrator."
#: objects/objects.py:1144
#: objects/objects.py:1145
#, python-brace-format
msgid "Your character {key} has been destroyed."
msgstr "Din karaktär {key} har raderats."
#: objects/objects.py:1852
#: objects/objects.py:1853
#, python-brace-format
msgid "You now have {name} in your possession."
msgstr "Du har nu {name}."
#: objects/objects.py:1862
#: objects/objects.py:1863
#, python-brace-format
msgid "{object} arrives to {destination} from {origin}."
msgstr "{object} anländer till {destination} från {origin}."
#: objects/objects.py:1864
#: objects/objects.py:1865
#, python-brace-format
msgid "{object} arrives to {destination}."
msgstr "{object} anländer till {destination}."
#: objects/objects.py:2529
#: objects/objects.py:2530
msgid "Invalid character name."
msgstr "Inkorrekt karaktärsnamn."
#: objects/objects.py:2548
#: objects/objects.py:2549
msgid "There are too many characters associated with this account."
msgstr "Det finns för många karaktärer associerade till detta konto."
#: objects/objects.py:2574
#: objects/objects.py:2575
msgid "This is a character."
msgstr "Detta är en karaktär."
#: objects/objects.py:2663
#: objects/objects.py:2664
#, python-brace-format
msgid "|r{obj} has no location and no home is set.|n"
msgstr "|r{obj} har ingen location och inget home är satt.|n"
#: objects/objects.py:2681
#: objects/objects.py:2682
#, python-brace-format
msgid ""
"\n"
@ -403,25 +405,26 @@ msgstr ""
"\n"
"Du blir |c{name}|n.\n"
#: objects/objects.py:2686
#: objects/objects.py:2687
#, python-brace-format
msgid "{name} has entered the game."
msgstr "{name} har anslutit."
#: objects/objects.py:2712
#, python-brace-format
msgid "{name} has left the game."
#: objects/objects.py:2716
#, fuzzy, python-brace-format
#| msgid "{name} has left the game."
msgid "{name} has left the game{reason}."
msgstr "{name} lämnade spelet."
#: objects/objects.py:2831
#: objects/objects.py:2838
msgid "This is a room."
msgstr "Detta är ett rum."
#: objects/objects.py:3038
#: objects/objects.py:3045
msgid "This is an exit."
msgstr "Detta är en utgång."
#: objects/objects.py:3135
#: objects/objects.py:3142
msgid "You cannot go there."
msgstr "Du kan inte gå dit."
@ -433,20 +436,20 @@ msgstr "Fel"
msgid "Warning"
msgstr "Varning"
#: prototypes/prototypes.py:390
#: prototypes/prototypes.py:389
msgid "Prototype requires a prototype_key"
msgstr "Prototypen kräver en prototype_key"
#: prototypes/prototypes.py:398 prototypes/prototypes.py:467
#: prototypes/prototypes.py:1087
#: prototypes/prototypes.py:397 prototypes/prototypes.py:466
#: prototypes/prototypes.py:1092
#, python-brace-format
msgid "{protkey} is a read-only prototype (defined as code in {module})."
msgstr ""
"{protkey} är en prototyp som enbart är läsbar (definierad som kod i "
"{module})."
#: prototypes/prototypes.py:400 prototypes/prototypes.py:469
#: prototypes/prototypes.py:1089
#: prototypes/prototypes.py:399 prototypes/prototypes.py:468
#: prototypes/prototypes.py:1094
#, fuzzy, python-brace-format
#| msgid "{protkey} is a read-only prototype (defined as code in {module})."
msgid "{protkey} is a read-only prototype (passed directly as a dict)."
@ -454,12 +457,12 @@ msgstr ""
"{protkey} är en prototyp som enbart är läsbar (definierad som kod i "
"{module})."
#: prototypes/prototypes.py:476
#: prototypes/prototypes.py:475
#, python-brace-format
msgid "Prototype {prototype_key} was not found."
msgstr "Prototypen {prototype_key} hittades inte."
#: prototypes/prototypes.py:484
#: prototypes/prototypes.py:483
#, python-brace-format
msgid ""
"{caller} needs explicit 'edit' permissions to delete prototype "
@ -467,26 +470,26 @@ msgid ""
msgstr ""
"{caller} behöver 'edit'-permission för att radera prototypen {prototype_key}."
#: prototypes/prototypes.py:606
#: prototypes/prototypes.py:605
#, fuzzy, python-brace-format
#| msgid "Found {num} matching prototypes {module_prototypes}."
msgid "Found {num} matching prototypes among {module_prototypes}."
msgstr "Hittade {num} matchande prototyper {module_prototypes}."
#: prototypes/prototypes.py:766
#: prototypes/prototypes.py:765
msgid "No prototypes found."
msgstr "Ingen prototype hittades."
#: prototypes/prototypes.py:817
#: prototypes/prototypes.py:816
msgid "Prototype lacks a 'prototype_key'."
msgstr "Prototypen saknar en 'prototype_key'."
#: prototypes/prototypes.py:826
#: prototypes/prototypes.py:825
#, python-brace-format
msgid "Prototype {protkey} requires `typeclass` or 'prototype_parent'."
msgstr "Prototype {protkey} kräver 'typeclass' eller 'prototype_parent'."
#: prototypes/prototypes.py:833
#: prototypes/prototypes.py:832
#, python-brace-format
msgid ""
"Prototype {protkey} can only be used as a mixin since it lacks 'typeclass' "
@ -495,7 +498,7 @@ msgstr ""
"Prototypen {protkey} kan bara användas som en mixin eftersom den saknar "
"'typeclass'- eller 'prototype_parent'-nycklar."
#: prototypes/prototypes.py:844
#: prototypes/prototypes.py:843
#, python-brace-format
msgid ""
"{err}: Prototype {protkey} is based on typeclass {typeclass}, which could "
@ -504,22 +507,23 @@ msgstr ""
"{err}: Prototypen {protkey} är baserad på typeclassen {typeclass}, vilken "
"inte kunde importeras!"
#: prototypes/prototypes.py:863
#: prototypes/prototypes.py:862
#, python-brace-format
msgid "Prototype {protkey} tries to parent itself."
msgstr "Prototypen {protkey} försöker bli sin egen förälder."
#: prototypes/prototypes.py:869
#: prototypes/prototypes.py:868
#, fuzzy, python-brace-format
msgid "Prototype {protkey}'s prototype_parent '{parent}' was not found."
msgid ""
"Prototype {protkey}'s `prototype_parent` (named '{parent}') was not found."
msgstr "Prototypen {protkey} har in okänd 'prototype_parent' ({parent})."
#: prototypes/prototypes.py:877
#: prototypes/prototypes.py:875
#, python-brace-format
msgid "{protkey} has infinite nesting of prototypes."
msgstr "{protkey} har en oändlig nästling av prototyper."
#: prototypes/prototypes.py:902
#: prototypes/prototypes.py:900
#, python-brace-format
msgid ""
"Prototype {protkey} has no `typeclass` defined anywhere in its parent\n"
@ -530,7 +534,7 @@ msgstr ""
"Lägg till 'typeclass' eller en 'prototype_parent' som pekar på en prototyp "
"med 'typeclass'."
#: prototypes/spawner.py:497
#: prototypes/spawner.py:495
#, python-brace-format
msgid ""
"Diff contains non-dicts that are not on the form (old, new, action_to_take): "
@ -561,7 +565,8 @@ msgid ""
"help, want to contribute, report issues or just join the community.\n"
"\n"
"As a privileged user, write |wbatchcommand tutorial_world.build|n to build\n"
"tutorial content. Once built, try |wintro|n for starting help and |wtutorial|n to\n"
"tutorial content. Once built, try |wintro|n for starting help and |wtutorial|"
"n to\n"
"play the demo game.\n"
msgstr ""
"\n"
@ -570,8 +575,8 @@ msgstr ""
"behöver hjälp, vill hjälpa till, rapportera fel eller bara gå med i "
"utvecklar-communityn.\n"
"Som konto #1 kan du skapa en demo/tutorial-area med '|wbatchcommand "
"tutorial_world.build|n'. Du kan sedan testa |wintro|n for hjälp och |wtutorial|n för "
"att spela igenom demot.\n"
"tutorial_world.build|n'. Du kan sedan testa |wintro|n for hjälp och |"
"wtutorial|n för att spela igenom demot.\n"
#: server/initial_setup.py:108
msgid "This is User #1."
@ -582,6 +587,7 @@ msgid "Limbo"
msgstr "Limbo"
#: server/portal/portalsessionhandler.py:41
#, python-brace-format
msgid ""
"{servername} DoS protection is active.You are queued to connect in {num} "
"seconds ..."
@ -589,10 +595,16 @@ msgstr ""
"{servername} DoS-skydd är aktiv. Du har hamnat i kö och ansluter om {num} "
"sekunder ..."
#: server/server.py:157
#: server/server.py:156
msgid "idle timeout exceeded"
msgstr "Timeout. Kopplar ur"
#: server/server.py:177
#, fuzzy
#| msgid "Connection lost: %s"
msgid " (connection lost)"
msgstr "Uppkopplingen förlorades: %s"
#: server/sessionhandler.py:41
msgid "Your client sent an incorrect UTF-8 sequence."
msgstr "Din klient skickade en inkorrekt UTF-8-sekvens."
@ -1116,28 +1128,30 @@ msgstr "Det fanns många träffar:"
msgid "Please be more specific."
msgstr "Försök vara mer specifik."
#: utils/utils.py:2121
#: utils/utils.py:2127
#, python-brace-format
msgid ""
"{obj}.{handlername} is a handler and can't be set directly. To add values, "
"use `{obj}.{handlername}.add()` instead."
msgstr "{obj}.{handlername} är en 'handler' och kan inte ges ett direkt värde. För "
msgstr ""
"{obj}.{handlername} är en 'handler' och kan inte ges ett direkt värde. För "
"att sätta ett värde, använd `{obj}.{handlername} istället."
#: utils/utils.py:2131
#: utils/utils.py:2137
#, python-brace-format
msgid ""
"{obj}.{handlername} is a handler and can't be deleted directly. To remove "
"values, use `{obj}.{handlername}.remove()` instead."
msgstr "{obj}.{handlername} är en 'handler' och kan inte raderas. För att ta bort "
msgstr ""
"{obj}.{handlername} är en 'handler' och kan inte raderas. För att ta bort "
"värden, använd `{obj}.{handlername}.remove()` istället."
#: utils/utils.py:2272
#: utils/utils.py:2278
#, python-brace-format
msgid "Could not find '{query}'."
msgstr "Kunde inte hitta '{query}'."
#: utils/utils.py:2279
#: utils/utils.py:2285
#, python-brace-format
msgid "More than one match for '{query}' (please narrow target):\n"
msgstr "Mer än en träff för '{query}' (försök vara mer specifik):\n"
@ -1403,9 +1417,6 @@ msgstr "Du har inte rättigheter att se eller ändra någonting."
#~ msgid "Successfully authenticated to the '%s' network."
#~ msgstr "Identifierade sig framgångsrikt till nätverket '%s'."
#~ msgid "Connection lost: %s"
#~ msgstr "Uppkopplingen förlorades: %s"
#~ msgid "Unknown"
#~ msgstr "Okänd"

View file

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-10-02 09:28+0000\n"
"POT-Creation-Date: 2022-10-29 18:53+0000\n"
"PO-Revision-Date: 2019-05-03 17:04+0800\n"
"Last-Translator: \n"
"Language-Team: \n"
@ -27,64 +27,64 @@ msgid ""
"You cannot control any more puppets (max {_MAX_NR_SIMULTANEOUS_PUPPETS})"
msgstr ""
#: accounts/accounts.py:552
#: accounts/accounts.py:555
msgid "Too many login failures; please try again in a few minutes."
msgstr ""
#: accounts/accounts.py:565 accounts/accounts.py:829
#: accounts/accounts.py:568 accounts/accounts.py:832
msgid ""
"|rYou have been banned and cannot continue from here.\n"
"If you feel this ban is in error, please email an admin.|x"
msgstr ""
#: accounts/accounts.py:577
#: accounts/accounts.py:580
msgid "Username and/or password is incorrect."
msgstr ""
#: accounts/accounts.py:584
#: accounts/accounts.py:587
msgid "Too many authentication failures."
msgstr ""
#: accounts/accounts.py:800
#: accounts/accounts.py:803
msgid ""
"You are creating too many accounts. Please log into an existing account."
msgstr ""
#: accounts/accounts.py:846
#: accounts/accounts.py:849
msgid ""
"There was an error creating the Account. If this problem persists, contact "
"an admin."
msgstr ""
#: accounts/accounts.py:882 accounts/accounts.py:1798
#: accounts/accounts.py:885 accounts/accounts.py:1801
msgid "An error occurred. Please e-mail an admin if the problem persists."
msgstr ""
#: accounts/accounts.py:915
#: accounts/accounts.py:918
msgid "Account being deleted."
msgstr "用户已删除。"
#: accounts/accounts.py:1472 accounts/accounts.py:1816
#: accounts/accounts.py:1475 accounts/accounts.py:1819
#, python-brace-format
msgid "|G{key} connected|n"
msgstr ""
#: accounts/accounts.py:1478
#: accounts/accounts.py:1481
#, fuzzy
#| msgid "The destination doesn't exist."
msgid "The Character does not exist."
msgstr "目的地不存在。"
#: accounts/accounts.py:1517
#: accounts/accounts.py:1520
#, python-brace-format
msgid "|R{key} disconnected{reason}|n"
msgstr ""
#: accounts/accounts.py:1751
#: accounts/accounts.py:1754
msgid "Guest accounts are not enabled on this server."
msgstr ""
#: accounts/accounts.py:1761
#: accounts/accounts.py:1764
msgid "All guest accounts are in use. Please try again later."
msgstr ""
@ -318,96 +318,96 @@ msgstr "Lock: '{lockdef}' 英文括号不匹配。"
msgid "Lock: '{lockdef}' has no valid lock functions."
msgstr "Lock: '{lockdef}' 缺少合法Lock函数。"
#: objects/objects.py:855
#: objects/objects.py:856
#, fuzzy, python-brace-format
#| msgid "Couldn't perform move ('%s'). Contact an admin."
msgid "Couldn't perform move ({err}). Contact an admin."
msgstr "无法做出行动 '%s')。请联系管理员。"
#: objects/objects.py:865
#: objects/objects.py:866
msgid "The destination doesn't exist."
msgstr "目的地不存在。"
#: objects/objects.py:977
#: objects/objects.py:978
#, fuzzy, python-brace-format
#| msgid "Could not find default home '(#%d)'."
msgid "Could not find default home '(#{dbid})'."
msgstr "无法定位默认寓所 '(#%d)' 。"
#: objects/objects.py:991
#: objects/objects.py:992
msgid "Something went wrong! You are dumped into nowhere. Contact an admin."
msgstr "出现错误!您进入了错误的地点。请联系管理员。"
#: objects/objects.py:1144
#: objects/objects.py:1145
#, fuzzy, python-brace-format
#| msgid "Your character %s has been destroyed."
msgid "Your character {key} has been destroyed."
msgstr "您的角色 %s 被摧毁了。"
#: objects/objects.py:1852
#: objects/objects.py:1853
#, python-brace-format
msgid "You now have {name} in your possession."
msgstr ""
#: objects/objects.py:1862
#: objects/objects.py:1863
#, python-brace-format
msgid "{object} arrives to {destination} from {origin}."
msgstr ""
#: objects/objects.py:1864
#: objects/objects.py:1865
#, python-brace-format
msgid "{object} arrives to {destination}."
msgstr ""
#: objects/objects.py:2529
#: objects/objects.py:2530
msgid "Invalid character name."
msgstr ""
#: objects/objects.py:2548
#: objects/objects.py:2549
msgid "There are too many characters associated with this account."
msgstr ""
#: objects/objects.py:2574
#: objects/objects.py:2575
#, fuzzy
#| msgid "This is User #1."
msgid "This is a character."
msgstr "这是管理员。"
#: objects/objects.py:2663
#: objects/objects.py:2664
#, python-brace-format
msgid "|r{obj} has no location and no home is set.|n"
msgstr ""
#: objects/objects.py:2681
#: objects/objects.py:2682
#, python-brace-format
msgid ""
"\n"
"You become |c{name}|n.\n"
msgstr ""
#: objects/objects.py:2686
#: objects/objects.py:2687
#, python-brace-format
msgid "{name} has entered the game."
msgstr ""
#: objects/objects.py:2712
#: objects/objects.py:2716
#, python-brace-format
msgid "{name} has left the game."
msgid "{name} has left the game{reason}."
msgstr ""
#: objects/objects.py:2831
#: objects/objects.py:2838
#, fuzzy
#| msgid "This is User #1."
msgid "This is a room."
msgstr "这是管理员。"
#: objects/objects.py:3038
#: objects/objects.py:3045
#, fuzzy
#| msgid "This is User #1."
msgid "This is an exit."
msgstr "这是管理员。"
#: objects/objects.py:3135
#: objects/objects.py:3142
msgid "You cannot go there."
msgstr ""
@ -419,83 +419,83 @@ msgstr ""
msgid "Warning"
msgstr ""
#: prototypes/prototypes.py:390
#: prototypes/prototypes.py:389
msgid "Prototype requires a prototype_key"
msgstr ""
#: prototypes/prototypes.py:398 prototypes/prototypes.py:467
#: prototypes/prototypes.py:1087
#: prototypes/prototypes.py:397 prototypes/prototypes.py:466
#: prototypes/prototypes.py:1092
#, python-brace-format
msgid "{protkey} is a read-only prototype (defined as code in {module})."
msgstr ""
#: prototypes/prototypes.py:400 prototypes/prototypes.py:469
#: prototypes/prototypes.py:1089
#: prototypes/prototypes.py:399 prototypes/prototypes.py:468
#: prototypes/prototypes.py:1094
#, python-brace-format
msgid "{protkey} is a read-only prototype (passed directly as a dict)."
msgstr ""
#: prototypes/prototypes.py:476
#: prototypes/prototypes.py:475
#, python-brace-format
msgid "Prototype {prototype_key} was not found."
msgstr ""
#: prototypes/prototypes.py:484
#: prototypes/prototypes.py:483
#, python-brace-format
msgid ""
"{caller} needs explicit 'edit' permissions to delete prototype "
"{prototype_key}."
msgstr ""
#: prototypes/prototypes.py:606
#: prototypes/prototypes.py:605
#, python-brace-format
msgid "Found {num} matching prototypes among {module_prototypes}."
msgstr ""
#: prototypes/prototypes.py:766
#: prototypes/prototypes.py:765
msgid "No prototypes found."
msgstr ""
#: prototypes/prototypes.py:817
#: prototypes/prototypes.py:816
msgid "Prototype lacks a 'prototype_key'."
msgstr ""
#: prototypes/prototypes.py:826
#: prototypes/prototypes.py:825
#, python-brace-format
msgid "Prototype {protkey} requires `typeclass` or 'prototype_parent'."
msgstr ""
#: prototypes/prototypes.py:833
#: prototypes/prototypes.py:832
#, python-brace-format
msgid ""
"Prototype {protkey} can only be used as a mixin since it lacks 'typeclass' "
"or 'prototype_parent' keys."
msgstr ""
#: prototypes/prototypes.py:844
#: prototypes/prototypes.py:843
#, python-brace-format
msgid ""
"{err}: Prototype {protkey} is based on typeclass {typeclass}, which could "
"not be imported!"
msgstr ""
#: prototypes/prototypes.py:863
#: prototypes/prototypes.py:862
#, python-brace-format
msgid "Prototype {protkey} tries to parent itself."
msgstr ""
#: prototypes/prototypes.py:869
#: prototypes/prototypes.py:868
#, python-brace-format
msgid ""
"Prototype {protkey}'s `prototype_parent` (named '{parent}') was not found."
msgstr ""
#: prototypes/prototypes.py:877
#: prototypes/prototypes.py:875
#, python-brace-format
msgid "{protkey} has infinite nesting of prototypes."
msgstr ""
#: prototypes/prototypes.py:902
#: prototypes/prototypes.py:900
#, python-brace-format
msgid ""
"Prototype {protkey} has no `typeclass` defined anywhere in its parent\n"
@ -503,7 +503,7 @@ msgid ""
"with a typeclass."
msgstr ""
#: prototypes/spawner.py:497
#: prototypes/spawner.py:495
#, python-brace-format
msgid ""
"Diff contains non-dicts that are not on the form (old, new, action_to_take): "
@ -575,10 +575,14 @@ msgid ""
"seconds ..."
msgstr ""
#: server/server.py:157
#: server/server.py:156
msgid "idle timeout exceeded"
msgstr "连接超时"
#: server/server.py:177
msgid " (connection lost)"
msgstr ""
#: server/sessionhandler.py:41
msgid "Your client sent an incorrect UTF-8 sequence."
msgstr ""
@ -1029,27 +1033,27 @@ msgstr "发现多个匹配项。"
msgid "Please be more specific."
msgstr ""
#: utils/utils.py:2121
#: utils/utils.py:2127
#, python-brace-format
msgid ""
"{obj}.{handlername} is a handler and can't be set directly. To add values, "
"use `{obj}.{handlername}.add()` instead."
msgstr ""
#: utils/utils.py:2131
#: utils/utils.py:2137
#, python-brace-format
msgid ""
"{obj}.{handlername} is a handler and can't be deleted directly. To remove "
"values, use `{obj}.{handlername}.remove()` instead."
msgstr ""
#: utils/utils.py:2272
#: utils/utils.py:2278
#, fuzzy, python-brace-format
#| msgid "Could not find '%s'."
msgid "Could not find '{query}'."
msgstr "无法找到 '%s'"
#: utils/utils.py:2279
#: utils/utils.py:2285
#, fuzzy, python-brace-format
#| msgid "More than one match for '%s' (please narrow target):\n"
msgid "More than one match for '{query}' (please narrow target):\n"

View file

@ -1644,14 +1644,15 @@ class DefaultObject(ObjectDB, metaclass=TypeclassBase):
"""
pass
def at_post_unpuppet(self, account, session=None, **kwargs):
def at_post_unpuppet(self, account=None, session=None, **kwargs):
"""
Called just after the Account successfully disconnected from
this object, severing all connections.
Args:
account (Account): The account object that just disconnected
from this object.
from this object. This can be `None` if this is called
automatically (such as after a cleanup operation).
session (Session): Session id controlling the connection that
just disconnected.
**kwargs (dict): Arbitrary, optional arguments for users
@ -2689,7 +2690,7 @@ class DefaultCharacter(DefaultObject):
self.location.for_contents(message, exclude=[self], from_obj=self)
def at_post_unpuppet(self, account, session=None, **kwargs):
def at_post_unpuppet(self, account=None, session=None, **kwargs):
"""
We stove away the character when the account goes ooc/logs off,
otherwise the character object will remain in the room also
@ -2700,6 +2701,9 @@ class DefaultCharacter(DefaultObject):
from this object.
session (Session): Session controlling the connection that
just disconnected.
Keyword Args:
reason (str): If given, adds a reason for the unpuppet. This
is set when the user is auto-unpuppeted due to being link-dead.
**kwargs (dict): Arbitrary, optional arguments for users
overriding the call (unused by default).
"""
@ -2709,7 +2713,10 @@ class DefaultCharacter(DefaultObject):
def message(obj, from_obj):
obj.msg(
_("{name} has left the game.").format(name=self.get_display_name(obj)),
_("{name} has left the game{reason}.").format(
name=self.get_display_name(obj),
reason=kwargs.get("reason", ""),
),
from_obj=from_obj,
)

View file

@ -7,39 +7,36 @@ the networking features. (this is done automatically by
evennia/server/server_runner.py).
"""
import time
import sys
import os
import sys
import time
import traceback
from twisted.web import static
import django
from twisted.application import internet, service
from twisted.internet import reactor, defer
from twisted.internet import defer, reactor
from twisted.internet.task import LoopingCall
from twisted.logger import globalLogPublisher
import django
from twisted.web import static
django.setup()
import evennia
import importlib
import evennia
evennia._init()
from django.conf import settings
from django.db import connection
from django.db.utils import OperationalError
from django.conf import settings
from django.utils.translation import gettext as _
from evennia.accounts.models import AccountDB
from evennia.scripts.models import ScriptDB
from evennia.server.models import ServerConfig
from evennia.utils.utils import get_evennia_version, mod_import, make_iter
from evennia.utils import logger
from evennia.server.sessionhandler import SESSIONS
from django.utils.translation import gettext as _
from evennia.utils import logger
from evennia.utils.utils import get_evennia_version, make_iter, mod_import
_SA = object.__setattr__
@ -108,6 +105,7 @@ _MAINTENANCE_COUNT = 0
_FLUSH_CACHE = None
_IDMAPPER_CACHE_MAXSIZE = settings.IDMAPPER_CACHE_MAXSIZE
_GAMETIME_MODULE = None
_DEFAULTOBJECT = None
_IDLE_TIMEOUT = settings.IDLE_TIMEOUT
_LAST_SERVER_TIME_SNAPSHOT = 0
@ -120,11 +118,12 @@ def _server_maintenance():
"""
global EVENNIA, _MAINTENANCE_COUNT, _FLUSH_CACHE, _GAMETIME_MODULE
global _LAST_SERVER_TIME_SNAPSHOT
global _OBJECTDB
if not _FLUSH_CACHE:
from evennia.utils.idmapper.models import conditional_flush as _FLUSH_CACHE
if not _GAMETIME_MODULE:
from evennia.objects.models import ObjectDB as _OBJECTDB
from evennia.utils import gametime as _GAMETIME_MODULE
from evennia.utils.idmapper.models import conditional_flush as _FLUSH_CACHE
_MAINTENANCE_COUNT += 1
@ -167,6 +166,20 @@ def _server_maintenance():
for session in to_disconnect:
SESSIONS.disconnect(session, reason=reason)
# run unpuppet hooks for objects that are marked as being puppeted,
# but which lacks an account (indicates a broken unpuppet operation
# such as a server crash)
if _MAINTENANCE_COUNT > 1:
unpuppet_count = 0
for obj in _OBJECTDB.objects.get_by_tag(key="puppeted", category="account"):
if not obj.has_account:
obj.at_pre_unpuppet()
obj.at_post_unpuppet(None, reason=_(" (connection lost)"))
obj.tags.remove("puppeted", category="account")
unpuppet_count += 1
if unpuppet_count:
logger.log_msg(f"Ran unpuppet-hooks for {unpuppet_count} link-dead puppets.")
# ------------------------------------------------------------
# Evennia Main Server object
@ -280,8 +293,8 @@ class Evennia:
): # can't use any() since mismatches may be [0] which reads as False for any()
# we have a changed default. Import relevant objects and
# run the update
from evennia.objects.models import ObjectDB
from evennia.comms.models import ChannelDB
from evennia.objects.models import ObjectDB
# from evennia.accounts.models import AccountDB
for i, prev, curr in (
@ -372,8 +385,8 @@ class Evennia:
"""
from evennia.comms.models import ChannelDB
from evennia.accounts.models import AccountDB
from evennia.comms.models import ChannelDB
from evennia.utils.create import create_channel
superuser = AccountDB.objects.get(id=1)
@ -709,10 +722,10 @@ if WEBSERVER_ENABLED:
from evennia.server.webserver import (
DjangoWebRoot,
WSGIWebServer,
Website,
LockableThreadPool,
PrivateStaticRoot,
Website,
WSGIWebServer,
)
# start a thread pool and define the root url (/) as a wsgi resource