{"action":"opened","issue":{"url":"https://api.github.com/repos/chrsmith/bwapi/issues/207","labels_url":"https://api.github.com/repos/chrsmith/bwapi/issues/207/labels{/name}","comments_url":"https://api.github.com/repos/chrsmith/bwapi/issues/207/comments","events_url":"https://api.github.com/repos/chrsmith/bwapi/issues/207/events","html_url":"https://github.com/chrsmith/bwapi/issues/207","id":58670848,"number":207,"title":"OnMorph incomplete and GetBuildType inconsistency","user":{"login":"GoogleCodeExporter","id":9614759,"avatar_url":"https://avatars.githubusercontent.com/u/9614759?v=3","gravatar_id":"","url":"https://api.github.com/users/GoogleCodeExporter","html_url":"https://github.com/GoogleCodeExporter","followers_url":"https://api.github.com/users/GoogleCodeExporter/followers","following_url":"https://api.github.com/users/GoogleCodeExporter/following{/other_user}","gists_url":"https://api.github.com/users/GoogleCodeExporter/gists{/gist_id}","starred_url":"https://api.github.com/users/GoogleCodeExporter/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/GoogleCodeExporter/subscriptions","organizations_url":"https://api.github.com/users/GoogleCodeExporter/orgs","repos_url":"https://api.github.com/users/GoogleCodeExporter/repos","events_url":"https://api.github.com/users/GoogleCodeExporter/events{/privacy}","received_events_url":"https://api.github.com/users/GoogleCodeExporter/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/chrsmith/bwapi/labels/auto-migrated","name":"auto-migrated","color":"ededed"},{"url":"https://api.github.com/repos/chrsmith/bwapi/labels/Component-Logic","name":"Component-Logic","color":"ededed"},{"url":"https://api.github.com/repos/chrsmith/bwapi/labels/Priority-High","name":"Priority-High","color":"ededed"},{"url":"https://api.github.com/repos/chrsmith/bwapi/labels/Type-Enhancement","name":"Type-Enhancement","color":"ededed"},{"url":"https://api.github.com/repos/chrsmith/bwapi/labels/Usability","name":"Usability","color":"ededed"}],"state":"closed","locked":false,"assignee":null,"milestone":null,"comments":0,"created_at":"2015-02-23T23:58:29Z","updated_at":"2015-02-23T23:58:29Z","closed_at":"2015-02-23T23:58:29Z","body":"```\n2 problems with buildings \"morphing\" to other buildings, such as a creep \ncolony transforming into a sunken.\n\nFirst, there's an inconsistancy with onMorph.  onMorph will usually get \ncalled when the building starts for zergs (e.g., when I start a spawning \npool).  However, it will get called when the building FINISHES if it was \nmorphed from an already existing building (so it will get called when the \nsunken is finished for instance).  On a side note, I'm not sure how it \nworks with other races, but shouldn't an event be launched both when a \nbuilding starts AND when a building finishes?  Well... even if it was a \ndesign decision to have an event launched only for one of those, it would \nbe nice if it could be consistent.\n\nThe second problem is that I have been unable to find how to get what \nbuilding it's morphing to.  If you call the \"getType()\" method on a creep \ncolony that is morphing into a sunken colony, it will \nreturn \"Zerg_Creep_Colony\".  If you then call \"getBuildType()\", it will \nreturn \"None\".  Maybe there's a method I've overlooked, but I would expect \nat least one of those, if not both would return \"Zerg_Sunken_Colony\".\n\n```\n\n-----\nOriginal issue reported on code.google.com by `PhilBell...@gmail.com` on 25 Mar 2010 at 2:08"}}