I can't think of a nice way of doing it with eventing alone.
You could place an event on every tile or just decoratable tiles, best in order of event id..
so in a hypothetical 2x2 map
[event 001][event 002]
[event 003][event 004]
As long as the map isn't too large it shouldn't lag.
Each of these events would have it's own variable and the type of object would be based on an id.
In a separate autorun event you would modify the appearance of each event based off the variable id.
var xxx1 == 0 could set the first tile to have nothing
var xxx2 == 1 could set the second tile to have a table
and so on.
Then you would just have your interface for changing the object which would probably be an action event interfacing with the tile.
This is a rather heavy handed way of handling it, but it can be done with pure eventing.
ANOTHER OPTION (light scripting used):
If you're willing to use arrays we can reduce it to 1 variable used and thus encapsulate the action event as a common event.
In some event that occurs only once but before you enter the room you can do the following.
Code:
$gameVariables.setValue(1,Array.apply(null, Array(howManyEventsYouHave)).map(Number.prototype.valueOf,0));
That's a mouthful, but just replace the howManyEventsYouHave with your actual number of events.
you can also substitute that 1 for whatever variable id you are going to use. (Be sure to never touch it again outside of script calls.)
In your old autorun event we can use the following(replacing firstEventID with what is appropriate)..
Code:
$gameVariables.value(1)[firstEventID] == idToCompare;
then for the next event..
Code:
$gameVariables.value(1)[firstEventID + 1] == idToCompare;
and so on..
You would replace the idToCompare to what variable value you are checking.
The interface then when choosing an option can now simply set the value with..
Code:
$gameVariables.value(1)[this.eventId()] = valueToSet
.. in a common event.
If we go into pure scripting we can generalize it even more.
tl;dr if you think you can understand the scripting approach then you should start going in that direction. Otherwise construct it only with events.
The end result is the same and scripting is only a means to an end. : ) Best of luck.