|
You last visited: Today at 16:12
Advertisement
[Quest] Multi-Language
Discussion on [Quest] Multi-Language within the Metin2 PServer Guides & Strategies forum part of the Metin2 Private Server category.
03/22/2013, 14:02
|
#1
|
elite*gold: 0
Join Date: Feb 2012
Posts: 262
Received Thanks: 200
|
[Quest] Multi-Language
Is a example...
Video:
Quest multi_language_first:
PHP Code:
quest multi_language_first begin
state start begin
when login with game.get_event_flag("language_system"..pc.get_name().."") == 0 begin
set_state(multi_language_0)
end
end
state multi_language_0 begin
when letter with game.get_event_flag("language_system"..pc.get_name().."") == 0 begin
send_letter("Multi-Language")
end
when button or info begin
say_title("Multi-Language:")
say("")
say("Bla..bla")
local language = select("English", "Italian", "Deutsch")
if language == 1 then
say_title("Multi-Language:")
say("")
say("Bla..bla")
say_reward("Very good, your base language is English!")
game.set_event_flag("language_system"..pc.get_name().."", 1)
set_state(end_multi_language_0)
return
end
if language == 2 then
say_title("Multi-Language:")
say("")
say("Bla..bla")
say_reward("Molto bene, la tua lingua di base è l'Inglese!")
game.set_event_flag("language_system"..pc.get_name().."", 2)
set_state(end_multi_language_0)
return
end
if language == 3 then
say_title("Multi-Language:")
say("")
say("Bla..bla")
say_reward("Sehr gut, ist Ihr Basis-Sprache Deutsch!")
game.set_event_flag("language_system"..pc.get_name().."", 3)
set_state(end_multi_language_0)
return
end
end
end
state end_multi_language_0 begin
end
end
Quest multi_language_after:
PHP Code:
quest multi_language_after begin
state start begin
when login or levelup with game.get_event_flag("language_system"..pc.get_name().."") == 1 or game.get_event_flag("language_system"..pc.get_name().."") == 2 or game.get_event_flag("language_system"..pc.get_name().."") == 3 begin
set_state(multi_language_1)
end
end
state multi_language_1 begin
when letter with game.get_event_flag("language_system"..pc.get_name().."") == 1 or game.get_event_flag("language_system"..pc.get_name().."") == 2 or game.get_event_flag("language_system"..pc.get_name().."") == 3 begin
send_letter("Reset Multi-Language")
end
when button or info begin
say_title("Multi-Language:")
say("")
say("Bla..bla")
local language = select("English", "Italian", "Deutsch")
if language == 1 then
say_title("Multi-Language:")
say("")
say("Bla..bla")
say_reward("Very good, your base language is English!")
game.set_event_flag("language_system"..pc.get_name().."", 1)
return
end
if language == 2 then
say_title("Multi-Language:")
say("")
say("Bla..bla")
say_reward("Molto bene, la tua lingua di base è l'Inglese!")
game.set_event_flag("language_system"..pc.get_name().."", 2)
return
end
if language == 3 then
say_title("Multi-Language:")
say("")
say("Bla..bla")
say_reward("Sehr gut, ist Ihr Basis-Sprache Deutsch!")
game.set_event_flag("language_system"..pc.get_name().."", 3)
return
end
end
end
end
Quest npc_blacksmith:
PHP Code:
quest blacksmith begin
state start begin
when 20016.chat."Information" with game.get_event_flag("language_system"..pc.get_name().."") == 1 begin
say_title("Blacksmith:")
say("")
say("Bla..bla -> ENGLISH")
end
when 20016.chat."Informazioni" with game.get_event_flag("language_system"..pc.get_name().."") == 2 begin
say_title("Fabbro:")
say("")
say("Bla..bla -> ITALIAN")
end
when 20016.chat."Information" with game.get_event_flag("language_system"..pc.get_name().."") == 3 begin
say_title("Fabbro:")
say("")
say("Bla..bla -> DEUTSCH")
end
end
end
About :
Quote:
This multi-language can be work only with the character !
There exist and a quest how put in account-> language :
1, 2 or 3 but is at a payment.
|
|
|
|
03/22/2013, 14:04
|
#2
|
elite*gold: 0
Join Date: Feb 2010
Posts: 7,220
Received Thanks: 6,758
|
Had this already a few years ago at my international server - not the best solution.
|
|
|
03/22/2013, 14:06
|
#3
|
elite*gold: 0
Join Date: Feb 2012
Posts: 262
Received Thanks: 200
|
Quote:
Originally Posted by SoNiice
Had this already a few years ago at my international server - not the best solution.
|
The good system with mysql table is at payment...
Yes i know is not the best but can be used by anyone without problems ...
|
|
|
03/22/2013, 14:11
|
#4
|
elite*gold: 0
Join Date: Sep 2010
Posts: 1,219
Received Thanks: 278
|
PHP Code:
quest multi_language_first begin
state start begin
when login with game.get_event_flag("language_system"..pc.get_name().."") == 0 begin
set_state(multi_language_0)
end
end
state multi_language_0 begin
when letter with game.get_event_flag("language_system"..pc.get_name().."") == 0 begin
send_letter("Multi-Language")
end
when button or info begin
say_title("Multi-Language:")
say("")
say("Bla..bla")
local language = select("English", "Italian", "Deutsch")
if language == 1 then
say_title("Multi-Language:")
say("")
say("Bla..bla")
say_reward("Very good, your base language is English!")
game.set_event_flag("language_system"..pc.get_name().."", 1)
set_state(end_multi_language_0)
return
end
if language == 2 then
say_title("Multi-Language:")
say("")
say("Bla..bla")
say_reward("Molto bene, la tua lingua di base è l'Inglese!")
game.set_event_flag("language_system"..pc.get_name().."", 2)
set_state(end_multi_language_0)
return
end
if language == 3 then
say_title("Multi-Language:")
say("")
say("Bla..bla")
say_reward("Sehr gut, ihre Basis sprache ist Deutsch!")
game.set_event_flag("language_system"..pc.get_name().."", 3)
set_state(end_multi_language_0)
return
end
end
end
state end_multi_language_0 begin
end
PHP Code:
uest multi_language_after begin
state start begin
when login or levelup with game.get_event_flag("language_system"..pc.get_name().."") == 1 or game.get_event_flag("language_system"..pc.get_name().."") == 2 or game.get_event_flag("language_system"..pc.get_name().."") == 3 begin
set_state(multi_language_1)
end
end
state multi_language_1 begin
when letter with game.get_event_flag("language_system"..pc.get_name().."") == 1 or game.get_event_flag("language_system"..pc.get_name().."") == 2 or game.get_event_flag("language_system"..pc.get_name().."") == 3 begin
send_letter("Reset Multi-Language")
end
when button or info begin
say_title("Multi-Language:")
say("")
say("Bla..bla")
local language = select("English", "Italian", "Deutsch")
if language == 1 then
say_title("Multi-Language:")
say("")
say("Bla..bla")
say_reward("Very good, your base language is English!")
game.set_event_flag("language_system"..pc.get_name().."", 1)
return
end
if language == 2 then
say_title("Multi-Language:")
say("")
say("Bla..bla")
say_reward("Molto bene, la tua lingua di base è l'Inglese!")
game.set_event_flag("language_system"..pc.get_name().."", 2)
return
end
if language == 3 then
say_title("Multi-Language:")
say("")
say("Bla..bla")
say_reward("Sehr gut, ihre Basis sprache ist Deutsch!")
game.set_event_flag("language_system"..pc.get_name().."", 3)
return
end
end
end
end
Sorry so is better  i hate Translator German ^^
|
|
|
03/22/2013, 14:39
|
#5
|
elite*gold: 0
Join Date: Dec 2009
Posts: 93
Received Thanks: 84
|
Quote:
Originally Posted by MrGanja
Yes i know is not the best but can be used by anyone without problems ...
|
Appart from having to translate all the npcs and quests to each of the three different idioms that you put in the game flags :S
|
|
|
03/22/2013, 19:37
|
#6
|
elite*gold: 0
Join Date: Mar 2009
Posts: 28
Received Thanks: 13
|
Mysql on quest texts for premium. I don't think it's a good idea?
I would make something like:
dofile("blah/blah/blah/"..get_current_language()..".lang") where you define global variables (or constants)
BLACKSMITH_QUEST_TEXT = "Hello.[ENTER]I am the BlackSmith"
I will try that and i will post some results.
|
|
|
03/22/2013, 19:41
|
#7
|
elite*gold: 0
Join Date: Feb 2012
Posts: 262
Received Thanks: 200
|
Quote:
Originally Posted by ionutxp
Mysql on quest texts for premium. I don't think it's a good idea?
I would make something like:
dofile("blah/blah/blah/"..get_current_language()..".lang") where you define global variables (or constants)
BLACKSMITH_QUEST_TEXT = "Hello.[ENTER]I am the BlackSmith"
I will try that and i will post some results.
|
In mysql it's better, and really do you want to make a file.lang with all say? o.O
what the **** you tall?
dofile = load
local get_current_language = input() (your name language)
dofile("blah/blah/blah/blah/"..get_current_language()..".lang") and now how define the text maybe use in .quest
local s = select("english.YES", "english.NO")
Who make all that work it's need to much....
|
|
|
03/22/2013, 19:45
|
#8
|
elite*gold: 0
Join Date: Mar 2009
Posts: 28
Received Thanks: 13
|
But is better to make 312139102931 requests on mysql just for sake of multi-languages?
get_current_language() will be a function that get de user selected language.
dofile will dinamically parse the lang file on runtime.
It was just an ideea.
|
|
|
03/22/2013, 19:47
|
#9
|
elite*gold: 0
Join Date: Feb 2012
Posts: 262
Received Thanks: 200
|
Quote:
Originally Posted by ionutxp
But is better to make 312139102931 requests on mysql just for sake of multi-languages?
get_current_language() will be a function that get de user selected language.
dofile will dinamically parse the lang file on runtime.
It was just an ideea. 
|
I don't think it's a good ideea...
you don't need to make 312139102931 requests it's need only 3 for account.
INSERT - put the language
UPDATE - change language
SELECT - load quest
And i don't see where is the problem if you load in mysql.
In what mode you load the account id if you don't use mysql or pc.setqf or game.set_event_flag?
|
|
|
Similar Threads
|
[QUEST] Multi language - NEED!
03/05/2013 - Metin2 Private Server - 6 Replies
When player start in game i need option to select:
German
English
Portuguese
And if player's choose german, NPC's start quest in the language german.
Ex. :
|
[Re quest]Shaiya Nemesis Multi-Client
12/21/2010 - Shaiya Hacks, Bots, Cheats & Exploits - 4 Replies
Hi , I need shaiya nemesis mulit-client any one have one ?
|
[Re quest]Shaiya Exile Multi-Client
12/18/2010 - Shaiya - 1 Replies
Hey, I need multi-client for shaiya exile does any one has it.
|
language quest
04/26/2005 - General Gaming Discussion - 1 Replies
This will work with any language quest. Get an item for a language quest, Giant Idol, Puzzle Box, Gnoll Totem etc.
1. Examine item (Do NOT accept)
2. Hand Item to another player
3. Click to accept
4. Get item back from player
5. Rinse and repeat.
You can get the full quest done for as many people as you want with 1 item.
|
All times are GMT +1. The time now is 16:14.
|
|