예제 #1
0
    async void Start()
    {
        Building_man = new Building_manager();



        Mouse_man = this.GetComponent <Mouse_Manager>();

        Building_man.Load(new GameObject("budynki"));                    //wczytuje budynki SQL

        GameObject car = new Car().Get_new_object(new Vector3(0, 0, 0)); //wczytuje autko
    }
예제 #2
0
    /// <summary>
    /// Event called when mouse is down
    /// </summary>
    private void OnMouseDown()
    {
        if (main.inPause)
        {
            return;
        }
        Mouse_Manager.HeldPiece_Transform = this.transform;
        Mouse_Manager.HeldPiece_CP        = this;

        startPos = transform.position;
        Mouse_Manager.MovePieceWithMouse();
    }
예제 #3
0
    /// <summary>
    /// End piece move, calculate move made and execute it
    /// </summary>
    void DropPiece()
    {
        Debug.LogWarning("timestart: " + Time.time);
        mouseIsClicked = false;
        Mouse_Manager.ResetMouseDelta();
        CenterPiece();
        Coord_Manager.UpdatePosition(transform.name, transform.localPosition);

        Move move = new Move(name, tag, Coord_Manager.GetPositionDifference(), transform.localPosition);

        if (!IsValidMove(move))
        {
            transform.position = startPos;
            Coord_Manager.RevertMove(ref moveDelta);
        }
        else
        {
            if (team.isBlack)
            {
                main.blackInCheck = false;
            }
            else
            {
                main.whiteInCheck = false;
            }

            main.KillPieceMarkedForDeath();
            Coord_Manager.CommitPositionUpdate();
            CurrentChessCoord = Coord_Manager.ConvertCoordsToChessUnits(transform.localPosition);

            middleMan.EndTurn();
            team.checkFlags = CF;
            team.EndTurn();

            CF = Coord_Manager.GetCheckInfoAt(middleMan.GetKingPosition(!team.isBlack), !team.isBlack);
            if (CF.isInCheck)
            {
                Feedback.SetText("CHECK!");

                if (team.isBlack)
                {
                    main.whiteInCheck = true;
                }
                else
                {
                    main.blackInCheck = true;
                }
            }
        }
        Debug.LogWarning("timeend: " + Time.time);
    }
예제 #4
0
    /// <summary>
    /// Event called when mouse is let go
    /// </summary>
    private void OnMouseUp()
    {
        if (main.inPause)
        {
            return;
        }

        if (!isDead)
        {
            DropPiece();
        }
        else
        {
            mouseIsClicked = false;
            Mouse_Manager.ResetMouseDelta();
            transform.position = startPos;
        }
    }