diff --git a/bobber_shark.lua b/bobber_shark.lua index 044f890..1f94f19 100755 --- a/bobber_shark.lua +++ b/bobber_shark.lua @@ -167,11 +167,11 @@ local FISHING_BOBBER_SHARK_ENTITY={ self.randomtime = math.random(1,5)*10 local chance = math.random(1, 100) - --if 1 you catch a tresor, maybe ... + --if 1 you catch a treasure, maybe ... if chance == 1 then --You are lucky ? :) - if math.random(1, 100) <= fishing_setting.settings["tresor_chance"] and fishing_setting.settings["tresor_enable"] then - self.prize = fishing_setting.prizes["tresor"][math.random(1,#fishing_setting.prizes["tresor"])] + if math.random(1, 100) <= fishing_setting.settings["treasure_chance"] and fishing_setting.settings["treasure_enable"] then + self.prize = fishing_setting.prizes["treasure"][math.random(1,#fishing_setting.prizes["treasure"])] else self.prize = fishing_setting.prizes["stuff"][math.random(1,#fishing_setting.prizes["stuff"])] end diff --git a/functions.lua b/functions.lua index 5d64c2a..ea8f1fe 100755 --- a/functions.lua +++ b/functions.lua @@ -1,12 +1,12 @@ --function save settings function fishing_setting.func.save() - local input = io.open(fishing_setting.file_settings, "w") + local input, err = io.open(fishing_setting.file_settings, "w") if input then input:write(minetest.serialize(fishing_setting.settings)) input:close() else - minetest.log("action","Open failed (mode:w) of " .. fishing_setting.file_settings) + minetest.log("error", "open(" .. fishing_setting.file_settings .. ", 'w') failed: " .. err) end end @@ -43,16 +43,16 @@ function fishing_setting.func.set_settings(new_settings, settings) new_settings["fish_chance"] = settings["fish_chance"] end - if settings["tresor_chance"] ~= nil then - new_settings["tresor_chance"] = settings["tresor_chance"] + if settings["treasure_chance"] ~= nil then + new_settings["treasure_chance"] = settings["treasure_chance"] end if settings["shark_chance"] ~= nil then new_settings["shark_chance"] = settings["shark_chance"] end - if settings["tresor_enable"] ~= nil then - new_settings["tresor_enable"] = settings["tresor_enable"] + if settings["treasure_enable"] ~= nil then + new_settings["treasure_enable"] = settings["treasure_enable"] end if settings["escape_chance"] ~= nil then @@ -107,13 +107,13 @@ function fishing_setting.func.hungry_random() end --- show notification when player catch tresor -function fishing_setting.func.notify(f_name, tresor) - local title = fishing_setting.func.S("Good luck to %s, He catch the tresor, %s!"):format(f_name, tresor[4]) +-- Show notification when a player catches treasure +function fishing_setting.func.notify(f_name, treasure) + local title = fishing_setting.func.S("Lucky %s, he caught the treasure, %s!"):format(f_name, treasure[4]) for _, player in ipairs(minetest.get_connected_players()) do local player_name = player:get_player_name() if player_name == f_name then - minetest.chat_send_player(player_name, fishing_setting.func.S("You catch the tresor, %s!"):format(tresor[4])) + minetest.chat_send_player(player_name, fishing_setting.func.S("You caught the treasure, %s!"):format(treasure[4])) else minetest.chat_send_player(player_name, title) end @@ -121,117 +121,96 @@ function fishing_setting.func.notify(f_name, tresor) end ---Menu fishing configuration +-- Menu: fishing configuration fishing_setting.func.on_show_settings = function(player_name) - + local S = fishing_setting.func.S if not fishing_setting.tmp_setting then fishing_setting.tmp_setting = {} fishing_setting.func.set_settings(fishing_setting.tmp_setting, fishing_setting.settings) end - local formspec = "size[10.8,9]label[4,0;FISHING CONFIGURATION]".. - --Chance fish - "label[1.6,0.5;Chance fish]".. - "button[0,1;1,1;cfish;-1]".. - "button[1,1;1,1;cfish;-10]".. - "label[2.1,1.2;"..tostring(fishing_setting.tmp_setting["fish_chance"]).."]".. - "button[2.7,1;1,1;cfish;+10]".. - "button[3.7,1;1,1;cfish;+1]".. - --Chance shark - "label[1.5,2;Chance shark]".. - "button[0,2.5;1,1;cshark;-1]".. - "button[1,2.5;1,1;cshark;-10]".. - "label[2.1,2.7;"..tostring(fishing_setting.tmp_setting["shark_chance"]).."]".. - "button[2.7,2.5;1,1;cshark;+10]".. - "button[3.7,2.5;1,1;cshark;+1]".. - --Chance tresor - "label[1.5,3.5;Chance tresor]".. - "button[0,4.;1,1;ctresor;-1]".. - "button[1,4;1,1;ctresor;-10]".. - "label[2.1,4.2;"..tostring(fishing_setting.tmp_setting["tresor_chance"]).."]".. - "button[2.7,4;1,1;ctresor;+10]".. - "button[3.7,4;1,1;ctresor;+1]".. - --Chance worm - "label[7.5,0.5;Chance worm]".. - "button[6,1;1,1;cworm;-1]".. - "button[7,1;1,1;cworm;-10]".. - "label[8.1,1.2;"..tostring(fishing_setting.tmp_setting["worm_chance"]).."]".. - "button[8.7,1;1,1;cworm;+10]".. - "button[9.7,1;1,1;cworm;+1]".. - --Chance escape - "label[7.4,2;Chance escape]".. - "button[6,2.5;1,1;cescape;-1]".. - "button[7,2.5;1,1;cescape;-10]".. - "label[8.1,2.7;"..tostring(fishing_setting.tmp_setting["escape_chance"]).."]".. - "button[8.7,2.5;1,1;cescape;+10]".. - "button[9.7,2.5;1,1;cescape;+1]".. - --Bobber view range - "label[7.2,3.5;Bobber view range]".. - "button[7,4;1,1;bvrange;-1]".. - "label[8.1,4.2;"..tostring(fishing_setting.tmp_setting["bobber_view_range"]).."]".. - "button[8.7,4;1,1;bvrange;+1]".. - --messages display - "label[0,5.7;Display messages in chat]".. - "button[3.7,5.5;1,1;dmessages;"..tostring(fishing_setting.tmp_setting["message"]).."]".. - --poledeco - "label[0,6.5;Simple pole deco]".. - "button[3.7,6.3;1,1;poledeco;"..tostring(fishing_setting.tmp_setting["simple_deco_fishing_pole"]).."]".. - --wearout - "label[0,7.3;Poles Wear]".. - "button[3.7,7.1;1,1;wearout;"..tostring(fishing_setting.tmp_setting["wear_out"]).."]".. - --TRESOR_ENABLE - "label[6,5.7;Tresor enable]".. - "button[9.7,5.5;1,1;tresorenable;"..tostring(fishing_setting.tmp_setting["tresor_enable"]).."]".. - --NEW_WORM_SOURCE - "label[6,6.5;New worm source (reboot)]".. - "button[9.7,6.3;1,1;newworm;"..tostring(fishing_setting.tmp_setting["new_worm_source"]).."]".. - --WORM_IS_MOB - "label[6,7.3;Worm is mob (reboot)]".. - "button[9.7,7.1;1,1;wormmob;"..tostring(fishing_setting.tmp_setting["worm_is_mob"]).."]".. - "button_exit[0,8.2;1.5,1;save;Abort]".. - "button_exit[9.2,8.2;1.5,1;save;Ok]" + local formspec = "size[10.8,9]label[4,0;"..S("Fishing configuration").."]".. + -- Fish chance + "label[1.6,0.5;"..S("Fish chance").."]".. + "button[0,1;1,1;cfish;-1]".. + "button[1,1;1,1;cfish;-10]".. + "label[2.1,1.2;"..tostring(fishing_setting.tmp_setting["fish_chance"]).."]".. + "button[2.7,1;1,1;cfish;+10]".. + "button[3.7,1;1,1;cfish;+1]".. + -- Shark chance + "label[1.5,2;"..S("Shark chance").."]".. + "button[0,2.5;1,1;cshark;-1]".. + "button[1,2.5;1,1;cshark;-10]".. + "label[2.1,2.7;"..tostring(fishing_setting.tmp_setting["shark_chance"]).."]".. + "button[2.7,2.5;1,1;cshark;+10]".. + "button[3.7,2.5;1,1;cshark;+1]".. + -- Treasure chance + "label[1.5,3.5;"..S("Treasure chance").."]".. + "button[0,4.;1,1;ctreasure;-1]".. + "button[1,4;1,1;ctreasure;-10]".. + "label[2.1,4.2;"..tostring(fishing_setting.tmp_setting["treasure_chance"]).."]".. + "button[2.7,4;1,1;ctreasure;+10]".. + "button[3.7,4;1,1;ctreasure;+1]".. + -- Worm chance + "label[7.5,0.5;"..S("Worm chance").."]".. + "button[6,1;1,1;cworm;-1]".. + "button[7,1;1,1;cworm;-10]".. + "label[8.1,1.2;"..tostring(fishing_setting.tmp_setting["worm_chance"]).."]".. + "button[8.7,1;1,1;cworm;+10]".. + "button[9.7,1;1,1;cworm;+1]".. + -- Escape chance + "label[7.4,2;"..S("Escape chance").."]".. + "button[6,2.5;1,1;cescape;-1]".. + "button[7,2.5;1,1;cescape;-10]".. + "label[8.1,2.7;"..tostring(fishing_setting.tmp_setting["escape_chance"]).."]".. + "button[8.7,2.5;1,1;cescape;+10]".. + "button[9.7,2.5;1,1;cescape;+1]".. + -- Bobber view range + "label[7.2,3.5;"..S("Bobber view range").."]".. + "button[7,4;1,1;bvrange;-1]".. + "label[8.1,4.2;"..tostring(fishing_setting.tmp_setting["bobber_view_range"]).."]".. + "button[8.7,4;1,1;bvrange;+1]".. + -- Messages display + "label[0,5.7;"..S("Display messages in chat").."]".. + "button[3.7,5.5;1,1;dmessages;"..tostring(fishing_setting.tmp_setting["message"]).."]".. + --poledeco + "label[0,6.5;"..S("Simple pole deco").."]".. + "button[3.7,6.3;1,1;poledeco;"..tostring(fishing_setting.tmp_setting["simple_deco_fishing_pole"]).."]".. + -- Wearout + "label[0,7.3;"..S("Poles wearout").."]".. + "button[3.7,7.1;1,1;wearout;"..tostring(fishing_setting.tmp_setting["wear_out"]).."]".. + -- TREASURE_ENABLE + "label[6,5.7;"..S("Enable treasure").."]".. + "button[9.7,5.5;1,1;treasureenable;"..tostring(fishing_setting.tmp_setting["treasure_enable"]).."]".. + -- NEW_WORM_SOURCE + "label[6,6.5;"..S("New worm source (reboot)").."]".. + "button[9.7,6.3;1,1;newworm;"..tostring(fishing_setting.tmp_setting["new_worm_source"]).."]".. + -- WORM_IS_MOB + "label[6,7.3;"..S("Worm is a mob (reboot)").."]".. + "button[9.7,7.1;1,1;wormmob;"..tostring(fishing_setting.tmp_setting["worm_is_mob"]).."]".. + "button_exit[0,8.2;1.5,1;save;"..S("Abort").."]".. + "button_exit[9.2,8.2;1.5,1;save;"..S("OK").."]" minetest.show_formspec(player_name, "fishing:settings", formspec) end local inc = function(value, field, min, max) - local v - if field == "+1" then - v = value + 1 - elseif field == "+10" then - v = value + 10 - elseif field == "+60" then - v = value + 60 - elseif field == "+600" then - v = value + 600 - elseif field == "-1" then - v = value - 1 - elseif field == "-10" then - v = value - 10 - elseif field == "-60" then - v = value - 60 - elseif field == "-600" then - v = value - 600 - else -- useless, prevent crash - return value + local inc = tonumber(field) + local v = value + if inc ~= nil then + v = value + inc end if v > max then - v = max + return max end if v < min then - v = min + return min end return v end local bool = function(field) - local v - if field == "true" then - v = false - else - v = true - end - return v + return field ~= "true" end minetest.register_on_player_receive_fields(function(player, formname, fields) @@ -250,8 +229,8 @@ minetest.register_on_player_receive_fields(function(player, formname, fields) fishing_setting.tmp_setting["fish_chance"] = inc(fishing_setting.tmp_setting["fish_chance"], fields["cfish"], 1, 100) elseif fields["cshark"] then fishing_setting.tmp_setting["shark_chance"] = inc(fishing_setting.tmp_setting["shark_chance"], fields["cshark"], 1, 100) - elseif fields["ctresor"] then - fishing_setting.tmp_setting["tresor_chance"] = inc(fishing_setting.tmp_setting["tresor_chance"], fields["ctresor"], 1, 100) + elseif fields["ctreasure"] then + fishing_setting.tmp_setting["treasure_chance"] = inc(fishing_setting.tmp_setting["treasure_chance"], fields["ctreasure"], 1, 100) elseif fields["bvrange"] then fishing_setting.tmp_setting["bobber_view_range"] = inc(fishing_setting.tmp_setting["bobber_view_range"], fields["bvrange"], 4, 20) elseif fields["cworm"] then @@ -264,8 +243,8 @@ minetest.register_on_player_receive_fields(function(player, formname, fields) fishing_setting.tmp_setting["simple_deco_fishing_pole"] = bool(fields["poledeco"]) elseif fields["wearout"] then fishing_setting.tmp_setting["wear_out"] = bool(fields["wearout"]) - elseif fields["tresorenable"] then - fishing_setting.tmp_setting["tresor_enable"] = bool(fields["tresorenable"]) + elseif fields["treasureenable"] then + fishing_setting.tmp_setting["treasure_enable"] = bool(fields["treasureenable"]) elseif fields["newworm"] then fishing_setting.tmp_setting["new_worm_source"] = bool(fields["newworm"]) elseif fields["wormmob"] then @@ -279,8 +258,8 @@ minetest.register_on_player_receive_fields(function(player, formname, fields) if fields["classement"] then local formspec = fishing_setting.func.get_stat() minetest.show_formspec(player_name, "fishing:classement", formspec) - elseif fields["concours"] then - fishing_setting.func.on_show_settings_concours(player_name) + elseif fields["contest"] then + fishing_setting.func.on_show_settings_contest(player_name) elseif fields["configuration"] then fishing_setting.func.on_show_settings(player_name) end @@ -313,7 +292,7 @@ end minetest.register_on_shutdown(function() minetest.log("action", "[fishing] Server shuts down. saving trophies table") fishing_setting.func.save_trophies() - fishing_setting.func.save_concours() + fishing_setting.func.save_contest() end) @@ -338,8 +317,8 @@ end minetest.register_on_joinplayer(function(player) local player_name = player:get_player_name() - if fishing_setting.concours["concours"] == true then - minetest.chat_send_player(player_name, fishing_setting.func.S("A fishing contest is in progress. (remaining time %s)"):format(fishing_setting.func.timetostr(fishing_setting.concours["duration"]))) + if fishing_setting.contest["contest"] == true then + minetest.chat_send_player(player_name, fishing_setting.func.S("A fishing contest is in progress. (remaining time %s)"):format(fishing_setting.func.timetostr(fishing_setting.contest["duration"]))) end end) @@ -353,7 +332,7 @@ function fishing_setting.func.add_to_trophies(player, fish, desc) end fishing_setting.trophies[fish][player_name] = (fishing_setting.trophies[fish][player_name] or 0) + 1 if fishing_setting.trophies[fish][player_name]%100 == 0 then - minetest.chat_send_player(player_name, fishing_setting.func.S("You win a new trophie, you have catched %s " .. fish.."."):format(fishing_setting.trophies[fish][player_name])) + minetest.chat_send_player(player_name, fishing_setting.func.S("You win a new trophy, you have caught %s " .. fish.."."):format(fishing_setting.trophies[fish][player_name])) local inv = player:get_inventory() local name = "fishing:trophy_"..fish if inv:room_for_item("main", {name=name, count=1, wear=0, metadata=""}) then @@ -363,24 +342,25 @@ function fishing_setting.func.add_to_trophies(player, fish, desc) end end - if fishing_setting.concours["concours"] ~= nil and fishing_setting.concours["concours"] == true then - if fishing_setting.concours[fish] == nil then - fishing_setting.concours[fish] = {} + if fishing_setting.contest["contest"] ~= nil and fishing_setting.contest["contest"] == true then + if fishing_setting.contest[fish] == nil then + fishing_setting.contest[fish] = {} end - fishing_setting.concours[fish][player_name] = (fishing_setting.concours[fish][player_name] or 0) + 1 - minetest.chat_send_all(fishing_setting.func.S("Yeah, %s catch "..desc):format(player_name)) + fishing_setting.contest[fish][player_name] = (fishing_setting.contest[fish][player_name] or 0) + 1 + minetest.chat_send_all(fishing_setting.func.S("Yeah, %s caught "..desc):format(player_name)) end end end ---Menu fishing configuration +-- Menu: fishing configuration/contest fishing_setting.func.on_show_admin_menu = function(player_name) - local formspec = "size[5,5]label[1.6,0;FISHING MENU]".. - "button[1,0.5;3,1;classement;Classement concours]".. - "button[1,1.5;3,1;concours;Concours]".. - "button[1,2.5;3,1;configuration;Configuration]".. - "button_exit[1,4.5;3,1;close;Close]" + local S = fishing_setting.func.S + local formspec = "size[5,5]label[1.6,0;"..S("Fishing Menu").."]".. + "button[0.5,0.5;4,1;classement;"..S("Contest rankings").."]".. + "button[0.5,1.5;4,1;contest;"..S("Contests").."]".. + "button[0.5,2.5;4,1;configuration;"..S("Configuration").."]".. + "button_exit[1,4.5;3,1;close;"..S("Close").."]" minetest.show_formspec(player_name, "fishing:admin_conf", formspec) end @@ -406,48 +386,48 @@ end --function save settings -function fishing_setting.func.save_concours() - local input = io.open(fishing_setting.file_concours, "w") +function fishing_setting.func.save_contest() + local input = io.open(fishing_setting.file_contest, "w") if input then - input:write(minetest.serialize(fishing_setting.concours)) + input:write(minetest.serialize(fishing_setting.contest)) input:close() else - minetest.log("action","Open failed (mode:w) of " .. fishing_setting.file_concours) + minetest.log("action","Open failed (mode:w) of " .. fishing_setting.file_contest) end end --function load councours data from file -function fishing_setting.func.load_concours() - local file = io.open(fishing_setting.file_concours, "r") +function fishing_setting.func.load_contest() + local file = io.open(fishing_setting.file_contest, "r") local settings = {} - fishing_setting.concours = {["concours"] = false, ["duration"] = 3600, ["bobber_nb"] = 4} + fishing_setting.contest = {["contest"] = false, ["duration"] = 3600, ["bobber_nb"] = 4} if file then settings = minetest.deserialize(file:read("*all")) file:close() if settings ~= nil and type(settings) == "table" then - if settings["concours"] ~= nil then - fishing_setting.concours["concours"] = settings["concours"] + if settings["contest"] ~= nil then + fishing_setting.contest["contest"] = settings["contest"] end if settings["duration"] ~= nil then - fishing_setting.concours["duration"] = settings["duration"] + fishing_setting.contest["duration"] = settings["duration"] end if settings["bobber_nb"] ~= nil then - fishing_setting.concours["bobber_nb"] = settings["bobber_nb"] + fishing_setting.contest["bobber_nb"] = settings["bobber_nb"] end if settings["fish_raw"] ~= nil then - fishing_setting.concours["fish_raw"] = settings["fish_raw"] + fishing_setting.contest["fish_raw"] = settings["fish_raw"] end if settings["clownfish_raw"] ~= nil then - fishing_setting.concours["clownfish_raw"] = settings["clownfish_raw"] + fishing_setting.contest["clownfish_raw"] = settings["clownfish_raw"] end if settings["bluewhite_raw"] ~= nil then - fishing_setting.concours["bluewhite_raw"] = settings["bluewhite_raw"] + fishing_setting.contest["bluewhite_raw"] = settings["bluewhite_raw"] end if settings["shark_raw"] ~= nil then - fishing_setting.concours["shark_raw"] = settings["shark_raw"] + fishing_setting.contest["shark_raw"] = settings["shark_raw"] end if settings["pike_raw"] ~= nil then - fishing_setting.concours["pike_raw"] = settings["pike_raw"] + fishing_setting.contest["pike_raw"] = settings["pike_raw"] end end end @@ -455,66 +435,67 @@ end --Menu fishing configuration -fishing_setting.func.on_show_settings_concours = function(player_name) +fishing_setting.func.on_show_settings_contest = function(player_name) + local S = fishing_setting.func.S if not fishing_setting.tmp_setting then - fishing_setting.tmp_setting = { ["concours"] = (fishing_setting.concours["concours"] or false), - ["duration"] = (math.floor(fishing_setting.concours["duration"]) or 3600), - ["bobber_nb"] = (fishing_setting.concours["bobber_nb"] or 2), + fishing_setting.tmp_setting = { ["contest"] = (fishing_setting.contest["contest"] or false), + ["duration"] = (math.floor(fishing_setting.contest["duration"]) or 3600), + ["bobber_nb"] = (fishing_setting.contest["bobber_nb"] or 2), ["reset"] = "" } end - local formspec = "size[6.1,7]label[1.9,0;FISHING CONCOURS]".. - --Time concours - "label[2.2,0.5;Duration(in sec)]".. + local formspec = "size[6.1,7]label[1.9,0;"..S("Fishing contest").."]".. + --Time contest + "label[2.2,0.5;"..S("Duration(in sec)").."]".. "button[0.8,1;1,1;duration;-60]".. "button[1.8,1;1,1;duration;-600]".. "label[2.7,1.2;"..tostring(fishing_setting.tmp_setting["duration"]).."]".. "button[3.5,1;1,1;duration;+600]".. "button[4.5,1;1,1;duration;+60]".. --bobber nb - "label[2,2;Bobber number limit]".. + "label[2,2;"..S("Bobber number limit").."]".. "button[1.8,2.5;1,1;bobbernb;-1]".. "label[2.9,2.7;"..tostring(fishing_setting.tmp_setting["bobber_nb"]).."]".. "button[3.5,2.5;1,1;bobbernb;+1]".. - --concours enable - "label[0.8,3.8;concours enable]".. - "button[4.5,3.6;1,1;concours;"..tostring(fishing_setting.tmp_setting["concours"]).."]".. + --contest enable + "label[0.8,3.8;"..S("Enable contests").."]".. + "button[4.5,3.6;1,1;contest;"..tostring(fishing_setting.tmp_setting["contest"]).."]".. --reset - "label[0.8,5.2;reset classements (type 'yes')]".. + "label[0.8,5.2;"..S("Reset rankings (type 'yes')").."]".. "field[4.8,5.4;1,1;reset;;]".. - "button_exit[0.8,6.2;1.5,1;save;Abort]".. - "button_exit[4,6.2;1.5,1;save;Ok]" - minetest.show_formspec(player_name, "fishing:concours", formspec) + "button_exit[0.8,6.2;1.5,1;save;"..S("Abort").."]".. + "button_exit[4,6.2;1.5,1;save;"..S("OK").."]" + minetest.show_formspec(player_name, "fishing:contest", formspec) end minetest.register_on_player_receive_fields(function(player, formname, fields) - if formname == "fishing:concours" then + if formname == "fishing:contest" then local name = player:get_player_name() if not name then return end if fields["save"] == "Ok" then if fields["reset"] and fields["reset"]:lower() == "yes" then - fishing_setting.concours["fish_raw"] = {} - fishing_setting.concours["clownfish_raw"] = {} - fishing_setting.concours["bluewhite_raw"] = {} - fishing_setting.concours["shark_raw"] = {} - fishing_setting.concours["pike_raw"] = {} + fishing_setting.contest["fish_raw"] = {} + fishing_setting.contest["clownfish_raw"] = {} + fishing_setting.contest["bluewhite_raw"] = {} + fishing_setting.contest["shark_raw"] = {} + fishing_setting.contest["pike_raw"] = {} end - local progress = (fishing_setting.concours["concours"] or false) - fishing_setting.concours["duration"] = fishing_setting.tmp_setting["duration"] - fishing_setting.concours["concours"] = fishing_setting.tmp_setting["concours"] - fishing_setting.concours["bobber_nb"] = fishing_setting.tmp_setting["bobber_nb"] - if progress == false and fishing_setting.tmp_setting["concours"] == true then - fishing_setting.concours["concours"] = true - fishing_setting.concours["warning_said"] = false - local time = fishing_setting.func.timetostr(fishing_setting.concours["duration"]) + local progress = (fishing_setting.contest["contest"] or false) + fishing_setting.contest["duration"] = fishing_setting.tmp_setting["duration"] + fishing_setting.contest["contest"] = fishing_setting.tmp_setting["contest"] + fishing_setting.contest["bobber_nb"] = fishing_setting.tmp_setting["bobber_nb"] + if progress == false and fishing_setting.tmp_setting["contest"] == true then + fishing_setting.contest["contest"] = true + fishing_setting.contest["warning_said"] = false + local time = fishing_setting.func.timetostr(fishing_setting.contest["duration"]) minetest.chat_send_all(fishing_setting.func.S("Attention, Fishing contest start (duration %s)!!!"):format(time)) minetest.sound_play("fishing_contest_start",{gain=0.8}) - elseif progress == true and fishing_setting.tmp_setting["concours"] == false then - fishing_setting.concours["concours"] = false + elseif progress == true and fishing_setting.tmp_setting["contest"] == false then + fishing_setting.contest["contest"] = false end - fishing_setting.func.save_concours() + fishing_setting.func.save_contest() fishing_setting.tmp_setting = nil return elseif fields["quit"] or fields["abort"] then @@ -522,14 +503,14 @@ minetest.register_on_player_receive_fields(function(player, formname, fields) return elseif fields["duration"] then fishing_setting.tmp_setting["duration"] = inc(fishing_setting.tmp_setting["duration"], fields["duration"], 120, 14400) - elseif fields["concours"] then - fishing_setting.tmp_setting["concours"] = bool(fields["concours"]) + elseif fields["contest"] then + fishing_setting.tmp_setting["contest"] = bool(fields["contest"]) elseif fields["bobbernb"] then fishing_setting.tmp_setting["bobber_nb"] = inc(fishing_setting.tmp_setting["bobber_nb"], fields["bobbernb"], 1, 8) else return end - fishing_setting.func.on_show_settings_concours(name) + fishing_setting.func.on_show_settings_contest(name) end end) @@ -572,16 +553,17 @@ end function fishing_setting.func.get_stat() local winners= {} - for k,v in pairs(fishing_setting.concours) do + for k,v in pairs(fishing_setting.contest) do if string.find(k, "_raw") ~= nil then - if fishing_setting.concours[k] ~= nil then - winners[k] = fishing_setting.func.set_winners(fishing_setting.concours[k]) + if fishing_setting.contest[k] ~= nil then + winners[k] = fishing_setting.func.set_winners(fishing_setting.contest[k]) else winners[k] = {} end end end - local formspec = {"size[12,8]label[3.7,0;FISHING CONCOURS CLASSEMENT]"} + local S = fishing_setting.func.S + local formspec = {"size[12,8]label[3.7,0;"..S("Fishing contest rankings").."]"} local X = 0 local Y for fish, fishers in pairs(winners) do @@ -589,14 +571,14 @@ function fishing_setting.func.get_stat() table.insert(formspec, "label["..(X+0.4)..",0.5;"..string.gsub(fish, "_raw", ""):upper().."]") --fish name for _,s in ipairs(fishers) do for pl,nb in pairs(s) do - table.insert(formspec, "label["..(X) ..","..Y..";"..tostring(nb).."]") -- nb fish catched + table.insert(formspec, "label["..(X) ..","..Y..";"..tostring(nb).."]") -- nb fish caught table.insert(formspec, "label["..(X+0.5) ..","..Y..";"..tostring(pl).."]") -- playername end Y = Y + 0.4 end X = X + 2.3 end - table.insert(formspec, "button_exit[5.5,7.5;1.2,1;close;CLose]") + table.insert(formspec, "button_exit[5.5,7.5;1.2,1;close;"..S("Close").."]") return table.concat(formspec) end diff --git a/init.lua b/init.lua index d00a745..a451bc6 100755 --- a/init.lua +++ b/init.lua @@ -21,9 +21,9 @@ fishing_setting.func = {} fishing_setting.is_creative_mode = minetest.setting_getbool("creative_mode") fishing_setting.file_settings = minetest.get_worldpath() .. "/fishing_config.txt" fishing_setting.file_trophies = minetest.get_worldpath() .. "/fishing_trophies.txt" -fishing_setting.file_concours = minetest.get_worldpath() .. "/fishing_concours.txt" +fishing_setting.file_contest = minetest.get_worldpath() .. "/fishing_contest.txt" fishing_setting.settings = {} -fishing_setting.concours = {} +fishing_setting.contest = {} --for random object random_objects = {} fishing_setting.baits = {} @@ -51,8 +51,8 @@ fishing_setting.settings["simple_deco_fishing_pole"] = SIMPLE_DECO_FISHING_POLE fishing_setting.settings["bobber_view_range"] = BOBBER_VIEW_RANGE fishing_setting.settings["fish_chance"] = FISH_CHANCE fishing_setting.settings["shark_chance"] = SHARK_CHANCE -fishing_setting.settings["tresor_chance"] = TRESOR_CHANCE -fishing_setting.settings["tresor_enable"] = TRESOR_RANDOM_ENABLE +fishing_setting.settings["treasure_chance"] = TRESOR_CHANCE +fishing_setting.settings["treasure_enable"] = TRESOR_RANDOM_ENABLE fishing_setting.settings["escape_chance"] = ESCAPE_CHANCE -- load config file if exist in worldpath @@ -72,24 +72,24 @@ dofile(path .."poles.lua") --random hungry bait fishing_setting.func.hungry_random() ---load table catched fish by players +--load table caught fish by players fishing_setting.func.load_trophies() ---load table concours -fishing_setting.func.load_concours() +--load table contest +fishing_setting.func.load_contest() minetest.register_globalstep(function(dtime) - if fishing_setting.concours["concours"] ~= nil and fishing_setting.concours["concours"] == true then - fishing_setting.concours["duration"] = fishing_setting.concours["duration"] - dtime + if fishing_setting.contest["contest"] ~= nil and fishing_setting.contest["contest"] == true then + fishing_setting.contest["duration"] = fishing_setting.contest["duration"] - dtime - if fishing_setting.concours["duration"] < 30 and fishing_setting.concours["warning_said"] ~= true then + if fishing_setting.contest["duration"] < 30 and fishing_setting.contest["warning_said"] ~= true then minetest.chat_send_all(fishing_setting.func.S("WARNING, Fishing contest will finish in 30 seconds.")) - fishing_setting.concours["warning_said"] = true + fishing_setting.contest["warning_said"] = true end - if fishing_setting.concours["duration"] < 0 then + if fishing_setting.contest["duration"] < 0 then minetest.chat_send_all(fishing_setting.func.S("End of fishing contest.")) minetest.sound_play("fishing_contest_end",{gain=0.8}) - fishing_setting.concours["concours"] = false + fishing_setting.contest["contest"] = false fishing_setting.func.show_result() end end diff --git a/locale/de.txt b/locale/de.txt index 4add72c..f690368 100755 --- a/locale/de.txt +++ b/locale/de.txt @@ -50,11 +50,11 @@ Roasted Northern Pike = Gebratener Hecht ### functions.lua ### You don't have the server priviledge! = -You win a new trophie, you have catched %s fish. = -You win a new trophie, you have catched %s shark. = -You win a new trophie, you have catched %s pike. = -You win a new trophie, you have catched %s clownfish. = -You win a new trophie, you have catched %s bluewhite. = +You win a new trophy, you have caught %s fish. = +You win a new trophy, you have caught %s shark. = +You win a new trophy, you have caught %s pike. = +You win a new trophy, you have caught %s clownfish. = +You win a new trophy, you have caught %s bluewhite. = ### material.lua ### diff --git a/locale/fr.txt b/locale/fr.txt index 5789b2a..c42ff39 100755 --- a/locale/fr.txt +++ b/locale/fr.txt @@ -52,19 +52,19 @@ Roasted Northern Pike = Brochet grille ### functions.lua ### You don't have the server priviledge! = Vous n'avez pas les privilèges serveur! -You win a new trophie, you have catched %s fish. = Vous gagnez un trophee, vous avez attrape %s poissons. -You win a new trophie, you have catched %s shark. = Vous gagnez un trophee, vous avez attrape %s requins. -You win a new trophie, you have catched %s pike. = Vous gagnez un trophee, vous avez attrape %s brochets. -You win a new trophie, you have catched %s clownfish. = Vous gagnez un trophee, vous avez attrape %s poissons clown. -You win a new trophie, you have catched %s bluewhite. = Vous gagnez un trophee, vous avez attrape %s poissons bleu. -Good luck to %s, He catch the tresor, %s! = %s a de la chance, Il attrappe le tresor, %s! -You catch the tresor, %s! = Vous attrappez le tresor, %s! -Yeah, %s catch a Fish. = Wouah, %s a attrappe un poisson -Yeah, %s catch a Clownfish. = Wouah, %s a attrappe un poisson clown. -Yeah, %s catch a Bluewhite. = Wouah, %s a attrappe un poisson bleu. -Yeah, %s catch a Northern Pike. = Wouah, %s a attrappe un brochet. -Yeah, %s catch a small Shark. = Wouah, %s a attrappe un requin. -A fishing contest is in progress. (remaining time %s) = Un concour de peche est en cours. (temps restant %s) +You win a new trophy, you have caught %s fish. = Vous gagnez un trophee, vous avez attrape %s poissons. +You win a new trophy, you have caught %s shark. = Vous gagnez un trophee, vous avez attrape %s requins. +You win a new trophy, you have caught %s pike. = Vous gagnez un trophee, vous avez attrape %s brochets. +You win a new trophy, you have caught %s clownfish. = Vous gagnez un trophee, vous avez attrape %s poissons clown. +You win a new trophy, you have caught %s bluewhite. = Vous gagnez un trophee, vous avez attrape %s poissons bleu. +Good luck to %s, He catch the treasure, %s! = %s a de la chance, Il attrappe le tresor, %s! +You catch the treasure, %s! = Vous attrappez le tresor, %s! +Yeah, %s caught a Fish. = Wouah, %s a attrappe un poisson +Yeah, %s caught a Clownfish. = Wouah, %s a attrappe un poisson clown. +Yeah, %s caught a Bluewhite. = Wouah, %s a attrappe un poisson bleu. +Yeah, %s caught a Northern Pike. = Wouah, %s a attrappe un brochet. +Yeah, %s caught a small Shark. = Wouah, %s a attrappe un requin. +A fishing contest is in progress. (remaining time %s) = Un concours de peche est en cours. (temps restant %s) Attention, Fishing contest start(duration %s)!!! = Attention, un concours de peche viens de commence(duree %s)!!! WARNING, Fishing contest will finish in 30 seconds. = Attention, le concours de peche se termine dans 30 secondes End of fishing contest. = Le concours est fini diff --git a/locale/template.txt b/locale/template.txt index 841d586..ce1a793 100755 --- a/locale/template.txt +++ b/locale/template.txt @@ -51,22 +51,49 @@ Roasted Northern Pike = ### functions.lua ### You don't have the server priviledge! = -You win a new trophie, you have catched %s fish. = -You win a new trophie, you have catched %s shark. = -You win a new trophie, you have catched %s pike. = -You win a new trophie, you have catched %s clownfish. = -You win a new trophie, you have catched %s bluewhite. = -Good luck to %s, He catch the tresor, %s! = -You catch the tresor, %s! = -Yeah, %s catch a Fish. = -Yeah, %s catch a Clownfish. = -Yeah, %s catch a Bluefish. = -Yeah, %s catch a Northern Pike. = -Yeah, %s catch a small Shark. = +You win a new trophy, you have caught %s fish. = +You win a new trophy, you have caught %s shark. = +You win a new trophy, you have caught %s pike. = +You win a new trophy, you have caught %s clownfish. = +You win a new trophy, you have caught %s bluewhite. = +Lucky %s, he caught the treasure, %s! = +You caught the treasure, %s!= +Yeah, %s caught a Fish. = +Yeah, %s caught a Clownfish. = +Yeah, %s caught a Bluefish. = +Yeah, %s caught a Northern Pike. = +Yeah, %s caught a small Shark. = A fishing contest is in progress. (remaining time %s) = Attention, Fishing contest start(duration %s)!!! = WARNING, Fishing contest will finish in 30 seconds. = End of fishing contest. = +Fishing configuration = +Fish chance = +Shark chance = +Treasure chance = +Worm chance = +Escape chance = +Bobber view range = +Display messages in chat = +Simple pole deco = +Poles wearout = +Enable treasure = +New worm source (reboot) = +Worm is a mob (reboot) = +Abort = +OK = +Fishing Menu = +Contest rankings = +Contests = +Configuration = +Close = + +Fishing contest = +Duration(in sec) = +Bobber number limit = +Enable contests = +Reset rankings (type 'yes') = +Fishing contest rankings = ### material.lua ### Show information about hunger fish = diff --git a/poles.lua b/poles.lua index a362b5f..0adcaba 100755 --- a/poles.lua +++ b/poles.lua @@ -35,8 +35,8 @@ local bobbermax = pole["bobber_max"] --if contest then player must have only 2 boober local bobber_nb = 0 local bobber_max - if fishing_setting.concours["concours"] ~= nil and fishing_setting.concours["concours"] == true then - bobber_max = fishing_setting.concours["bobber_nb"] + if fishing_setting.contest["contest"] ~= nil and fishing_setting.contest["contest"] == true then + bobber_max = fishing_setting.contest["bobber_nb"] else bobber_max = bobbermax end diff --git a/prizes.lua b/prizes.lua index 7ac9c48..250cfa1 100755 --- a/prizes.lua +++ b/prizes.lua @@ -37,10 +37,10 @@ local stuff = { fishing_setting.prizes["stuff"] = fishing_setting.func.ignore_mod(stuff) -local tresor = { +local treasure = { {"default", "mese", 0, "a mese block."}, {"default", "nyancat", 0, "a Nyan Cat."}, {"default", "diamondblock", 0, "a Diamond Block."}, } -fishing_setting.prizes["tresor"] = fishing_setting.func.ignore_mod(tresor) +fishing_setting.prizes["treasure"] = fishing_setting.func.ignore_mod(treasure) diff --git a/settings.txt b/settings.txt index 17f246c..4732bc3 100755 --- a/settings.txt +++ b/settings.txt @@ -7,6 +7,6 @@ WORM_IS_MOB = true WORM_CHANCE = 66 FISH_CHANCE = 60 SHARK_CHANCE = 50 -TRESOR_CHANCE = 5 -TRESOR_RANDOM_ENABLE = true +TREASURE_CHANCE = 5 +TREASURE_RANDOM_ENABLE = true ESCAPE_CHANCE = 5