Esempio n. 1
0
    // Update is called once per frame
    void Update()
    {
        float    deltaX = 0f;
        float    deltaY = 0f;
        Vector3  NewXY  = transform.position;
        float    lookX  = 0f;
        float    lookY  = 1f;
        PlayerBS player = Player.GetComponentInChildren <PlayerBS>();

        if (freezeTarget == false)
        {
            if (FollowEnabled)
            {
                deltaX = Input.GetAxis("Mouse X") * Xsensitivity;
                deltaY = Input.GetAxis("Mouse Y") * Ysensitivity;

                gameAngle -= deltaX;
                lookX      = gameDist * Mathf.Cos(gameAngle);
                lookY      = gameDist * Mathf.Sin(gameAngle);

                Vector3 rotation = new Vector3(transform.parent.position.x + lookX, transform.parent.position.y + lookY, 0);

                float newY = transform.localPosition.y + deltaY;
                newY = Mathf.Clamp(newY, minDist, maxDist);


                NewXY = new Vector3(transform.localPosition.x, newY, 0);
                transform.localPosition = NewXY; // sets the Y param, distance away
                player.character.SetFacing(rotation);
            }
        }
    }
Esempio n. 2
0
    // when someone enters the objective region
    private void OnTriggerEnter2D(Collider2D collision)
    {
        GameObject go = collision.gameObject;
        PlayerBS   pl = null;
        ZombieBS   zm = null;

        if (go != null)
        {
            switch (objType)
            {
            case ObjType.WinLevel:
                pl = go.GetComponent <PlayerBS>();
                if (pl != null)
                {
                    bool hasAllItems = true;
                    if (ReqItems.Count > 0)
                    {
                        foreach (ItemBS i in ReqItems)
                        {
                            if (false == pl.character.inventory.Contains(i))
                            {
                                hasAllItems = false;
                            }
                        }
                    }
                    if (hasAllItems)
                    {
                        finishedObjective = true;
                    }
                }
                break;

            case ObjType.QuitLevel:
                pl = go.GetComponent <PlayerBS>();
                if (pl != null)
                {
                    finishedObjective = true;
                }
                break;

            case ObjType.LoseLevel:
                zm = go.GetComponent <ZombieBS>();
                if (zm != null)
                {
                    finishedObjective = true;
                }
                break;

            default:
                break;
            }
        }
    }
    // Use this for initialization
    void Start()
    {
        startPosition = target = transform.position;
        //startRotation = targetRotation = transform.rotation;

        cam          = GetComponent <Camera>();
        playerbs     = PlayerObject.GetComponent <PlayerBS>();
        PlayerTarget = playerbs.target;

        if (playerCamTarget == null)
        {
            //playerCamTarget
        }
    }
Esempio n. 4
0
    // kill self!
    public void kill()
    {
        PlayerBS player = gameObject.GetComponent <PlayerBS>();

        if (player == null)
        {
            GameObject.Destroy(gameObject, 0.01f);
            //gameObject.SetActive(false);
            GAMESTATE.ALL_CHARACTERS.Remove(gameObject);
        }
        else
        {
            print("GAME OVER!");
            gameObject.SetActive(false);
        }

        //
    }
Esempio n. 5
0
    // handles the GUI state
    private void OnGUI()
    {
        PlayerBS pl1          = Player1.GetComponent <PlayerBS>();
        float    w            = Screen.width;
        float    h            = Screen.height;
        UI_menu  pause_menu   = new UI_menu(Screen.width * 0.15f, Screen.height * 0.15f, Screen.width * 0.7f, Screen.height * 0.7f, 4, 1, true);
        UI_menu  player_stats = new UI_menu(w * 0f, h * 0.8f, w * 0.25f, h * 0.2f, 4, 2, true);
        UI_menu  weapons      = new UI_menu(w * 0.6f, h * 0.8f, w * 0.4f, h * 0.2f, 3, 3, true);


        if (isPaused == true)
        {
            GUI.Box(pause_menu.mainrect, "Pause menu");
            if (GUI.Button(pause_menu.sub_rects[0], "Continue game"))
            {
                togglePaused();
            }
            if (GUI.Button(pause_menu.sub_rects[1], "Inventory"))
            {
            }
            if (GUI.Button(pause_menu.sub_rects[2], "Settings"))
            {
            }
            if (GUI.Button(pause_menu.sub_rects[3], "Quit Game"))
            {
            }
        }
        else
        {
            GUI.Box(player_stats.mainrect, pl1.character.name);

            GUI.Box(player_stats.sub_rects[0], "Health");
            GUI.Box(player_stats.sub_rects[1], "" + (pl1.character.health));

            GUI.Box(weapons.mainrect, "Weapons");

            string rw  = "None";
            string mw  = "None";
            string tw  = "None";
            string rw2 = "None";
            string mw2 = "None";
            string tw2 = "None";

            if (pl1.character.missileWeapon != null)
            {
                rw  = pl1.character.missileWeapon.name;
                rw2 = pl1.character.missileWeapon.getAmmoString();
            }
            if (pl1.character.meleeWeapon != null)
            {
                mw  = pl1.character.meleeWeapon.name;
                mw2 = pl1.character.meleeWeapon.getAmmoString();
            }
            if (pl1.character.tertiaryWeapon != null)
            {
                tw  = pl1.character.tertiaryWeapon.name;
                tw2 = "???"; // TODO : replace with # of grenades
            }
            GUI.Box(weapons.sub_rects[0], "Ranged");
            GUI.Box(weapons.sub_rects[1], rw);
            GUI.Box(weapons.sub_rects[2], rw2);
            GUI.Box(weapons.sub_rects[3], "Melee");
            GUI.Box(weapons.sub_rects[4], mw);
            GUI.Box(weapons.sub_rects[5], mw2);
            GUI.Box(weapons.sub_rects[6], "Tertiary");
            GUI.Box(weapons.sub_rects[7], tw);
            GUI.Box(weapons.sub_rects[8], tw2);
        }
    }