Repository navigation
Expand file tree
/
Copy pathFeatureLocales.lua
More file actions
1038 lines (1020 loc) · 104 KB
/
Copy pathFeatureLocales.lua
File metadata and controls
1038 lines (1020 loc) · 104 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
local _,F=...
local keys={'NET_LOCKDOWN','PAGE_home','PAGE_queue','QUEUE_ADD','QUEUE_FULL','QUEUE_REMOVE','QUEUE_UP','QUEUE_EDIT','QUEUE_SUMMARY','QUEUE_SHARED','EMPTY_queue','EMPTY_home','QUEUE_READY','HOME_INFO','SCAN_AGE','SCAN_UNKNOWN'}
local translations={
enUS={
'The client has temporarily restricted addon messages. Sharing is paused; queued messages will resume when the restriction ends.',
'Character','Crafting queue','Add to queue','The queue is full (50 goals).','Remove goal','Move up','Save quantity',
'%d goals / materials ready for %d / %d missing items',
'All goals share your inventory. Craft manually in the profession window.',
'Select a recipe, enter a quantity and click Add to queue.','Scan your professions to fill this list.',
'Materials and crafting capabilities found; crafting is still required.',
'%s / Level %d\n%s / %s','Last scan: %d min ago','Scan time unknown.'},
ruRU={
'Клиент временно ограничил сообщения аддонов. Обмен приостановлен; очередь отправится после снятия ограничения.',
'Персонаж','Очередь изготовления','Добавить в очередь','Очередь заполнена (50 целей).','Удалить цель','Выше','Сохранить количество',
'Целей: %d / материалы готовы для %d / не хватает позиций: %d',
'Запасы общие для всех целей. Изготавливайте вручную в окне профессии.',
'Выберите рецепт, укажите количество и нажмите «Добавить в очередь».','Сканируйте профессии, чтобы заполнить список.',
'Материалы и возможности найдены; вещи ещё нужно изготовить.',
'%s / Уровень %d\n%s / %s','Последнее сканирование: %d мин. назад','Время сканирования неизвестно.'},
deDE={
'Der Client schränkt Addon-Nachrichten vorübergehend ein. Der Austausch pausiert; die Warteschlange wird danach fortgesetzt.',
'Charakter','Herstellungswarteschlange','Zur Warteschlange','Warteschlange voll (50 Ziele).','Ziel entfernen','Nach oben','Menge speichern',
'%d Ziele / Material bereit für %d / %d fehlende Gegenstände',
'Alle Ziele teilen deine Vorräte. Stelle manuell im Berufsfenster her.',
'Wähle ein Rezept und eine Menge und füge es zur Warteschlange hinzu.','Scanne deine Berufe, um die Liste zu füllen.',
'Materialien und Fähigkeiten gefunden; Herstellung noch erforderlich.',
'%s / Stufe %d\n%s / %s','Letzter Scan: vor %d Min.','Scanzeit unbekannt.'},
frFR={
'Le client limite temporairement les messages des addons. Le partage est en pause ; la file reprendra après la restriction.',
'Personnage','File de fabrication','Ajouter à la file','File pleine (50 objectifs).','Retirer cet objectif','Monter','Enregistrer la quantité',
'%d objectifs / matériaux prêts pour %d / %d objets manquants',
'Tous les objectifs partagent vos stocks. Fabriquez dans la fenêtre de métier.',
'Choisissez une recette, une quantité, puis ajoutez-la à la file.','Analysez vos métiers pour remplir cette liste.',
'Matériaux et compétences trouvés ; fabrication encore nécessaire.',
'%s / Niveau %d\n%s / %s','Dernière analyse : il y a %d min','Date d’analyse inconnue.'},
esES={
'El cliente restringe temporalmente los mensajes de addons. El intercambio está en pausa; la cola continuará después.',
'Personaje','Cola de fabricación','Añadir a la cola','Cola llena (50 objetivos).','Eliminar objetivo','Subir','Guardar cantidad',
'%d objetivos / materiales listos para %d / %d objetos faltantes',
'Todos los objetivos comparten tus existencias. Fabrica en la ventana de profesión.',
'Selecciona una receta, indica la cantidad y añádela a la cola.','Escanea tus profesiones para llenar esta lista.',
'Materiales y capacidades encontrados; aún debes fabricar.',
'%s / Nivel %d\n%s / %s','Último escaneo: hace %d min','Hora del escaneo desconocida.'},
itIT={
'Il client limita temporaneamente i messaggi degli addon. La condivisione è in pausa; la coda riprenderà dopo la restrizione.',
'Personaggio','Coda di creazione','Aggiungi alla coda','Coda piena (50 obiettivi).','Rimuovi obiettivo','Sposta su','Salva quantità',
'%d obiettivi / materiali pronti per %d / %d oggetti mancanti',
'Tutti gli obiettivi condividono le scorte. Crea nella finestra della professione.',
'Scegli una ricetta, indica la quantità e aggiungila alla coda.','Scansiona le professioni per riempire la lista.',
'Materiali e abilità trovati; la creazione è ancora necessaria.',
'%s / Livello %d\n%s / %s','Ultima scansione: %d min fa','Ora della scansione sconosciuta.'},
ptBR={
'O cliente restringe temporariamente as mensagens de addons. A troca está pausada; a fila continuará após a restrição.',
'Personagem','Fila de fabricação','Adicionar à fila','Fila cheia (50 objetivos).','Remover objetivo','Mover para cima','Salvar quantidade',
'%d objetivos / materiais prontos para %d / %d itens faltando',
'Todos os objetivos compartilham seus estoques. Fabrique na janela da profissão.',
'Escolha uma receita, informe a quantidade e adicione à fila.','Escaneie suas profissões para preencher a lista.',
'Materiais e habilidades encontrados; ainda é preciso fabricar.',
'%s / Nível %d\n%s / %s','Última leitura: há %d min','Horário da leitura desconhecido.'},
koKR={
'클라이언트가 애드온 메시지를 일시적으로 제한했습니다. 공유가 일시 정지되며 제한이 끝나면 대기열 전송이 재개됩니다.',
'캐릭터','제작 대기열','대기열에 추가','대기열이 가득 찼습니다 (목표 50개).','목표 삭제','위로 이동','수량 저장',
'목표 %d개 / 재료 준비 %d개 / 부족한 아이템 %d종',
'모든 목표가 보유 재료를 공유합니다. 전문 기술 창에서 직접 제작하세요.',
'도안을 선택하고 수량을 입력한 후 대기열에 추가하세요.','전문 기술을 스캔하여 목록을 채우세요.',
'재료와 제작 능력을 확인했습니다. 실제 제작은 아직 필요합니다.',
'%s / 레벨 %d\n%s / %s','최근 스캔: %d분 전','스캔 시간 정보 없음.'},
zhCN={
'客户端暂时限制了插件消息。共享已暂停,限制解除后将继续发送队列。',
'角色','制作队列','加入队列','队列已满(50个目标)。','移除目标','上移','保存数量',
'%d个目标 / %d个材料已齐 / 缺少%d种物品',
'所有目标共用你的库存。请在专业窗口中手动制作。',
'选择配方,输入数量,然后加入队列。','扫描专业以填充此列表。',
'已找到材料和制作能力,仍需实际制作。',
'%s / 等级%d\n%s / %s','上次扫描:%d分钟前','扫描时间未知。'},
zhTW={
'用戶端暫時限制了插件訊息。分享已暫停,限制解除後將繼續傳送佇列。',
'角色','製作佇列','加入佇列','佇列已滿(50個目標)。','移除目標','上移','儲存數量',
'%d個目標 / %d個材料已齊 / 缺少%d種物品',
'所有目標共用你的庫存。請在專業視窗中手動製作。',
'選擇配方,輸入數量,然後加入佇列。','掃描專業以填入此清單。',
'已找到材料和製作能力,仍需實際製作。',
'%s / 等級%d\n%s / %s','上次掃描:%d分鐘前','掃描時間未知。'},
}
translations.enGB=translations.enUS; translations.esMX=translations.esES
for locale,values in pairs(translations) do
for i,key in ipairs(keys) do F.Locales[locale][key]=values[i] end
end
local marketKeys={'PAGE_market','MARKET_SCAN','MARKET_SCAN_HELP','MARKET_AT_AH','MARKET_UNSUPPORTED','MARKET_NO_TARGETS','MARKET_STOPPED','MARKET_SCANNING','MARKET_FINISHED','MARKET_INTERRUPTED','MARKET_UNKNOWN','MARKET_EMPTY','MARKET_PRICE','MARKET_WARNING','MARKET_BUDGET','MARKET_HISTORY','MARKET_HISTORY_HELP','MARKET_HISTORY_EMPTY','MARKET_PROGRESS'}
local markets={
enUS={'Market','Scan queue materials','Scan missing queue materials at the auction house. If none are missing, scan favorite items. Equipment variants are not priced yet.',
'Open the ForeverNet tab at the auction house.','The required auction API is unavailable.','No queue shortages or favorite items to scan.',
'Scan stopped.','Scanning…','Scan finished.','Scan stopped because another search started.',
'Price unknown. Scan this item at the auction house.','No purchasable buyout offers in the last complete scan.',
'%s/unit / Buy %d: ~%s\nStill missing: %d / Snapshot: %d min ago',
'Stale, partial or approximate prices; the purchase cost can change.',
'Known purchase cost: ~%s\nItems without full coverage: %d',
'Price history','Observed daily minimums, not sales. Gaps mean no observations; history starts with your scans.',
'No price observations yet. Scan this item at the auction house.','%d/%d / skipped: %d'},
ruRU={'Рынок','Сканировать материалы','На аукционе сканируем дефицит очереди, а если его нет — избранные вещи. Варианты экипировки пока не оцениваются.',
'Откройте вкладку ForeverNet у аукциониста.','Нужный API аукциона недоступен.','Нет дефицита очереди или избранных вещей для сканирования.',
'Сканирование остановлено.','Сканирование…','Сканирование завершено.','Сканирование остановлено: начат другой поиск.',
'Цена неизвестна. Сканируйте вещь на аукционе.','В последнем полном сканировании нет доступных лотов с выкупом.',
'%s/шт. / Купить %d: ~%s\nЕщё не хватает: %d / Снимок: %d мин. назад',
'Цены устарели, неполны или приблизительны; сумма покупки может измениться.',
'Известная сумма покупки: ~%s\nПозиций без полного покрытия: %d',
'История цен','Наблюдавшиеся дневные минимумы, а не продажи. Пробелы — дни без наблюдений. История начинается с ваших сканирований.',
'Наблюдений цены ещё нет. Сканируйте вещь на аукционе.','%d/%d / пропущено: %d'},
deDE={'Markt','Materialien scannen','Scanne fehlende Warteschlangenmaterialien beim Auktionator, sonst Favoriten. Ausrüstungsvarianten werden noch nicht bewertet.',
'Öffne den ForeverNet-Reiter im Auktionshaus.','Die benötigte Auktions-API ist nicht verfügbar.','Keine fehlenden Materialien oder Favoriten zum Scannen.',
'Scan gestoppt.','Scan läuft…','Scan abgeschlossen.','Scan gestoppt: eine andere Suche wurde gestartet.',
'Preis unbekannt. Scanne den Gegenstand im Auktionshaus.','Keine kaufbaren Sofortkaufangebote im letzten vollständigen Scan.',
'%s/Stück / %d kaufen: ~%s\nNoch fehlend: %d / Stand: vor %d Min.',
'Veraltete, unvollständige oder ungefähre Preise; die Kosten können sich ändern.',
'Bekannte Einkaufskosten: ~%s\nPositionen ohne volle Abdeckung: %d',
'Preisverlauf','Beobachtete Tagesminima, keine Verkäufe. Lücken bedeuten keine Beobachtung. Der Verlauf beginnt mit deinen Scans.',
'Noch keine Preisbeobachtungen. Scanne den Gegenstand im Auktionshaus.','%d/%d / übersprungen: %d'},
frFR={'Marché','Analyser les matériaux','Analysez les matériaux manquants de la file à l’hôtel des ventes, sinon les favoris. Les variantes d’équipement ne sont pas encore évaluées.',
'Ouvrez l’onglet ForeverNet à l’hôtel des ventes.','L’API d’enchères requise est indisponible.','Aucun manque ni favori à analyser.',
'Analyse arrêtée.','Analyse…','Analyse terminée.','Analyse arrêtée : une autre recherche a commencé.',
'Prix inconnu. Analysez cet objet à l’hôtel des ventes.','Aucune offre achetable dans la dernière analyse complète.',
'%s/unité / Acheter %d : ~%s\nManque encore : %d / Relevé : il y a %d min',
'Prix anciens, incomplets ou approximatifs ; le coût peut changer.',
'Coût connu des achats : ~%s\nArticles sans couverture complète : %d',
'Historique des prix','Minimums quotidiens observés, pas des ventes. Les trous indiquent des jours sans observation. L’historique commence avec vos analyses.',
'Aucun prix observé. Analysez cet objet à l’hôtel des ventes.','%d/%d / ignorés : %d'},
esES={'Mercado','Escanear materiales','Escanea materiales faltantes de la cola en la subasta; si no faltan, los favoritos. Las variantes de equipo aún no se valoran.',
'Abre la pestaña ForeverNet en la subasta.','La API de subasta necesaria no está disponible.','No hay materiales faltantes ni favoritos para escanear.',
'Escaneo detenido.','Escaneando…','Escaneo terminado.','Escaneo detenido: empezó otra búsqueda.',
'Precio desconocido. Escanea el objeto en la subasta.','No hay ofertas de compra disponibles en el último escaneo completo.',
'%s/unidad / Comprar %d: ~%s\nAún faltan: %d / Datos: hace %d min',
'Precios antiguos, incompletos o aproximados; el coste puede cambiar.',
'Coste conocido de compra: ~%s\nObjetos sin cobertura completa: %d',
'Historial de precios','Mínimos diarios observados, no ventas. Los huecos son días sin observaciones. El historial empieza con tus escaneos.',
'Aún no hay precios observados. Escanea el objeto en la subasta.','%d/%d / omitidos: %d'},
itIT={'Mercato','Scansiona materiali','Scansiona i materiali mancanti della coda all’asta, altrimenti i preferiti. Le varianti di equipaggiamento non vengono ancora valutate.',
'Apri la scheda ForeverNet alla casa d’aste.','L’API d’asta richiesta non è disponibile.','Nessun materiale mancante o preferito da scansionare.',
'Scansione interrotta.','Scansione…','Scansione completata.','Scansione interrotta: è iniziata un’altra ricerca.',
'Prezzo sconosciuto. Scansiona l’oggetto alla casa d’aste.','Nessuna offerta acquistabile nell’ultima scansione completa.',
'%s/unità / Compra %d: ~%s\nMancano ancora: %d / Dati: %d min fa',
'Prezzi vecchi, incompleti o approssimativi; il costo può cambiare.',
'Costo d’acquisto noto: ~%s\nOggetti senza copertura completa: %d',
'Storico prezzi','Minimi giornalieri osservati, non vendite. Gli spazi sono giorni senza osservazioni. Lo storico inizia con le tue scansioni.',
'Nessun prezzo osservato. Scansiona l’oggetto alla casa d’aste.','%d/%d / saltati: %d'},
ptBR={'Mercado','Escanear materiais','Escaneie os materiais faltantes da fila no leilão; se não faltam, os favoritos. Variantes de equipamento ainda não são avaliadas.',
'Abra a aba ForeverNet no leilão.','A API de leilão necessária não está disponível.','Sem materiais faltantes ou favoritos para escanear.',
'Leitura interrompida.','Escaneando…','Leitura concluída.','Leitura interrompida: outra busca foi iniciada.',
'Preço desconhecido. Escaneie o item no leilão.','Sem ofertas compráveis na última leitura completa.',
'%s/unidade / Comprar %d: ~%s\nAinda faltam: %d / Dados: há %d min',
'Preços antigos, incompletos ou aproximados; o custo pode mudar.',
'Custo conhecido da compra: ~%s\nItens sem cobertura completa: %d',
'Histórico de preços','Mínimos diários observados, não vendas. Lacunas são dias sem observações. O histórico começa com suas leituras.',
'Nenhum preço observado. Escaneie o item no leilão.','%d/%d / ignorados: %d'},
koKR={'시장','재료 스캔','경매장에서 대기열의 부족한 재료를 스캔합니다. 부족한 재료가 없으면 즐겨찾기를 스캔합니다. 장비 변형은 아직 평가하지 않습니다.',
'경매장에서 ForeverNet 탭을 여세요.','필요한 경매장 API를 사용할 수 없습니다.','스캔할 부족한 재료나 즐겨찾기가 없습니다.',
'스캔이 중지되었습니다.','스캔 중…','스캔 완료.','다른 검색이 시작되어 스캔이 중지되었습니다.',
'가격을 알 수 없습니다. 경매장에서 아이템을 스캔하세요.','최근 전체 스캔에 구매 가능한 즉시 구매 매물이 없습니다.',
'개당 %s / %d개 구매: ~%s\n아직 부족: %d / %d분 전 기록',
'오래되거나 불완전한 추정 가격입니다. 구매 비용이 달라질 수 있습니다.',
'확인된 구매 비용: ~%s\n수량을 충족하지 못하는 아이템: %d',
'가격 기록','실제로 관찰한 일별 최저가이며 판매 기록이 아닙니다. 공백은 관찰하지 않은 날입니다. 스캔부터 기록됩니다.',
'관찰한 가격이 없습니다. 경매장에서 아이템을 스캔하세요.','%d/%d / 건너뜀: %d'},
zhCN={'市场','扫描材料','在拍卖行扫描队列缺少的材料;没有缺口时扫描收藏物品。暂不估价装备变体。',
'在拍卖行打开ForeverNet页签。','所需拍卖行API不可用。','没有缺少的材料或收藏物品可扫描。',
'扫描已停止。','扫描中…','扫描完成。','其他搜索已开始,扫描停止。',
'价格未知,请在拍卖行扫描此物品。','上次完整扫描没有可购买的一口价拍卖。',
'%s/个 / 购买%d个:~%s\n仍缺%d个 / %d分钟前的快照',
'价格过期、不完整或仅为估算,购买费用可能变化。',
'已知购买费用:~%s\n未完全覆盖的物品种类:%d',
'价格历史','实际观察的每日最低价,并非成交记录。空白表示没有观察。历史从你的扫描开始。',
'尚无价格观察,请在拍卖行扫描此物品。','%d/%d / 跳过:%d'},
zhTW={'市場','掃描材料','在拍賣場掃描佇列缺少的材料;沒有缺口時掃描收藏物品。暫不估價裝備變體。',
'在拍賣場開啟ForeverNet頁籤。','所需拍賣場API無法使用。','沒有缺少的材料或收藏物品可掃描。',
'掃描已停止。','掃描中…','掃描完成。','其他搜尋已開始,掃描停止。',
'價格未知,請在拍賣場掃描此物品。','上次完整掃描沒有可購買的直購拍賣。',
'%s/個 / 購買%d個:~%s\n仍缺%d個 / %d分鐘前的快照',
'價格過期、不完整或僅為估算,購買費用可能變化。',
'已知購買費用:~%s\n未完全覆蓋的物品種類:%d',
'價格歷史','實際觀察的每日最低價,並非成交記錄。空白表示沒有觀察。歷史從你的掃描開始。',
'尚無價格觀察,請在拍賣場掃描此物品。','%d/%d / 略過:%d'},
}
markets.enGB=markets.enUS; markets.esMX=markets.esES
for locale,values in pairs(markets) do
for i,key in ipairs(marketKeys) do F.Locales[locale][key]=values[i] end
F.Locales[locale].EMPTY_market=F.Locales[locale].MARKET_HISTORY_EMPTY
end
local surplus={enUS='Whole lots: %d bought / surplus: %d',ruRU='Целые лоты: покупаем %d / излишек: %d',
deDE='Ganze Auktionen: %d gekauft / Überschuss: %d',frFR='Lots entiers : %d achetés / surplus : %d',
esES='Lotes completos: %d comprados / sobrante: %d',itIT='Lotti interi: %d acquistati / eccedenza: %d',
ptBR='Lotes inteiros: %d comprados / excedente: %d',koKR='전체 묶음: %d개 구매 / 초과: %d개',
zhCN='整组拍卖:购买%d个 / 多出%d个',zhTW='整組拍賣:購買%d個 / 多出%d個'}
surplus.enGB=surplus.enUS; surplus.esMX=surplus.esES
local money={enUS='%dg %ds %dc',ruRU='%dз %dс %dм',deDE='%dg %ds %dk',frFR='%do %da %dc',
esES='%do %dp %dc',itIT='%do %da %dr',ptBR='%do %dp %dc',koKR='%d골 %d실 %d코',zhCN='%d金 %d银 %d铜',zhTW='%d金 %d銀 %d銅'}
money.enGB=money.enUS; money.esMX=money.esES
for locale,value in pairs(surplus) do F.Locales[locale].MARKET_SURPLUS=value; F.Locales[locale].MONEY_FORMAT=money[locale] end
local trackerKeys={'TRACK_TITLE','TRACK_SHOW','TRACK_BANK_COUNT','TRACK_GET_COUNT','TRACK_SEARCH','TRACK_SEARCH_HINT',
'TRACK_WAIT_SEARCH','TRACK_AH_CLOSED','TRACK_LOADING','TRACK_NEXT_CRAFT','TRACK_BANK_NEXT','TRACK_HELP'}
local tracker={
enUS={'Queue tracker','Track materials','Withdraw %d from your bank','Find %d more','Auction',
'Search by item name in the native auction window. Your auction filters still apply.',
'Auction search is not ready. Try again shortly.','Visit an auctioneer first.','Item name is still loading. Try again shortly.',
'Next planned craft','Withdraw the bank materials listed below.',
'Updates with bag changes. Bank is a saved snapshot. Craft and buy manually.'},
ruRU={'Трекер очереди','Следить за материалами','Заберите из банка: %d','Получите ещё: %d','Аукцион',
'Поиск по названию в штатном окне аукциона. Его фильтры продолжают действовать.',
'Поиск аукциона пока не готов. Повторите чуть позже.','Сначала откройте аукцион у аукциониста.','Название вещи ещё загружается. Повторите чуть позже.',
'Первый шаг изготовления','Заберите из банка материалы, перечисленные ниже.',
'Обновляется при изменении сумок. Банк — сохранённый снимок. Покупка и крафт вручную.'},
deDE={'Warteschlangenübersicht','Material verfolgen','%d aus der Bank holen','Noch %d besorgen','Auktion',
'Im Auktionsfenster nach dem Namen suchen. Deine Auktionsfilter gelten weiterhin.',
'Auktionssuche noch nicht bereit. Versuche es gleich erneut.','Besuche zuerst einen Auktionator.','Gegenstandsname lädt noch. Versuche es gleich erneut.',
'Nächste geplante Herstellung','Hole die unten aufgeführten Materialien aus der Bank.',
'Aktualisiert sich bei Taschenänderungen. Bank: gespeicherter Stand. Kauf und Herstellung manuell.'},
frFR={'Suivi de la file','Suivre les matériaux','Retirer %d de la banque','Obtenir encore %d','Enchères',
'Rechercher par nom dans la fenêtre des enchères. Vos filtres restent actifs.',
'Recherche indisponible pour le moment. Réessayez bientôt.','Ouvrez d’abord les enchères.','Le nom de l’objet charge encore. Réessayez bientôt.',
'Prochaine fabrication prévue','Retirez de la banque les matériaux ci-dessous.',
'Actualisé avec les sacs. Banque : instantané enregistré. Achat et fabrication manuels.'},
esES={'Seguimiento de la cola','Seguir materiales','Retira %d del banco','Consigue %d más','Subasta',
'Busca por nombre en la ventana de subastas. Se mantienen tus filtros.',
'La búsqueda aún no está lista. Inténtalo en breve.','Abre primero la casa de subastas.','El nombre del objeto sigue cargando. Inténtalo en breve.',
'Siguiente fabricación prevista','Retira del banco los materiales indicados abajo.',
'Se actualiza al cambiar las bolsas. Banco: instantánea guardada. Compra y fabrica manualmente.'},
itIT={'Monitor della coda','Segui materiali','Preleva %d dalla banca','Ottieni altri %d','Asta',
'Cerca per nome nella finestra delle aste. I tuoi filtri restano attivi.',
'Ricerca non ancora pronta. Riprova tra poco.','Apri prima la casa d’aste.','Il nome dell’oggetto sta caricando. Riprova tra poco.',
'Prossima creazione prevista','Preleva dalla banca i materiali elencati sotto.',
'Si aggiorna con le borse. Banca: copia salvata. Acquista e crea manualmente.'},
ptBR={'Rastreador da fila','Rastrear materiais','Retire %d do banco','Obtenha mais %d','Leilão',
'Busque pelo nome na janela de leilão. Seus filtros continuam ativos.',
'Busca ainda indisponível. Tente novamente em breve.','Abra primeiro a casa de leilões.','O nome do item ainda está carregando. Tente novamente em breve.',
'Próxima criação planejada','Retire do banco os materiais listados abaixo.',
'Atualiza com as bolsas. Banco: registro salvo. Compre e crie manualmente.'},
koKR={'대기열 추적','재료 추적','은행에서 %d개 꺼내기','%d개 더 구하기','경매장',
'기본 경매장 창에서 이름으로 검색합니다. 기존 경매장 필터가 적용됩니다.',
'경매 검색이 아직 준비되지 않았습니다. 잠시 후 다시 시도하세요.','먼저 경매장을 여세요.','아이템 이름을 불러오는 중입니다. 잠시 후 다시 시도하세요.',
'다음 제작 단계','아래 재료를 은행에서 꺼내세요.',
'가방 변경 시 갱신됩니다. 은행은 저장된 기록입니다. 구매와 제작은 직접 진행하세요.'},
zhCN={'队列追踪','追踪材料','从银行取出%d个','还需获取%d个','拍卖行',
'在原生拍卖行窗口按名称搜索。现有拍卖行筛选条件仍然有效。',
'拍卖搜索尚未就绪,请稍后重试。','请先打开拍卖行。','正在加载物品名称,请稍后重试。',
'下一项计划制作','从银行取出下列材料。',
'背包变化时更新。银行使用保存的快照。请手动购买和制作。'},
zhTW={'佇列追蹤','追蹤材料','從銀行取出%d個','還需取得%d個','拍賣場',
'在原生拍賣場視窗按名稱搜尋。現有拍賣場篩選條件仍然有效。',
'拍賣搜尋尚未就緒,請稍後重試。','請先開啟拍賣場。','正在載入物品名稱,請稍後重試。',
'下一項計劃製作','從銀行取出下列材料。',
'背包變化時更新。銀行使用儲存的快照。請手動購買和製作。'},
}
tracker.enGB=tracker.enUS; tracker.esMX=tracker.esES
for locale,values in pairs(tracker) do for i,key in ipairs(trackerKeys) do F.Locales[locale][key]=values[i] end end
local professionKeys={'PRO_QUANTITY','PRO_OUTPUT','PRO_MATERIALS','PRO_HELP','PRO_ADDED','PRO_UNSUPPORTED','PRO_CHOOSE'}
local profession={
enUS={'Target items','%d items per craft','Materials',
'Quantity means finished items. Plans use base reagents; optional choices and crafting remain manual.',
'Added %s x%d to the crafting queue.','Recipe is unlearned or has unsupported costs or output.','Select a recipe in your own profession window.'},
ruRU={'Готовых вещей','За крафт: %d шт.','Материалы',
'Количество готовых вещей. План учитывает базовые реагенты; дополнительные варианты и крафт выбираете сами.',
'В очередь добавлено: %s x%d.','Рецепт не изучен либо его затраты или результат пока не поддерживаются.','Выберите рецепт в окне своей профессии.'},
deDE={'Zielmenge','%d pro Herstellung','Materialien',
'Menge fertiger Gegenstände. Der Plan nutzt Basisreagenzien; optionale Auswahl und Herstellung bleiben manuell.',
'%s x%d zur Herstellungswarteschlange hinzugefügt.','Rezept nicht gelernt oder Kosten bzw. Ergebnis nicht unterstützt.','Wähle ein Rezept im Fenster deines eigenen Berufs.'},
frFR={'Objets voulus','%d par fabrication','Matériaux',
'Quantité d’objets finis. Le plan utilise les réactifs de base ; choix optionnels et fabrication restent manuels.',
'%s x%d ajouté à la file de fabrication.','Recette inconnue ou coûts/résultat non pris en charge.','Choisissez une recette dans votre propre fenêtre de métier.'},
esES={'Objetos deseados','%d por fabricación','Materiales',
'Cantidad de objetos terminados. El plan usa reactivos básicos; las opciones y la fabricación son manuales.',
'Se añadió %s x%d a la cola de fabricación.','Receta no aprendida o costes/resultado no compatibles.','Selecciona una receta en la ventana de tu propia profesión.'},
itIT={'Oggetti richiesti','%d per creazione','Materiali',
'Quantità di oggetti finiti. Il piano usa reagenti base; opzioni e creazione restano manuali.',
'%s x%d aggiunto alla coda di creazione.','Ricetta non appresa o costi/risultato non supportati.','Scegli una ricetta nella finestra della tua professione.'},
ptBR={'Itens desejados','%d por criação','Materiais',
'Quantidade de itens prontos. O plano usa reagentes básicos; opções e criação continuam manuais.',
'%s x%d adicionado à fila de criação.','Receita não aprendida ou custos/resultado não suportados.','Selecione uma receita na janela da sua própria profissão.'},
koKR={'완성품 목표','제작당 %d개','재료',
'완성품 수량입니다. 계획은 기본 재료를 사용하며 추가 선택과 제작은 직접 진행합니다.',
'제작 대기열에 %s x%d 추가했습니다.','미습득 도안이거나 비용 또는 결과를 지원하지 않습니다.','자신의 전문 기술 창에서 도안을 선택하세요.'},
zhCN={'目标成品数量','每次制作%d个','材料',
'数量指成品数量。计划使用基础材料;可选材料和制作由你手动选择。',
'已将%s x%d加入制作队列。','配方尚未学习,或不支持其消耗或产物。','请在自己的专业窗口选择配方。'},
zhTW={'目標成品數量','每次製作%d個','材料',
'數量指成品數量。計劃使用基礎材料;可選材料和製作由你手動選擇。',
'已將%s x%d加入製作佇列。','配方尚未學習,或不支援其消耗或產物。','請在自己的專業視窗選擇配方。'},
}
profession.enGB=profession.enUS; profession.esMX=profession.esES
for locale,values in pairs(profession) do for i,key in ipairs(professionKeys) do F.Locales[locale][key]=values[i] end end
local costKeys={'SOURCE_COMPARE','SOURCE_AUTO','SOURCE_READY','SOURCE_COST_HELP','SOURCE_SPENDING','SOURCE_UNCOVERED',
'SOURCE_FEES','SOURCE_BLOCKED','SOURCE_LOWEST','SOURCE_LESS','SOURCE_MORE','SOURCE_BATCHES','SOURCE_LIMIT'}
local costs={
enUS={'Compare sources','Automatic recipe selection','Get ready-made',
'Auction estimate for shortages of the whole plan, using shared bags/bank first. Gathering, vendor sources and crafting fees are excluded. Choose an option to recalculate.',
'Additional purchases for the whole plan: ~%s','%d item types without full price or volume coverage',
'Crafting fees are unknown and excluded.','A station, chosen source or dependency is unavailable.',
'Lowest purchase estimate among fully priced variants.','%s less than the current plan','%s more than the current plan',
'%d crafts / %d items produced','Limited preview: some variants or prices are not compared.'},
ruRU={'Способы получения','Автовыбор рецепта','Получить готовым',
'Оценка покупки дефицита всего плана на аукционе. Сначала используются общие сумки/банк. Добыча, торговцы и плата мастеру не входят. Выбор пересчитывает план.',
'Покупка недостающего для всего плана: ~%s','Без полного покрытия ценой или лотами: %d позиций',
'Плата другим мастерам неизвестна и не включена.','Недоступна станция, выбранный источник или зависимость.',
'Наименьшая покупка среди полностью оценённых вариантов.','На %s меньше текущего плана','На %s больше текущего плана',
'Крафтов: %d / будет изготовлено: %d','Ограниченный просмотр: не все варианты или цены сравнены.'},
deDE={'Bezugswege vergleichen','Automatische Rezeptwahl','Fertig besorgen',
'Auktionsschätzung für Fehlmengen des gesamten Plans mit gemeinsamen Taschen/Bank. Sammeln, Händler und Herstellungsgebühren fehlen. Auswahl berechnet neu.',
'Zusätzliche Käufe für den gesamten Plan: ~%s','%d Gegenstandsarten ohne vollständige Preis- oder Mengenabdeckung',
'Gebühren anderer Handwerker sind unbekannt und ausgeschlossen.','Station, gewählte Quelle oder Abhängigkeit fehlt.',
'Niedrigste Kaufschätzung unter vollständig bewerteten Varianten.','%s weniger als der aktuelle Plan','%s mehr als der aktuelle Plan',
'%d Herstellungen / %d erzeugte Gegenstände','Begrenzte Vorschau: nicht alle Varianten oder Preise verglichen.'},
frFR={'Comparer les sources','Recette automatique','Obtenir déjà fabriqué',
'Estimation aux enchères des manques du plan entier avec sacs/banque partagés. Récolte, vendeurs et frais de fabrication exclus. Le choix recalcule le plan.',
'Achats supplémentaires du plan entier : ~%s','%d types sans couverture complète de prix ou quantité',
'Frais des autres artisans inconnus et exclus.','Station, source choisie ou dépendance indisponible.',
'Estimation minimale parmi les variantes entièrement évaluées.','%s de moins que le plan actuel','%s de plus que le plan actuel',
'%d fabrications / %d objets produits','Aperçu limité : certaines variantes ou certains prix non comparés.'},
esES={'Comparar fuentes','Receta automática','Obtener ya fabricado',
'Estimación de subasta para las carencias de todo el plan con bolsas/banco compartidos. Recolección, vendedores y tarifas excluidos. Elegir recalcula el plan.',
'Compras adicionales para todo el plan: ~%s','%d tipos sin cobertura completa de precio o cantidad',
'Las tarifas de otros artesanos son desconocidas y no se incluyen.','Estación, fuente elegida o dependencia no disponible.',
'Menor compra estimada entre variantes totalmente valoradas.','%s menos que el plan actual','%s más que el plan actual',
'%d fabricaciones / %d objetos producidos','Vista limitada: algunas variantes o precios no se comparan.'},
itIT={'Confronta fonti','Ricetta automatica','Ottieni già pronto',
'Stima d’asta delle carenze dell’intero piano con borse/banca condivise. Raccolta, venditori e compensi esclusi. La scelta ricalcola il piano.',
'Acquisti aggiuntivi dell’intero piano: ~%s','%d tipi senza copertura completa di prezzo o quantità',
'Compensi degli altri artigiani sconosciuti ed esclusi.','Stazione, fonte scelta o dipendenza non disponibile.',
'Minore acquisto stimato tra varianti interamente valutate.','%s meno del piano attuale','%s più del piano attuale',
'%d creazioni / %d oggetti prodotti','Anteprima limitata: alcune varianti o prezzi non confrontati.'},
ptBR={'Comparar fontes','Receita automática','Obter pronto',
'Estimativa de leilão das faltas de todo o plano com bolsas/banco compartilhados. Coleta, vendedores e taxas excluídos. A escolha recalcula o plano.',
'Compras adicionais de todo o plano: ~%s','%d tipos sem cobertura completa de preço ou quantidade',
'Taxas de outros artesãos são desconhecidas e excluídas.','Estação, fonte escolhida ou dependência indisponível.',
'Menor compra estimada entre variantes totalmente avaliadas.','%s menos que o plano atual','%s mais que o plano atual',
'%d criações / %d itens produzidos','Prévia limitada: algumas variantes ou preços não comparados.'},
koKR={'공급 방법 비교','도안 자동 선택','완성품 구하기',
'공유 가방과 은행을 먼저 사용한 전체 계획 부족분의 경매 추정치입니다. 채집, 상인과 제작 수수료는 제외됩니다. 선택하면 재계산합니다.',
'전체 계획의 추가 구매 비용: ~%s','가격 또는 수량이 완전히 확인되지 않은 종류: %d',
'다른 제작자의 수수료는 알 수 없으며 제외됩니다.','시설, 선택한 공급 방법 또는 의존 재료를 사용할 수 없습니다.',
'전체 가격이 확인된 선택지 중 최소 구매 추정치입니다.','현재 계획보다 %s 적음','현재 계획보다 %s 많음',
'제작 %d회 / 생산 %d개','제한된 미리보기: 일부 선택지 또는 가격은 비교되지 않았습니다.'},
zhCN={'比较获取方式','自动选择配方','获取成品',
'先使用共享背包和银行,估算整个计划缺口的拍卖购买费用。不含采集、商人和制作费用。选择后重新计算。',
'整个计划额外购买费用:~%s','缺少完整价格或数量覆盖的种类:%d',
'其他工匠的费用未知,未计入。','设施、所选来源或依赖材料不可用。',
'完整估价选项中最低的购买估算。','比当前计划少%s','比当前计划多%s',
'制作%d次 / 产出%d个','预览有限:部分选项或价格未比较。'},
zhTW={'比較取得方式','自動選擇配方','取得成品',
'先使用共用背包和銀行,估算整個計劃缺口的拍賣購買費用。不含採集、商人和製作費用。選擇後重新計算。',
'整個計劃額外購買費用:~%s','缺少完整價格或數量覆蓋的種類:%d',
'其他工匠的費用未知,未計入。','設施、所選來源或依賴材料不可用。',
'完整估價選項中最低的購買估算。','比目前計劃少%s','比目前計劃多%s',
'製作%d次 / 產出%d個','預覽有限:部分選項或價格未比較。'},
}
costs.enGB=costs.enUS; costs.esMX=costs.esES
for locale,values in pairs(costs) do for i,key in ipairs(costKeys) do F.Locales[locale][key]=values[i] end end
local setKeys={'SETS_TITLE','SETS_SAVE','SETS_HELP','SETS_LIST','SETS_EMPTY','SETS_COUNT','SETS_OPEN','SETS_DELETE',
'SETS_NAME_ERROR','SETS_FULL','SETS_MISSING','SETS_SOURCES_FULL','SETS_REPLACE','SETS_APPEND','SETS_SAVE_HELP',
'SETS_LOAD_HELP','SETS_CONFLICTS','SETS_CLEAN','SETS_CLEAN_HELP','SETS_REMOVED','SETS_UNDO','SETS_STOCK','SETS_GROUP_HELP'}
local sets={
enUS={'Goal sets','Save set','Up to 10 private sets per character. Goals, quantities and material sources are saved.',
'Saved sets','No saved sets.','%d goals','Open set','Delete set','Enter a short, nonempty name without control characters or |.',
'All 10 set slots are used. Save with an existing name to update it.','This set no longer exists.','Too many material-source choices (200).',
'Replace queue','Append goals','Name this queue. Saving with the same name replaces that saved set. Inventory is recalculated when loading.',
'Review the goals below. Replace the queue or append goals. Appending keeps current material sources when they conflict.',
'Kept current sources for %d conflicting materials.','Remove owned goals',
'Removes only goals fully covered by finished items allocated from your bags, in queue order. Bank snapshots and planned crafts do not count.',
'Removed goals: %d','Undo queue change','Finished items from stock: %d/%d','Repeated goals for one item are removed together only when all are covered.'},
ruRU={'Наборы целей','Сохранить набор','До 10 личных наборов на персонажа. Сохраняются цели, количество и способы получения реагентов.',
'Мои наборы','Сохранённых наборов нет.','Целей: %d','Открыть набор','Удалить набор','Введите короткое непустое имя без управляющих символов и |.',
'Все 10 мест заняты. Для обновления набора сохраните его с прежним именем.','Этого набора больше нет.','Слишком много способов получения реагентов (200).',
'Заменить очередь','Добавить цели','Назовите эту очередь. Прежний набор с таким именем будет заменён. При загрузке запасы пересчитываются.',
'Проверьте цели ниже. Замените очередь или добавьте цели в конец. При добавлении сохраняются текущие способы получения спорных реагентов.',
'Для %d реагентов сохранены текущие способы получения.','Убрать собранное',
'Убирает цели, полностью покрытые готовыми вещами в сумках, с учётом порядка очереди. Снимок банка и будущие крафты не считаются.',
'Убрано целей: %d','Отменить изменение','Готовых вещей из запасов: %d/%d','Повторяющиеся цели на один предмет убираются вместе, когда покрыт весь их объём.'},
deDE={'Zielsätze','Satz speichern','Bis zu 10 private Sätze pro Charakter. Ziele, Mengen und Materialquellen werden gespeichert.',
'Gespeicherte Sätze','Keine gespeicherten Sätze.','%d Ziele','Satz öffnen','Satz löschen','Gib einen kurzen Namen ohne Steuerzeichen oder | ein.',
'Alle 10 Plätze belegt. Speichere unter einem vorhandenen Namen zum Aktualisieren.','Dieser Satz existiert nicht mehr.','Zu viele Materialquellen (200).',
'Warteschlange ersetzen','Ziele anhängen','Benenne diese Warteschlange. Derselbe Name ersetzt den gespeicherten Satz. Vorräte werden beim Laden neu berechnet.',
'Prüfe die Ziele unten. Ersetze die Warteschlange oder hänge Ziele an. Bei Konflikten bleiben beim Anhängen die aktuellen Materialquellen.',
'Aktuelle Quellen für %d widersprüchliche Materialien behalten.','Vorhandene Ziele entfernen',
'Entfernt nur Ziele, die durch fertige Gegenstände in deinen Taschen in Reihenfolge vollständig gedeckt sind. Bankdaten und geplante Herstellung zählen nicht.',
'Entfernte Ziele: %d','Änderung rückgängig','Fertige Gegenstände aus Vorräten: %d/%d','Mehrere Ziele für denselben Gegenstand werden nur gemeinsam entfernt, wenn alle gedeckt sind.'},
frFR={'Ensembles d’objectifs','Enregistrer','Jusqu’à 10 ensembles privés par personnage. Objectifs, quantités et sources sont enregistrés.',
'Ensembles enregistrés','Aucun ensemble enregistré.','%d objectifs','Ouvrir','Supprimer','Saisissez un nom court sans caractères de contrôle ni |.',
'Les 10 emplacements sont utilisés. Réutilisez un nom pour mettre à jour un ensemble.','Cet ensemble n’existe plus.','Trop de sources de matériaux (200).',
'Remplacer la file','Ajouter les objectifs','Nommez cette file. Le même nom remplace l’ensemble enregistré. Les stocks sont recalculés au chargement.',
'Vérifiez les objectifs ci-dessous. Remplacez la file ou ajoutez les objectifs. L’ajout conserve les sources actuelles en cas de conflit.',
'Sources actuelles conservées pour %d matériaux en conflit.','Retirer les objectifs acquis',
'Retire uniquement les objectifs entièrement couverts par les objets finis des sacs, dans l’ordre de la file. La banque et les fabrications prévues ne comptent pas.',
'Objectifs retirés : %d','Annuler la modification','Objets finis du stock : %d/%d','Les objectifs du même objet sont retirés ensemble uniquement lorsqu’ils sont tous couverts.'},
esES={'Conjuntos de objetivos','Guardar conjunto','Hasta 10 conjuntos privados por personaje. Guarda objetivos, cantidades y fuentes de materiales.',
'Conjuntos guardados','No hay conjuntos guardados.','%d objetivos','Abrir conjunto','Eliminar conjunto','Escribe un nombre corto sin caracteres de control ni |.',
'Los 10 espacios están ocupados. Usa un nombre existente para actualizarlo.','Este conjunto ya no existe.','Demasiadas fuentes de materiales (200).',
'Reemplazar cola','Añadir objetivos','Nombra esta cola. El mismo nombre reemplaza el conjunto guardado. Las existencias se recalculan al cargar.',
'Revisa los objetivos. Reemplaza la cola o añade objetivos. Al añadir, se conservan las fuentes actuales en caso de conflicto.',
'Se conservaron las fuentes actuales para %d materiales en conflicto.','Quitar objetivos obtenidos',
'Solo quita objetivos cubiertos por objetos terminados de las bolsas, en orden de cola. No cuenta el banco guardado ni las fabricaciones previstas.',
'Objetivos quitados: %d','Deshacer cambio','Objetos terminados del inventario: %d/%d','Los objetivos del mismo objeto se quitan juntos solo cuando todos están cubiertos.'},
itIT={'Gruppi di obiettivi','Salva gruppo','Fino a 10 gruppi privati per personaggio. Salva obiettivi, quantità e fonti dei materiali.',
'Gruppi salvati','Nessun gruppo salvato.','%d obiettivi','Apri gruppo','Elimina gruppo','Inserisci un nome breve senza caratteri di controllo o |.',
'Tutti i 10 posti sono occupati. Usa un nome esistente per aggiornarlo.','Questo gruppo non esiste più.','Troppe fonti di materiali (200).',
'Sostituisci coda','Aggiungi obiettivi','Dai un nome alla coda. Lo stesso nome sostituisce il gruppo salvato. Le scorte vengono ricalcolate al caricamento.',
'Controlla gli obiettivi. Sostituisci la coda o aggiungili. L’aggiunta mantiene le fonti attuali in caso di conflitto.',
'Fonti attuali mantenute per %d materiali in conflitto.','Rimuovi obiettivi ottenuti',
'Rimuove solo gli obiettivi coperti interamente da oggetti finiti nelle borse, in ordine di coda. Banca salvata e creazioni previste non contano.',
'Obiettivi rimossi: %d','Annulla modifica','Oggetti finiti dalle scorte: %d/%d','Gli obiettivi dello stesso oggetto vengono rimossi insieme solo se sono tutti coperti.'},
ptBR={'Conjuntos de metas','Salvar conjunto','Até 10 conjuntos privados por personagem. Salva metas, quantidades e fontes de materiais.',
'Conjuntos salvos','Nenhum conjunto salvo.','%d metas','Abrir conjunto','Excluir conjunto','Digite um nome curto sem caracteres de controle ou |.',
'Os 10 espaços estão ocupados. Use um nome existente para atualizá-lo.','Este conjunto não existe mais.','Fontes de materiais demais (200).',
'Substituir fila','Adicionar metas','Nomeie esta fila. O mesmo nome substitui o conjunto salvo. Os estoques são recalculados ao carregar.',
'Confira as metas abaixo. Substitua a fila ou adicione metas. Ao adicionar, as fontes atuais são mantidas em caso de conflito.',
'Fontes atuais mantidas para %d materiais em conflito.','Remover metas obtidas',
'Remove apenas metas totalmente cobertas por itens prontos nas bolsas, na ordem da fila. Banco salvo e criações planejadas não contam.',
'Metas removidas: %d','Desfazer alteração','Itens prontos do estoque: %d/%d','Metas do mesmo item são removidas juntas apenas quando todas estão cobertas.'},
koKR={'목표 세트','세트 저장','캐릭터당 개인 세트 10개를 저장합니다. 목표, 수량과 재료 공급 방법이 저장됩니다.',
'저장된 세트','저장된 세트가 없습니다.','목표 %d개','세트 열기','세트 삭제','제어 문자나 | 없이 짧은 이름을 입력하세요.',
'세트 10개가 모두 사용 중입니다. 기존 이름으로 저장하면 갱신됩니다.','이 세트는 더 이상 없습니다.','재료 공급 방법이 너무 많습니다 (200).',
'대기열 교체','목표 추가','대기열 이름을 입력하세요. 같은 이름의 세트는 교체됩니다. 불러올 때 현재 재고로 다시 계산합니다.',
'아래 목표를 확인하세요. 대기열을 교체하거나 목표를 추가합니다. 추가 시 충돌하는 재료는 현재 공급 방법을 유지합니다.',
'충돌하는 재료 %d개의 현재 공급 방법을 유지했습니다.','보유 목표 제거',
'대기열 순서대로 가방의 완성품으로 완전히 충족된 목표만 제거합니다. 저장된 은행 재고와 예정된 제작은 포함하지 않습니다.',
'제거된 목표: %d','변경 취소','재고의 완성품: %d/%d','같은 아이템의 반복 목표는 전체 수량을 충족했을 때 함께 제거됩니다.'},
zhCN={'目标套组','保存套组','每个角色最多10个私人套组。保存目标、数量和材料来源。',
'已存套组','没有已存套组。','%d个目标','打开套组','删除套组','请输入不含控制字符或|的简短名称。',
'10个位置已满。使用现有名称保存即可更新。','此套组已不存在。','材料来源过多(200)。',
'替换队列','追加目标','为队列命名。同名套组会被替换。加载时根据当前库存重新计算。',
'请检查以下目标。替换队列或追加目标。追加时,冲突材料保留当前来源。',
'已为%d种冲突材料保留当前来源。','移除已持有目标',
'按队列顺序,仅移除可由背包成品完全满足的目标。银行快照和计划制作不计入。',
'已移除目标:%d','撤销更改','库存成品:%d/%d','同一物品的重复目标仅在全部满足后一起移除。'},
zhTW={'目標套組','儲存套組','每個角色最多10個私人套組。儲存目標、數量和材料來源。',
'已存套組','沒有已存套組。','%d個目標','開啟套組','刪除套組','請輸入不含控制字元或|的簡短名稱。',
'10個位置已滿。使用現有名稱儲存即可更新。','此套組已不存在。','材料來源過多(200)。',
'取代佇列','追加目標','為佇列命名。同名套組會被取代。載入時根據目前庫存重新計算。',
'請檢查以下目標。取代佇列或追加目標。追加時,衝突材料保留目前來源。',
'已為%d種衝突材料保留目前來源。','移除已持有目標',
'依佇列順序,僅移除可由背包成品完全滿足的目標。銀行快照和計劃製作不計入。',
'已移除目標:%d','復原更改','庫存成品:%d/%d','同一物品的重複目標僅在全部滿足後一起移除。'},
}
sets.enGB=sets.enUS; sets.esMX=sets.esES
for locale,values in pairs(sets) do for i,key in ipairs(setKeys) do F.Locales[locale][key]=values[i] end end
local stockKeys={'RESTOCK_MODE','RESTOCK_ENABLE','RESTOCK_ONCE','RESTOCK_TARGET','RESTOCK_DUPLICATE','RESTOCK_HELP','RESTOCK_PROGRESS','RESTOCK_READY'}
local stock={
enUS={'Maintain stock','Maintain this stock','Use one-time goal','Stock',
'A stock target already exists for this item. Edit that target instead of adding another.',
'Enable Maintain stock on a goal to keep it after cleanup and refill after use. Quantity is the desired stock. Bags and enabled saved bank share allocations with all goals; crafting remains manual.',
'Allocated: %d carried / %d saved bank / target %d',
'Stock target met. The goal stays and recalculates after items are used.'},
ruRU={'Постоянный запас','Поддерживать запас','Сделать разовой целью','Запас',
'Для этого предмета уже есть постоянный запас. Измените его количество вместо добавления второго правила.',
'Включите «Поддерживать запас» у цели: она останется после очистки и снова покажет дефицит при расходовании. Количество задаёт желаемый запас. Сумки и включённый снимок банка распределяются между всеми целями; изготовление ручное.',
'Учтено для цели: %d в сумках / %d в банке / нужно %d',
'Запас достигнут. Цель остаётся и пересчитывается после расходования вещей.'},
deDE={'Vorrat halten','Diesen Vorrat halten','Einmaliges Ziel','Vorrat',
'Für diesen Gegenstand gibt es bereits ein Vorratsziel. Ändere dessen Menge statt ein weiteres hinzuzufügen.',
'Aktiviere Vorrat halten, damit das Ziel nach dem Aufräumen bleibt und nach Verbrauch erneut aufgefüllt wird. Menge ist der gewünschte Vorrat. Taschen und aktivierte Bankdaten werden zwischen allen Zielen geteilt; Herstellung bleibt manuell.',
'Zugeteilt: %d getragen / %d gespeicherte Bank / Ziel %d',
'Vorratsziel erreicht. Das Ziel bleibt und wird nach Verbrauch neu berechnet.'},
frFR={'Maintenir le stock','Maintenir ce stock','Objectif ponctuel','Stock',
'Un objectif de stock existe déjà pour cet objet. Modifiez sa quantité plutôt que d’en ajouter un autre.',
'Activez Maintenir le stock pour conserver cet objectif après nettoyage et le remplir après utilisation. La quantité est le stock souhaité. Sacs et banque enregistrée activée sont partagés entre les objectifs ; fabrication manuelle.',
'Affecté : %d transportés / %d en banque enregistrée / cible %d',
'Stock atteint. L’objectif reste et se recalcule après utilisation des objets.'},
esES={'Mantener existencias','Mantener este stock','Objetivo único','Stock',
'Ya existe un objetivo de existencias para este objeto. Cambia su cantidad en lugar de añadir otro.',
'Activa Mantener existencias para conservar el objetivo al limpiar y reponerlo tras el uso. La cantidad es el stock deseado. Bolsas y banco guardado activado se comparten entre objetivos; la fabricación es manual.',
'Asignado: %d en bolsas / %d en banco guardado / objetivo %d',
'Stock alcanzado. El objetivo permanece y se recalcula al usar los objetos.'},
itIT={'Mantieni scorte','Mantieni queste scorte','Obiettivo singolo','Scorte',
'Esiste già un obiettivo di scorte per questo oggetto. Modifica la sua quantità invece di aggiungerne un altro.',
'Attiva Mantieni scorte per conservare l’obiettivo dopo la pulizia e rifornirlo dopo l’uso. La quantità indica le scorte desiderate. Borse e banca salvata attiva sono condivise tra gli obiettivi; creazione manuale.',
'Assegnato: %d nelle borse / %d in banca salvata / obiettivo %d',
'Scorte raggiunte. L’obiettivo rimane e si ricalcola dopo l’uso degli oggetti.'},
ptBR={'Manter estoque','Manter este estoque','Meta única','Estoque',
'Já existe uma meta de estoque para este item. Edite a quantidade em vez de adicionar outra.',
'Ative Manter estoque para conservar a meta após a limpeza e repor após o uso. A quantidade é o estoque desejado. Bolsas e banco salvo ativado são compartilhados entre metas; fabricação manual.',
'Alocado: %d nas bolsas / %d no banco salvo / meta %d',
'Estoque atingido. A meta permanece e é recalculada após o uso dos itens.'},
koKR={'재고 유지','이 재고 유지','일회성 목표로 변경','재고',
'이 아이템의 재고 목표가 이미 있습니다. 새로 추가하지 말고 기존 목표의 수량을 수정하세요.',
'재고 유지를 켜면 정리 후에도 목표가 남고 사용 후 다시 보충합니다. 수량은 원하는 재고입니다. 가방과 활성화된 저장 은행 재고를 모든 목표가 공유하며 제작은 수동입니다.',
'배정: 가방 %d개 / 저장 은행 %d개 / 목표 %d개',
'목표 재고를 충족했습니다. 목표는 유지되며 아이템 사용 후 다시 계산합니다.'},
zhCN={'维持库存','维持此库存','改为一次性目标','库存',
'此物品已有库存目标。请修改其数量,不要再添加一个。',
'开启维持库存后,目标在清理后仍保留,使用物品后重新补货。数量为期望库存。所有目标共享背包和已启用的银行快照;制作仍需手动。',
'已分配:背包%d / 银行快照%d / 目标%d',
'已达到库存目标。目标会保留,并在使用物品后重新计算。'},
zhTW={'維持庫存','維持此庫存','改為一次性目標','庫存',
'此物品已有庫存目標。請修改其數量,不要再新增一個。',
'開啟維持庫存後,目標在清理後仍保留,使用物品後重新補貨。數量為期望庫存。所有目標共用背包和已啟用的銀行快照;製作仍需手動。',
'已分配:背包%d / 銀行快照%d / 目標%d',
'已達到庫存目標。目標會保留,並在使用物品後重新計算。'},
}
stock.enGB=stock.enUS; stock.esMX=stock.esES
for locale,values in pairs(stock) do for i,key in ipairs(stockKeys) do F.Locales[locale][key]=values[i] end end
local finderKeys={'FINDER_BUTTON','PAGE_crafters','EMPTY_crafters','FINDER_NO_OUTPUT','FINDER_LOOKUP_ONLY','FINDER_HELP',
'FINDER_COUNT','FINDER_PICK','FINDER_NETWORK','FINDER_PROFILE','FINDER_PLAN','FINDER_RECIPE','FINDER_RECIPES',
'FINDER_AGE_UNKNOWN','FINDER_SKILL_UNKNOWN','FINDER_CHANGED','FINDER_VARIANT_LIMIT','FINDER_PLAYER_LIMIT'}
local finder={
enUS={'Find a crafter','Find crafters','No other known crafters for this item. Enable sharing and sync with your group or guild.',
'This recipe has no supported item output for lookup.','Crafter lookup is available; this recipe will not be added to your profile.',
'Matches use the base item ID. Profiles may be saved data; online presence, item variants and fees are unconfirmed. Crafting facilities are checked in the plan. No messages are sent.',
'%d other known crafters','Select a crafter to inspect matching recipes.','All network players','Open profile','Plan with this crafter','Open recipe','Matching recipes',
'Profile age unknown.','Skill not reported','This crafter or recipe changed. Refresh the results.',
'First %d variants shown. Open the profile for the full list.','First %d players shown here. Select any player on the left or narrow the search.'},
ruRU={'Найти мастера','Поиск мастеров','Другие мастера этого предмета пока неизвестны. Включите обмен и обновите данные в группе или гильдии.',
'У этого рецепта нет поддерживаемого предмета-результата для поиска.','Можно найти мастера; этот рецепт не будет добавлен в ваш профиль.',
'Поиск по базовому ID предмета. Профили могут быть сохранёнными: онлайн, варианты вещи и плата не подтверждены. Доступность лагерных объектов проверяется в плане. Сообщения не отправляются.',
'Известно других мастеров: %d','Выберите мастера для просмотра подходящих рецептов.','Все игроки сети','Открыть профиль','План с этим мастером','Открыть рецепт','Подходящие рецепты',
'Возраст профиля неизвестен.','Навык не указан','Мастер или рецепт изменился. Обновите результаты.',
'Показаны первые %d вариантов. Полный список доступен в профиле.','Здесь показаны первые %d игроков. Выберите любого слева или уточните поиск.'},
deDE={'Handwerker finden','Handwerker suchen','Keine anderen bekannten Handwerker für diesen Gegenstand. Aktiviere Austausch und synchronisiere mit Gruppe oder Gilde.',
'Dieses Rezept hat keinen unterstützten Gegenstand als Ergebnis für die Suche.','Handwerkersuche verfügbar; dieses Rezept wird deinem Profil nicht hinzugefügt.',
'Abgleich über die Basis-Gegenstands-ID. Profile können gespeichert sein; Online-Status, Varianten und Gebühren sind unbestätigt. Einrichtungen werden im Plan geprüft. Es werden keine Nachrichten gesendet.',
'%d andere bekannte Handwerker','Wähle einen Handwerker für passende Rezepte.','Alle Netzwerkspieler','Profil öffnen','Plan mit Handwerker','Rezept öffnen','Passende Rezepte',
'Profilalter unbekannt.','Fertigkeit nicht gemeldet','Handwerker oder Rezept hat sich geändert. Aktualisiere die Ergebnisse.',
'Erste %d Varianten angezeigt. Die vollständige Liste steht im Profil.','Hier werden die ersten %d Spieler angezeigt. Wähle links einen Spieler oder grenze die Suche ein.'},
frFR={'Trouver un artisan','Chercher des artisans','Aucun autre artisan connu pour cet objet. Activez le partage et synchronisez avec votre groupe ou guilde.',
'Cette recette n’a pas d’objet produit compatible pour la recherche.','Recherche d’artisan disponible ; cette recette ne sera pas ajoutée à votre profil.',
'Correspondance par identifiant de base de l’objet. Les profils peuvent être enregistrés ; présence en ligne, variantes et frais non confirmés. Les installations sont vérifiées dans le plan. Aucun message envoyé.',
'%d autres artisans connus','Choisissez un artisan pour consulter ses recettes.','Tous les joueurs du réseau','Ouvrir le profil','Plan avec cet artisan','Ouvrir la recette','Recettes correspondantes',
'Âge du profil inconnu.','Compétence non indiquée','L’artisan ou la recette a changé. Actualisez les résultats.',
'Les %d premières variantes sont affichées. Liste complète dans le profil.','Les %d premiers joueurs sont affichés ici. Choisissez à gauche ou affinez la recherche.'},
esES={'Buscar artesano','Buscar artesanos','No hay otros artesanos conocidos para este objeto. Activa el intercambio y sincroniza con tu grupo o hermandad.',
'Esta receta no produce un objeto compatible con la búsqueda.','Puedes buscar un artesano; esta receta no se añadirá a tu perfil.',
'Coincide por ID base del objeto. Los perfiles pueden estar guardados; conexión, variantes y tarifas no confirmadas. Las instalaciones se comprueban en el plan. No se envían mensajes.',
'%d otros artesanos conocidos','Selecciona un artesano para ver sus recetas.','Todos los jugadores de la red','Abrir perfil','Plan con este artesano','Abrir receta','Recetas coincidentes',
'Antigüedad del perfil desconocida.','Habilidad no indicada','El artesano o la receta ha cambiado. Actualiza los resultados.',
'Se muestran las primeras %d variantes. Lista completa en el perfil.','Aquí se muestran los primeros %d jugadores. Selecciona cualquiera a la izquierda o filtra la búsqueda.'},
itIT={'Trova artigiano','Cerca artigiani','Nessun altro artigiano noto per questo oggetto. Attiva la condivisione e sincronizza con gruppo o gilda.',
'Questa ricetta non produce un oggetto supportato per la ricerca.','Ricerca artigiani disponibile; questa ricetta non verrà aggiunta al tuo profilo.',
'Ricerca tramite ID base dell’oggetto. I profili possono essere salvati; presenza online, varianti e compensi non confermati. Le strutture vengono verificate nel piano. Nessun messaggio inviato.',
'%d altri artigiani noti','Scegli un artigiano per vedere le ricette adatte.','Tutti i giocatori della rete','Apri profilo','Piano con artigiano','Apri ricetta','Ricette corrispondenti',
'Età del profilo sconosciuta.','Competenza non indicata','Artigiano o ricetta modificati. Aggiorna i risultati.',
'Prime %d varianti mostrate. Elenco completo nel profilo.','Qui sono mostrati i primi %d giocatori. Scegli a sinistra o restringi la ricerca.'},
ptBR={'Encontrar artesão','Buscar artesãos','Nenhum outro artesão conhecido para este item. Ative a troca e sincronize com seu grupo ou guilda.',
'Esta receita não produz um item compatível com a busca.','A busca de artesão está disponível; esta receita não será adicionada ao seu perfil.',
'Busca pelo ID base do item. Perfis podem ser dados salvos; presença online, variantes e taxas não confirmadas. Instalações são verificadas no plano. Nenhuma mensagem é enviada.',
'%d outros artesãos conhecidos','Escolha um artesão para ver receitas compatíveis.','Todos os jogadores da rede','Abrir perfil','Plano com este artesão','Abrir receita','Receitas compatíveis',
'Idade do perfil desconhecida.','Perícia não informada','O artesão ou a receita mudou. Atualize os resultados.',
'Primeiras %d variantes exibidas. Lista completa no perfil.','Os primeiros %d jogadores são exibidos aqui. Escolha à esquerda ou refine a busca.'},
koKR={'제작자 찾기','제작자 검색','이 아이템을 제작하는 다른 알려진 제작자가 없습니다. 공유를 켜고 파티 또는 길드와 동기화하세요.',
'이 도안에는 검색에 지원되는 결과 아이템이 없습니다.','제작자 검색은 가능합니다. 이 도안은 내 프로필에 추가되지 않습니다.',
'기본 아이템 ID로 검색합니다. 프로필은 저장된 자료일 수 있으며 접속 여부, 아이템 변형과 수수료는 확인되지 않았습니다. 시설은 계획에서 확인합니다. 메시지는 보내지 않습니다.',
'알려진 다른 제작자 %d명','제작자를 선택해 해당 도안을 확인하세요.','네트워크의 모든 플레이어','프로필 열기','이 제작자로 계획','도안 열기','해당 도안',
'프로필 갱신 시간 불명.','숙련도 미보고','제작자 또는 도안이 변경되었습니다. 결과를 새로 고치세요.',
'처음 %d개 변형이 표시됩니다. 전체 목록은 프로필에서 확인하세요.','여기에는 처음 %d명의 플레이어가 표시됩니다. 왼쪽에서 선택하거나 검색을 좁히세요.'},
zhCN={'寻找工匠','工匠搜索','尚无已知的其他工匠制作此物品。请开启共享并与队伍或公会同步。',
'此配方没有可用于搜索的受支持产物。','可以寻找工匠;此配方不会加入你的档案。',
'按基础物品ID匹配。档案可能是保存的数据;在线状态、物品变体和费用未确认。设施可用性在计划中检查。不会发送消息。',
'已知其他工匠:%d','选择工匠以查看匹配的配方。','网络全部玩家','打开档案','使用此工匠规划','打开配方','匹配配方',
'档案更新时间未知。','技能未报告','工匠或配方已更改。请刷新结果。',
'显示前%d个变体。完整列表在档案中。','这里显示前%d位玩家。请在左侧选择或缩小搜索范围。'},
zhTW={'尋找工匠','工匠搜尋','尚無已知的其他工匠製作此物品。請開啟共享並與隊伍或公會同步。',
'此配方沒有可用於搜尋的支援產物。','可以尋找工匠;此配方不會加入你的檔案。',
'依基礎物品ID比對。檔案可能是儲存的資料;線上狀態、物品變體和費用未確認。設施可用性在計劃中檢查。不會傳送訊息。',
'已知其他工匠:%d','選擇工匠以查看符合的配方。','網路全部玩家','開啟檔案','使用此工匠規劃','開啟配方','符合配方',
'檔案更新時間未知。','技能未回報','工匠或配方已變更。請重新整理結果。',
'顯示前%d個變體。完整列表在檔案中。','這裡顯示前%d位玩家。請在左側選擇或縮小搜尋範圍。'},
}
finder.enGB=finder.enUS; finder.esMX=finder.esES
for locale,values in pairs(finder) do for i,key in ipairs(finderKeys) do F.Locales[locale][key]=values[i] end end
local throttle={
enUS='The client is limiting the send rate. Messages are queued and will retry automatically.',
ruRU='Клиент ограничивает частоту отправки. Сообщения в очереди; повторная отправка автоматическая.',
deDE='Der Client begrenzt die Senderate. Nachrichten bleiben in der Warteschlange und werden automatisch erneut gesendet.',
frFR='Le client limite la fréquence d’envoi. Les messages restent en file et seront renvoyés automatiquement.',
esES='El cliente limita la frecuencia de envío. Los mensajes siguen en la cola y se reintentarán automáticamente.',
itIT='Il client limita la frequenza di invio. I messaggi restano in coda e saranno ritentati automaticamente.',
ptBR='O cliente limita a frequência de envio. As mensagens ficam na fila e serão reenviadas automaticamente.',
koKR='클라이언트가 전송 빈도를 제한합니다. 메시지는 대기열에 유지되며 자동으로 재전송됩니다.',
zhCN='客户端正在限制发送频率。消息保留在队列中并会自动重试。',
zhTW='用戶端正在限制傳送頻率。訊息保留在佇列中並會自動重試。',
}
throttle.enGB=throttle.enUS; throttle.esMX=throttle.esES
for locale,text in pairs(throttle) do F.Locales[locale].NET_THROTTLE=text end
local visualKeys={'VIS_TARGET','VIS_OWNED','VIS_CRAFTS','VIS_COST','VIS_GET','VIS_MAKE','VIS_DETAILS','VIS_TOOLS','VIS_SOURCES','VIS_QUEUE_MINI'}
local visual={
enUS={'Wanted','Owned','Crafts','Purchases','Get','Craft','Details','Manage queue','Material choices','%d goals / %d missing'},
ruRU={'Нужно','Есть','Крафтов','Покупки','Получить','Изготовить','Подробнее','Управление очередью','Выбор материалов','%d целей / %d не хватает'},
deDE={'Ziel','Vorhanden','Herstellungen','Einkäufe','Besorgen','Herstellen','Details','Warteschlange verwalten','Materialauswahl','%d Ziele / %d fehlen'},
frFR={'Objectif','Possédé','Fabrications','Achats','Obtenir','Fabriquer','Détails','Gérer la file','Choix des matériaux','%d objectifs / %d manquants'},
esES={'Objetivo','Disponible','Fabricaciones','Compras','Conseguir','Fabricar','Detalles','Gestionar cola','Elegir materiales','%d objetivos / %d faltantes'},
itIT={'Obiettivo','Posseduti','Creazioni','Acquisti','Ottieni','Crea','Dettagli','Gestisci coda','Scelta materiali','%d obiettivi / %d mancanti'},
ptBR={'Objetivo','Disponível','Criações','Compras','Obter','Criar','Detalhes','Gerenciar fila','Escolher materiais','%d objetivos / %d faltando'},
koKR={'목표','보유','제작 횟수','구매','확보','제작','자세히','대기열 관리','재료 선택','목표 %d / 부족 %d'},
zhCN={'目标','拥有','制作次数','购买','获取','制作','详情','管理队列','材料选择','%d个目标 / %d种缺少'},
zhTW={'目標','擁有','製作次數','購買','取得','製作','詳情','管理佇列','材料選擇','%d個目標 / 缺少%d種'},
}
visual.enGB=visual.enUS; visual.esMX=visual.esES
for locale,values in pairs(visual) do for i,key in ipairs(visualKeys) do F.Locales[locale][key]=values[i] end end
local ready={enUS={'Materials ready','Goals'},ruRU={'Материалы готовы','Целей'},deDE={'Material bereit','Ziele'},frFR={'Matériaux prêts','Objectifs'},esES={'Materiales listos','Objetivos'},itIT={'Materiali pronti','Obiettivi'},ptBR={'Materiais prontos','Objetivos'},koKR={'재료 준비됨','목표'},zhCN={'材料齐全','目标'},zhTW={'材料齊全','目標'}}
ready.enGB=ready.enUS; ready.esMX=ready.esES
for locale,values in pairs(ready) do F.Locales[locale].VIS_READY=values[1]; F.Locales[locale].VIS_GOALS=values[2] end
local auto={
enUS={'Scan my recipes when opening a profession','Automatically choose the lowest known purchase cost'},
ruRU={'Сканировать рецепты при открытии профессии','Автоматически выбирать наименьшую известную стоимость покупки'},
deDE={'Rezepte beim Öffnen eines Berufs scannen','Automatisch die niedrigsten bekannten Einkaufskosten wählen'},
frFR={'Analyser mes recettes à l’ouverture d’un métier','Choisir automatiquement le coût d’achat connu le plus bas'},
esES={'Escanear mis recetas al abrir una profesión','Elegir automáticamente el menor coste de compra conocido'},
itIT={'Scansiona ricette quando apro una professione','Scegli automaticamente il costo di acquisto noto più basso'},
ptBR={'Escanear receitas ao abrir uma profissão','Escolher automaticamente o menor custo de compra conhecido'},
koKR={'전문 기술을 열면 내 조리법 검색','알려진 최소 구매 비용을 자동 선택'},
zhCN={'打开专业时扫描我的配方','自动选择已知最低购买成本'},
zhTW={'開啟專業時掃描我的配方','自動選擇已知最低購買成本'},
}
auto.enGB=auto.enUS; auto.esMX=auto.esES
for locale,values in pairs(auto) do
F.Locales[locale].SETTING_AUTOSCAN=values[1]; F.Locales[locale].SETTING_AUTOSOURCES=values[2]
end
local board={enUS={'Materials','Maintain stock','Next step'},ruRU={'Материалы','Поддерживать запас','Следующий шаг'},deDE={'Materialien','Vorrat halten','Nächster Schritt'},frFR={'Matériaux','Maintenir le stock','Étape suivante'},esES={'Materiales','Mantener existencias','Siguiente paso'},itIT={'Materiali','Mantieni scorte','Passo successivo'},ptBR={'Materiais','Manter estoque','Próximo passo'},koKR={'재료','재고 유지','다음 단계'},zhCN={'材料','维持库存','下一步'},zhTW={'材料','維持庫存','下一步'}}
board.enGB=board.enUS; board.esMX=board.esES
for locale,values in pairs(board) do F.Locales[locale].QB_MATERIALS=values[1]; F.Locales[locale].QB_STOCK=values[2]; F.Locales[locale].QB_NEXT=values[3] end
local boardTabs={enUS={'All materials','Crafts'},ruRU={'Все материалы','Крафт'},deDE={'Alle Materialien','Herstellungen'},frFR={'Tous les matériaux','Fabrications'},esES={'Todos los materiales','Fabricación'},itIT={'Tutti i materiali','Creazione'},ptBR={'Todos os materiais','Criação'},koKR={'전체 재료','제작'},zhCN={'全部材料','制作'},zhTW={'全部材料','製作'}}
boardTabs.enGB=boardTabs.enUS; boardTabs.esMX=boardTabs.esES
for locale,values in pairs(boardTabs) do F.Locales[locale].QB_MATERIALS=values[1]; F.Locales[locale].QB_CRAFTS=values[2] end
local appearance={
enUS={'Appearance','Modern','Classic','Neon','Commands'},ruRU={'Стиль интерфейса','Современный','Классический','Неон','Команды'},
deDE={'Darstellung','Modern','Klassisch','Neon','Befehle'},frFR={'Apparence','Moderne','Classique','Néon','Commandes'},
esES={'Apariencia','Moderno','Clásico','Neón','Comandos'},itIT={'Aspetto','Moderno','Classico','Neon','Comandi'},
ptBR={'Aparência','Moderno','Clássico','Neon','Comandos'},koKR={'외관','현대적','기본','네온','명령어'},
zhCN={'界面样式','现代','经典','霓虹','命令'},zhTW={'介面樣式','現代','經典','霓虹','指令'}}
appearance.enGB=appearance.enUS; appearance.esMX=appearance.esES
for locale,values in pairs(appearance) do
for i,key in ipairs({'SETTING_STYLE','STYLE_MODERN','STYLE_CLASSIC','STYLE_NEON','COMMANDS_BUTTON'}) do F.Locales[locale][key]=values[i] end
F.Locales[locale].STYLE_BOOTSTRAP = F.Locales[locale].STYLE_NEON
end
local watchLimit={enUS='You can favorite up to 5 market items.',ruRU='Можно добавить не более 5 вещей рынка в избранное.',
deDE='Bis zu 5 Marktgegenstände können favorisiert werden.',frFR='Vous pouvez ajouter jusqu’à 5 objets du marché aux favoris.',
esES='Puedes marcar hasta 5 objetos del mercado como favoritos.',itIT='Puoi aggiungere fino a 5 oggetti del mercato ai preferiti.',
ptBR='Você pode favoritar até 5 itens do mercado.',koKR='시장 관심 품목은 최대 5개까지 등록할 수 있습니다.',
zhCN='最多可收藏5种市场物品。',zhTW='最多可收藏5種市場物品。'}
watchLimit.enGB=watchLimit.enUS; watchLimit.esMX=watchLimit.esES
for locale,value in pairs(watchLimit) do F.Locales[locale].MARKET_FAVORITE_LIMIT=value end
local diagnostics={
enUS={'network diagnostics','protected-action logging'},ruRU={'диагностика сети','журнал заблокированных действий'},
deDE={'Netzwerkdiagnose','Protokoll geschützter Aktionen'},frFR={'diagnostic réseau','journal des actions protégées'},
esES={'diagnóstico de red','registro de acciones protegidas'},itIT={'diagnostica di rete','registro delle azioni protette'},
ptBR={'diagnóstico da rede','registro de ações protegidas'},koKR={'네트워크 진단','보호된 동작 기록'},
zhCN={'网络诊断','受保护操作日志'},zhTW={'網路診斷','受保護操作記錄'}}
diagnostics.enGB=diagnostics.enUS; diagnostics.esMX=diagnostics.esES
local updated={}
for locale,values in pairs(diagnostics) do
local dict=F.Locales[locale]
if not updated[dict] then
dict.HELP=dict.HELP..'\nhelp / commands — '..dict.COMMANDS_BUTTON..'\ntrack — '..dict.TRACK_TITLE..
'\nnetstatus — '..values[1]..'\ntaint status|on|off — '..values[2]
updated[dict]=true
end
end
local itemTooltips={
enUS={'Loading item information…','Item information is unavailable.'},
ruRU={'Загрузка информации о предмете…','Информация о предмете недоступна.'},
deDE={'Gegenstandsinformationen werden geladen…','Gegenstandsinformationen sind nicht verfügbar.'},
frFR={'Chargement des informations de l’objet…','Informations de l’objet indisponibles.'},
esES={'Cargando información del objeto…','Información del objeto no disponible.'},
itIT={'Caricamento delle informazioni sull’oggetto…','Informazioni sull’oggetto non disponibili.'},
ptBR={'Carregando informações do item…','Informações do item indisponíveis.'},
koKR={'아이템 정보 불러오는 중…','아이템 정보를 사용할 수 없습니다.'},
zhCN={'正在加载物品信息…','物品信息不可用。'},
zhTW={'正在載入物品資訊…','物品資訊無法使用。'}}
itemTooltips.enGB=itemTooltips.enUS; itemTooltips.esMX=itemTooltips.esES
-- Bank material list on the home page. Registered into F.Locales the same way as
-- every other block here, otherwise F.L would fall back to the key name.
local bankMaterials={
enUS={'Materials in bank: %d','The saved bank holds no crafting materials yet.','More','Less'},
ruRU={'Материалов в банке: %d','В сохранённом банке пока нет крафтовых материалов.','Подробнее','Свернуть'},
deDE={'Materialien in der Bank: %d','Die gespeicherte Bank enthält noch keine Handwerksmaterialien.','Mehr','Weniger'},
frFR={'Matériaux en banque : %d','La banque enregistrée ne contient pas encore de matériaux d’artisanat.','Plus','Moins'},
esES={'Materiales en el banco: %d','El banco guardado aún no contiene materiales de fabricación.','Más','Menos'},
itIT={'Materiali in banca: %d','La banca salvata non contiene ancora materiali da creazione.','Altro','Meno'},
ptBR={'Materiais no banco: %d','O banco salvo ainda não contém materiais de fabricação.','Mais','Menos'},
koKR={'은행 재료: %d개','저장된 은행에 아직 제작 재료가 없습니다.','자세히','접기'},
zhCN={'银行中的材料:%d','保存的银行中还没有制作材料。','详情','收起'},
zhTW={'銀行中的材料:%d','儲存的銀行中還沒有製作材料。','詳情','收合'}}
bankMaterials.enGB=bankMaterials.enUS; bankMaterials.esMX=bankMaterials.esES
local bankMaterialKeys={'BANK_MATERIAL_LIST','BANK_MATERIAL_EMPTY','BANK_EXPAND','BANK_COLLAPSE'}
for locale,values in pairs(bankMaterials) do
F.Locales[locale]=F.Locales[locale] or {}
for i,key in ipairs(bankMaterialKeys) do F.Locales[locale][key]=values[i] end
end
for locale,values in pairs(itemTooltips) do
F.Locales[locale].ITEM_TOOLTIP_LOADING=values[1]; F.Locales[locale].ITEM_TOOLTIP_UNAVAILABLE=values[2]
end
local versionMessages={
enUS={'Previously, %s reported version %s (installed: %s). /fn updates','Version check queued.','Join a guild or group to check participant versions.'},
ruRU={'Ранее %s сообщил версию %s (установлена %s). /fn updates','Проверка версий поставлена в очередь.','Для проверки версий нужна гильдия или группа.'},
deDE={'%s meldete zuvor Version %s (installiert: %s). /fn updates','Versionsprüfung vorgemerkt.','Tritt einer Gilde oder Gruppe bei, um Spielerversionen zu prüfen.'},
frFR={'%s avait signalé la version %s (installée : %s). /fn updates','Vérification des versions en attente.','Rejoignez une guilde ou un groupe pour vérifier les versions.'},
esES={'%s informó antes de la versión %s (instalada: %s). /fn updates','Comprobación de versiones en cola.','Únete a una hermandad o grupo para comprobar versiones.'},
itIT={'%s ha segnalato la versione %s (installata: %s). /fn updates','Verifica versioni in coda.','Unisciti a una gilda o a un gruppo per verificare le versioni.'},
ptBR={'%s informou a versão %s antes (instalada: %s). /fn updates','Verificação de versões na fila.','Entre em uma guilda ou grupo para verificar versões.'},
koKR={'%s님이 이전에 버전 %s을 알렸습니다 (설치됨: %s). /fn updates','버전 확인이 대기 중입니다.','길드 또는 파티에 참여하여 버전을 확인하세요.'},
zhCN={'%s曾报告版本%s(已安装%s)。/fn updates','版本检查已排队。','加入公会或队伍以检查玩家版本。'},
zhTW={'%s曾回報版本%s(已安裝%s)。/fn updates','版本檢查已排隊。','加入公會或隊伍以檢查玩家版本。'}}
versionMessages.enGB=versionMessages.enUS; versionMessages.esMX=versionMessages.esES
for locale,values in pairs(versionMessages) do
for i,key in ipairs({'UPDATE_PEER_CACHED','UPDATE_VERSION_QUEUED','UPDATE_VERSION_NO_CHANNEL'}) do F.Locales[locale][key]=values[i] end
end
local recipeChatLinks={
enUS={RECIPE_CHAT_LINK="Link recipe in chat",RECIPE_CHAT_LINK_HELP="Insert the recipe link into chat. Press Enter to send.",RECIPE_CHAT_LINK_UNAVAILABLE="The recipe link is unavailable. Try again shortly."},
ruRU={RECIPE_CHAT_LINK="Ссылка на рецепт в чат",RECIPE_CHAT_LINK_HELP="Вставить ссылку на рецепт в чат. Для отправки нажмите Enter.",RECIPE_CHAT_LINK_UNAVAILABLE="Ссылка на рецепт пока недоступна. Повторите позже."},
deDE={RECIPE_CHAT_LINK="Rezept im Chat verlinken",RECIPE_CHAT_LINK_HELP="Den Rezeptlink in den Chat einfügen. Zum Senden Eingabe drücken.",RECIPE_CHAT_LINK_UNAVAILABLE="Der Rezeptlink ist noch nicht verfügbar. Versuche es später erneut."},
frFR={RECIPE_CHAT_LINK="Lier la recette dans le chat",RECIPE_CHAT_LINK_HELP="Insérer le lien de la recette dans le chat. Appuyez sur Entrée pour envoyer.",RECIPE_CHAT_LINK_UNAVAILABLE="Le lien de la recette est indisponible. Réessayez plus tard."},
esES={RECIPE_CHAT_LINK="Enlazar receta en el chat",RECIPE_CHAT_LINK_HELP="Insertar el enlace de la receta en el chat. Pulsa Intro para enviarlo.",RECIPE_CHAT_LINK_UNAVAILABLE="El enlace de la receta no está disponible. Inténtalo más tarde."},
esMX={RECIPE_CHAT_LINK="Enlazar receta en el chat",RECIPE_CHAT_LINK_HELP="Insertar el enlace de la receta en el chat. Pulsa Intro para enviarlo.",RECIPE_CHAT_LINK_UNAVAILABLE="El enlace de la receta no está disponible. Inténtalo más tarde."},
itIT={RECIPE_CHAT_LINK="Collega ricetta in chat",RECIPE_CHAT_LINK_HELP="Inserisci il collegamento della ricetta in chat. Premi Invio per inviare.",RECIPE_CHAT_LINK_UNAVAILABLE="Il collegamento della ricetta non è disponibile. Riprova più tardi."},
ptBR={RECIPE_CHAT_LINK="Vincular receita no bate-papo",RECIPE_CHAT_LINK_HELP="Insere o link da receita no bate-papo. Pressione Enter para enviar.",RECIPE_CHAT_LINK_UNAVAILABLE="O link da receita está indisponível. Tente novamente mais tarde."},
koKR={RECIPE_CHAT_LINK="대화창에 제조법 링크",RECIPE_CHAT_LINK_HELP="대화창에 제조법 링크를 넣습니다. Enter 키를 눌러 전송하세요.",RECIPE_CHAT_LINK_UNAVAILABLE="제조법 링크를 사용할 수 없습니다. 잠시 후 다시 시도하세요."},
zhCN={RECIPE_CHAT_LINK="在聊天中链接配方",RECIPE_CHAT_LINK_HELP="将配方链接插入聊天框。按 Enter 发送。",RECIPE_CHAT_LINK_UNAVAILABLE="配方链接暂不可用,请稍后重试。"},
zhTW={RECIPE_CHAT_LINK="在聊天中連結配方",RECIPE_CHAT_LINK_HELP="將配方連結插入聊天框。按 Enter 傳送。",RECIPE_CHAT_LINK_UNAVAILABLE="配方連結暫不可用,請稍後再試。"},
enGB={RECIPE_CHAT_LINK="Link recipe in chat",RECIPE_CHAT_LINK_HELP="Insert the recipe link into chat. Press Enter to send.",RECIPE_CHAT_LINK_UNAVAILABLE="The recipe link is unavailable. Try again shortly."},
}
for locale,values in pairs(recipeChatLinks) do
for key,value in pairs(values) do F.Locales[locale][key]=value end
end
local materialBadgeSettings={
enUS={'Crafting material badges on items','Shows a hammer badge on item icons in bags, bank, and addon windows when an item is a crafting reagent.'},
ruRU={'Значки материалов крафта на предметах','Показывает значок молоточка на предметах в сумках, банке и окне аддона, если предмет используется в профессиях.'},
deDE={'Handwerksmaterial-Symbole auf Gegenständen','Zeigt ein Hammersymbol auf Gegenständen in Taschen, Bank und Addon-Fenstern an, wenn es sich um Handwerksmaterial handelt.'},
frFR={'Insignes de matériaux d\'artisanat sur les objets','Affiche un marteau sur les objets dans les sacs, la banque et les fenêtres de l\'addon si l\'objet est un composant d\'artisanat.'},
esES={'Distintivos de materiales de profesión en objetos','Muestra un distintivo de martillo en los objetos de bolsas, banco y ventanas del addon cuando son materiales de profesión.'},
itIT={'Distintivi materiali d\'artigianato sugli oggetti','Mostra un martello sulle icone degli oggetti in borse, banca e finestre dell\'addon quando l\'oggetto è un reagente.'},
ptBR={'Emblemas de materiais de criação nos itens','Mostra um martelo nos ícones de itens nas bolsas, banco e janelas do addon quando o item for um reagente de profissão.'},
koKR={'아이템 아이콘에 제작 재료 표시','아이템이 전문 기술 재료인 경우 가방, 은행 및 애드온 창의 아이콘에 망치 표시를 보여줍니다.'},
zhCN={'物品图标上的制造材料标记','当物品是制造材料时,在背包、银行和插件窗口的物品图标上显示小锤子标记。'},
zhTW={'物品圖示上的製造材料標記','當物品是製造材料時,在背包、銀行和插件視窗的物品圖示上顯示小錘子標記。'},
}
materialBadgeSettings.enGB=materialBadgeSettings.enUS; materialBadgeSettings.esMX=materialBadgeSettings.esES
for locale,values in pairs(materialBadgeSettings) do
F.Locales[locale]=F.Locales[locale] or {}
F.Locales[locale].SETTING_MATERIAL_BADGES=values[1]
F.Locales[locale].MATERIAL_BADGES_HINT=values[2]
end
local lootAdvisorLocales={
enUS={
LOOT_ADVISOR_TITLE='Bags full! Discard:',
LOOT_ADVISOR_SUBTITLE='Free bag space for loot (least valuable first):',
LOOT_ADVISOR_DISCARD='Discard',
LOOT_ADVISOR_LOCK='Blacklist',
LOOT_ADVISOR_LOCK_HINT='Never suggest discarding this item.',
SETTING_LOOT_ADVISOR='Loot Discard Advisor',
SETTING_LOOT_ADVISOR_HINT='Shows least valuable items to discard when bags are full during looting.',
SETTING_LOOT_IN_COMBAT='Show advisor during combat',
SETTING_LOOT_IN_COMBAT_HINT='Allow the discard window to appear when looting in combat with full bags.',
SETTING_LOOT_PROTECT_REAGENTS='Protect craft reagents (never suggest trade goods)',
SETTING_LOOT_PROTECT_GEAR='Protect gear (never suggest armor and weapons)',
SETTING_LOOT_MAX_QUALITY='Suggest discard up to quality:',
SETTING_LOOT_SORT_LABEL='Sort items by:',
SETTING_LOOT_SORT_PRICE='By Price',
SETTING_LOOT_SORT_QUALITY='By Quality & Price',
QUALITY_POOR='Poor',
QUALITY_COMMON='Common',
QUALITY_UNCOMMON='Uncommon',
QUALITY_RARE='Rare',
SETTING_LOOT_BLACKLIST='Discard blacklist (%d items):',
SETTING_LOOT_BLACKLIST_EMPTY='Blacklist is empty.',
SETTING_LOOT_BLACKLIST_CLEAR='Clear blacklist',
},
ruRU={
LOOT_ADVISOR_TITLE='Сумки полны! Выбросить:',
LOOT_ADVISOR_SUBTITLE='Освободите место для добычи (наименее ценное):',
LOOT_ADVISOR_DISCARD='Выбросить',
LOOT_ADVISOR_LOCK='В чёрный список',
LOOT_ADVISOR_LOCK_HINT='Никогда не предлагать этот предмет к удалению.',
SETTING_LOOT_ADVISOR='Помощник очистки места при добыче (Loot Advisor)',
SETTING_LOOT_ADVISOR_HINT='Показывает окно с дешёвыми вещами для выброса при переполнении сумок во время лута.',
SETTING_LOOT_IN_COMBAT='Показывать помощник во время боя',
SETTING_LOOT_IN_COMBAT_HINT='Разрешить окну появляться при луте во время боя, если сумки полны.',
SETTING_LOOT_PROTECT_REAGENTS='Защита ремесленных материалов (не предлагать реагенты)',
SETTING_LOOT_PROTECT_GEAR='Защита экипировки (не предлагать оружие и броню)',
SETTING_LOOT_MAX_QUALITY='Предлагать к выбросу до качества:',
SETTING_LOOT_SORT_LABEL='Сортировка предметов:',
SETTING_LOOT_SORT_PRICE='По цене',
SETTING_LOOT_SORT_QUALITY='По качеству и цене',
QUALITY_POOR='Серый',
QUALITY_COMMON='Белый',
QUALITY_UNCOMMON='Зелёный',
QUALITY_RARE='Синий',
SETTING_LOOT_BLACKLIST='Чёрный список предметов (исключено: %d):',
SETTING_LOOT_BLACKLIST_EMPTY='Чёрный список пуст.',
SETTING_LOOT_BLACKLIST_CLEAR='Очистить чёрный список',
},
deDE={
LOOT_ADVISOR_TITLE='Taschen voll! Wegwerfen:',
LOOT_ADVISOR_SUBTITLE='Platz für Beute schaffen (wertärmste zuerst):',
LOOT_ADVISOR_DISCARD='Wegwerfen',
LOOT_ADVISOR_LOCK='Ausschlussliste',
LOOT_ADVISOR_LOCK_HINT='Diesen Gegenstand niemals zum Wegwerfen vorschlagen.',
SETTING_LOOT_ADVISOR='Beute-Platzberater (Loot Advisor)',
SETTING_LOOT_ADVISOR_HINT='Zeigt billigste Gegenstände zum Wegwerfen bei vollen Taschen.',
SETTING_LOOT_IN_COMBAT='Berater im Kampf anzeigen',
SETTING_LOOT_IN_COMBAT_HINT='Fenster bei voller Beute auch während des Kampfes anzeigen.',
SETTING_LOOT_PROTECT_REAGENTS='Handwerksmaterialien schützen (Reagenzien ausschließen)',
SETTING_LOOT_PROTECT_GEAR='Ausrüstung schützen (Rüstung und Waffen ausschließen)',
SETTING_LOOT_MAX_QUALITY='Wegwerfen vorschlagen bis Qualität:',
SETTING_LOOT_SORT_LABEL='Gegenstände sortieren nach:',
SETTING_LOOT_SORT_PRICE='Nach Preis',
SETTING_LOOT_SORT_QUALITY='Nach Qualität & Preis',
QUALITY_POOR='Schlecht',
QUALITY_COMMON='Verbreitet',
QUALITY_UNCOMMON='Selten',
QUALITY_RARE='Rar',
SETTING_LOOT_BLACKLIST='Ausschlussliste für Beute (%d Gegenstände):',
SETTING_LOOT_BLACKLIST_EMPTY='Ausschlussliste ist leer.',
SETTING_LOOT_BLACKLIST_CLEAR='Ausschlussliste leeren',
},
frFR={
LOOT_ADVISOR_TITLE='Sacs pleins ! Jeter :',
LOOT_ADVISOR_SUBTITLE='Libérer de la place pour le butin :',
LOOT_ADVISOR_DISCARD='Jeter',
LOOT_ADVISOR_LOCK='Liste noire',
LOOT_ADVISOR_LOCK_HINT='Ne jamais proposer de jeter cet objet.',
SETTING_LOOT_ADVISOR='Assistant de butin (Loot Advisor)',
SETTING_LOOT_ADVISOR_HINT='Affiche les objets les moins chers à jeter quand les sacs sont pleins.',
SETTING_LOOT_IN_COMBAT='Afficher l’assistant en combat',
SETTING_LOOT_IN_COMBAT_HINT='Permet à la fenêtre d’apparaître lors du butin en combat si les sacs sont pleins.',
SETTING_LOOT_PROTECT_REAGENTS='Protéger les composants d artisanat',
SETTING_LOOT_PROTECT_GEAR='Protéger l équipement (armes et armures)',
SETTING_LOOT_MAX_QUALITY='Proposer de jeter jusqu à la qualité :',
SETTING_LOOT_SORT_LABEL='Trier les objets par :',
SETTING_LOOT_SORT_PRICE='Par prix',
SETTING_LOOT_SORT_QUALITY='Par qualité et prix',
QUALITY_POOR='Médiocre',
QUALITY_COMMON='Classique',
QUALITY_UNCOMMON='Bonne',
QUALITY_RARE='Rare',
SETTING_LOOT_BLACKLIST='Liste noire de butin (%d objets) :',
SETTING_LOOT_BLACKLIST_EMPTY='La liste noire est vide.',
SETTING_LOOT_BLACKLIST_CLEAR='Vider la liste noire',
},
esES={
LOOT_ADVISOR_TITLE='¡Bolsas llenas! Descartar:',
LOOT_ADVISOR_SUBTITLE='Espacio para botín (menos valioso primero):',
LOOT_ADVISOR_DISCARD='Descartar',
LOOT_ADVISOR_LOCK='Bloquear',
LOOT_ADVISOR_LOCK_HINT='Nunca sugerir descartar este objeto.',
SETTING_LOOT_ADVISOR='Asesor de espacio para botín (Loot Advisor)',
SETTING_LOOT_ADVISOR_HINT='Muestra objetos más baratos para descartar si las bolsas están llenas.',
SETTING_LOOT_IN_COMBAT='Mostrar asistente en combate',
SETTING_LOOT_IN_COMBAT_HINT='Permite que la ventana aparezca al despojar en combate con bolsas llenas.',
SETTING_LOOT_PROTECT_REAGENTS='Proteger materiales de profesión',
SETTING_LOOT_PROTECT_GEAR='Proteger equipo (armas y armaduras)',
SETTING_LOOT_MAX_QUALITY='Sugerir descarte hasta calidad:',
SETTING_LOOT_SORT_LABEL='Ordenar objetos por:',
SETTING_LOOT_SORT_PRICE='Por precio',
SETTING_LOOT_SORT_QUALITY='Por calidad y precio',
QUALITY_POOR='Pobre',
QUALITY_COMMON='Común',
QUALITY_UNCOMMON='Poco común',
QUALITY_RARE='Raro',
SETTING_LOOT_BLACKLIST='Lista negra de descarte (%d objetos):',
SETTING_LOOT_BLACKLIST_EMPTY='La lista negra está vacía.',
SETTING_LOOT_BLACKLIST_CLEAR='Vaciar lista negra',
},
itIT={
LOOT_ADVISOR_TITLE='Borse piene! Scarta:',
LOOT_ADVISOR_SUBTITLE='Libera spazio per il bottino:',
LOOT_ADVISOR_DISCARD='Scarta',
LOOT_ADVISOR_LOCK='Blocca',
LOOT_ADVISOR_LOCK_HINT='Non suggerire mai di scartare questo oggetto.',
SETTING_LOOT_ADVISOR='Assistente spazio bottino (Loot Advisor)',
SETTING_LOOT_ADVISOR_HINT='Mostra gli oggetti meno costosi da scartare a borse piene.',
SETTING_LOOT_IN_COMBAT='Mostra assistente in combattimento',
SETTING_LOOT_IN_COMBAT_HINT='Consente alla finestra di apparire durante il bottino in combattimento con borse piene.',
SETTING_LOOT_PROTECT_REAGENTS='Proteggi materiali d artigianato',
SETTING_LOOT_PROTECT_GEAR='Proteggi equipaggiamento (armi e armature)',
SETTING_LOOT_MAX_QUALITY='Suggerisci scarto fino alla qualità:',
SETTING_LOOT_SORT_LABEL='Ordina oggetti per:',
SETTING_LOOT_SORT_PRICE='Per prezzo',
SETTING_LOOT_SORT_QUALITY='Per qualità e prezzo',
QUALITY_POOR='Scadente',
QUALITY_COMMON='Comune',
QUALITY_UNCOMMON='Non comune',
QUALITY_RARE='Raro',
SETTING_LOOT_BLACKLIST='Lista nera scarto (%d oggetti):',
SETTING_LOOT_BLACKLIST_EMPTY='La lista nera è vuota.',
SETTING_LOOT_BLACKLIST_CLEAR='Svuota lista nera',
},
ptBR={
LOOT_ADVISOR_TITLE='Bolsas cheias! Descartar:',
LOOT_ADVISOR_SUBTITLE='Liberar espaço para saque:',
LOOT_ADVISOR_DISCARD='Descartar',
LOOT_ADVISOR_LOCK='Bloquear',
LOOT_ADVISOR_LOCK_HINT='Nunca sugerir descartar este item.',
SETTING_LOOT_ADVISOR='Assistente de saque (Loot Advisor)',
SETTING_LOOT_ADVISOR_HINT='Mostra os itens mais baratos para descartar com bolsas cheias.',
SETTING_LOOT_IN_COMBAT='Mostrar assistente em combate',
SETTING_LOOT_IN_COMBAT_HINT='Permite que a janela apareça ao saquear em combate com bolsas cheias.',
SETTING_LOOT_PROTECT_REAGENTS='Proteger materiais de profissão',
SETTING_LOOT_PROTECT_GEAR='Proteger equipamento (armas e armaduras)',
SETTING_LOOT_MAX_QUALITY='Sugerir descarte até qualidade:',
SETTING_LOOT_SORT_LABEL='Ordenar itens por:',
SETTING_LOOT_SORT_PRICE='Por preço',
SETTING_LOOT_SORT_QUALITY='Por qualidade e preço',
QUALITY_POOR='Pobre',
QUALITY_COMMON='Comum',
QUALITY_UNCOMMON='Incomum',
QUALITY_RARE='Raro',
SETTING_LOOT_BLACKLIST='Lista de descarte (%d itens):',
SETTING_LOOT_BLACKLIST_EMPTY='A lista está vazia.',
SETTING_LOOT_BLACKLIST_CLEAR='Limpar lista',
},
koKR={
LOOT_ADVISOR_TITLE='가방 가득 참! 버리기:',
LOOT_ADVISOR_SUBTITLE='전리품을 위한 가방 공간 확보:',
LOOT_ADVISOR_DISCARD='버리기',
LOOT_ADVISOR_LOCK='제외 목록',
LOOT_ADVISOR_LOCK_HINT='이 아이템을 버리기 추천에 절대 포함하지 않습니다.',
SETTING_LOOT_ADVISOR='전리품 공간 도우미 (Loot Advisor)',
SETTING_LOOT_ADVISOR_HINT='전리품 획득 시 가방이 가득 차면 가장 가치 낮은 아이템을 표시합니다.',
SETTING_LOOT_IN_COMBAT='전투 중 도우미 표시',
SETTING_LOOT_IN_COMBAT_HINT='전투 중 가방이 가득 찼을 때도 버리기 창을 표시합니다.',
SETTING_LOOT_PROTECT_REAGENTS='전문 기술 재료 보호',
SETTING_LOOT_PROTECT_GEAR='장비 보호 (무기 및 방어구)',
SETTING_LOOT_MAX_QUALITY='버리기 추천 최대 품질:',
SETTING_LOOT_SORT_LABEL='아이템 정렬 기준:',
SETTING_LOOT_SORT_PRICE='가격순',
SETTING_LOOT_SORT_QUALITY='품질 및 가격순',
QUALITY_POOR='하급',
QUALITY_COMMON='일반',
QUALITY_UNCOMMON='고급',
QUALITY_RARE='희귀',
SETTING_LOOT_BLACKLIST='버리기 제외 목록 (%d개 아이템):',
SETTING_LOOT_BLACKLIST_EMPTY='제외 목록이 비어 있습니다.',
SETTING_LOOT_BLACKLIST_CLEAR='제외 목록 비우기',
},
zhCN={
LOOT_ADVISOR_TITLE='背包已满!丢弃:',
LOOT_ADVISOR_SUBTITLE='清理背包空间以拾取战利品:',
LOOT_ADVISOR_DISCARD='丢弃',
LOOT_ADVISOR_LOCK='加入黑名单',
LOOT_ADVISOR_LOCK_HINT='绝不建议丢弃此物品。',
SETTING_LOOT_ADVISOR='拾取空间助手(Loot Advisor)',
SETTING_LOOT_ADVISOR_HINT='拾取时背包满载则提示丢弃最不值钱的物品。',
SETTING_LOOT_IN_COMBAT='在战斗中显示助手',
SETTING_LOOT_IN_COMBAT_HINT='战斗中拾取且背包满载时允许显示清理窗口。',
SETTING_LOOT_PROTECT_REAGENTS='保护制造材料',
SETTING_LOOT_PROTECT_GEAR='保护装备(护甲和武器)',
SETTING_LOOT_MAX_QUALITY='建议丢弃最高品质:',
SETTING_LOOT_SORT_LABEL='物品排序方式:',
SETTING_LOOT_SORT_PRICE='按价格',
SETTING_LOOT_SORT_QUALITY='按品质与价格',
QUALITY_POOR='粗糙',
QUALITY_COMMON='普通',
QUALITY_UNCOMMON='优秀',
QUALITY_RARE='精良',
SETTING_LOOT_BLACKLIST='丢弃黑名单(%d个物品):',
SETTING_LOOT_BLACKLIST_EMPTY='黑名单为空。',
SETTING_LOOT_BLACKLIST_CLEAR='清空黑名单',
},
zhTW={
LOOT_ADVISOR_TITLE='背包已滿!丟棄:',
LOOT_ADVISOR_SUBTITLE='清理背包空間以拾取戰利品:',
LOOT_ADVISOR_DISCARD='丟棄',
LOOT_ADVISOR_LOCK='加入黑名單',
LOOT_ADVISOR_LOCK_HINT='絕不建議丟棄此物品。',
SETTING_LOOT_ADVISOR='拾取空間助手(Loot Advisor)',
SETTING_LOOT_ADVISOR_HINT='拾取時背包滿載則提示丟棄最不值錢的物品。',
SETTING_LOOT_IN_COMBAT='在戰鬥中顯示助手',
SETTING_LOOT_IN_COMBAT_HINT='戰鬥中拾取且背包滿載時允許顯示清理視窗。',
SETTING_LOOT_PROTECT_REAGENTS='保護製造材料',
SETTING_LOOT_PROTECT_GEAR='保護裝備(護甲和武器)',
SETTING_LOOT_MAX_QUALITY='建議丟棄最高品質:',
SETTING_LOOT_SORT_LABEL='物品排序方式:',
SETTING_LOOT_SORT_PRICE='按價格',
SETTING_LOOT_SORT_QUALITY='按品質與價格',
QUALITY_POOR='粗糙',
QUALITY_COMMON='普通',
QUALITY_UNCOMMON='優秀',
QUALITY_RARE='精良',
SETTING_LOOT_BLACKLIST='丟棄黑名單(%d個物品):',
SETTING_LOOT_BLACKLIST_EMPTY='黑名單為空。',
SETTING_LOOT_BLACKLIST_CLEAR='清空黑名單',
},
}
lootAdvisorLocales.enGB=lootAdvisorLocales.enUS
lootAdvisorLocales.esMX=lootAdvisorLocales.esES
for locale,values in pairs(lootAdvisorLocales) do
F.Locales[locale]=F.Locales[locale] or {}
for k,v in pairs(values) do
F.Locales[locale][k]=v
end
end