private void OnTelescopeScience(TSTSpaceTelescope.TargetableObject lookingAt) { if (target.name == lookingAt.name) { SetComplete(); } }
public static void setTelescopeContractComplete(TSTSpaceTelescope.TargetableObject body) { Instance.TelescopeData[body.name] = true; }
public static bool HasTelescopeCompleted(TSTSpaceTelescope.TargetableObject body) { return !isActive || Instance.TelescopeData[body.name]; }
public static void OnTelescopePicture(TSTSpaceTelescope.TargetableObject body) { if (isActive) { List<TelescopeListener> listeners = new List<TelescopeListener>(Instance.TelescopeListeners); foreach (TelescopeListener listener in listeners) { listener(body); } } }
public static Contract.ContractPrestige getTelescopePrestige(TSTSpaceTelescope.TargetableObject body) { double distance = 0f; if (body.type == typeof(TSTGalaxy)) { Vector3d bodyPos = body.position; CelestialBody HmePlanet = Planetarium.fetch.Home; Vector3d hmeplntPos = HmePlanet.getPositionAtUT(0); distance = Math.Sqrt(Math.Pow(bodyPos.x - hmeplntPos.x, 2) + Math.Pow(bodyPos.y - hmeplntPos.y, 2) + Math.Pow(bodyPos.z - hmeplntPos.z, 2)); } else { distance = Utilities.DistanceFromHomeWorld(body.name); } if (distance < 13000000000) { return Contract.ContractPrestige.Trivial; } if (distance < 20000000000) { return Contract.ContractPrestige.Significant; } return Contract.ContractPrestige.Exceptional; }