private string?MapPoint(TokenTextPoint point, TiledTextPart part)
        {
            int rowIndex  = point.Y - 1;
            int tileIndex = point.X - 1;

            if (rowIndex >= part.Rows.Count)
            {
                Logger?.LogError($"Location point {point} out of part's rows");
                return(null);
            }

            if (tileIndex >= part.Rows[rowIndex].Tiles.Count)
            {
                Logger?.LogError($"Location point {point} out of part's row tiles");
                return(null);
            }

            if (!part.Rows[rowIndex].Tiles[tileIndex].Data.ContainsKey("id"))
            {
                Logger?.LogError($"Location point {point} maps to tile without id");
                return(null);
            }

            return(part.Rows[rowIndex].Tiles[tileIndex].Data["id"]);
        }
Exemple #2
0
        public void CompareTo_YGreater_Gt0()
        {
            TokenTextPoint a = TokenTextPoint.Parse("2.3");
            TokenTextPoint b = TokenTextPoint.Parse("1.4");

            Assert.True(a.CompareTo(b) > 0);
        }
Exemple #3
0
        public void CompareTo_RunGreater_Gt0()
        {
            TokenTextPoint a = TokenTextPoint.Parse("1.3@4x2");
            TokenTextPoint b = TokenTextPoint.Parse("1.3@4x1");

            Assert.True(a.CompareTo(b) > 0);
        }
Exemple #4
0
        public void CompareTo_YXAtRunEqual_0()
        {
            TokenTextPoint a = TokenTextPoint.Parse("1.2@3x4");
            TokenTextPoint b = TokenTextPoint.Parse("1.2@3x4");

            Assert.Equal(0, a.CompareTo(b));
        }
Exemple #5
0
        public void CompareTo_RunLess_Lt0()
        {
            TokenTextPoint a = TokenTextPoint.Parse("1.3@4x1");
            TokenTextPoint b = TokenTextPoint.Parse("1.3@4x2");

            Assert.True(a.CompareTo(b) < 0);
        }
Exemple #6
0
        public void CompareTo_YLess_Lt0()
        {
            TokenTextPoint a = TokenTextPoint.Parse("1.4");
            TokenTextPoint b = TokenTextPoint.Parse("2.3");

            Assert.True(a.CompareTo(b) < 0);
        }
Exemple #7
0
        public void Parse_YX_Ok()
        {
            TokenTextPoint pt = TokenTextPoint.Parse("12.34");

            Assert.Equal(12, pt.Y);
            Assert.Equal(34, pt.X);
            Assert.Equal(0, pt.At);
            Assert.Equal(0, pt.Run);
        }
Exemple #8
0
        public void Parse_YXAtRun_Ok()
        {
            TokenTextPoint pt = TokenTextPoint.Parse("12.34@3x2");

            Assert.Equal(12, pt.Y);
            Assert.Equal(34, pt.X);
            Assert.Equal(3, pt.At);
            Assert.Equal(2, pt.Run);
        }