public ReadResults ReadDouble(out WorldCoordinate result) { result = default; if (!StringReader.CanRead()) { return(ReadResults.Failure(CommandError.ExpectedCoordinate().WithContext(StringReader))); } if (StringReader.Peek() == '^') { return(ReadResults.Failure(CommandError.MixedCoordinateType().WithContext(StringReader))); } bool isRelative = IsRelative(); int start = StringReader.GetCursor(); if (StringReader.AtEndOfArgument() || (UseBedrock && !IsNumberPart(StringReader.Peek()))) { result = new WorldCoordinate(isRelative ? 0.0d : 0.5d, isRelative); return(ReadResults.Success()); } ReadResults readResults = StringReader.ReadDouble(out double value); if (!readResults.Successful) { return(readResults); } string number = StringReader.GetString()[start..StringReader.GetCursor()];
private ReadResults ReadDouble(out double result) { result = default; if (!StringReader.CanRead()) { return(ReadResults.Failure(CommandError.ExpectedCoordinate().WithContext(StringReader))); } if (StringReader.Peek() != '^') { return(ReadResults.Failure(CommandError.MixedCoordinateType().WithContext(StringReader))); } StringReader.Skip(); if (StringReader.AtEndOfArgument() || (UseBedrock && !IsNumberPart(StringReader.Peek()))) { result = 0.0d; return(ReadResults.Success()); } else { return(StringReader.ReadDouble(out result)); } }