AIMA.Environment.CellWorld.CellWorldAction.getXResult C# (CSharp) Метод

getXResult() публичный метод

public getXResult ( int curX ) : int
curX int
Результат int
    public int getXResult(int curX)
    {
        int newX = curX;

        switch (this._action)
        {
            case ActionEnum.Left:
                newX--;
                break;
            case ActionEnum.Right:
                newX++;
                break;
        }

        return newX;
    }

Usage Example

Пример #1
0
        /**
         * Determine what cell would be moved into if the specified action is
         * performed in the specified cell. Normally, this will be the cell adjacent
         * in the appropriate direction. However, if there is no cell in the
         * adjacent direction of the action then the outcome of the action is to
         * stay in the same cell as the action was performed in.
         *
         * @param s
         *            the cell location from which the action is to be performed.
         * @param a
         *            the action to perform (Up, Down, Left, or Right).
         * @return the Cell an agent would end up in if they performed the specified
         *         action from the specified cell location.
         */

        public Cell <C> result(Cell <C> s, CellWorldAction a)
        {
            Cell <C> sDelta = getCellAt(a.getXResult(s.getX()), a.getYResult(s
                                                                             .getY()));

            if (null == sDelta)
            {
                // Default to no effect
                // (i.e. bumps back in place as no adjoining cell).
                sDelta = s;
            }

            return(sDelta);
        }