diff --git a/chatnotifications.xml b/chatnotifications.xml index f7b081e..ce9dd7c 100644 --- a/chatnotifications.xml +++ b/chatnotifications.xml @@ -83,7 +83,7 @@ ~y~~h~Avertissement~h~~s~: Tu as perdu {0} armes, possiblement à cause d'un cheater, mais notre (C)GTA CnR Shield(/C) ~g~a restauré ~s~tes armes perdues. ~y~~h~Uwaga~h~~s~: Utraciłeś {0} broni, prawdopodobnie usunął je oszust, ale (C)GTA CnR Shield(/C) ~g~przywróciła ~s~je dla ciebie. ~y~~h~تحذير~h~~s~: لقد خسرت {0} أسلحة, ربما قام بغشاش أضافتهم الي حسابك ، و لكن (C)GTA CnR Shield(/C) ~g~رجعها ~s~لك. - ~y~~h~警告~h~~s~:你丟失了{0} 個武器,可能是作弊者所為,但是(C)GTA CnR Shield(/C) ~g~為你恢復了~s ~它們. + ~y~~h~警告~h~~s~:你丟失了{0} 個武器,可能是作弊者所為,但是(C)GTA CnR Shield(/C) ~g~為你恢復了~s~它們. @@ -93,7 +93,7 @@ ~y~~h~Let op~h~~s~: Je had {0} ongeautoriseerde wapens, mogelijk ingespawnt door een hacker om je in problemen te krigen, maar (C)GTA CnR Shield(/C) heeft ze voor je ~r~weggehaald~s~. ~y~~h~Uyarı~h~~s~: Sende vardı {0} yetkisiz silahlar, muhtemelen başınızı belaya sokmak için bir dolandırıcı tarafından yaratılmıştır, ancak (C)GTA CnR Shield(/C) ~r~kaldırıldı ~s~senin için. ~y~~h~Achtung~h~~s~: Du hast {0} unerlaubte Waffe, möglicherweise durch einen Cheater, um dich in Schwierigkeiten zu bringen, aber das (C)GTA CnR Shield(/C) hat sie für dich ~r~entfernt~s~. - ~y~~h~Advertencia~h~~s~: Tenías {0} armas no autorizadas, posiblemente creadas por un hacker para meterte en problemas, pero (C)GTA CnR Shield(/C) ~r~retiradas ~s ~ ellos para ti. + ~y~~h~Advertencia~h~~s~: Tenías {0} armas no autorizadas, posiblemente creadas por un hacker para meterte en problemas, pero (C)GTA CnR Shield(/C) ~r~retiradas ~s~ ellos para ti. ~y~~h~Avertissement~h~~s~: Tu avais {0} armes interdites, possiblement à cause d'un cheater pour te causer du tord, mais notre (C)GTA CnR Shield(/C) les a ~r~retirées ~s~pour toi. ~y~~h~Uwaga~h~~s~: Miałeś {0} nieautoryzowanych broni, prawdopodobnie dał ci je oszust, ale (C)GTA CnR Shield(/C) ~r~usunęła ~s~je dla ciebie. ~y~~h~تحذير~h~~s~: كان معك {0} أسلحة غير مصرح بها, ربما قام بغشاش أضافتهم الي حسابك ليوقعك في مشكلة, و لكن (C)GTA CnR Shield(/C) ~r~ازالهم ~s~من حسابك. diff --git a/death.xml b/death.xml index f94e901..e20ff04 100644 --- a/death.xml +++ b/death.xml @@ -169,7 +169,7 @@ {0} ~s~è morto di ~r~overdose~s~. {0} ~s~zginął z ~r~przedawkowania narkotyków~s~. {0} ~s~sonucu öldü ~r~aşırı doz~s~. - {0} ~s~死於~r~使用藥物過量~s. + {0} ~s~死於~r~使用藥物過量~s~. {0} ~s~ha muerto a causa de una ~r~sobredosis de drogas~s~. @@ -523,7 +523,7 @@ for ~g~{0}~s~ für ~g~{0}~s~ - pour ~g~{0}~s + pour ~g~{0}~s~ voor ~g~{0}~s~ per ~g~{0}~s~ by zdobyć nagrodę ~g~{0}~s~ @@ -794,7 +794,7 @@ ~b~Krankenversicherung ~s~aktiviert ~b~Mutuelle santé ~s~activée ~b~Zorgverzekering ~s~geactiveerd - ~b~Assicurazione sanitaria ~g~attivata + ~b~Assicurazione sanitaria ~s~attivata ~b~Ubezpieczenie zdrowotne ~s~aktywowane ~b~Sağlık sigortası ~s~etkinleştirildi ~b~健康保險 ~s~已啟動 @@ -821,7 +821,7 @@ Pagato con assegno: ~g~{0} Zapłacone przelewem: ~g~{0} Banka havalesi ile ödenir: ~g~{0} - 通過支票支付: ~b~{0} + 通過支票支付: ~g~{0} Pagado con cheque: ~g~{0} @@ -833,7 +833,7 @@ Pagato in contanti: ~g~{0} Zapłacono gotówką: ~g~{0} Nakit ödeme: ~g~{0} - 通過現金支付: ~b~{0} + 通過現金支付: ~g~{0} Pagado en efectivo: ~g~{0} @@ -845,9 +845,9 @@ Insolvable: ~r~{0} Openstaand: ~r~{0} Insoluto: ~r~{0} - Dług: ~g~{0} + Dług: ~r~{0} Borç: ~r~{0} - 傑出的: ~b~{0} + 傑出的: ~r~{0} Pendiente: ~r~{0} diff --git a/imenu.xml b/imenu.xml index 5554118..826f82d 100644 --- a/imenu.xml +++ b/imenu.xml @@ -212,7 +212,7 @@ Manage your account and configure GTA ~b~Cops ~s~and ~r~Robbers ~s~specific options. - Zarządzaj swoim kontem i konfiguruj ustawienia dla GTA ~b~Cops ~s~and ~r~Robbers. + Zarządzaj swoim kontem i konfiguruj ustawienia dla GTA ~b~Cops ~s~and ~r~Robbers~s~. Beheer je account and configureer GTA ~b~Cops ~s~and ~r~Robbers ~s~specifieke opties. Hesabınızı yönetin ve yapılandırın GTA ~b~Cops ~s~and ~r~Robbers ~s~belirli seçenekler. Verwalte deinen Account und konfiguriere deine GTA ~b~Cops ~s~ and ~r~Robbers ~s~spezifischen Einstellungen. @@ -513,7 +513,7 @@ Du musst ~r~warten~s~, bevor du dein Inventar erneut aktualisieren kannst. Tienes que ~r~esperar ~s~antes de volver a actualizar el inventario. Tu dois ~r~attendre ~s~avant de pouvoir rafraîchir ton inventaire à nouveau. - Musisz ~r~poczekać ~szanim ponownie odświeżysz ekwipunek. + Musisz ~r~poczekać ~s~zanim ponownie odświeżysz ekwipunek. 你必須在背包重新刷新前 ~r~等待~s~. @@ -616,7 +616,7 @@ {0} kan niet ~r~{1} ~s~meer {2} van ~r~{3} ~s~dragen. {0} taşıyamaz ~r~{1} ~s~daha fazlasını {2} of ~r~{3}~s~. {0} kann nicht ~r~{1} ~s~weitere{2} von ~r~{3}~s~ halten. - {0} non può contenere altri ~r~{1}{2} ~r~di {3}. + {0} non può contenere altri ~r~{1}{2} ~s~di {3}. {0} ne peut pas porter plus de ~r~{1} {2} ~s~de ~r~{3}~s~. {0} 無法攜帶 ~r~{1} ~s~個或以上的 ~r~{2}~s~. {0} no puedes tener ~r~{1} ~s~más {2} de ~r~{3}~s~. @@ -764,7 +764,7 @@ ~r~You can't hold {0}{1} more {2} in your inventory. ~r~Je kan niet meer {0}{1} van {2} in je inventaris houden. - ~r~Non puoi contenere altri ~p~{0}{1} {2} ~s~nel tuo inventario. + ~r~Non puoi contenere altri {0}{1} {2} nel tuo inventario. ~r~Du kannst nicht mehr {0}{1} {2} in deinem Inventar halten. ~r~No puedes tener {0}{1} más {2} en tu inventario. ~r~Nie możesz nieść {0}{1} więcej {2} w swoim ekwipunku. diff --git a/jobs.xml b/jobs.xml index a409cfc..b8ef35b 100644 --- a/jobs.xml +++ b/jobs.xml @@ -24,7 +24,7 @@ Devi giocare per almeno ~r~{0} ore ~s~per diventare un ~p~{1}~s~. Du musst mindestens ~r~{0} Stunden ~s~spielen, um ein ~p~{1}~s~ zu werden. Musisz grać conajmniej ~r~{0} godzin ~s~by zostać ~p~{1}~s~. - 您需要玩 ~r~{0} 小時 ~s~ 才能成為 ~p~{1}~s. + 您需要玩 ~r~{0} 小時 ~s~ 才能成為 ~p~{1}~s~. Necesitas jugar durante ~r~{0} horas ~s~ para convertirte en ~p~{1}~s~. @@ -35,7 +35,7 @@ Devi ~r~aspettare ~s~prima di diventare un ~p~{0} ~s~nuovamente. Du musst ~r~warten~s~, bevor du erneut ein ~p~{0} ~s~werden kannst. Musisz ~r~poczekać ~s~zanim zostaniesz ~p~{0}em ~s~ponownie. - 你需要 ~r~等待 ~s~ 才能 ~s~再次成為 ~p~{0}. + 你需要 ~r~等待 ~s~ 才能 ~s~再次成為 ~p~{0}~s~. Debes ~r~esperar ~s~antes de convertirte en ~p~{0} ~s~nuevamente. @@ -53,7 +53,7 @@ Je kan geen ~p~{0} ~s~worden wanneer je ~o~gezocht~s~ bent. Non puoi diventare un ~p~{0} ~s~quando sei ~o~ricercato~s~. No puedes convertirte en un ~p~{0} ~s~cuando estas ~o~en busqueda.~s~. - ~s~當你被 ~o~通緝時 ~s~你不能成為一個 ~p~{0} . + ~s~當你被 ~o~通緝時 ~s~你不能成為一個 ~p~{0}~s~. Nie możesz zostać ~p~{0} ~s~gdy jesteś ~o~poszukiwany~s~. @@ -61,9 +61,9 @@ You are temporarily ~r~banned ~s~from the ~p~{0} ~s~job. Je bent tijdelijk ~r~verbannen ~s~van de ~p~{0} ~s~baan. - Sei temporaneamente ~r~bannato ~s~dal lavoro di ~p~{0}. + Sei temporaneamente ~r~bannato ~s~dal lavoro di ~p~{0}~s~. Está ~r~baneado temporalmente ~s~del trabajo ~p~{0} ~s~. - 你已被 ~p~{0} ~s~職業暫時 ~r~封禁. + 你已被 ~p~{0} ~s~職業暫時 ~r~封禁~s~. Jesteś tymczasowo ~r~zbanowany ~s~z pracy ~p~{0}~s~. @@ -248,7 +248,7 @@ Go to ~y~{0} ~s~and sell drugs to {1}. Raggiungi ~y~{0} ~s~e vendi droghe a {1}. Ga naar ~y~{0} ~s~en verkoop drugs aan {1}. - Gehe zu ~y~ und verkaufe {1} Drogen. + Gehe zu ~y~{0} ~s~und verkaufe {1} Drogen. Git ~y~{0} ~s~ve uyuşturucu sat {1}. Ve a ~y~{0} ~s~y vende drogas a {1}. Pójdź do ~y~{0} ~s~i sprzedaj narkotyki {1}. @@ -270,14 +270,14 @@ - You purchased ~p~{0}g ~s~of ~p~{1} ~s~for ~r~{2} - Hai comprato ~p~{0}g ~s~di ~p~{1} ~s~per ~r~{2} - Je hebt ~p~{0}g ~s~van ~p~{1} ~s~ gekocht voor ~r~{2} + You purchased ~p~{0}g ~s~of ~p~{1} ~s~for ~r~{2}~s~ + Hai comprato ~p~{0}g ~s~di ~p~{1} ~s~per ~r~{2}~s~ + Je hebt ~p~{0}g ~s~van ~p~{1} ~s~ gekocht voor ~r~{2}~s~ Du hast ~p~{0}g ~p~{1} ~s~für ~r~{2}~s~ gekauft - Satın aldın ~p~{0}g ~s~ile ilgili ~p~{1} ~s~için ~r~{2} - Compraste ~p~{0}g ~s~de ~p~{1} ~s~por ~r~{2} - Kupiłeś ~p~{0}g ~s~ ~p~{1} ~s~za ~r~{2} - 你支付了 ~p~{2}g ~s~來購買 ~p~{0} ~s~個 ~r~{1} + Satın aldın ~p~{0}g ~s~ile ilgili ~p~{1} ~s~için ~r~{2}~s~ + Compraste ~p~{0}g ~s~de ~p~{1} ~s~por ~r~{2}~s~ + Kupiłeś ~p~{0}g ~s~ ~p~{1} ~s~za ~r~{2}~s~ + 你支付了 ~p~{2}g ~s~來購買 ~p~{0} ~s~個 ~r~{1}~s~ @@ -455,7 +455,7 @@ You need to be ~b~level {0} ~s~to unlock this ~r~drug supplier~s~. Find another supplier! Je moet ~b~level {0} ~s~ zijn om deze ~r~drug leverancier~s~ te ontgrendelen. Zoek een andere leverancier! Devi essere ~b~livello {0} ~s~per sbloccare questo ~r~spacciatore~s~. Cerca un altro spacciatore! - Du musst ~b~ Level {0}~s~ sein, um diesen ~r~Händler freizuschalten. Finde einen anderen Händler! + Du musst ~b~ Level {0}~s~ sein, um diesen ~r~Händler~s~ freizuschalten. Finde einen anderen Händler! Musisz mieć co najmniej ~b~poziom {0} ~s~by odblokować tą ~r~dziuplę narkotykową~s~. Znajdź inną! Debes tener ~b~nivel {0} ~s~para desbloquear este ~r~proveedor de drogas~s~. ¡Encuentra otro proveedor! 你必須達到 ~b~等級 {0} ~s~才能解鎖 ~r~毒品供應商~s~. 尋找其他供應商吧! @@ -482,13 +482,13 @@ - {0} ~s~is looking for a mechanic in ~y~{1}. - {0} ~s~zoekt een monteur in ~y~{1}. - {0} ~s~sta cercando un meccanico in ~y~{1}. - {0} ~s~is sucht nach einem Mechaniker in ~y~{1}. - {0} ~s~está buscando un mecánico en ~y~{1}. + {0} ~s~is looking for a mechanic in ~y~{1}~s~. + {0} ~s~zoekt een monteur in ~y~{1}~s~. + {0} ~s~sta cercando un meccanico in ~y~{1}~s~. + {0} ~s~is sucht nach einem Mechaniker in ~y~{1}~s~. + {0} ~s~está buscando un mecánico en ~y~{1}~s~. {0} 正在 ~y~{1} ~s~尋找技師. - {0} ~s~szuka mechanika w ~y~{1}. + {0} ~s~szuka mechanika w ~y~{1}~s~. @@ -497,7 +497,7 @@ You paid ~g~{0} ~s~to the impound office. Your ~b~{1} ~s~has been returned to your garage. Je hebt ~g~{0} ~s~ betaald aan het in beslag name kantoor. Je ~b~{1} ~s~is terug in je garage gezet. Hai pagato ~g~{0} ~s~all'ufficio deposito. Il tuo ~b~{1} ~s~è stato restituito al tuo garage. - Du hast ~g~{0} ~s~ an die Verwahrstelle bezahlt. Dein ~b~{1} wurde in deine Garage zurückgebracht. + Du hast ~g~{0} ~s~ an die Verwahrstelle bezahlt. Dein ~b~{1} ~s~ wurde in deine Garage zurückgebracht. Zapłaciłeś ~g~{0} ~s~do firmy holowniczej. Twój ~b~{1} ~s~został zwrócony do garażu. Has pagado ~g~{0} ~s~a la oficina de incautación. Tu ~b~{1} ~s~ ha sido devuelto a tu garaje. 你支付了 ~g~{0} ~s~給扣押場的員工. 你的 ~b~{1} ~s~現在已經回到你的車庫. @@ -579,7 +579,7 @@ Houd {0} ingedrukt om het ~r~voertuig ~s~weg te brengen. Tieni premuto {0} per lasciare il ~r~veicolo~s~. Halte {0} um das ~r~Fahrzeug ~s~abzukoppeln. - Przytrzymaj {0} aby odstawić ~r~pojazd. + Przytrzymaj {0} aby odstawić ~r~pojazd~s~. Mantén pulsado {0} para soltar el ~r~vehículo ~s~. 按住 {0} 將 ~r~車輛 ~s~放下 @@ -591,7 +591,7 @@ Schleppe widerrechtlich geparkte Fahrzeug, die mit einem gelben Kegel markiert sind, zu einem Abschleppplatz. Holuj nieprawidłowo zaparkowane ~y~pojazdy ~s~zaznaczone żółtym pachołkiem do ~g~biura konfiskat~s~. Remolcar ~y~vehículos aparcados ilegalmente ~señalados con un cono amarillo a un ~g~lote incautado~s~. - 將有黃色標記的 ~y~非法停放車輛 拖至 ~g~扣押處. + 將有黃色標記的 ~y~非法停放車輛 拖至 ~g~扣押處~s~. @@ -712,7 +712,7 @@ Dit voertuig is ~r~al ~s~vastgemaakt aan een ander voertuig. Das Fahrzeug ist ~r~bereits~s~ an einem anderen Abschlepper angehangen. "Araç ~r~zaten ~s~başka bir kamyona bağlanmıştır. - El vehículo ~r~ya ~es~esta conectado a otro camión. + El vehículo ~r~ya ~s~esta conectado a otro camión. Ten pojazd ~r~jest już ~s~podpięty do innej ciężarówki. 這輛車 ~r~已經 ~s~被連接到其他台卡車上. @@ -736,7 +736,7 @@ Araç ~r~çok büyük ~s~bu kamyon için. El vehículo es ~r~demasiado grande ~s~para este camión. Ten pojazd jest ~r~za duży ~s~dla tej ciężarówki. - 這輛載具 ~s~對這輛卡車 來說 ~r~太大了 . + 這輛載具 對這輛卡車 來說 ~r~太大了 ~s~. @@ -755,7 +755,7 @@ Stay trainando il ~y~veicolo di un giocatore ~s~per ~g~soldi extra~s~, ma hai un tempo limitato. Quando il timer ~r~scade~s~ il proprietario sarà in grado di ~y~richiamarlo~s~. Je bent een ~y~speler's voertuig ~s~ aan het slepen voor ~g~extra geld~s~, maar je hebt beperkt tijd. Wanneer de timer ~r~afloopt~s~, kan de eigenaar zijn voertuig ~y~terugroepen~s~. Du schleppst das Fahrzeug eines ~y~Spielers ~s~für ~g~extra Geld~s~ ab, aber du hast nur begrenzte Zeit. Wenn die Zeit ~r~ausläuft~s~, wird der Besitzer in der Lage sein ~y~das Fahrzeug ~s~zurückzurufen. - Çekiyorsunuz ~y~bir oyuncunun aracını ~g~ekstra para için~s~, ancak zamanınız kısıtlı. zamanlayıcı ~r~biterse~s~, sahibi onu ~y~geri çağırabilecek. + Çekiyorsunuz ~y~bir oyuncunun aracını ~g~ekstra para için~s~, ancak zamanınız kısıtlı. zamanlayıcı ~r~biterse~s~, sahibi onu ~y~geri çağırabilecek~s~. Estás remolcando el vehículo de un ~y~jugador ~s~por ~g~dinero extra~s~, pero tienes un tiempo limitado. Cuando el temporizador ~r~se agote~s~, el propietario podrá ~y~llamarlo otravez ~s~. Holujesz ~y~pojazd gracz ~s~dla ~g~dodatkowej forsy~s~, lecz masz limitowany czas. Gdy stoper wybije 0 sekund ~r~upłynie~s~, właściciel będzie mógł ~y~wezwzać ~s~pojazd do siebie. 你正在為了賺取 ~g~額外的錢~s~ 而拖吊 ~y~玩家的載具~s~, 但你必須在時間內完成. 當計時器 ~r~倒數結束~s~, 車輛的擁有者將會 ~y~調回 ~s~它. @@ -985,13 +985,13 @@ - You obtained ~b~{0}. - Hai ottenuto ~b~{0}. + You obtained ~b~{0}~s~. + Hai ottenuto ~b~{0}~s~. Je hebt ~b~{0}~s~ gekregen. Du hast ~b~{0}~s~ erhalten. - Elde ettin ~b~{0}. - Has obtenido ~b~{0}. - Otrzymałeś ~b~{0}. + Elde ettin ~b~{0}~s~. + Has obtenido ~b~{0}~s~. + Otrzymałeś ~b~{0}~s~. @@ -1157,14 +1157,14 @@ The ~b~police officers ~s~ordered you to get in the ~b~vehicle~s~. De ~b~politieagenten ~s~bevelen jou om in het ~b~voertuig~s~ te stappen. Gli ~b~agenti di polizia ~s~ti hanno ordinato di salire nel ~b~veicolo~s~.uncuffing - Los ~b~policías ~s~te ordenaron que te subieras en el ~b~vehículos~. + Los ~b~policías ~s~te ordenaron que te subieras en el ~b~vehículo~s~. ~b~Gliniarze ~s~kazali ci wejść do ~b~pojazdu~s~. ~b~Officer {0} ~s~ordered you to get in the ~b~vehicle~s~! ~b~Agent {0} ~s~beveelt jou om in het ~b~voertuig~s~ te stappen! - L'~b~agente {0} ~s~ti ha ordinato di salire nel ~b~veicolo~b~! + L'~b~agente {0} ~s~ti ha ordinato di salire nel ~b~veicolo~s~! ¡~b~El oficial {0} ~s~te ordenó que te subieras al ~b~vehículo~s~! ~b~Oficer {0} ~s~kazał ci wejść do ~b~pojazdu~s~! @@ -1511,7 +1511,7 @@ You asked {0} to ~o~bribe ~s~you. Je hebt {0} gevraagd om jou ~o~om te kopen~s~. Hai chiesto a {0} di ~o~corromperti~s~. - Le pediste a {0} que te ~o~sobornara. + Le pediste a {0} que te ~o~sobornara~s~. Zasugerowałeś {0} ~o~łapówkę ~s~. @@ -1519,7 +1519,7 @@ ~b~Officer {0} asked you to ~o~bribe ~s~them. ~b~Agent {0} heeft jou gevraagd om hem ~o~om te kopen~s~. L'~b~agente {0} ~s~ti ha chiesto di ~o~corromperlo~s~. - ~b~El oficial {0} te pidió que ~o~lo sobornes. + ~b~El oficial {0} te pidió que ~o~lo sobornes~s~. ~b~Oficer {0} zasugerował ~o~łapówkę ~s~. @@ -1693,7 +1693,7 @@ You've been stunned by the ~b~police~s~. You're going nowhere! Je bent gestunned door de ~b~politie~s~. Je gaat nergens heen! Sei stato stordito dalla ~b~polizia~s~. Non andrai da nessuna parte! - Te han sorprendido los ~b~policías~. ¡No vas a ninguna parte! + Te han sorprendido los ~b~policías~s~. ¡No vas a ninguna parte! Zostałeś sparaliżowany przez ~b~policję~s~. Trzeba było spieprzać szybciej! @@ -1866,11 +1866,11 @@ ~r~Major felony - ~o~Groot misdrijf + ~r~Groot misdrijf ~r~Reato grave ~r~schwere Straftat ~r~Delito grave - ~o~Wielkie przestępstwo + ~r~Wielkie przestępstwo @@ -1984,7 +1984,7 @@ You ~r~cannot rob ~s~the same ~y~store ~s~twice in a row. - Je ~r~kan niet~s~ dezelfde ~y~winkel~s~ twee keer achter elkaar ~r~overvallen~~. + Je ~r~kan niet~s~ dezelfde ~y~winkel~s~ twee keer achter elkaar ~r~overvallen~s~. ~r~Non puoi rapinare ~s~lo stesso ~y~negozio ~s~due volte di fila. Du ~r~kannst nicht ~s~denselben Laden zwei Mal hintereinander ~r~ausrauben~s~. ~r~No puedes robar ~s~la misma ~y~tienda ~s~dos veces seguidas. @@ -2014,7 +2014,7 @@ Dit bedrijf is ~r~recent ~s~al overvallen. Probeer later nog een keer. Quest'attivita è stata rapinata ~r~recentemente~s~. Prova più tardi. Dieses Geschäft wurde ~r~vor kurzem ~s~ausgeraubt. Versuche es später erneut. - Este negocio ha sido ~r~recientemente ~robado. Vuelva a intentarlo más tarde. + Este negocio ha sido ~r~recientemente ~s~robado. Vuelva a intentarlo más tarde. To miejsce zostało ~r~niedawno ~s~okradzione. Spróbuj ponownie później. @@ -2051,7 +2051,7 @@ ~r~Robbery failed! Killing the clerk was not in the plan! ~r~Overval mislukt! Het vermoorden van de medewerker was niet het plan! - ~b~Rapina fallita! Uccidere l'impiegato non era nel piano! + ~r~Rapina fallita! Uccidere l'impiegato non era nel piano! ~r~Überfall fehlgeschlagen! Den Angestellten zu töten war nicht der Plan! ~r~¡El robo falló! ¡Matar al empleado no estaba en el plan! ~r~Napad nieudany! Zabicie sprzedawcy nie było częścią planu! @@ -2060,7 +2060,7 @@ ~r~Robbery failed! The clerk is no longer intimidated. ~r~Overval mislukt! De medewerker is niet meer geïntimideerd. - ~b~Rapina fallita! L'impiegato non più intimidito. + ~r~Rapina fallita! L'impiegato non più intimidito. ~r~Überfall fehlgeschlagen! Der Angestellte ist nicht länger eingeschüchtert. ~r~¡El robo falló! El empleado ya no esta intimidado. ~r~Napad nieudany! Sprzedawca nie jest już wystraszony! @@ -2198,7 +2198,7 @@ Je hebt de kluis ~g~succesvol ~s~gekraakt! Hai scassinato la cassaforte con ~g~successo~s~! Du hast den Safe ~g~erfolgreich~s~ geknackt! - ¡Has roto ~g~ con éxito~g~ la caja fuerte! + ¡Has roto ~g~ con éxito~s~ la caja fuerte! ~s~Rozpracowałeś sejf! @@ -2214,7 +2214,7 @@ You ~r~canceled ~s~the safe robbery! Je hebt de kluis overval ~r~geannuleerd~s~! - Hai ~r~smesso ~sdi rapinare la cassaforte! + Hai ~r~smesso ~s~di rapinare la cassaforte! Du hast den Saferaub ~r~abgebrochen~s~! ¡Has ~r~cancelado ~s~el robo de la caja fuerte! ~r~Anulowałeś ~s~kradzież sejfu! diff --git a/player.xml b/player.xml index 2ff0c60..da0be8b 100644 --- a/player.xml +++ b/player.xml @@ -480,7 +480,7 @@ ~r~You're too far from any road. Your vehicle delivery has been canceled. ~r~Je bent te ver weg van de wegen. Je voertuig levering is geannuleerd. ~r~Sei troppo lontano da qualsiasi strada. La consegna del tuo veicolo è stata annullata. - Jesteś za daleko od jakiejkolwiek drogi. Dostawa pojazdu została ~r~anulowana~s~. + ~r~Jesteś za daleko od jakiejkolwiek drogi. Dostawa pojazdu została anulowana. diff --git a/properties.xml b/properties.xml index c200f06..67196eb 100644 --- a/properties.xml +++ b/properties.xml @@ -59,7 +59,7 @@ (C){0}(/C) ~g~è entrato ~s~nel magazzino. (C){0}(/C) ~g~wszedł do magazynu~s~. (C){0}(/C) ~g~entró en el almacén~s~. - (C){0}(/C) ~g~hat das Lagerhaus betreten. + (C){0}(/C) ~g~hat das Lagerhaus betreten~s~. @@ -77,7 +77,7 @@ (C){0}(/C) è ~r~entrato forzatamente ~s~nel magazzino. (C){0}(/C) ~g~włamał się do magazynu~s~. (C){0}(/C) ~r~entro a la fuerza ~s~al almacén~s~. - (C){0}(/C) ~r~ist gewaltsam in ein Lagerhaus eingedrungen. + (C){0}(/C) ~r~ist gewaltsam in ein Lagerhaus eingedrungen~s~. @@ -113,7 +113,7 @@ You ~b~entered {0}'s warehouse. - Sei ~b~entrato ~s~nel magazzino di {0}. + Sei ~b~entrato nel magazzino di {0}. diff --git a/specialitems.xml b/specialitems.xml index 77ef755..bff6e5e 100644 --- a/specialitems.xml +++ b/specialitems.xml @@ -172,7 +172,7 @@ ~b~on duty~s~. - ~b~sei in servizio. + ~b~sei in servizio~s~. ~b~in dienst~s~. ~b~im Dienst~s~ bist. ~b~de servicio~s~. @@ -192,7 +192,7 @@ being ~b~cuffed~s~. - vieni ~b~ammanettato. + vieni ~b~ammanettato~s~. wordt ~b~geboeid~s~. ~b~festgenommen~s~ wirst. estando ~b~esposado~s~. @@ -472,7 +472,7 @@ Devi ~r~aspettare ~s~{0} secondi prima di poter mangiare un'altra ~o~caramella di halloween~s~. Musisz ~r~poczekać ~s~{0} sekund przed zjedzeniem kolejnego ~o~cukierka halloweenowego~s~. Tu tienes que ~r~esperar ~s~{0} segundos antes de comer otro ~o~dulce de Halloween~s~. - Du musst {0} Sekunden ~r~warten, bevor du eine weitere Halloween-Süßigkeit isst. + Du musst {0} Sekunden ~r~warten~s~, bevor du eine weitere ~o~Halloween-Süßigkeit~s~ isst. diff --git a/validator.py b/validator.py index 8032e10..cc857a0 100644 --- a/validator.py +++ b/validator.py @@ -3,6 +3,7 @@ import sys import xml.dom.minidom import xml.sax +import re USE_COLORAMA = True @@ -11,6 +12,11 @@ except ModuleNotFoundError: USE_COLORAMA = False + +def get_text_from_node(node: xml.dom.minidom.Node): + return "".join(t.nodeValue for t in node.childNodes if t.nodeType == t.TEXT_NODE) + + class Validator: """XML Validation @@ -175,16 +181,31 @@ def check_entries(entry: xml.dom.minidom.Element, path: list[str]): path = [*path, Validator.entry_pretty_print(entry)] found_langs: list[str] = [] lang_attrib = "xml:lang" + should_end_with_format = None + good_string_entries = [] for string_entry in entry.childNodes: if isinstance(string_entry, xml.dom.minidom.Text): continue string_entry: xml.dom.minidom.Element if Validator.check_unknown_tag(string_entry, ["String"], path): + good_string_entries.append(string_entry) for key, value in string_entry.attributes.items(): if key == lang_attrib: + if value == "en-US": + found_formats = re.findall(r"~.~", get_text_from_node(string_entry)) + if (len(found_formats)>0): + should_end_with_format = found_formats[-1] found_langs.append(value) else: Validator.print_error(f"Unknown attribute: {repr(key)}", path, string_entry.parse_position) + for string_entry in good_string_entries: + text = get_text_from_node(string_entry) + found_formats = re.findall(r"~.~", text) + if len(found_formats)>0 and should_end_with_format is not None: + found_format = found_formats[-1] + if found_format != should_end_with_format: + Validator.print_error(f"String ends with a wrong format {repr(found_format)}, expected {repr(should_end_with_format)}", path, string_entry.parse_position) + print(text) if (Validator.show_lang is not None) and (Validator.show_lang not in found_langs): if Validator.found_missing_lang <= Validator.display_limit: Validator.print_warning(f"Missing translation for {repr(Validator.show_lang)}!", path, element_location)