{"action":"created","comment":{"url":"https://api.github.com/repos/tgstation/-tg-station/pulls/comments/55479592","id":55479592,"diff_hunk":"@@ -72,15 +86,93 @@\n \t\treturn\r\n \treturn\r\n \r\n+\r\n+// Various gene procs\r\n+/obj/item/weapon/reagent_containers/food/snacks/grown/attack_self(mob/user)\r\n+\tif(seed.get_gene(/datum/plant_gene/trait/squash))\r\n+\t\tsquash(user)\r\n+\t..()\r\n+\r\n+/obj/item/weapon/reagent_containers/food/snacks/grown/throw_impact(atom/hit_atom)\r\n+\tif(!..() && seed.get_gene(/datum/plant_gene/trait/squash)) //was it caught by a mob?\r\n+\t\tsquash(hit_atom)\r\n+\r\n+/obj/item/weapon/reagent_containers/food/snacks/grown/proc/squash(atom/target)\r\n+\tvar/turf/T = get_turf(target)\r\n+\tif(ispath(splat_type, /obj/effect/decal/cleanable/plant_smudge))\r\n+\t\tif(filling_color)\r\n+\t\t\tvar/obj/O = new splat_type(T)\r\n+\t\t\tO.color = filling_color\r\n+\t\t\tO.name = \"[name] smudge\"\r\n+\telse if(splat_type)\r\n+\t\tnew splat_type(T)\r\n+\r\n+\tif(trash)\r\n+\t\tif(ispath(trash, /obj/item/weapon/grown) || ispath(trash, /obj/item/weapon/reagent_containers/food/snacks/grown))\r\n+\t\t\tnew trash(T, seed)\r\n+\t\telse\r\n+\t\t\tnew trash(T)\r\n+\r\n+\tvisible_message(\"<span class='warning'>[src] has been squashed.</span>\",\"<span class='italics'>You hear a smack.</span>\")\r\n+\tfor(var/datum/plant_gene/trait/trait in seed.genes)\r\n+\t\ttrait.on_squash(src, target)\r\n+\r\n+\tfor(var/atom/A in T)\r\n+\t\treagents.reaction(A)\r\n+\r\n+\tqdel(src)\r\n+\r\n+/obj/item/weapon/reagent_containers/food/snacks/grown/On_Consume()\r\n+\tif(iscarbon(usr))\r\n+\t\tfor(var/datum/plant_gene/trait/T in seed.genes)\r\n+\t\t\tT.on_consume(src, usr)\r\n+\t..()\r\n+\r\n+/obj/item/weapon/reagent_containers/food/snacks/grown/Crossed(AM as mob|obj)\r","path":"code/modules/hydroponics/grown.dm","position":81,"original_position":81,"commit_id":"410ad607501ac42718382e2a8dd3140ec223169b","original_commit_id":"410ad607501ac42718382e2a8dd3140ec223169b","user":{"login":"Core0verload","id":13571765,"avatar_url":"https://avatars.githubusercontent.com/u/13571765?v=3","gravatar_id":"","url":"https://api.github.com/users/Core0verload","html_url":"https://github.com/Core0verload","followers_url":"https://api.github.com/users/Core0verload/followers","following_url":"https://api.github.com/users/Core0verload/following{/other_user}","gists_url":"https://api.github.com/users/Core0verload/gists{/gist_id}","starred_url":"https://api.github.com/users/Core0verload/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Core0verload/subscriptions","organizations_url":"https://api.github.com/users/Core0verload/orgs","repos_url":"https://api.github.com/users/Core0verload/repos","events_url":"https://api.github.com/users/Core0verload/events{/privacy}","received_events_url":"https://api.github.com/users/Core0verload/received_events","type":"User","site_admin":false},"body":"copypasted from the old bluespace tomato, there is no reason to change it, see CONTRIBUTING.md","created_at":"2016-03-09T07:14:33Z","updated_at":"2016-03-09T07:14:33Z","html_url":"https://github.com/tgstation/-tg-station/pull/15988#discussion_r55479592","pull_request_url":"https://api.github.com/repos/tgstation/-tg-station/pulls/15988","_links":{"self":{"href":"https://api.github.com/repos/tgstation/-tg-station/pulls/comments/55479592"},"html":{"href":"https://github.com/tgstation/-tg-station/pull/15988#discussion_r55479592"},"pull_request":{"href":"https://api.github.com/repos/tgstation/-tg-station/pulls/15988"}}},"pull_request":{"url":"https://api.github.com/repos/tgstation/-tg-station/pulls/15988","id":62187100,"html_url":"https://github.com/tgstation/-tg-station/pull/15988","diff_url":"https://github.com/tgstation/-tg-station/pull/15988.diff","patch_url":"https://github.com/tgstation/-tg-station/pull/15988.patch","issue_url":"https://api.github.com/repos/tgstation/-tg-station/issues/15988","number":15988,"state":"open","locked":false,"title":"Plant Refactor: Genesis","user":{"login":"Core0verload","id":13571765,"avatar_url":"https://avatars.githubusercontent.com/u/13571765?v=3","gravatar_id":"","url":"https://api.github.com/users/Core0verload","html_url":"https://github.com/Core0verload","followers_url":"https://api.github.com/users/Core0verload/followers","following_url":"https://api.github.com/users/Core0verload/following{/other_user}","gists_url":"https://api.github.com/users/Core0verload/gists{/gist_id}","starred_url":"https://api.github.com/users/Core0verload/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Core0verload/subscriptions","organizations_url":"https://api.github.com/users/Core0verload/orgs","repos_url":"https://api.github.com/users/Core0verload/repos","events_url":"https://api.github.com/users/Core0verload/events{/privacy}","received_events_url":"https://api.github.com/users/Core0verload/received_events","type":"User","site_admin":false},"body":"This is the end. This is the last plant refactor I will ever make. \r\n\r\nIt adds a basic gene system, making it easier to create new plant types with special properties, and ports all the special properties to the new system. Slipperiness, bluespace activity, bioluminescence, cell recharging - all of them are now genes, and you can make your new plant slippery with a single line. The system is not yet ready, but it's already functional and you can use VV to surprise the players with bluespace slippery power apples.\r\n\r\nThe next update in the line will not be refactor. It will expand the genes system with new features, and will add a test version of **bioengineering** - plant modification system similar to Bay's xenobotany, but a lot less restrictive and more fun. But for now, I need a break from plant code and will make a large XCOM reference feature while this PR is being merged.","created_at":"2016-03-09T06:54:03Z","updated_at":"2016-03-09T07:14:33Z","closed_at":null,"merged_at":null,"merge_commit_sha":"50c8089acbe8928808f00735fb53f792502b6367","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/tgstation/-tg-station/pulls/15988/commits","review_comments_url":"https://api.github.com/repos/tgstation/-tg-station/pulls/15988/comments","review_comment_url":"https://api.github.com/repos/tgstation/-tg-station/pulls/comments{/number}","comments_url":"https://api.github.com/repos/tgstation/-tg-station/issues/15988/comments","statuses_url":"https://api.github.com/repos/tgstation/-tg-station/statuses/410ad607501ac42718382e2a8dd3140ec223169b","head":{"label":"Core0verload:plantrefactor3","ref":"plantrefactor3","sha":"410ad607501ac42718382e2a8dd3140ec223169b","user":{"login":"Core0verload","id":13571765,"avatar_url":"https://avatars.githubusercontent.com/u/13571765?v=3","gravatar_id":"","url":"https://api.github.com/users/Core0verload","html_url":"https://github.com/Core0verload","followers_url":"https://api.github.com/users/Core0verload/followers","following_url":"https://api.github.com/users/Core0verload/following{/other_user}","gists_url":"https://api.github.com/users/Core0verload/gists{/gist_id}","starred_url":"https://api.github.com/users/Core0verload/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Core0verload/subscriptions","organizations_url":"https://api.github.com/users/Core0verload/orgs","repos_url":"https://api.github.com/users/Core0verload/repos","events_url":"https://api.github.com/users/Core0verload/events{/privacy}","received_events_url":"https://api.github.com/users/Core0verload/received_events","type":"User","site_admin":false},"repo":{"id":39950189,"name":"-tg-station","full_name":"Core0verload/-tg-station","owner":{"login":"Core0verload","id":13571765,"avatar_url":"https://avatars.githubusercontent.com/u/13571765?v=3","gravatar_id":"","url":"https://api.github.com/users/Core0verload","html_url":"https://github.com/Core0verload","followers_url":"https://api.github.com/users/Core0verload/followers","following_url":"https://api.github.com/users/Core0verload/following{/other_user}","gists_url":"https://api.github.com/users/Core0verload/gists{/gist_id}","starred_url":"https://api.github.com/users/Core0verload/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Core0verload/subscriptions","organizations_url":"https://api.github.com/users/Core0verload/orgs","repos_url":"https://api.github.com/users/Core0verload/repos","events_url":"https://api.github.com/users/Core0verload/events{/privacy}","received_events_url":"https://api.github.com/users/Core0verload/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/Core0verload/-tg-station","description":"the /tg/station branch of SS13","fork":true,"url":"https://api.github.com/repos/Core0verload/-tg-station","forks_url":"https://api.github.com/repos/Core0verload/-tg-station/forks","keys_url":"https://api.github.com/repos/Core0verload/-tg-station/keys{/key_id}","collaborators_url":"https://api.github.com/repos/Core0verload/-tg-station/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/Core0verload/-tg-station/teams","hooks_url":"https://api.github.com/repos/Core0verload/-tg-station/hooks","issue_events_url":"https://api.github.com/repos/Core0verload/-tg-station/issues/events{/number}","events_url":"https://api.github.com/repos/Core0verload/-tg-station/events","assignees_url":"https://api.github.com/repos/Core0verload/-tg-station/assignees{/user}","branches_url":"https://api.github.com/repos/Core0verload/-tg-station/branches{/branch}","tags_url":"https://api.github.com/repos/Core0verload/-tg-station/tags","blobs_url":"https://api.github.com/repos/Core0verload/-tg-station/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/Core0verload/-tg-station/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/Core0verload/-tg-station/git/refs{/sha}","trees_url":"https://api.github.com/repos/Core0verload/-tg-station/git/trees{/sha}","statuses_url":"https://api.github.com/repos/Core0verload/-tg-station/statuses/{sha}","languages_url":"https://api.github.com/repos/Core0verload/-tg-station/languages","stargazers_url":"https://api.github.com/repos/Core0verload/-tg-station/stargazers","contributors_url":"https://api.github.com/repos/Core0verload/-tg-station/contributors","subscribers_url":"https://api.github.com/repos/Core0verload/-tg-station/subscribers","subscription_url":"https://api.github.com/repos/Core0verload/-tg-station/subscription","commits_url":"https://api.github.com/repos/Core0verload/-tg-station/commits{/sha}","git_commits_url":"https://api.github.com/repos/Core0verload/-tg-station/git/commits{/sha}","comments_url":"https://api.github.com/repos/Core0verload/-tg-station/comments{/number}","issue_comment_url":"https://api.github.com/repos/Core0verload/-tg-station/issues/comments{/number}","contents_url":"https://api.github.com/repos/Core0verload/-tg-station/contents/{+path}","compare_url":"https://api.github.com/repos/Core0verload/-tg-station/compare/{base}...{head}","merges_url":"https://api.github.com/repos/Core0verload/-tg-station/merges","archive_url":"https://api.github.com/repos/Core0verload/-tg-station/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/Core0verload/-tg-station/downloads","issues_url":"https://api.github.com/repos/Core0verload/-tg-station/issues{/number}","pulls_url":"https://api.github.com/repos/Core0verload/-tg-station/pulls{/number}","milestones_url":"https://api.github.com/repos/Core0verload/-tg-station/milestones{/number}","notifications_url":"https://api.github.com/repos/Core0verload/-tg-station/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/Core0verload/-tg-station/labels{/name}","releases_url":"https://api.github.com/repos/Core0verload/-tg-station/releases{/id}","deployments_url":"https://api.github.com/repos/Core0verload/-tg-station/deployments","created_at":"2015-07-30T12:48:34Z","updated_at":"2015-07-30T12:48:43Z","pushed_at":"2016-03-09T06:30:28Z","git_url":"git://github.com/Core0verload/-tg-station.git","ssh_url":"git@github.com:Core0verload/-tg-station.git","clone_url":"https://github.com/Core0verload/-tg-station.git","svn_url":"https://github.com/Core0verload/-tg-station","homepage":"http://www.tgstation13.org/","size":625563,"stargazers_count":0,"watchers_count":0,"language":"DM","has_issues":false,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"tgstation:master","ref":"master","sha":"57493aa4269f45cd64f25d76d3c1fa5603af0deb","user":{"login":"tgstation","id":1363778,"avatar_url":"https://avatars.githubusercontent.com/u/1363778?v=3","gravatar_id":"","url":"https://api.github.com/users/tgstation","html_url":"https://github.com/tgstation","followers_url":"https://api.github.com/users/tgstation/followers","following_url":"https://api.github.com/users/tgstation/following{/other_user}","gists_url":"https://api.github.com/users/tgstation/gists{/gist_id}","starred_url":"https://api.github.com/users/tgstation/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tgstation/subscriptions","organizations_url":"https://api.github.com/users/tgstation/orgs","repos_url":"https://api.github.com/users/tgstation/repos","events_url":"https://api.github.com/users/tgstation/events{/privacy}","received_events_url":"https://api.github.com/users/tgstation/received_events","type":"Organization","site_admin":false},"repo":{"id":3234987,"name":"-tg-station","full_name":"tgstation/-tg-station","owner":{"login":"tgstation","id":1363778,"avatar_url":"https://avatars.githubusercontent.com/u/1363778?v=3","gravatar_id":"","url":"https://api.github.com/users/tgstation","html_url":"https://github.com/tgstation","followers_url":"https://api.github.com/users/tgstation/followers","following_url":"https://api.github.com/users/tgstation/following{/other_user}","gists_url":"https://api.github.com/users/tgstation/gists{/gist_id}","starred_url":"https://api.github.com/users/tgstation/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tgstation/subscriptions","organizations_url":"https://api.github.com/users/tgstation/orgs","repos_url":"https://api.github.com/users/tgstation/repos","events_url":"https://api.github.com/users/tgstation/events{/privacy}","received_events_url":"https://api.github.com/users/tgstation/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/tgstation/-tg-station","description":"the /tg/station branch of SS13","fork":false,"url":"https://api.github.com/repos/tgstation/-tg-station","forks_url":"https://api.github.com/repos/tgstation/-tg-station/forks","keys_url":"https://api.github.com/repos/tgstation/-tg-station/keys{/key_id}","collaborators_url":"https://api.github.com/repos/tgstation/-tg-station/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/tgstation/-tg-station/teams","hooks_url":"https://api.github.com/repos/tgstation/-tg-station/hooks","issue_events_url":"https://api.github.com/repos/tgstation/-tg-station/issues/events{/number}","events_url":"https://api.github.com/repos/tgstation/-tg-station/events","assignees_url":"https://api.github.com/repos/tgstation/-tg-station/assignees{/user}","branches_url":"https://api.github.com/repos/tgstation/-tg-station/branches{/branch}","tags_url":"https://api.github.com/repos/tgstation/-tg-station/tags","blobs_url":"https://api.github.com/repos/tgstation/-tg-station/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/tgstation/-tg-station/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/tgstation/-tg-station/git/refs{/sha}","trees_url":"https://api.github.com/repos/tgstation/-tg-station/git/trees{/sha}","statuses_url":"https://api.github.com/repos/tgstation/-tg-station/statuses/{sha}","languages_url":"https://api.github.com/repos/tgstation/-tg-station/languages","stargazers_url":"https://api.github.com/repos/tgstation/-tg-station/stargazers","contributors_url":"https://api.github.com/repos/tgstation/-tg-station/contributors","subscribers_url":"https://api.github.com/repos/tgstation/-tg-station/subscribers","subscription_url":"https://api.github.com/repos/tgstation/-tg-station/subscription","commits_url":"https://api.github.com/repos/tgstation/-tg-station/commits{/sha}","git_commits_url":"https://api.github.com/repos/tgstation/-tg-station/git/commits{/sha}","comments_url":"https://api.github.com/repos/tgstation/-tg-station/comments{/number}","issue_comment_url":"https://api.github.com/repos/tgstation/-tg-station/issues/comments{/number}","contents_url":"https://api.github.com/repos/tgstation/-tg-station/contents/{+path}","compare_url":"https://api.github.com/repos/tgstation/-tg-station/compare/{base}...{head}","merges_url":"https://api.github.com/repos/tgstation/-tg-station/merges","archive_url":"https://api.github.com/repos/tgstation/-tg-station/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/tgstation/-tg-station/downloads","issues_url":"https://api.github.com/repos/tgstation/-tg-station/issues{/number}","pulls_url":"https://api.github.com/repos/tgstation/-tg-station/pulls{/number}","milestones_url":"https://api.github.com/repos/tgstation/-tg-station/milestones{/number}","notifications_url":"https://api.github.com/repos/tgstation/-tg-station/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/tgstation/-tg-station/labels{/name}","releases_url":"https://api.github.com/repos/tgstation/-tg-station/releases{/id}","deployments_url":"https://api.github.com/repos/tgstation/-tg-station/deployments","created_at":"2012-01-21T17:32:47Z","updated_at":"2016-03-08T08:11:10Z","pushed_at":"2016-03-09T06:54:04Z","git_url":"git://github.com/tgstation/-tg-station.git","ssh_url":"git@github.com:tgstation/-tg-station.git","clone_url":"https://github.com/tgstation/-tg-station.git","svn_url":"https://github.com/tgstation/-tg-station","homepage":"http://www.tgstation13.org/","size":782682,"stargazers_count":276,"watchers_count":276,"language":"DM","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":977,"mirror_url":null,"open_issues_count":815,"forks":977,"open_issues":815,"watchers":276,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/tgstation/-tg-station/pulls/15988"},"html":{"href":"https://github.com/tgstation/-tg-station/pull/15988"},"issue":{"href":"https://api.github.com/repos/tgstation/-tg-station/issues/15988"},"comments":{"href":"https://api.github.com/repos/tgstation/-tg-station/issues/15988/comments"},"review_comments":{"href":"https://api.github.com/repos/tgstation/-tg-station/pulls/15988/comments"},"review_comment":{"href":"https://api.github.com/repos/tgstation/-tg-station/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/tgstation/-tg-station/pulls/15988/commits"},"statuses":{"href":"https://api.github.com/repos/tgstation/-tg-station/statuses/410ad607501ac42718382e2a8dd3140ec223169b"}}}}