コード例 #1
0
 void Awake()
 {
     if (instance == null)
     {
         instance = this;
     }
 }
コード例 #2
0
ファイル: PlayerInput.cs プロジェクト: HarrisonJones/blotgame
    void Start()
    {
        DontDestroyOnLoad(this);

        if (GameObject.FindObjectOfType <Painter>())
        {
            painter = GameObject.FindObjectOfType <Painter>();
        }

        ChangeColor(Color.black);

        currentSpeed = minSpeed;
        if (useAcceleration)
        {
            sprintModifier = 0;
        }

        if (PlayerBounds.S == null)
        {
            GameObject bounds = new GameObject("Bounds");
            bounds.AddComponent <PlayerBounds>().Awake();
        }

        if (!PlayerBounds.S.lockedObjects.Contains(transform))
        {
            PlayerBounds.Bind(transform);
        }
    }
コード例 #3
0
    void Awake()
    {
        boxCollider = GetComponent <BoxCollider2D>();

        bounds = new PlayerBounds();

        bounds.left = Camera.main.ScreenToWorldPoint(new Vector3(0, 0, 0)).x + boxCollider.bounds.extents.x;
        // Debug.Log("bounds.left : " + bounds.left);
        bounds.right = Camera.main.ScreenToWorldPoint(new Vector3(Screen.width, 0, 0)).x - boxCollider.bounds.extents.x;
        // Debug.Log("bounds.right : " + bounds.right);
    }
コード例 #4
0
    private void Start()
    {
        start = transform.position;
        PlayerBounds b = StageController.Player.GetComponent <PlayerController>().Bounds;

        if (!OverrideDest)
        {
            dest = Vector2.Lerp(new Vector2(b.xMin, b.yMin), new Vector2(b.xMax, b.yMax), 0.5f);
        }

        rb = gameObject.GetComponent <Rigidbody2D>();

        if (BulletType == SkeleBulletType.INK)
        {
            RainbowCol = Color.red;
        }
    }
コード例 #5
0
        internal void ResetOptions()
        {
            AcrossLev = BoolOption.Dontcare;

            Date = new Range <DateTime>(DateTime.MinValue,
                                        DateTime.MaxValue);

            Finished           = BoolOption.Dontcare;
            InternalRec        = BoolOption.Dontcare;
            LevExists          = BoolOption.Dontcare;
            LevFilenameMatcher = new Regex("");
            MultiPlayer        = BoolOption.Dontcare;
            P1Bounds           = new PlayerBounds();
            P2Bounds           = new PlayerBounds();

            Size     = new Range <int>(0, 10000000);
            Time     = new Range <double>(0, 7200);
            WrongLev = BoolOption.Dontcare;
        }
コード例 #6
0
 private Vector3 Clamp(Vector3 pos, PlayerBounds bounds)
 {
     pos.x = Mathf.Clamp (pos.x, bounds.xMin, bounds.xMax);
     pos.y = Mathf.Clamp (pos.y, bounds.yMin, bounds.yMax);
     return pos;
 }
コード例 #7
0
 private void Awake()
 {
     _PLayerBounds = this;
     Assign();
 }
コード例 #8
0
 // Use this for initialization
 void Start()
 {
     bounds = FindObjectOfType <PlayerBounds>();
 }
コード例 #9
0
    public override IEnumerator StartSpell()
    {
        yield return(new WaitForSeconds(1f));

        const int numInCircle = 8;

        PlayerBounds b = StageController.Player.GetComponent <PlayerController>().Bounds;

        Vector2 posBL = new Vector2(b.xMin, b.yMin);
        Vector2 posTR = new Vector2(b.xMax, b.yMax);

        User.GoToWaypoint(Vector2.Lerp(posBL, posTR, 0.5f));

        string[] tags = { "BubbleLightBlue", "BubbleOrange",
                          "BubbleRed",       "BubblePink",
                          "BubbleWhite",     "BubbleGray",
                          "BubbleRed",       "BubbleYellow",
                          "BubblePurple",    "BubbleOrange",
                          "BubbleBlue",      "BubbleOrange",
                          "Star",            "BubbleGray" };
        int[]    angleOffsets = { -50, -50,
                                  -12,    -95,
                                  0,      -45,
                                  -41,    -41,
                                  -35,    -19,
                                  37,     -62,
                                  0, 0 };

        int skipCount = 14;

        for (int i = 0; i < System.Enum.GetNames(typeof(SkeleBulletType)).Length - 3; i++)
        {
            if (skipCount > 0)
            {
                skipCount--;
                continue;
            }

            if (i >= tags.Length)
            {
                break;
            }

            GameObject bullet = ObjectPooler.Spawn(tags[i], (i % 2 == 0) ? posBL : posTR, Quaternion.identity);

            GravitateMovement gm = bullet.AddComponent <GravitateMovement>();

            gm.card = this;

            if (i % 2 == 1)
            {
                gm.AngleOffset       = 180;
                gm.EndCircleDelay    = 0.5f;
                gm.EndCircleRotation = 360f / numInCircle / 2;
            }

            gm.AngleOffset += angleOffsets[i];
            gm.BulletType   = (SkeleBulletType)i;

            if (i % 2 == 1)
            {
                yield return(new WaitForSeconds(20));
            }
        }

        Vector2 posBC = Vector2.Lerp(posBL, new Vector2(b.xMax, b.yMin), 0.5f);
        Vector2 posTL = new Vector2(b.xMin, b.yMax);

        Vector2 dest = new Vector2((posBC.x + posTL.x + posTR.x) / 3f, (posBC.y + posTL.y + posTR.y) / 3f);

        User.GoToWaypoint(dest);

        GameObject chronos = ObjectPooler.Spawn("BubbleLightBlue", posTL, Quaternion.identity);
        GameObject cider   = ObjectPooler.Spawn("BubblePink", posTR, Quaternion.identity);
        GameObject zephyr  = ObjectPooler.Spawn("BubbleGreen", posBC, Quaternion.identity);

        GravitateMovement gm_chronos = chronos.AddComponent <GravitateMovement>();
        GravitateMovement gm_cider   = cider.AddComponent <GravitateMovement>();
        GravitateMovement gm_zephyr  = zephyr.AddComponent <GravitateMovement>();

        gm_chronos.card = this;
        gm_cider.card   = this;
        gm_zephyr.card  = this;

        gm_chronos.OverrideDest = true;
        gm_cider.OverrideDest   = true;
        gm_zephyr.OverrideDest  = true;

        gm_chronos.dest = dest;
        gm_cider.dest   = dest;
        gm_zephyr.dest  = dest;

        gm_zephyr.AngleOffset = 180;
        gm_cider.AngleOffset  = 90;

        gm_cider.EndCircleDelay  = 0.5f;
        gm_zephyr.EndCircleDelay = 1f;

        gm_chronos.BulletType = SkeleBulletType.CHRONOS;
        gm_cider.BulletType   = SkeleBulletType.CIDER;
        gm_zephyr.BulletType  = SkeleBulletType.ZEPHYR;

        // TODO: Custom Circles
    }
コード例 #10
0
 public void Awake()
 {
     S = this;
     lockedObjects.AddRange(FindObjectsOfType <PlayerInput>().Select(i => i.transform).ToList());
 }
コード例 #11
0
ファイル: PlayerBounds.cs プロジェクト: rambo5x/Stay-Alive
 private void Awake()
 {
     instance = this;
 }
コード例 #12
0
 private void OnEnable()
 {
     targetBounds = target as PlayerBounds;
 }