linked works here/belongs_to to proper owner
This commit is contained in:
parent
9345755384
commit
e52ad5c4bb
@ -556,7 +556,7 @@ mg_villages.inhabitants.print_house_info = function( village_to_add_data_bpos, h
|
||||
-- allow to click through the plots
|
||||
prev_next_button..
|
||||
'label[0.5,0.5;'..minetest.formspec_escape(str)..']'..
|
||||
'label[0.5,4.1;'..minetest.formspec_escape(add_str)..']'..
|
||||
'label[0.5,4.1;'..add_str..']'..
|
||||
'tablecolumns[' ..
|
||||
'text,align=left]'.. -- name and description of inhabitant
|
||||
'table[0.1,1.0;11.4,3.0;mg_villages:formspec_list_inhabitants;'..people_str..']';
|
||||
|
||||
@ -403,12 +403,37 @@ mg_villages.form_input_handler = function( player, formname, fields)
|
||||
and mg_villages.all_villages[ fields.village_id ]
|
||||
and mg_villages.all_villages[ fields.village_id ].to_add_data
|
||||
and mg_villages.all_villages[ fields.village_id ].to_add_data.bpos
|
||||
and mg_villages.all_villages[ fields.village_id ].to_add_data.bpos[ fields.plot_nr ]
|
||||
and mg_villages.all_villages[ fields.village_id ].to_add_data.bpos[ fields.plot_nr ].beds[mob_selected]) then
|
||||
local village = mg_villages.all_villages[ fields.village_id ];
|
||||
minetest.show_formspec( pname, "mg_villages:formspec_list_one_mob",
|
||||
mg_villages.inhabitants.print_mob_info( village.to_add_data.bpos, fields.plot_nr, fields.village_id, mob_selected, pname ));
|
||||
return true;
|
||||
and mg_villages.all_villages[ fields.village_id ].to_add_data.bpos[ fields.plot_nr ])then
|
||||
-- and mg_villages.all_villages[ fields.village_id ].to_add_data.bpos[ fields.plot_nr ].beds[mob_selected]) then
|
||||
if( not( mg_villages.all_villages[ fields.village_id ].to_add_data.bpos[ fields.plot_nr ].beds)
|
||||
or not( mg_villages.all_villages[ fields.village_id ].to_add_data.bpos[ fields.plot_nr ].beds[ mob_selected] )) then
|
||||
-- allow to click at the worker
|
||||
local bpos = mg_villages.all_villages[ fields.village_id ].to_add_data.bpos;
|
||||
if( bpos[ fields.plot_nr ].worker
|
||||
and bpos[ fields.plot_nr ].worker.lives_at
|
||||
and bpos[ bpos[ fields.plot_nr ].worker.lives_at ]
|
||||
and bpos[ bpos[ fields.plot_nr ].worker.lives_at ].beds
|
||||
and bpos[ bpos[ fields.plot_nr ].worker.lives_at ].beds[1] ) then
|
||||
fields.plot_nr = tonumber(bpos[ fields.plot_nr ].worker.lives_at);
|
||||
mob_selected = 1;
|
||||
-- allow to click at the owner
|
||||
elseif( bpos[ fields.plot_nr ].belongs_to
|
||||
and bpos[ bpos[ fields.plot_nr ].belongs_to ]
|
||||
and bpos[ bpos[ fields.plot_nr ].belongs_to ].beds
|
||||
and bpos[ bpos[ fields.plot_nr ].belongs_to ].beds[1] ) then
|
||||
fields.plot_nr = tonumber(bpos[ fields.plot_nr ].belongs_to);
|
||||
mob_selected = 1;
|
||||
-- this is not a mob
|
||||
else
|
||||
mob_selected = nil;
|
||||
end
|
||||
end
|
||||
if( mob_selected ) then
|
||||
local village = mg_villages.all_villages[ fields.village_id ];
|
||||
minetest.show_formspec( pname, "mg_villages:formspec_list_one_mob",
|
||||
mg_villages.inhabitants.print_mob_info( village.to_add_data.bpos, fields.plot_nr, fields.village_id, mob_selected, pname ));
|
||||
return true;
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user