You write in the objects as part of your story, and you use variables to track whether the object is taken or not.
What version of Twine are you using? What story format are you using? (depending on the answers to your questions is how you write the code to track your variables.)
You can use $variables to track if the Reader has done an action (like picking up a book) or not.
Expanding on @Sage's example, try adding the following to a passage:
(set: $haveBook to false)
There is a [book]<book| on the [table]<table|.
(click: ?book)[(replace: ?book)[heavy tome with an age-worn leather cover]]
(click: ?table)[(replace: ?table)[massive oak dining table]]
(if: not $haveBook)[(link: "Take Book")[(set: $haveBook to true)]]
The first line is setting up the $haveBook variable being used to track if the Reader has the book or not, you should setup all the $variables with default values within the first passage of your story.
The $haveBook variable starts out as false and is changed to true is the Reader clicks on the Take Book link. The Take Book link will only appear if the Reader does not have the book. Ideally the room description should also be changed so that the book is not on the table.
To see what the passage will look like if the Reader has the book already, change the first line of the above example to the following and Test your story again:
Comments
You write in the objects as part of your story, and you use variables to track whether the object is taken or not.
What version of Twine are you using? What story format are you using? (depending on the answers to your questions is how you write the code to track your variables.)
Sharpe has a good example, here:
Is this what you mean?
There is a [book]<book| on the <table|.
(click: ?book)[A heavy tome with an age-worn leather cover.]
(click: ?table)[A massive oak dining table.]
Or, maybe this can be better styled to what you seek:
There is a [book]<book| on the <table|.
(click: ?book)[(replace: ?book)[heavy tome with an age-worn leather cover]]
(click: ?table)[(replace: ?table)[massive oak dining table]]
See if either of those dogs will hunt.
As @feliwebwork and @Sage have already said, the answer is yes.
You can use $variables to track if the Reader has done an action (like picking up a book) or not.
Expanding on @Sage's example, try adding the following to a passage: The first line is setting up the $haveBook variable being used to track if the Reader has the book or not, you should setup all the $variables with default values within the first passage of your story.
The $haveBook variable starts out as false and is changed to true is the Reader clicks on the Take Book link. The Take Book link will only appear if the Reader does not have the book. Ideally the room description should also be changed so that the book is not on the table.
To see what the passage will look like if the Reader has the book already, change the first line of the above example to the following and Test your story again:
Paul