Hi there! You are currently browsing as a guest. Why not create an account? Then you get less ads, can thank creators, post feedback, keep a list of your favourites, and more!
Alchemist
Original Poster
#1 Old 29th Jul 2015 at 10:21 AM
Default Stopping nectar and bar drinks from being cleaned up
I'm so fed up that the maid always cleans up my perfectly good bar drinks and nectars. Does she even know how much it's worth??? She can't even buy one with her salary! Genie's magically clean lot magic also destroys these drinks. This needs to be stopped, but I really don't know how.

I think I found the culprit. Drink tray (BarTray class) implements IThrowAwayable interface. The method ShouldBeThrownAway() is set to true. This function is used for the regular cleaning up check to see if an object should be cleaned up or not, as seen in DoesObjectNeedCleaning() method. if the ShouldBeThrownAway() method is set to false, maids / butlers / neat Sims will then ignore the drink tray.

However, it doesn't stop from genies cleaning up the trays, even if the method is set to false. MagicallyCleanUp() method doesn't check ShouldBeThrownAway(), so it immediately destroys any objects that implements IThrowAwayable. The thing is, this method seems to be used by a lot other methods and not just genie's magic. Maybe I shouldn't tamper with it, so let's say it's just a drawback for the genie's magic.

I'm not sure if it's that easy to replace the content of a method though? The solution sounds so simple but I don't know how to replace a method. Do I need to make a copy of the class and replace the whole class to do it?

Just call me Nikel
Advertisement
Instructor
#2 Old 30th Jul 2015 at 4:31 AM
I think that if the method is Abstract or Override (example: Public Override ShouldBeThrownAway() ), then you can use the exact same name to overwrite the method. I haven't touched coding in quite some time, so I guess I'm not the best help around.
Back to top