From 57deb8582ec5f00a29111411c09560b134fbef29 Mon Sep 17 00:00:00 2001 From: sys4 Date: Sat, 9 Mar 2019 13:21:29 +0100 Subject: [PATCH] =?UTF-8?q?Affiche=20seulement=20la=20premi=C3=A8re=20lign?= =?UTF-8?q?e=20de=20la=20description=20des=20items?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- exchange_machine.lua | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) diff --git a/exchange_machine.lua b/exchange_machine.lua index e928c7d..624c982 100644 --- a/exchange_machine.lua +++ b/exchange_machine.lua @@ -5,6 +5,17 @@ local summary_interval = 600 local global_inv = nil +-- NALC split() function +local function split(str, sep) + if not str then return nil end + local result = {} + local regex = ("([^%s]+)"):format(sep) + for each in str:gmatch(regex) do + table.insert(result, each) + end + return result +end + local function is_integer(x) return math.floor(x) == x end @@ -35,7 +46,7 @@ local function mk_summary_fs() for i, row in ipairs(exchange:market_summary()) do local def = all_items[row.Item] or {} add_row(row.Item, - def.description or "Unknown Item", + split(def.description, "\n")[1] or "Unknown Item", wear_string(row.Wear), row.Buy_Volume or 0, row.Buy_Max or "N/A", @@ -106,7 +117,7 @@ local selectable_list = {} minetest.after(0, function() for name, def in pairs(minetest.registered_items) do if (def.groups.not_in_creative_inventory or 0) == 0 and - (def.description or "") ~= "" then + (split(def.description, "\n")[1] or "") ~= "" then selectable_list[#selectable_list + 1] = name end end @@ -128,7 +139,7 @@ local function table_from_results(fs, results, name, x, y, w, h, selected) for i, row in ipairs(results) do local def = all_items[row.Item] or {} add_row(row.Poster, row.Type, row.Item, - def.description or "Unknown Item", + split(def.description, "\n")[1] or "Unknown Item", wear_string(row.Wear), row.Amount, row.Rate) end end, math.max(0, tonumber(selected) or 0) + 1)