Ejemplo n.º 1
0
    //移动到某个位置
    public void moveTo(GridID v, bool isCmd)
    {
        if (baseUnit.dead)
        {
            return;
        }

        if (baseUnit.sta == STU.down)
        {
            return;
        }

        ai = AI.moveTo;
        op = OP.moving;

        stopMove();

        baseUnit.targetGrid = v;

        PathFind.Instance.FindPath(GSceneMap.Instance.nodeFromGrid(baseUnit.grid), GSceneMap.Instance.nodeFromGrid(baseUnit.targetGrid), ref path);

        if (isCmd)
        {
            reason = AIR.cmd;
            tick   = m_tickMax;
        }
    }
Ejemplo n.º 2
0
    public static GridID operator +(GridID lhs, GridID rhs)
    {
        GridID result = new GridID(lhs.x, lhs.y);

        result.x += rhs.x;
        result.y += rhs.y;
        return(result);
    }
Ejemplo n.º 3
0
 public Node(bool _block, Vector3 _worldPosition, GridID _gridId)
 {
     block         = _block;
     worldPosition = _worldPosition;
     gridId        = _gridId;
     m_grass       = default(grass);
     m_tree        = default(tree);
 }
Ejemplo n.º 4
0
    public unitBase(int _type, int _tid) : base(_type, _tid)
    {
        iAttr = new int[256];
        fAttr = new float[16];

        ai         = new UnitAiBase();
        buff       = new Dictionary <int, Condition>();
        debuff     = new Dictionary <int, Condition>();
        buffExist  = new int[64];
        targetGrid = new GridID(0, 0);
        ai.init(this);
    }
Ejemplo n.º 5
0
    public void spawn(int x, int y)
    {
        Vector3 v = GSceneMap.Instance.gridToWorldPosition(new GridID(x, y));

        grid       = new GridID(x, y);
        m_pos      = v;
        m_Instance = UnityEngine.Object.Instantiate(Resources.Load("Prefab/unit"), v, new Quaternion(0, 0, 0, 0)) as GameObject;
        m_Instance.transform.parent = GameObject.Find("units").transform;
        m_movement = m_Instance.GetComponent <unitMovement>();
        m_skin     = m_Instance.GetComponent <unitSkin>();
        m_unitUI   = m_Instance.GetComponent <unitUI>();
        m_movement.init(this);
        m_skin.init(this);
        m_unitUI.init(this);
    }
Ejemplo n.º 6
0
    public static Transform AddGridTransform(GridID gridID, Transform targetTrans)
    {
        Transform ts = null;

        if (null != targetTrans)
        {
            ts = UIManager.GetObj((uint)gridID);
            if (null != ts)
            {
                Util.AddChildToTarget(targetTrans, ts);
            }
        }

        return(ts);
    }
Ejemplo n.º 7
0
        protected override async Task <Action <AsyncCodeActivityContext> > ExecuteAsync(AsyncCodeActivityContext context, CancellationToken cancellationToken)
        {
            // Inputs
            var gridid   = GridID.Get(context);
            var rowindex = RowIndex.Get(context);

            ///////////////////////////
            // Add execution logic HERE
            SAPAuto objSAPAuto = new SAPAuto();

            objSAPAuto.Grid_SelectRow_AndDoubleClick(gridid, rowindex);
            ///////////////////////////

            // Outputs
            return((ctx) => {
            });
        }
Ejemplo n.º 8
0
        protected override async Task <Action <AsyncCodeActivityContext> > ExecuteAsync(AsyncCodeActivityContext context, CancellationToken cancellationToken)
        {
            // Inputs
            var gridid          = GridID.Get(context);
            var contextmenuitem = ContextMenuItem.Get(context);

            ///////////////////////////
            // Add execution logic HERE
            SAPAuto objSAPAuto = new SAPAuto();

            objSAPAuto.ContextMenuSelectItem(gridid, contextmenuitem);
            ///////////////////////////

            // Outputs
            return((ctx) => {
            });
        }
Ejemplo n.º 9
0
    private void Move()
    {
        GridID g = m_manager.ai.nextGrid();

        if (g != null)
        {
            Vector3 movement = GSceneMap.Instance.nodeFromGrid(g).worldPosition - transform.position;
            movement.y = 0;

            if (Mathf.Abs(movement.x) >= 0.03f || Mathf.Abs(movement.z) >= 0.03f)
            {
                movement.Normalize();

                if (Mathf.Abs(movement.x) > Mathf.Abs(movement.z) * 1.1)
                {
                    if (movement.x > 0)
                    {
                        m_manager.playerFace = faceTo.right;
                    }
                    else if (movement.x < 0)
                    {
                        m_manager.playerFace = faceTo.left;
                    }
                }
                else
                {
                    if (movement.z > 0)
                    {
                        m_manager.playerFace = faceTo.up;
                    }
                    else if (movement.z < 0)
                    {
                        m_manager.playerFace = faceTo.down;
                    }
                }

                m_movement = movement * m_manager.runSpeed * Time.deltaTime;

                //Debug.Log(movement+" , "+m_movement+","+ m_manager.runSpeed+" , "+ Time.deltaTime);
                transform.position += m_movement;
            }
        }
    }
        protected override async Task <Action <AsyncCodeActivityContext> > ExecuteAsync(AsyncCodeActivityContext context, CancellationToken cancellationToken)
        {
            // Inputs
            var gridid   = GridID.Get(context);
            var rowindex = RowIndex.Get(context);
            var columnid = ColumnID.Get(context);

            ///////////////////////////
            // Add execution logic HERE
            SAPAuto objSAPAuto = new SAPAuto();

            context.SetValue(CellValue, objSAPAuto.Grid_GetCellValue(gridid, rowindex, columnid));
            ///////////////////////////

            // Outputs
            return((ctx) => {
                CellValue.Set(ctx, null);
            });
        }
Ejemplo n.º 11
0
 public int Dis(GridID id1, GridID id2)
 {
     return((int)(Math.Round(Math.Sqrt((id1.x - id2.x) * (id1.x - id2.x) + (id1.y - id2.y) * (id1.y - id2.y)))));
 }
Ejemplo n.º 12
0
 public Vector3 gridToWorldPosition(GridID id)
 {
     return(grid[id.x, id.y].worldPosition);
 }
Ejemplo n.º 13
0
 public Node nodeFromGrid(GridID g)
 {
     return(grid[g.x, g.y]);
 }
Ejemplo n.º 14
0
 public entity(int x, int y, int _type, int _tid)
 {
     grid   = new GridID(x, y);
     type   = _type;
     typeId = _tid;
 }
Ejemplo n.º 15
0
 public static GameObject GetResGameObj(GridID id)
 {
     return(GetResGameObj((uint)id));
 }
Ejemplo n.º 16
0
 public static Transform GetObj(GridID gridID)
 {
     return(GetObj((uint)gridID));
 }