public SatSettingNode(ProtoPartModuleSnapshot s, Vessel v, ProtoPartSnapshot sn) { this.protoPartModule = s; this.vessel = v; this.snapshot = sn; isLoaded = false; ConfigNode n = new ConfigNode(); protoPartModule.Save(n); if (n.HasValue("pointedAt")) this.pointedAt = new Target(n.GetValue("pointedAt")); else this.pointedAt = new Target(); if (n.HasValue("dishRange")) this.dishRange = float.Parse(n.GetValue("dishRange")); else this.dishRange = 0; if (n.HasValue("antennaName")) this.antennaName = n.GetValue("antennaName"); for (int i = 0; i < RTGlobals.targets.Count; i++) { if (pointedAt.Equals(RTGlobals.targets[i])) { selectedTarget = i; break; } } }
public SatSettingNode(PartModule m) { this.partModule = m; isLoaded = true; if (RTUtils.containsField(partModule, "pointedAt")) this.pointedAt = new Target((string)partModule.Fields.GetValue("pointedAt")); else this.pointedAt = new Target(); if (RTUtils.containsField(partModule, "dishRange")) this.dishRange = (float)partModule.Fields.GetValue("dishRange"); else this.dishRange = 0; if (RTUtils.containsField(partModule, "antennaName")) this.antennaName = (string)partModule.Fields.GetValue("antennaName"); for (int i = 0; i < RTGlobals.targets.Count; i++) { if (pointedAt.Equals(RTGlobals.targets[i])) { selectedTarget = i; break; } } }
public void UpdatePA() { target = new Target(pointedAt); string targetName = target.GUIname; if (this.dishRange > 0) { if (Events["setTarget"].active) { Events["setTarget2"].guiName = "Target: " + targetName; Events["OverrideTarget2"].guiName = "Override " + Events["setTarget2"].guiName; Events["setTarget"].active = Events["OverrideTarget"].active = false; Events["setTarget2"].active = Events["OverrideTarget2"].active = true; } else { Events["setTarget"].guiName = "Target: " + targetName; Events["OverrideTarget"].guiName = "Override " + Events["setTarget"].guiName; Events["setTarget"].active = Events["OverrideTarget"].active = true; Events["setTarget2"].active = Events["OverrideTarget2"].active = false; } } else { Events["setTarget"].active = Events["OverrideTarget"].active = Events["setTarget2"].active = Events["OverrideTarget2"].active = false; } if (!showStats) { Fields["Dish_Range"].guiActive = Fields["Antenna_Range"].guiActive = false; return; } if (dishRange > 0) { Dish_Range = RTUtils.length(dishRange * 1000) + "m"; Fields["Dish_Range"].guiName = ""; if (showAntennaName) Fields["Dish_Range"].guiName += antennaName; if (showType) Fields["Dish_Range"].guiName += showAntennaName ? " dish " : "Dish "; Fields["Dish_Range"].guiName += (showAntennaName || showType) ? "range" : "Range"; Fields["Dish_Range"].guiActive = true; } else Fields["Dish_Range"].guiActive = false; if (this.antennaRange > 0) { Antenna_Range = RTUtils.length(antennaRange * 1000) + "m"; Fields["Antenna_Range"].guiName = ""; if (showAntennaName) Fields["Antenna_Range"].guiName += antennaName; if (showType) Fields["Antenna_Range"].guiName += showAntennaName ? " antenna " : "Antenna "; Fields["Antenna_Range"].guiName += (showAntennaName || showType) ? "range" : "Range"; Fields["Antenna_Range"].guiActive = true; } else Fields["Antenna_Range"].guiActive = false; }
public void ListTargets() { GUIStyle myskin = new GUIStyle(GUI.skin.textField); myskin.fontStyle = FontStyle.Bold; myskin.normal.textColor = Color.white; myskin.onNormal.textColor = Color.white; myskin.onHover.textColor = Color.white; myskin.onFocused.textColor = Color.white; myskin.onActive.textColor = Color.white; foreach (Target t in RTGlobals.targets) { if (t.isPlanet) myskin.fontStyle = FontStyle.Bold; else myskin.fontStyle = FontStyle.Normal; myskin.normal.textColor = t.color; if (GUILayout.Button( t == this.pointedAt ? t.GUIListname+" <": t.GUIListname, myskin)) this.pointedAt = t; } }
public bool Equals(Target other) { if (this.emptytarget && other.emptytarget) return true; if (this.node != null && other.node != null) return this.node.ID.Equals(other.node.ID); else return (this.referenceBody != null && other.referenceBody != null && this.referenceBody == other.referenceBody); }