public override string CallBase()
        {
            var x   = (ProvidedArgs.First("intX"));
            var y   = (ProvidedArgs.First("intY"));
            var dur = (ProvidedArgs.First("duration"));

            if (x == null || y == null || dur == null)
            {
                Compiler.ExceptionListener.Throw(new ExceptionHandler(ExceptionType.NullReferenceException,
                                                                      $"The function [{this.Name}] requires [{ExpectedArgs.Length}] TNumber arguments", LineValue));
                return(null);
            }
            double intX     = double.Parse(x.ToString());
            double intY     = double.Parse(y.ToString());
            double duration = double.Parse(dur.ToString());

            if (Main.AndroidDriver == null)
            {
                Main.IO.Print($"[DRIVERLESS] LongTouch x:{intX} y:{intY} duration:{duration}");
            }
            else
            {
                Commands.LongTap((int)intX, (int)intY, (int)duration);
            }
            double sleep = TokenParser.SleepDefaultTime;

            if (ProvidedArgs.List.Count > 3)
            {
                sleep = double.Parse((ProvidedArgs.First("sleep").ToString()));
            }
            FunctionHelpers.Sleep(sleep, Caller);
            return("");
        }
Beispiel #2
0
        public override string CallBase()
        {
            var x = (ProvidedArgs.First("intX"));
            var y = (ProvidedArgs.First("intY"));

            if (x == null || y == null)
            {
                Compiler.ExceptionListener.Throw(new ExceptionHandler(ExceptionType.NullReferenceException,
                                                                      $"The function [{this.Name}] requires [{ExpectedArgs.Length}] arguments", LineValue));
                return("");
            }
            double intX = 0;
            bool   tryX = double.TryParse(x.ToString(), out intX);
            double intY = 0;
            bool   tryY = double.TryParse(y.ToString(), out intY);

            if (!tryX || !tryY)
            {
                Compiler.ExceptionListener.Throw($"Cannot get numbers from [{x.ToString()},{y.ToString()}]");
                return("");
            }
            if (Main.AndroidDriver == null)
            {
                Main.IO.Print($"[DRIVERLESS] Touch x:{intX} y:{intY}");
            }
            else
            {
                Commands.Tap((int)intX, (int)intY);
            }
            double sleep = TokenParser.SleepDefaultTime;

            if (ProvidedArgs.List.Count > 2)
            {
                sleep = 0;
                bool trySleep = double.TryParse(ProvidedArgs.First("sleep").ToString(), out sleep);
                if (!trySleep)
                {
                    Compiler.ExceptionListener.Throw($"Cannot get numbers from [{ProvidedArgs.First("sleep").ToString()}]");
                    return("");
                }
            }
            FunctionHelpers.Sleep(sleep, Caller);
            return("");
        }
Beispiel #3
0
        public override string CallBase()
        {
            var x1  = (ProvidedArgs.First("intX1"));
            var y1  = (ProvidedArgs.First("intY1"));
            var x2  = (ProvidedArgs.First("intX2"));
            var y2  = (ProvidedArgs.First("intY2"));
            var dur = (ProvidedArgs.First("duration"));

            if (x1 == null || y1 == null || x2 == null || y2 == null || dur == null)
            {
                Compiler.ExceptionListener.Throw(new ExceptionHandler(ExceptionType.NullReferenceException,
                                                                      $"The function [{this.Name}] requires [{ExpectedArgs.Length}] TNumber arguments", LineValue));
                return(null);
            }
            double intX1    = double.Parse(x1.ToString());
            double intY1    = double.Parse(y1.ToString());
            double intX2    = double.Parse(x2.ToString());
            double intY2    = double.Parse(y2.ToString());
            double duration = double.Parse(dur.ToString());

            if (Main.AndroidDriver == null)
            {
                Main.IO.Print($"[DRIVERLESS] LongTouch x1:{intX1} y1:{intY1} x2:{intX2} y2:{intY2} duration:{duration}");
            }
            else
            {
                Commands.Swipe((int)intX1, (int)intY1, (int)intX2, (int)intY2, (int)duration);
            }
            double sleep = TokenParser.SleepDefaultTime;

            if (ProvidedArgs.List.Count > 5)
            {
                sleep = double.Parse((ProvidedArgs.First("sleep")).ToString());
            }
            FunctionHelpers.Sleep(sleep, Caller);
            return("");
        }