Multi Language System

Indította Rodriguez, 2018-10-07, 14:29:53

2018-10-07, 14:29:53 Utolsó szerkesztés: 2018-10-07, 14:31:30 Szerző: Rodriguez
Sziasztok!

Megpróbáltam megcsinálni ezt a systemet:
https://www.elitepvpers.com/forum/metin2-pserver-guides-strategies/3038686-mega-release-multilanguage-system-client.html

Minden jól megy  megnyomom az ESC-t - rendszeropciók és ott irja az új pontban hogy Language mellete pedig Select gomb.
Igen ám de amikor rá kattintok a selectre nem történik semmi sem.

Kezdésként beraktam egy locale_de eix epk-t hogy majd átváltom németre de semmi sem történik.
Lépések amiket csináltam:
uisystemoption.py
self.GetChild("language_client_btn").SAFE_SetEvent(self.LanguageButton)

def LanguageButton(self):
import multi
MultiDialog = multi.MultiLanguage()
MultiDialog.Show()
self.Close()


systemoptiondialog.py
{
"name" : "language_client",
"type" : "text",

"x" : 40 + TEXT_TEMPORARY_X,
"y" : 210+2,

"text" : "Language",
},


{
"name" : "language_client_btn",
"type" : "button",

"x" : 110,
"y" : 210,

"text" : "Select",

"default_image" : ROOT_PATH + "small_Button_01.sub",
"over_image" : ROOT_PATH + "small_Button_02.sub",
"down_image" : ROOT_PATH + "small_Button_03.sub",
},


A megfelelő helyekre raktam be ezeket ahogy ott a videóban is mutatja a srác.

multi.py-bent van hozzá irtam a Magyar nyelvet hogy még is csak magyarra is vissza lehessen váltani.

Syserr ezt irja:

1007 14:19:06287 :: CSoundManager::PlayMusic - Failed to load stream sound : BGM/login_window.mp3
1007 14:20:21348 :: CSoundManager::PlayMusic - Failed to load stream sound : BGM/characterselect.mp3
1007 14:20:07262 :: CSoundManager::PlayMusic - Failed to load stream sound : BGM/enter_the_east.mp3
1007 14:21:33784 :: Traceback (most recent call last):

1007 14:21:33785 ::   File "ui.py", line 1016, in CallEvent

1007 14:21:33785 ::   File "ui.py", line 87, in __call__

1007 14:21:33785 ::   File "ui.py", line 69, in __call__

1007 14:21:33785 ::   File "uiSystemOption.py", line 254, in LanguageButton

1007 14:21:33785 ::   File "system.py", line 130, in __pack_import

1007 14:21:33785 ::   File "system.py", line 110, in _process_result

1007 14:21:33785 ::   File "multi.py", line 9, in <module>

1007 14:21:33785 ::   File "system.py", line 137, in __pack_import

1007 14:21:33785 ::   File "L:\work\Python-2.7.3\lib\locale.py", line 15, in <module>

1007 14:21:33785 ::   File "system.py", line 137, in __pack_import

1007 14:21:33785 ::   File "C:\Users\YMIR\Downloads\Python-2.7.3\Python-2.7.3\lib\encodings\__init__.py", line 32, in <module>
1007 14:21:35452 :: Traceback (most recent call last):

1007 14:21:35452 ::   File "ui.py", line 1016, in CallEvent

1007 14:21:35452 ::   File "ui.py", line 87, in __call__

1007 14:21:35452 ::   File "ui.py", line 69, in __call__

1007 14:21:35452 ::   File "uiSystemOption.py", line 255, in LanguageButton

1007 14:21:35452 :: AttributeError
1007 14:21:35452 :: :
1007 14:21:35452 :: 'module' object has no attribute 'MultiLanguage'
1007 14:21:35452 ::

1007 14:21:35561 :: Traceback (most recent call last):

1007 14:21:35561 ::   File "ui.py", line 1016, in CallEvent

1007 14:21:35561 ::   File "ui.py", line 87, in __call__

1007 14:21:35561 ::   File "ui.py", line 69, in __call__

1007 14:21:35561 ::   File "uiSystemOption.py", line 255, in LanguageButton

1007 14:21:35561 :: AttributeError
1007 14:21:35561 :: :
1007 14:21:35561 :: 'module' object has no attribute 'MultiLanguage'
1007 14:21:35561 ::


Valakinek bármi ötlet esetleg?

2018-10-07, 17:27:38 #1 Utolsó szerkesztés: 2018-10-07, 17:31:22 Szerző: UnKn0Wn
Idéz1007 14:21:33785 ::   File "multi.py", line 9, in <module>
import locale

40k kliensben már localeInfo van. Írd át:
import localeInfo as locale

Nem 100% hogy ennyi megoldja mert elég vaskos syserred van, lehet kapsz még más hibát ami csak ezután jelenik meg. Én nem fogom betenni, majd írod az új syserrt.

1007 14:21:35561 ::   File "uiSystemOption.py", line 255, in LanguageButton

1007 14:21:35561 :: 'module' object has no attribute 'MultiLanguage'

Ezzel is kezdeni kéne vmit.

2018-10-07, 17:37:34 #3 Utolsó szerkesztés: 2018-10-07, 17:40:18 Szerző: UnKn0Wn
Én megadtam egyelőre neki az esélyét hogy az csak a localeInfo miatt van, mert most a multi.py ami tartalmazza azt, ki van rektelve.

Valóban az volt a problémája amit Unknown irt igy előhozza az ablakot és ki is irja hogy cseréli a nyelvet, most ezt irja igy:
LoadLocaleError(locale/it/locale_game.txt)

Értem én hogy az a problémája hogy nincsen olasz locale, csak az a kérdésem hogy hogyan tudnám megoldani azt hogy egybe legyen mindegyik?
Tehát ugye alapból ennyi volt benne a packba hogy locale_hu, ha ezt kibontom ugye ott van egy hu mappa.
Ha pl a locale_de, locale_it stb kibontom és a mappáikat berakom oda és vissza csomagolom esetleg ez a megoldás működhet?

2018-10-07, 18:21:21 #5 Utolsó szerkesztés: 2018-10-07, 18:34:20 Szerző: UnKn0Wn
Gondolom kell a pack mappádba locale_it.eix-epk stb.
A buktató csak annyi benne, hogy amit megcsináltál eddig a locale_hu-ban, azt mind meg kell a többi locale-ban is. Illetve nem árt a locale_hoz passzoló protokat (item/mob_names) sem szerezni, hogy az item és mob nevek is változzanak.

(Nem, én nem tudok adni. Ha 2014-ben lennénk akkor a dump_proto reverzált változatával meg lehetne oldani simán a metin2.it/de/cz stb-ről letöltött kliensekkel, csak 2018-ban már nehéz 2014-es protokat szerezni)

Azzal nincs gond a tobbi nyelvre leforditjuk meg minden csak hogy mukodik e ezen az alapon erre voltam kivancsi de ezek szerint igen.