Any update? I have a ground vessel or two that I want to try to add this in
#pragma comment(lib, "oMMU_API")
int LER2016::clbkConsumeBufferedKey(DWORD key, bool down, char *kstate) {
// only process keydown events
if (!down) return 0;
if (key == OAPI_KEY_4) { // rotate-
TURN_STATE = 1;
return 1;
}
if (key == OAPI_KEY_3) { // WHEELLOCK
if (WHEELLOCK == 0) WHEELLOCK = 1;
else WHEELLOCK = 0;
return 1;
}
if (key == OAPI_KEY_V) {
SelectCockpitView(CAM);
CAM = CAM + 1;
if (CAM > 4) CAM = 0;
return 1;
}
if (key == OAPI_KEY_E)
{
SeparateMMU();
}
if (key == OAPI_KEY_J)
{
ENTER_EVA1();
}
if (key == OAPI_KEY_7)
{
if (lighton == 0) lighton = 1;
else lighton = 0;
return 1;
}
//ommu//
if (key == OAPI_KEY_J) {
oMMU_API::oMMUCrew newMember;
newMember.age = 22;
newMember.role = "Capt";
newMember.name = "Jane Doe";
newMember.pulse = 124;
newMember.weight = 140;
newMember.evaMesh = "blah.msh"; // TODO : Change this to your mesh.
crew->AddCrew(newMember);
}
else if (key == OAPI_KEY_E) {
crew->BeginEVA(selectedSlot, 0, true);
}
if (key == OAPI_KEY_1) {
selectedSlot--;
if (selectedSlot < 1)
selectedSlot = crewLimit;
}
if (key == OAPI_KEY_2) {
selectedSlot++;
if (selectedSlot > crewLimit)
selectedSlot = 1;
}
return 0;
}
bool LER2016::clbkDrawHUD(int mode, const HUDPAINTSPEC *hps, oapi::Sketchpad *skp)
{
// draw the default HUD
VESSEL3::clbkDrawHUD(mode, hps, skp);
int s = hps->H;
double d = (s*0.00130208);
int sw = ((hps->W));
int lw = (int)(16 * sw / 1024);
int lwoffset = sw - (18 * lw);
int hlw = (int)(lw / 2);
int roxl = 0;
int royl = 0;
int roy2 = 0;
double ds = s;
double dsw = sw;
double sc_ratio = ds / dsw;
if (sc_ratio < 0.7284)
{
roxl = (lw * 10);
royl = (int)(-88 * d);
roy2 = (int)(-70 * d);
}
int wd = (int)(152 * d);
int wc = (int)(168 * d);
int w0 = (int)(184 * d);
int w1 = (int)(200 * d);
int w2 = (int)(216 * d);
int w3 = (int)(232 * d);
int w4 = (int)(248 * d);
int w5 = (int)(264 * d);
int w6 = (int)(280 * d);
int w7 = (int)(296 * d);
int w8 = (int)(312 * d);
int w9 = (int)(328 * d);
int w10 = (int)(344 * d);
int w11 = (int)(360 * d);
{
skp->SetTextColor(0x0066FF66);
char abuf[256];
sprintf(abuf, "Current Ground Speed %0.2f", targetSpeed);
skp->Text((10 + roxl), (w9 + royl), abuf, strlen(abuf));
}
{
skp->SetTextColor(0x0066FF66);
char abuf[256];
sprintf(abuf, "Turn Angle: %d", (TurnANGLE));
skp->Text((10 + roxl), (w10 + royl), abuf, strlen(abuf));
}
CString cbuf;
auto lhs = hps->W * 0.1;
auto top = hps->H * 0.3;
skp->Text(lhs, top, "Selected crew member: ", 23);
oMMUCrew selectedMember;
auto crewStatus = crew->GetCrewState(selectedSlot, selectedMember);
if (crewStatus == oMMUStatus::OK) {
cbuf.Format("(Slot %i of %i) %s %s", selectedSlot, crewLimit, selectedMember.role.GetBuffer(), selectedMember.name.GetBuffer());
selectedMember.role.ReleaseBuffer();
selectedMember.name.ReleaseBuffer();
}
else {
cbuf.Format("(Slot %i of %i) <<EMPTY>>", selectedSlot, crewLimit);
}
skp->Text(lhs, top + 16, cbuf.GetString(), cbuf.GetLength());
skp->Text(lhs, top + 32, "E - Begin EVA, 1 - Previous Seat, 2 - Next Seat, J - Add Crew Member", 69);
return true;
}
class LER2016 : public VESSEL3 {
public:
LER2016(OBJHANDLE hObj, int fmodel);
...
private:
oMMU *crew;
int selectedSlot = 1;
int crewLimit = 3;
};
/*** Orbiter MMU API ***/
/* Part of the Orbiter MMU package - Version 1
*
* Copyright 2017-2019 Adam "Woo482" Maudsley
* All rights reserved. Do not redestribute.
*/
I know that there was a add on that added UMMU to a vessel outside of the code.
if (key == OAPI_KEY_J) {
oMMU_API::oMMUCrew newMember;
newMember.age = 22;
newMember.role = "Capt";
newMember.name = "Jane Doe";
newMember.pulse = 124;
newMember.weight = 140;
newMember.evaMesh = "blah.msh"; // TODO : Change this to your mesh.
crew->AddCrew(newMember);
}