From 65764ee318852adbfbea04067d4cd918ccd3937f Mon Sep 17 00:00:00 2001 From: Athozus Date: Sat, 17 Jun 2023 16:24:21 +0200 Subject: [PATCH] Rework message.lua events --- ui/message.lua | 33 +++++++++++---------------------- 1 file changed, 11 insertions(+), 22 deletions(-) diff --git a/ui/message.lua b/ui/message.lua index b44e626..faadb7c 100644 --- a/ui/message.lua +++ b/ui/message.lua @@ -104,42 +104,31 @@ minetest.register_on_player_receive_fields(function(player, formname, fields) local name = player:get_player_name() + local message = "" + if mail.selected_idxs.inbox[name] and mail.selected_idxs.boxtab[name] == 1 then + message = mail.get_message(name, mail.selected_idxs.inbox[name][#mail.selected_idxs.inbox[name]]) + elseif mail.selected_idxs.outbox[name] and mail.selected_idxs.boxtab[name] == 2 then + message = mail.get_message(name, mail.selected_idxs.outbox[name][#mail.selected_idxs.outbox[name]]) + end + if fields.back then mail.show_mail_menu(name) return true -- don't uselessly set messages elseif fields.reply then - local message = "" - if mail.selected_idxs.inbox[name] and mail.selected_idxs.boxtab[name] == 1 then - message = mail.get_message(name, mail.selected_idxs.inbox[name][#mail.selected_idxs.inbox[name]]) - elseif mail.selected_idxs.outbox[name] and mail.selected_idxs.boxtab[name] == 2 then - message = mail.get_message(name, mail.selected_idxs.outbox[name][#mail.selected_idxs.outbox[name]]) - end mail.reply(name, message) elseif fields.replyall then - local message = "" - if mail.selected_idxs.inbox[name] and mail.selected_idxs.boxtab[name] == 1 then - message = mail.get_message(name, mail.selected_idxs.inbox[name][#mail.selected_idxs.inbox[name]]) - elseif mail.selected_idxs.outbox[name] and mail.selected_idxs.boxtab[name] == 2 then - message = mail.get_message(name, mail.selected_idxs.outbox[name][#mail.selected_idxs.outbox[name]]) - end mail.replyall(name, message) elseif fields.forward then - local message = "" - if mail.selected_idxs.inbox[name] and mail.selected_idxs.boxtab[name] == 1 then - message = mail.get_message(name, mail.selected_idxs.inbox[name][#mail.selected_idxs.inbox[name]]) - elseif mail.selected_idxs.outbox[name] and mail.selected_idxs.boxtab[name] == 2 then - message = mail.get_message(name, mail.selected_idxs.outbox[name][#mail.selected_idxs.outbox[name]]) - end mail.forward(name, message) elseif fields.delete then - if mail.selected_idxs.inbox[name] and mail.selected_idxs.boxtab[name] == 1 then - mail.delete_mail(name, mail.selected_idxs.inbox[name][#mail.selected_idxs.inbox[name]]) - elseif mail.selected_idxs.outbox[name] and mail.selected_idxs.boxtab[name] == 2 then - mail.delete_mail(name, mail.selected_idxs.outbox[name][#mail.selected_idxs.outbox[name]]) + if mail.get_setting(name, "trash_move_enable") then + mail.trash_mail(name, message.id) + else + mail.delete_mail(name, message.id) end mail.show_mail_menu(name) end