{"action":"created","issue":{"url":"https://api.github.com/repos/RemoteTechnologiesGroup/RemoteTech/issues/317","labels_url":"https://api.github.com/repos/RemoteTechnologiesGroup/RemoteTech/issues/317/labels{/name}","comments_url":"https://api.github.com/repos/RemoteTechnologiesGroup/RemoteTech/issues/317/comments","events_url":"https://api.github.com/repos/RemoteTechnologiesGroup/RemoteTech/issues/317/events","html_url":"https://github.com/RemoteTechnologiesGroup/RemoteTech/pull/317","id":54978473,"number":317,"title":"Add External Mod access","user":{"login":"SirDiazo","id":7245232,"avatar_url":"https://avatars.githubusercontent.com/u/7245232?v=3","gravatar_id":"","url":"https://api.github.com/users/SirDiazo","html_url":"https://github.com/SirDiazo","followers_url":"https://api.github.com/users/SirDiazo/followers","following_url":"https://api.github.com/users/SirDiazo/following{/other_user}","gists_url":"https://api.github.com/users/SirDiazo/gists{/gist_id}","starred_url":"https://api.github.com/users/SirDiazo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/SirDiazo/subscriptions","organizations_url":"https://api.github.com/users/SirDiazo/orgs","repos_url":"https://api.github.com/users/SirDiazo/repos","events_url":"https://api.github.com/users/SirDiazo/events{/privacy}","received_events_url":"https://api.github.com/users/SirDiazo/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":4,"created_at":"2015-01-21T05:10:14Z","updated_at":"2015-01-24T23:02:08Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/RemoteTechnologiesGroup/RemoteTech/pulls/317","html_url":"https://github.com/RemoteTechnologiesGroup/RemoteTech/pull/317","diff_url":"https://github.com/RemoteTechnologiesGroup/RemoteTech/pull/317.diff","patch_url":"https://github.com/RemoteTechnologiesGroup/RemoteTech/pull/317.patch"},"body":"External Mod Code access.\r\n\r\nA mod passes a config node to Remotech via code. After the signal delay has passed, Remotech then passes the same config node back to the external mod for the mod to activate. The code below assumes the mod will do all the processing, in this setup Remotetech is only serving as a signal delay on the command.\r\n\r\nUsing my AGX mod as a demo, here is the code in AGX to pass the configNode to Remotetech:\r\nhttps://github.com/SirDiazo/AGExt/blob/master/AGExt/Flight.cs#L1571\r\n\r\nIn the ConfigNode passed, RemoteTech then pulls out the data it needs, Line 101 -105 in Remotetech.API, to make the ICommand to pass to the flight computer.\r\n\r\nAfter the delay has passed, RemoteTech passes the ConfigNode back to the external mod under it's Pop method. Remotetech knows where to send the ConfigNode to by using the reflectionGetType and reflectionInvokeMember strings from the confignode when the mod originally passed it to remotetech.\r\n\r\nIn my test case, it targets this method in AGX.\r\nhttps://github.com/SirDiazo/AGExt/blob/master/AGExt/External.cs#L584\r\n\r\nNote the target name and method I passed to RemoteTech in the config node as the two reflection string values.\r\n\r\nNote I have not extensively tested this, there seems to be something odd when trying to add extra time onto the signal delay via the number in the bottom of the flight computer window, but it throws no errors and the basic functionatiliy works.\r\n\r\nAlso note I have made no save/load provisions, this command is probably lost if you switch vessels or leave the flight scene at the moment. (I couldn't get my head around save/load in my time tonight, any suggestions?)\r\n\r\nDoes this code make sense, and does it work with your current code setup?\r\n\r\nAlso, currently the UI button is double height for some reason, what is going on here?\r\nhttp://imgur.com/HjpJ0rj"},"comment":{"url":"https://api.github.com/repos/RemoteTechnologiesGroup/RemoteTech/issues/comments/71341974","html_url":"https://github.com/RemoteTechnologiesGroup/RemoteTech/pull/317#issuecomment-71341974","issue_url":"https://api.github.com/repos/RemoteTechnologiesGroup/RemoteTech/issues/317","id":71341974,"user":{"login":"Peppie23","id":7722222,"avatar_url":"https://avatars.githubusercontent.com/u/7722222?v=3","gravatar_id":"","url":"https://api.github.com/users/Peppie23","html_url":"https://github.com/Peppie23","followers_url":"https://api.github.com/users/Peppie23/followers","following_url":"https://api.github.com/users/Peppie23/following{/other_user}","gists_url":"https://api.github.com/users/Peppie23/gists{/gist_id}","starred_url":"https://api.github.com/users/Peppie23/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Peppie23/subscriptions","organizations_url":"https://api.github.com/users/Peppie23/orgs","repos_url":"https://api.github.com/users/Peppie23/repos","events_url":"https://api.github.com/users/Peppie23/events{/privacy}","received_events_url":"https://api.github.com/users/Peppie23/received_events","type":"User","site_admin":false},"created_at":"2015-01-24T23:02:08Z","updated_at":"2015-01-24T23:02:08Z","body":"Hi @SirDiazo ,\r\ncan you only revert the HintPaths on the *.csproj File?\r\n\r\nYeah the documentation ... The best place would be the gh-pages but we also have to update these for v1.6, so i think the best way is if we wait until our update for v1.6 is done."}}