internal void Explore(RawMapExploration rpData)
        {
            PreviousNode = Node;
            if (PreviousNode != null)
            {
                PreviousNode.Event = null;
            }

            DirectionAngle = MapService.Instance.GetAngle(Map.ID, rpData.StartNode ?? Node?.ID ?? 0, rpData.Node);
            OnPropertyChanged(nameof(DirectionAngle));

            Node = new SortieNodeInfo(Map, rpData);
            OnPropertyChanged(nameof(Node));
            OnPropertyChanged(nameof(PreviousNode));
        }
        void InsertNodeInfo(int rpMapID, SortieNodeInfo rpNode)
        {
            using (var rCommand = Connection.CreateCommand())
            {
                rCommand.CommandText = "INSERT OR IGNORE INTO sortie_node(map, id, type, subtype) VALUES(@map, @id, @type, @subtype);";
                rCommand.Parameters.AddWithValue("@map", rpMapID);
                rCommand.Parameters.AddWithValue("@id", rpNode.ID);
                rCommand.Parameters.AddWithValue("@type", (int)rpNode.EventType);
                rCommand.Parameters.AddWithValue("@subtype", rpNode.EventSubType);

                rCommand.ExecuteNonQuery();
            }
        }
        internal void Explore(RawMapExploration rpData)
        {
            PreviousNode = Node;
            if (PreviousNode != null)
                PreviousNode.Event = null;

            DirectionAngle = MapService.Instance.GetAngle(Map.ID, rpData.StartNode ?? Node?.ID ?? 0, rpData.Node);
            OnPropertyChanged(nameof(DirectionAngle));

            Node = new SortieNodeInfo(Map, rpData);
            OnPropertyChanged(nameof(Node));
            OnPropertyChanged(nameof(PreviousNode));
        }