コード例 #1
0
        private void CreateDisplayEventForLocation(EntryLocation l)
        {
            DisplayEvent de = new DisplayEvent()
            {
                Text      = $"Location: {l.StarSystem}",
                EventType = DisplayEventType.ShipPiloting,
                Symbol1   = '\xf3c5', // map-marker-alt
            };

            this.receiver.Events.Add(de);
        }
コード例 #2
0
        private void CreateDisplayEventForDocked(EntryDocked docked)
        {
            DisplayEvent de = new DisplayEvent()
            {
                Text           = $"Docked at {docked.StationName} ({docked.StationType})",
                EventType      = DisplayEventType.ShipPiloting,
                Symbol1        = '\xf5af', // plane-arrival
                Symbol1Tooltip = "docked",
            };

            this.receiver.Events.Add(de);
        }
コード例 #3
0
        private void CreateDisplayEventForUndocked(EntryUndocked ud)
        {
            DisplayEvent de = new DisplayEvent()
            {
                Text           = $"Undocked from {ud.StationName}",
                EventType      = DisplayEventType.ShipPiloting,
                Symbol1        = '\xf5b0', // plane-departure
                Symbol1Tooltip = "undocked",
            };

            this.receiver.Events.Add(de);
        }
コード例 #4
0
        private void CreateDisplayEventForScanDetailed(EntryScanDetailed ds)
        {
            DisplayEvent de = new DisplayEvent()
            {
                Text          = $"Scanned {ds.BodyName} ({ds.PlanetClass}) {ds.WasDiscovered} {ds.WasMapped} {ds.TerraformState} {ds.Landable}",
                EventType     = DisplayEventType.Scan,
                IsHighlighted = Logic.IsHighlightedScan(ds),
            };

            if (ds.WasDiscovered == false)
            {
                de.Symbol2        = '\xf890'; // sparkles
                de.Symbol2Tooltip = "undiscovered!";
            }
            if (Logic.IsTerraformable(ds))
            {
                de.Symbol1        = '\xf7a2'; // globe-europe
                de.Symbol1Tooltip = "terraformable!";
            }
            if (Logic.IsWaterworld(ds))
            {
                de.Symbol1        = '\xf7a2';
                de.Symbol1Tooltip = "water world";
                if (de.Symbol2.IsDefaultOrWhitespace())
                {
                    de.Symbol2        = '\xf773'; // water
                    de.Symbol2Tooltip = "water world";
                }
            }
            else if (Logic.IsEarthlike(ds))
            {
                de.Symbol1        = '\xf7a2';
                de.Symbol1Tooltip = "earth-like";
                if (de.Symbol2.IsDefaultOrWhitespace())
                {
                    de.Symbol2        = '\xf6bb'; // campground
                    de.Symbol2Tooltip = "earth-like";
                }
            }
            else if (Logic.IsAmmoniaWorld(ds))
            {
                de.Symbol1        = '\xf7a2';
                de.Symbol1Tooltip = "ammonia world";
                if (de.Symbol2.IsDefaultOrWhitespace())
                {
                    de.Symbol2        = '\xf7fa'; // disease
                    de.Symbol2Tooltip = "ammonia world";
                }
            }
            de.IsBoring = (!de.IsHighlighted) && (ds.WasDiscovered);
            this.receiver.Events.Add(de);
        }
コード例 #5
0
        private void CreateDisplayEventForJump(EntryFsdJump j)
        {
            DisplayEvent de = new DisplayEvent()
            {
                Text           = $"Jumped to {j.StarSystem} ({j.JumpDist}ly dist, {j.FuelUsed}t fuel)",
                EventType      = DisplayEventType.ShipPiloting,
                Symbol1        = '\xf6b0', // alicorn
                Symbol1Tooltip = "jump",
            };

            this.receiver.Events.Add(de);
            this.receiver.FuelLevel = j.FuelLevel;
        }
コード例 #6
0
        private void CreateDisplayEventForScanAuto(EntryScanAutoScan @as)
        {
            DisplayEvent de = new DisplayEvent()
            {
                Text      = $"Auto-Scanned {@as.BodyName} {@as.WasDiscovered} {@as.WasMapped}",
                EventType = DisplayEventType.Scan,
            };

            if (@as.WasDiscovered == false)
            {
                de.IsHighlighted  = true;
                de.Symbol2        = '\xf890'; // sparkles
                de.Symbol2Tooltip = "undiscovered!";
            }
            else
            {
                de.IsBoring = true;
            }
            this.receiver.Events.Add(de);
        }
コード例 #7
0
 private string GetRootText(DisplayEvent de)
 {
     return(de.EventType.ToString());
 }
コード例 #8
0
 private string GetSymbol1Text(DisplayEvent de)
 {
     return(de.Symbol1Tooltip);
 }