Esempio n. 1
0
        public override void run(double dt)
        {
            bool resultx = true;
            bool resulty = true;
            bool resultz = true;

            if (CountTime(dt))
            {
                return;
            }
            var device = new ActionDevice(node);

            switch (step)
            {
            case 0:
                if (injects == null)
                {
                    if (x)
                    {
                        resultx = device.InitX();
                    }
                    if (y)
                    {
                        resulty = device.InitY();
                    }
                    if (z)
                    {
                        resultz = device.InitZ();
                    }
                }
                else
                {
                    if (x)
                    {
                        resultx = device.InitX();
                    }
                    if (y)
                    {
                        resulty = device.InitY(injects);
                    }
                    if (z)
                    {
                        resultz = device.InitZ(injects);
                    }
                }
                if (resultx && resulty && resultz)
                {
                    step++;
                }
                break;

            case 1:
                if (injects == null)
                {
                    if (xdone == false)
                    {
                        xdone = device.DoneX();
                    }
                    if (ydone == false)
                    {
                        ydone = device.DoneY();
                    }
                    if (zdone == false)
                    {
                        zdone = device.DoneZ();
                    }
                }
                else
                {
                    if (xdone == false)
                    {
                        xdone = device.DoneX();
                    }
                    if (ydone == false)
                    {
                        ydone = device.DoneY(injects);
                    }
                    if (zdone == false)
                    {
                        zdone = device.DoneZ(injects);
                    }
                }

                isfinish = xdone && ydone && zdone;
                break;
            }
        }