Preliminary new references, usings, and code changes to compile for KSP 1.1.
[AntennaRange.git] / ProtoAntennaRelay.cs
Andy Wilkinson
Andy Wilkinson
Andy Wilkinson
Andy Wilkinson
Andy Wilkinson
Andy Wilkinson
Andy Wilkinson
Andy Wilkinson
Andy Wilkinson


Andy Wilkinson

Andy Wilkinson
Andy Wilkinson


Andy Wilkinson



Andy Wilkinson




Andy Wilkinson




Andy Wilkinson
Andy Wilkinson


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
using System;
 
namespace AntennaRange
{
        /*
         * Wrapper class for ProtoPartModuleSnapshot extending AntennaRelay and implementing IAntennaRelay.
         * This is used for finding relays in unloaded Vessels.
         * */
        public class ProtoAntennaRelay : AntennaRelay, IAntennaRelay
        {
                protected ProtoPartModuleSnapshot snapshot;
 
                /// <summary>
                /// The maximum distance at which this transmitter can operate.
                /// </summary>
                /// <value>The max transmit distance.</value>
                public override float maxTransmitDistance
                {
                        get
                        {
                                double result;
                                Double.TryParse(snapshot.moduleValues.GetValue ("ARmaxTransmitDistance") ?? "0", out result);
                                return (float)result;
                        }
                }
 
                /// <summary>
                /// Gets a value indicating whether this <see cref="AntennaRange.ProtoDataTransmitter"/> has been checked during
                /// the current relay attempt.
                /// </summary>
                /// <value><c>true</c> if relay checked; otherwise, <c>false</c>.</value>
                public override bool relayChecked
                {
                        get
                        {
                                bool result;
                                Boolean.TryParse(this.snapshot.moduleValues.GetValue("relayChecked"), out result);
                                return result;
                        }
                        protected set
                        {
                                if (this.snapshot.moduleValues.HasValue("relayChecked"))
                                {
                                        this.snapshot.moduleValues.SetValue("relayChecked", value.ToString ());
                                }
                                else
                                {
                                        this.snapshot.moduleValues.AddValue("relayChecked", value);
                                }
                        }
                }
 
                /// <summary>
                /// Initializes a new instance of the <see cref="AntennaRange.ProtoAntennaRelay"/> class.
                /// </summary>
                /// <param name="ms">The ProtoPartModuleSnapshot to wrap</param>
                /// <param name="vessel">The parent Vessel</param>
                public ProtoAntennaRelay(ProtoPartModuleSnapshot ms, Vessel vessel) : base(vessel)
                {
                        this.snapshot = ms;
                }
        }
}