void Atlantis::CreateFRCS(const VECTOR3 &ref_pos)
{
//=================================================================================================
// Downwards firing thrusters
//=================================================================================================
if(thManFRCS1[RCS_F1D] == NULL) {
thManFRCS1[RCS_F1D] = CreateThruster (ref_pos + RCS_F1D_OFS, RCS_F1D_DIR, ORBITER_RCS_THRUST, ph_frcs, ORBITER_RCS_ISP0,
ORBITER_RCS_ISP1);
AddPrimaryRCSExhaust(thManFRCS1[RCS_F1D]);
}
if(thManFRCS2[RCS_F2D] == NULL) {
thManFRCS2[RCS_F2D] = CreateThruster (ref_pos + RCS_F2D_OFS, RCS_F2D_DIR, ORBITER_RCS_THRUST, ph_frcs, ORBITER_RCS_ISP0,
ORBITER_RCS_ISP1);
AddPrimaryRCSExhaust(thManFRCS2[RCS_F2D]);
}
if(thManFRCS3[RCS_F3D] == NULL) {
thManFRCS3[RCS_F3D] = CreateThruster (ref_pos + RCS_F3D_OFS, RCS_F3D_DIR, ORBITER_RCS_THRUST, ph_frcs, ORBITER_RCS_ISP0,
ORBITER_RCS_ISP1);
AddPrimaryRCSExhaust(thManFRCS3[RCS_F3D]);
}
if(thManFRCS4[RCS_F4D] == NULL) {
thManFRCS4[RCS_F4D] = CreateThruster (ref_pos + RCS_F4D_OFS, RCS_F4D_DIR, ORBITER_RCS_THRUST, ph_frcs, ORBITER_RCS_ISP0,
ORBITER_RCS_ISP1);
AddPrimaryRCSExhaust(thManFRCS4[RCS_F4D]);
}
//=================================================================================================
// Upwards firing thrusters
//=================================================================================================
if(thManFRCS1[RCS_F1U] == NULL) {
thManFRCS1[RCS_F1U] = CreateThruster (ref_pos + RCS_F1U_OFS, RCS_F1U_DIR, ORBITER_RCS_THRUST, ph_frcs, ORBITER_RCS_ISP0,
ORBITER_RCS_ISP1);
AddPrimaryRCSExhaust(thManFRCS1[RCS_F1U]);
}
if(thManFRCS2[RCS_F2U] == NULL) {
thManFRCS2[RCS_F2U] = CreateThruster (ref_pos + RCS_F2U_OFS, RCS_F2U_DIR, ORBITER_RCS_THRUST, ph_frcs, ORBITER_RCS_ISP0,
ORBITER_RCS_ISP1);
AddPrimaryRCSExhaust(thManFRCS2[RCS_F2U]);
}
if(thManFRCS3[RCS_F3U] == NULL) {
thManFRCS3[RCS_F3U] = CreateThruster (ref_pos + RCS_F3U_OFS, RCS_F3U_DIR, ORBITER_RCS_THRUST, ph_frcs, ORBITER_RCS_ISP0,
ORBITER_RCS_ISP1);
AddPrimaryRCSExhaust(thManFRCS3[RCS_F3U]);
}
//=================================================================================================
// Left firing thrusters
//=================================================================================================
if(thManFRCS1[RCS_F1L] == NULL) {
thManFRCS1[RCS_F1L] = CreateThruster (ref_pos + RCS_F1L_OFS, RCS_F1L_DIR, ORBITER_RCS_THRUST, ph_frcs, ORBITER_RCS_ISP0,
ORBITER_RCS_ISP1);
AddPrimaryRCSExhaust(thManFRCS1[RCS_F1L]);
}
if(thManFRCS2[RCS_F3L] == NULL) {
thManFRCS2[RCS_F3L] = CreateThruster (ref_pos + RCS_F3L_OFS, RCS_F3L_DIR, ORBITER_RCS_THRUST, ph_frcs, ORBITER_RCS_ISP0,
ORBITER_RCS_ISP1);
AddPrimaryRCSExhaust(thManFRCS2[RCS_F3L]);
}
//=================================================================================================
// Right firing thrusters
//=================================================================================================
if(thManFRCS1[RCS_F2R] == NULL) {
thManFRCS1[RCS_F2R] = CreateThruster (ref_pos + RCS_F2R_OFS, RCS_F2R_DIR, ORBITER_RCS_THRUST, ph_frcs, ORBITER_RCS_ISP0,
ORBITER_RCS_ISP1);
AddPrimaryRCSExhaust(thManFRCS1[RCS_F2R]);
}
if(thManFRCS2[RCS_F4R] == NULL) {
thManFRCS2[RCS_F4R] = CreateThruster (ref_pos + RCS_F4R_OFS, RCS_F4R_DIR, ORBITER_RCS_THRUST, ph_frcs, ORBITER_RCS_ISP0,
ORBITER_RCS_ISP1);
AddPrimaryRCSExhaust(thManFRCS2[RCS_F4R]);
}
//=================================================================================================
// Forwards firing thrusters
//=================================================================================================
if(thManFRCS1[RCS_F1F] == NULL) {
thManFRCS1[RCS_F1F] = CreateThruster (ref_pos + RCS_F1F_OFS, RCS_F1F_DIR, ORBITER_RCS_THRUST, ph_frcs, ORBITER_RCS_ISP0,
ORBITER_RCS_ISP1);
AddPrimaryRCSExhaust(thManFRCS1[RCS_F1F]);
}
if(thManFRCS2[RCS_F2F] == NULL) {
thManFRCS2[RCS_F2F] = CreateThruster (ref_pos + RCS_F2F_OFS, RCS_F2F_DIR, ORBITER_RCS_THRUST, ph_frcs, ORBITER_RCS_ISP0,
ORBITER_RCS_ISP1);
AddPrimaryRCSExhaust(thManFRCS2[RCS_F2F]);
}
if(thManFRCS3[RCS_F3F] == NULL) {
thManFRCS3[RCS_F3F] = CreateThruster (ref_pos + RCS_F3F_OFS, RCS_F3F_DIR, ORBITER_RCS_THRUST, ph_frcs, ORBITER_RCS_ISP0,
ORBITER_RCS_ISP1);
AddPrimaryRCSExhaust(thManFRCS3[RCS_F3F]);
}
}