diff --git a/fs_edit_trade_limit.lua b/fs_edit_trade_limit.lua index 6584a6b..598f451 100644 --- a/fs_edit_trade_limit.lua +++ b/fs_edit_trade_limit.lua @@ -1,6 +1,12 @@ -- add or edit a trade limit yl_speak_up.input_edit_trade_limit = function(player, formname, fields) + local pname = player:get_player_name() + local n_id = yl_speak_up.speak_to[pname].n_id + if(not(yl_speak_up.may_edit_npc(player, n_id))) then + return + end + -- store the new limits? if(fields and fields["store_limit"]) then if(not(fields["item_name"]) @@ -14,8 +20,6 @@ yl_speak_up.input_edit_trade_limit = function(player, formname, fields) "button[1.5,1.5;2,0.9;back_from_msg;Back]"}) return end - local pname = player:get_player_name() - local n_id = yl_speak_up.speak_to[pname].n_id local dialog = yl_speak_up.speak_to[pname].dialog -- make sure all necessary entries in the trades table exist @@ -41,8 +45,6 @@ yl_speak_up.input_edit_trade_limit = function(player, formname, fields) end if(fields and fields["delete_limit"]) then - local pname = player:get_player_name() - local n_id = yl_speak_up.speak_to[pname].n_id local dialog = yl_speak_up.speak_to[pname].dialog -- make sure all necessary entries in the trades table exist @@ -66,6 +68,10 @@ end -- edit a trade limit or add a new one yl_speak_up.get_fs_edit_trade_limit = function(player, selected_row) local pname = player:get_player_name() + local n_id = yl_speak_up.speak_to[pname].n_id + if(not(yl_speak_up.may_edit_npc(player, n_id))) then + return "You have no right to edit this NPC." + end local items = yl_speak_up.speak_to[pname].trade_limit_items local item_list = yl_speak_up.speak_to[pname].trade_limit_item_list if(not(selected_row) or selected_row < 1