{"action":"created","issue":{"url":"https://api.github.com/repos/Chain-Reaction/NRaas/issues/22","labels_url":"https://api.github.com/repos/Chain-Reaction/NRaas/issues/22/labels{/name}","comments_url":"https://api.github.com/repos/Chain-Reaction/NRaas/issues/22/comments","events_url":"https://api.github.com/repos/Chain-Reaction/NRaas/issues/22/events","html_url":"https://github.com/Chain-Reaction/NRaas/pull/22","id":119630295,"number":22,"title":"JamJar support for The Savvier Seller","user":{"login":"Robobeurre","id":16063640,"avatar_url":"https://avatars.githubusercontent.com/u/16063640?v=3","gravatar_id":"","url":"https://api.github.com/users/Robobeurre","html_url":"https://github.com/Robobeurre","followers_url":"https://api.github.com/users/Robobeurre/followers","following_url":"https://api.github.com/users/Robobeurre/following{/other_user}","gists_url":"https://api.github.com/users/Robobeurre/gists{/gist_id}","starred_url":"https://api.github.com/users/Robobeurre/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Robobeurre/subscriptions","organizations_url":"https://api.github.com/users/Robobeurre/orgs","repos_url":"https://api.github.com/users/Robobeurre/repos","events_url":"https://api.github.com/users/Robobeurre/events{/privacy}","received_events_url":"https://api.github.com/users/Robobeurre/received_events","type":"User","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":null,"milestone":null,"comments":4,"created_at":"2015-12-01T02:56:13Z","updated_at":"2015-12-07T19:53:24Z","closed_at":"2015-12-07T08:51:13Z","pull_request":{"url":"https://api.github.com/repos/Chain-Reaction/NRaas/pulls/22","html_url":"https://github.com/Chain-Reaction/NRaas/pull/22","diff_url":"https://github.com/Chain-Reaction/NRaas/pull/22.diff","patch_url":"https://github.com/Chain-Reaction/NRaas/pull/22.patch"},"body":"Hi,\r\n\r\nThis set of commits fixes issues restocking JamJars (from Grandma's Canning Station premium content) within stores managed by The Savvier Seller.\r\n\r\nIt works by recognizing that the item being sold is a JamJar. This is done by adding JamJar to the Item enumeration and detecting the type similarly to the other supported types. The RestockItem was modified to add attributes that allow for the storage and recreation of JamJars. Finally the essential attributes of the JamJar are read and then used to recreate the JamJar objects when they are restocked. These attributes are private, hence the use of reflection.\r\n\r\nThe first commit removes sub-projects from The Savvier Seller, combining all files into a single project. This was done to work around circular dependencies between the main project and sub-projects that seemed unfixable. This also means The Savvier Seller now builds to a single dll whereas the original distribution comprised 3 dlls.\r\n\r\nThe second commit removes the now unused sub-project folders.\r\n\r\nThe third commit implements the JamJar support as described above. The patch is large due to code indentation changes.\r\n\r\nThe final commit fixes a problem creating JamJar objects.\r\n\r\nThe new dll has been tested by replacing one of the original The Savvier Seller dlls with an override package."},"comment":{"url":"https://api.github.com/repos/Chain-Reaction/NRaas/issues/comments/162640067","html_url":"https://github.com/Chain-Reaction/NRaas/pull/22#issuecomment-162640067","issue_url":"https://api.github.com/repos/Chain-Reaction/NRaas/issues/22","id":162640067,"user":{"login":"Robobeurre","id":16063640,"avatar_url":"https://avatars.githubusercontent.com/u/16063640?v=3","gravatar_id":"","url":"https://api.github.com/users/Robobeurre","html_url":"https://github.com/Robobeurre","followers_url":"https://api.github.com/users/Robobeurre/followers","following_url":"https://api.github.com/users/Robobeurre/following{/other_user}","gists_url":"https://api.github.com/users/Robobeurre/gists{/gist_id}","starred_url":"https://api.github.com/users/Robobeurre/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Robobeurre/subscriptions","organizations_url":"https://api.github.com/users/Robobeurre/orgs","repos_url":"https://api.github.com/users/Robobeurre/repos","events_url":"https://api.github.com/users/Robobeurre/events{/privacy}","received_events_url":"https://api.github.com/users/Robobeurre/received_events","type":"User","site_admin":false},"created_at":"2015-12-07T19:53:24Z","updated_at":"2015-12-07T19:53:24Z","body":"Hi,\r\n\r\nThanks for merging the changes.\r\n\r\nI was hoping that using `typeof(JamJar)` wouldn't cause a reference to the DLL. The only other place where the `JamJar` object is modified is when saving and loading the properties to/from `RestockItem`. In this case reflection is used, so again, I was hoping that wouldn't cause a reference.\r\n\r\nThe store content also has significant bugs. For instance, it does not allow for import/export, so it cannot be saved in a lot and placed later, or moved to different maps. I've also fixed that bug, but I'm not sure how to distribute the fixed source code since that is EA's property. I published the fixed DLL for testing here: http://modthesims.info/showthread.php?t=567717.\r\n\r\nI haven't renamed any of the classes or namespaces from the original The Savvier Seller mod. Therefore I think the script objects should still work with old saves, although I haven't tested this."}}