forked from Sokomine/yl_speak_up
added yl_speak_up.get_dialog_list_for_export
This commit is contained in:
parent
7343366d2f
commit
cfb673993f
@ -400,7 +400,7 @@ yl_speak_up.export_to_ink_language = function(dialog, n_id)
|
|||||||
|
|
||||||
local vars_used = ink_export.print_variables_used(tmp, dialog, n_id, pname)
|
local vars_used = ink_export.print_variables_used(tmp, dialog, n_id, pname)
|
||||||
|
|
||||||
local sorted_d_list = yl_speak_up.sort_keys(dialog.n_dialogs or {}, true)
|
local sorted_d_list = yl_speak_up.get_dialog_list_for_export(dialog)
|
||||||
|
|
||||||
-- make use of dialog names if wanted
|
-- make use of dialog names if wanted
|
||||||
local dialog_names = {}
|
local dialog_names = {}
|
||||||
|
@ -1,3 +1,24 @@
|
|||||||
|
-- helper function that is also used by export_to_ink.lua
|
||||||
|
-- returns a sorted dialog list without special or generic dialogs
|
||||||
|
yl_speak_up.get_dialog_list_for_export = function(dialog)
|
||||||
|
local liste = {}
|
||||||
|
if(not(dialog) or not(dialog.n_dialogs)) then
|
||||||
|
return liste
|
||||||
|
end
|
||||||
|
-- sort the list of dialogs by d_id
|
||||||
|
local liste_sorted = yl_speak_up.sort_keys(dialog.n_dialogs or {}, true)
|
||||||
|
for _, d_id in ipairs(liste_sorted) do
|
||||||
|
-- only normal dialogs - no d_trade, d_got_item, d_dynamic etc;
|
||||||
|
if(not(yl_speak_up.is_special_dialog(d_id))
|
||||||
|
-- also no generic dialogs (they do not come from this NPC)
|
||||||
|
and not(dialog.n_dialogs[d_id].is_generic)) then
|
||||||
|
table.insert(liste, d_id)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
return liste
|
||||||
|
end
|
||||||
|
|
||||||
|
|
||||||
yl_speak_up.input_export = function(player, formname, fields)
|
yl_speak_up.input_export = function(player, formname, fields)
|
||||||
if(fields and fields.back) then
|
if(fields and fields.back) then
|
||||||
return yl_speak_up.show_fs(player, "talk")
|
return yl_speak_up.show_fs(player, "talk")
|
||||||
@ -181,19 +202,10 @@ yl_speak_up.get_fs_export = function(player, param)
|
|||||||
"this mod here. It only covers the raw dialogs. If a dialog line starts with "..
|
"this mod here. It only covers the raw dialogs. If a dialog line starts with "..
|
||||||
"\":\", \">\" or \"=\", a \" \" is added before that letter because such a "..
|
"\":\", \">\" or \"=\", a \" \" is added before that letter because such a "..
|
||||||
"line start would not be allowed in \"simple_dialogs\"."
|
"line start would not be allowed in \"simple_dialogs\"."
|
||||||
|
|
||||||
|
local d_liste = yl_speak_up.get_dialog_list_for_export(dialog)
|
||||||
|
|
||||||
local tmp = {}
|
local tmp = {}
|
||||||
local d_liste = {}
|
|
||||||
if(dialog.n_dialogs) then
|
|
||||||
for d_id, v in pairs(dialog.n_dialogs) do
|
|
||||||
-- only normal dialogs - no d_trade, d_got_item, d_dynamic etc;
|
|
||||||
if(not(yl_speak_up.is_special_dialog(d_id))
|
|
||||||
-- also no generic dialogs (they do not come from this NPC)
|
|
||||||
and not(v.is_generic)) then
|
|
||||||
table.insert(d_liste, d_id)
|
|
||||||
end
|
|
||||||
end
|
|
||||||
end
|
|
||||||
table.sort(d_liste)
|
|
||||||
for i, d_id in ipairs(d_liste) do
|
for i, d_id in ipairs(d_liste) do
|
||||||
table.insert(tmp, "===")
|
table.insert(tmp, "===")
|
||||||
-- TODO: use labels here when available
|
-- TODO: use labels here when available
|
||||||
|
Loading…
Reference in New Issue
Block a user