From 871a66fe4c545a15bab82ecfa9f56e0667c63f6b Mon Sep 17 00:00:00 2001 From: sys4 Date: Sat, 21 Mar 2020 18:18:56 +0100 Subject: [PATCH] Corrige l'affichage du guide --- guide.lua | 244 +++++++++++++++++++++++------------------------------- 1 file changed, 102 insertions(+), 142 deletions(-) diff --git a/guide.lua b/guide.lua index 02478a8..a153d33 100644 --- a/guide.lua +++ b/guide.lua @@ -4,112 +4,101 @@ local cube = minetest.inventorycube local guide_infos = { { description = "Mushrooms", - {"text", "Hell mushrooms can be found on the hell's ground and\n".. - "on hellrack soil, it can be dug by hand."}, + {"text", "Hell mushrooms can be found on the hell's ground and on hellrack soil, it can be dug by hand."}, {"image", {1, 1, "riesenpilz_nether_shroom_side.png"}}, - {"y", 0.2}, + {"y", 0.5}, {"text", "If you drop it without holding the fast key, you can split it into its stem and head:"}, {"image", {1, 1, "hell_shroom_top.png", 1}}, {"image", {1, 1, "hell_shroom_stem.png"}}, - {"y", 0.1}, - {"text", "You can get more mushrooms by using a hellrack soil:\n".. - "1. search a dark place and, if necessary, place hellrack with air about it\n".. - "2. right click with cooked blood onto the hellrack to make it soiled\n".. - "3. right click onto the hellrack soil with a hell mushroom head to add some spores\n".. - "4. dig the mushroom which grew after some time to make place for another one"}, - {"image", {1, 1, "riesenpilz_nether_shroom_side.png", 6, 0.12}}, + {"y", 0.5}, + {"text", "You can get more mushrooms by using a hellrack soil:"}, + {"text", " 1. search a dark place and, if necessary, place hellrack with air about it,"}, + {"text", " 2. right click with cooked blood onto the hellrack to make it soiled,"}, + {"text", " 3. right click onto the hellrack soil with a hell mushroom head to add some spores,"}, + {"text", " 4. dig the mushroom which grew after some time to make place for another one."}, + {"image", {1, 1, "riesenpilz_nether_shroom_side.png", 5.4}}, {"y", 1}, {"image", {1, 1, "hell_hellrack.png^hell_hellrack_soil.png", 1.8}}, - {"image", {1, 1, "hell_hotbed.png", 1.3, -0.4}}, + {"image", {1, 1, "hell_hotbed.png", 1.3, -0.832}}, {"image", {1, 1, "hell_hellrack.png^hell_hellrack_soil.png", 3.6}}, - {"image", {1, 1, "hell_shroom_top.png", 3.1, -0.5}}, - {"image", {1, 1, "hell_hellrack.png^hell_hellrack_soil.png", 6}}, + {"image", {1, 1, "hell_shroom_top.png", 3.1, -0.664}}, + {"image", {1, 1, "hell_hellrack.png^hell_hellrack_soil.png", 5.4}}, {"image", {1, 1, "hell_hellrack.png"}}, + {"y", 0.5}, }, { description = "Tools", - {"text", "You can craft 5 kinds of tools in the hell,\n".. - "which (except the mushroom pick) require sticks to be crafted:"}, + {"text", "You can craft 5 kinds of tools in the hell, which (except the mushroom pick) require sticks to be crafted:"}, {"image", {1, 1, "hell_pick_mushroom.png"}}, {"y", 0.1}, - {"text", "strength : 1\n".. - "The mushroom pick needs mushroom stems and heads to be crafted."}, + {"text", "strength : 1"}, + {"text", "The mushroom pick needs mushroom stems and heads to be crafted."}, {"image", {1, 1, "hell_pick_wood.png"}}, {"y", 0.1}, - {"text", "strength : 2\n".. - "The hell wood pick can be crafted with cooked hell blood wood."}, + {"text", "strength : 2"}, + {"text", "The hell wood pick can be crafted with cooked hell blood wood."}, {"image", {1, 1, "hell_axe_hellrack.png", 1.5}}, {"image", {1, 1, "hell_shovel_hellrack.png", 3}}, {"image", {1, 1, "hell_sword_hellrack.png", 4.5}}, {"image", {1, 1, "hell_pick_hellrack.png"}}, {"y", 0.1}, - {"text", "strength : 3\n".. - "The red hellrack tools can be crafted with usual hellrack."}, + {"text", "strength : 3"}, + {"text", "The red hellrack tools can be crafted with usual hellrack."}, {"image", {1, 1, "hell_axe_hellrack_blue.png", 1.5}}, {"image", {1, 1, "hell_shovel_hellrack_blue.png", 3}}, {"image", {1, 1, "hell_sword_hellrack_blue.png", 4.5}}, {"image", {1, 1, "hell_pick_hellrack_blue.png"}}, {"y", 0.1}, - {"text", "strength : 3\n".. - "The blue hellrack tools can be crafted with blue hellrack."}, + {"text", "strength : 3"}, + {"text", "The blue hellrack tools can be crafted with blue hellrack."}, {"image", {1, 1, "hell_axe_white.png", 1.5}}, {"image", {1, 1, "hell_shovel_white.png", 3}}, {"image", {1, 1, "hell_sword_white.png", 4.5}}, {"image", {1, 1, "hell_pick_white.png"}}, {"y", 0.1}, - {"text", "strength : 3\n".. - "The siwtonic tools can be crafted with the siwtonic ore."}, + {"text", "strength : 3"}, + {"text", "The siwtonic tools can be crafted with the siwtonic ore."}, + {"y", 0.5}, }, { description = "Blood structures", - {"text", "You can find blood structures on the ground and\n".. - "dig their nodes even with the bare hand."}, - {"y", 0.5}, - {"text", "One contains 4 kinds of blocks :"}, + {"text", "You can find blood structures on the ground and dig their nodes even with the bare hand."}, + {"text", "One contains 4 kinds of blocks:"}, {"image", {1, 1, cube("hell_blood.png"), 1}}, {"image", {1, 1, cube("hell_blood_top.png", "hell_blood.png^hell_blood_side.png", "hell_blood.png^hell_blood_side.png"), 2}}, {"image", {1, 1, "hell_fruit.png", 3}}, {"image", {1, 1, cube("hell_blood_stem_top.png", "hell_blood_stem.png", "hell_blood_stem.png")}}, - {"y", 0.1}, - {"text", "Blood stem, blood, blood head and hell fruit"}, - {"y", 0.1}, - {"text", "You can craft 4 blood wood with the stem :"}, + {"y", 0.168}, + {"text", "Blood stem, blood, blood head and hell fruit."}, + {"text", "You can craft 4 blood wood with the stem:"}, {"image", {1, 1, cube("hell_wood.png")}}, - {"y", 0.1}, - {"text", "The 4 blood nodes can be cooked and, except\n".. - "blood wood, their blood can be extracted."}, + {"y", 0.168}, + {"text", "The 4 blood nodes can be cooked and, except blood wood, their blood can be extracted."}, + {"y", 0.5}, }, { description = "Fruits", - {"text", "You can find the hell fruits on blood structures\n".. - "and dig them even with the bare hand."}, + {"text", "You can find the hell fruits on blood structures and dig them even with the bare hand."}, {"image", {1, 1, "hell_fruit.png"}}, - {"text", "Eating it will make you lose life but\n".. - "it might feed you and give you blood :"}, + {"text", "Eating it will make you lose life but it might feed you and give you blood:"}, {"image", {1, 1, "hell_blood_extracted.png"}}, - {"y", 0.2}, - {"text", "If you eat it at the right place inside a portal,\n".. - "you will teleport instead of getting blood."}, - {"y", 0.2}, - {"text", "If you drop it without holding the fast key,\n".. - "you can split it into its fruit and leaf:"}, + {"y", 0.168}, + {"text", "If you eat it at the right place inside a portal, you will teleport instead of getting blood."}, + {"y", 0.168}, + {"text", "If you drop it without holding the fast key, you can split it into its fruit and leaf:"}, {"image", {1, 1, "hell_fruit_leaf.png", 1}}, {"image", {1, 1, "hell_fruit_no_leaf.png"}}, - {"y", 0.2}, - {"text", "Craft a fruit leave block out of 9 fruit leaves\n".. - "The fruit can be used to craft a hell pearl."}, + {"y", 0.168}, + {"text", "Craft a fruit leave block out of 9 fruit leaves and the fruit can be used to craft a hell pearl."}, {"image", {1, 1, cube("hell_fruit_leaves.png")}}, - {"y", 0.2}, - {"text", "A fruit leaves block"}, + {"y", 0.168}, + {"text", "A fruit leaves block."}, }, { description = "Cooking", - {"text", "To get a furnace you need to dig at least 8 hellrack bricks.\n".. - "They can be found at pyramid like constructions and require at least\n".. - "a strength 1 hell pick to be dug.\n".. - "To craft the furnace, use the hellrack bricks like cobble:"}, + {"text", "To get a furnace you need to dig at least 8 hellrack bricks. They can be found at pyramid like constructions and require at least a strength 1 hell pick to be dug. To craft the furnace, use the hellrack bricks like cobble:"}, {"image", {0.5, 0.5, cube("hell_hellrack_brick.png"), 0.5}}, {"image", {0.5, 0.5, cube("hell_hellrack_brick.png"), 1}}, {"image", {0.5, 0.5, cube("hell_hellrack_brick.png")}}, @@ -118,10 +107,8 @@ local guide_infos = { {"image", {0.5, 0.5, cube("hell_hellrack_brick.png"), 0.5}}, {"image", {0.5, 0.5, cube("hell_hellrack_brick.png"), 1}}, {"image", {0.5, 0.5, cube("hell_hellrack_brick.png")}}, - {"y", 0.2}, - {"text", "To begin cooking stuff, you can use a mushroom or fruit.\n".. - "After that it's recommended to use cooked blood nodes."}, - {"y", 0.1}, + {"y", 0.168}, + {"text", "To begin cooking stuff, you can use a mushroom or fruit. After that it's recommended to use cooked blood nodes."}, {"text", "Some hell items can be cooked:"}, {"image", {1, 1, cube("hell_blood_stem_top_cooked.png", "hell_blood_stem_cooked.png", "hell_blood_stem_cooked.png"), 0.35}}, {"image", {1, 1, cube("hell_blood_cooked.png"), 1.6}}, @@ -130,17 +117,16 @@ local guide_infos = { 2.9}}, {"image", {1, 1, cube("hell_wood_cooked.png"), 4.3}}, {"y", 1.2}, - {"text", "Some cooked blood stem, cooked blood,\n".. - "cooked blood head and cooked blood wood,"}, + {"text", "Some cooked blood stem, cooked blood, cooked blood head and cooked blood wood."}, {"image", {1, 1, "hell_hotbed.png", 0.3}}, {"image", {1, 1, "hell_pearl.png", 2}}, - {"y", 1.2}, - {"text", "Some cooked extracted blood and a hell pearl"}, + {"y", 1.168}, + {"text", "Some cooked extracted blood and a hell pearl."}, + {"y", 0.5}, }, { description = "Extractors", {"text", "Here you can find out information about the hell extractor."}, - {"y", 0.2}, {"text", "Here you can see its craft recipe:"}, {"image", {0.5, 0.5, cube("hell_blood_top_cooked.png", "hell_blood_cooked.png^hell_blood_side_cooked.png", "hell_blood_cooked.png^hell_blood_side_cooked.png"), 0.5}}, {"image", {0.5, 0.5, cube("hell_hellrack_brick.png"), 1}}, @@ -153,15 +139,12 @@ local guide_infos = { {"image", {0.5, 0.5, cube("hell_hellrack_brick.png"), 1}}, {"image", {0.5, 0.5, cube("hell_hellrack_brick.png")}}, {"y", 0.2}, - {"text", "Extract blood from the blood nodes you get from the blood structures.\n".. - "You can also get blood with a hell fruit."}, - {"y", 0.2}, - {"text", "So you can use it:\n".. - "1. place it somewhere\n".. - "2. place blood blocks next to it (4 or less)\n".. - "3. right click with extracted blood onto it to power it\n".. - "4. take the new extracted blood and dig the extracted nodes"}, - {"y", 0.2}, + {"text", "Extract blood from the blood nodes you get from the blood structures. You can also get blood with a hell fruit."}, + {"text", "So you can use it:"}, + {"text", " 1. place it somewhere,"}, + {"text", " 2. place blood blocks next to it (4 or less),"}, + {"text", " 3. right click with extracted blood onto it to power it,"}, + {"text", " 4. take the new extracted blood and dig the extracted nodes."}, {"text", "Example (view from the top):"}, {"y", 0.88}, {"image", {1, 1, "hell_blood_stem_top.png", 0.82, -0.88}}, @@ -174,133 +157,110 @@ local guide_infos = { {"image", {1, 1, "hell_blood.png"}}, {"image", {1, 1, "hell_blood.png", 0.82, -0.12}}, {"image", {1, 1, "hell_blood_empty.png", 3.82, -0.12}}, - {"y", 1.2}, - {"text", "The empty blood stem can be crafted into empty hell wood,\n".. - "which can be crafted into hell sticks."}, + {"y", 1.168}, + {"text", "The empty blood stem can be crafted into empty hell wood, which can be crafted into hell sticks."}, + {"y", 0.5}, }, { description = "Ores", {"text", "You can find 5 types of ores:"}, {"image", {1, 1, cube("hell_hellrack_black.png"), 4}}, {"image", {1, 1, cube("hell_hellrack.png")}}, - {"y", 0.2}, - {"text", "The red hellrack is generated like stone.\n".. - "The black hellrack is generated like gravel.\n".. - "Both require at least a strength 2 hell pick to be dug."}, + {"y", 0.168}, + {"text", "The red hellrack is generated like stone. The black hellrack is generated like gravel. Both require at least a strength 2 hell pick to be dug."}, {"image", {1, 1, cube("hell_white.png"), 4}}, {"image", {1, 1, cube("hell_hellrack_blue.png")}}, - {"y", 0.2}, - {"text", "The blue hellrack is generated like diamond ore.\n".. - "The siwtonic ore is generated like mese blocks.\n".. - "Both require at least a strength 3 hell pick to be dug."}, + {"y", 0.168}, + {"text", "The blue hellrack is generated like diamond ore. The siwtonic ore is generated like mese blocks. Both require at least a strength 3 hell pick to be dug."}, {"image", {1, 1, cube("hell_hellrack_tiled.png"), 4}}, {"image", {1, 1, cube("glow_stone.png")}}, - {"y", 0.2}, - {"text", "Glow stone can be used for lighting.\n".. - "Tiled hellrack is generated like coal ore.\n".. - "Glow stone requires at least a strength 1 pick to be dug.\n".. - "Dig tiled hellrack with at least a level 2 pickaxe."}, + {"y", 0.168}, + {"text", "Glow stone can be used for lighting. Tiled hellrack is generated like coal ore. Glow stone requires at least a strength 1 pick to be dug. Dig tiled hellrack with at least a level 2 pickaxe."}, + {"y", 0.5}, }, { description = "Vines", - {"text", "Feed hell vines with blood.\n".. - "Dig them with anything."}, + {"text", "Feed hell vines with blood. Dig them with anything."}, {"image", {1, 1, "hell_vine.png"}}, - {"y", 0.2}, - {"text", "Grow hell child by placing\n".. - "placing it to a dark place onto a\n".. - "blood structure head node."}, + {"text", "Grow hell child by placing it to a dark place onto a blood structure head node."}, {"image", {1, 1, "hell_sapling.png"}}, {"y", -0.10}, {"image", {1, 1, "hell_blood.png^hell_blood_side.png"}}, }, { description = "Pearls", - {"text", "The hell pearl can be used to teleport by throwing it.\n".. - "Here is how to get one :"}, - {"y", 0.2}, - {"text", "First of all craft 2 mushroom heads and 1 hell fruit\n".. - "without leaf together :"}, + {"text", "The hell pearl can be used to teleport by throwing it. Here is how to get one:"}, + {"text", "First of all craft 2 mushroom heads and 1 hell fruit without leaf together:"}, {"image", {1, 1, "hell_shroom_top.png"}}, {"image", {1, 1, "hell_fim.png", 3}}, {"image", {1, 1, "hell_fruit_no_leaf.png"}}, {"image", {1, 1, "hell_shroom_top.png"}}, - {"y", 0.2}, - {"text", "Put the result into the furnace\n".. - "to cook it into a hell pearl :"}, + {"y", 0.168}, + {"text", "Put the result into the furnace to cook it into a hell pearl:"}, {"image", {1, 1, "hell_pearl.png"}}, }, { description = "Bricks", - {"text", "Craft bricks out of red,\n".. - "black and blue hellrack."}, + {"text", "Craft bricks out of red, black and blue hellrack."}, {"image", {1, 1, cube("hell_hellrack_brick_black.png"), 1}}, {"image", {1, 1, cube("hell_hellrack_brick_blue.png"), 2}}, {"image", {1, 1, cube("hell_hellrack_brick.png")}}, - {"y", 0.4}, + {"y", 0.168}, {"text", "Dig them with at least a level 1 pickaxe."}, - {"y", 0.2}, + {"y", 0.5}, }, { description = "Portals", - {"text", "Here you can find out how to built the hell portal."}, - {"y", 0.3}, + {"text", "Here you can find out how to build the hell portal."}, {"text", "A hell portal requires following nodes:"}, - {"y", 0.05}, - {"text", "25 empty hell wooden planks\n".. - "16 black hellrack\n".. - "12 blue hellrack bricks\n".. - "8 red hellrack\n".. - "8 cooked hell blood\n".. - "4 hell fruits\n".. - "2 siwtonic blocks"}, - {"y", 0.2}, + {"text", " - 25 empty hell wooden planks,"}, + {"text", " - 16 black hellrack,"}, + {"text", " - 12 blue hellrack bricks,"}, + {"text", " - 8 red hellrack,"}, + {"text", " - 8 cooked hell blood,"}, + {"text", " - 4 hell fruits,"}, + {"text", " - 2 siwtonic blocks."}, {"text", "It should look approximately like this one:"}, - {"image", {5.625, 6, "hell_teleporter.png", 0, -1.5}}, - {"y", 5.5}, - {"text", "Activate it by standing in the middle,\n".. - "on the siwtonic block and eating a hell fruit.\n".. - "Take enough stuff with you to build a portal when you'll come back."}, + {"image", {5.625, 6, "hell_teleporter.png", 5, -0.5}}, + {"y", 6}, + {"text", "Activate it by standing in the middle, on the siwtonic block and eating a hell fruit. Take enough stuff with you to build a portal when you'll come back."}, + {"y", 0.5}, }, { description = "Forests", - {"text", "The hell forest is generated in caves,\n".. - "above the usual hell."}, - {"y", 0.2}, + {"text", "The hell forest is generated in caves, above the usual hell."}, {"text", "There you can find some plants:"}, {"image", {1, 1, "hell_grass_middle.png", 1}}, {"image", {1, 1, "hell_grass_big.png", 2}}, {"image", {1, 1, "hell_grass_small.png"}}, - {"y", 0.2}, - {"text", "Use the hell forest grass to get paper.\n".. - "Craft paper out of the dried grass."}, + {"y", 0.168}, + {"text", "Use the hell forest grass to get paper. Craft paper out of the dried grass."}, {"image", {1, 1, cube("hell_tree_top.png", "hell_tree.png", "hell_tree.png")}}, - {"y", 0.2}, - {"text", "Hell trunks can be found at hell trees.\n".. - "Craft hell wood out of hell trunk."}, + {"y", 0.168}, + {"text", "Hell trunks can be found at hell trees. Craft hell wood out of hell trunk."}, {"image", {1, 1, "hell_glowflower.png"}}, - {"y", 0.2}, + {"y", 0.168}, {"text", "Use it for lighting and decoration."}, }, } -- the size of guide pages -local guide_size = {x=40, y=10, cx=0.2, cy=0.2} +local guide_size = {x=12, y=3, cx=0.2, cy=0.25} -- informations about settings and ... -local formspec_offset = {x=0.25, y=0.50} +local formspec_offset = {x=0.375, y=0.375} local font_size if minetest.is_singleplayer() then font_size = tonumber(minetest.settings:get("font_size")) or 13 else font_size = 13 end -guide_size.fx = math.floor((40*(guide_size.cx+formspec_offset.x))*font_size) +guide_size.fx = math.floor(((guide_size.x-1) * (guide_size.cx+formspec_offset.x)) * font_size) guide_size.fy = font_size/40 -- the default guide formspecs local guide_forms = { - contents = "size[3.6,"..(#guide_infos)-2 ..";]label["..guide_size.cx+0.7 ..","..guide_size.cy+0.2 ..";Contents:]", + contents = "size[3.6,"..(#guide_infos)-2 ..";]label["..guide_size.cx+0.7 ..","..guide_size.cy ..";Contents:]", } -- change the infos to formspecs @@ -318,7 +278,7 @@ for n,data in ipairs(guide_infos) do local tab = minetest.wrap_text(content, guide_size.fx, true) local l = guide_size.cx for _,str in ipairs(tab) do - form = form.."label["..guide_size.cx ..","..guide_size.cy+y..";"..str.."]" + form = form.."label["..formspec_offset.x ..","..formspec_offset.y+y..";"..str.."]" y = y+guide_size.fy l = math.max(l, #str) end @@ -326,18 +286,18 @@ for n,data in ipairs(guide_infos) do elseif typ == "image" then local w, h, texture_name, px, py = unpack(content) if not px then - form = form.."image["..guide_size.cx..","..guide_size.cy+y+h*0.3 ..";"..w..","..h..";"..texture_name.."]" + form = form.."image["..formspec_offset.x..","..formspec_offset.y+y ..";"..w..","..h..";"..texture_name.."]" y = y+h else - px = guide_size.cx+px + px = formspec_offset.x+px py = py or 0 form = form.."image["..px..",".. - guide_size.cy+y+h*0.3+py ..";"..w..","..h..";"..texture_name.."]" + formspec_offset.y+y+py ..";"..w..","..h..";"..texture_name.."]" x = math.max(x, px+w) end end end - form = "size["..x*1.8 ..","..y+1 ..";]"..form.."button["..x/2-0.5 ..","..y ..";1,2;quit;Back]" + form = "size["..guide_size.x..","..y+1 ..";]real_coordinates[true]"..form.."button["..guide_size.x/2-0.6 ..","..y ..";1.2,0.8;quit;Back]" guide_forms[n] = {data.description, form} end