The point and click screen works on jumping to whatever string the screen returns. Since the inventory code also returns some values, the loop label interprets True from lines 301 and 308 with the same weight as if that return came from the point and click button. You could add a condition in the pnc_loop label that check if the returned value is True and jump back to the loop, or you could modify the combine_check function from the inventory system to return label names.
Viewing post in _return label bug?
Got it to work via adding the condition like you suggested! Thank you. If others are having a similar issue and came to the forum for help like I did, try adding an if statement for your inventory return values at the end of your pnc_loop. In my case, the code ended up looking like this:
if inventory_return == True and current_room == "the_current_room":
jump current_room_label
else:
jump expression _return
Might not be the best workaround since you'd have to make an if/elif statement for each room, but hey, if it works, it works!