Inheritance: MonoBehaviour
コード例 #1
0
    void SpawnBug(BUG_SIZE size, BUG_DIFFICULTY diff, Vector3 start, Vector3 target)
    {
        bugsRemaining++;
        GameObject bugOne    = bugFarmScript.SpawnBug(size, diff);
        BugScript  scriptOne = bugOne.GetComponent <BugScript> ();

        bugOne.transform.localPosition = start;
        scriptOne.setMoveTarget(target);
    }
コード例 #2
0
 void SetFirstBugSequence()
 {
     if (bugs.Count > 0)
     {
         BugScript bugScript = bugs [0].GetComponent <BugScript> ();
         bugInputSequence.ReplaceBugSequence(bugScript.sequence);
     }
     else
     {
         bugInputSequence.bugSequence = new List <BUG_DIRECTION> ();
     }
 }
コード例 #3
0
    public void AddBug(GameObject bug)
    {
        bugs.Add(bug);
        bug.transform.parent = transform;
        SpriteRenderer sr = bug.GetComponent <SpriteRenderer> ();

        sr.sortingLayerName = "Alice World Bugs";
        SetFirstBugSequence();
        SetBugPositionsX();
        // Put it in the ceiling
        BugScript bugScript = bug.GetComponent <BugScript>();

        bug.transform.localPosition = new Vector2(bugScript.queuePositionX, 2.0f);
        bug.transform.localScale    = new Vector3(1f, 1f, 1f);
    }
コード例 #4
0
    void SetBugPositionsX()
    {
        float positionX = 0;

        for (int i = 0; i < bugs.Count; i++)
        {
//			Debug.Log ("Bug " + i + " position x: " + positionX);
            BugScript bugScript = bugs [i].GetComponent <BugScript> ();
            // Get sprite renderer from this bug
            SpriteRenderer thisSprite       = bugs[i].GetComponent <SpriteRenderer>();
            float          halfOfThisSprite = thisSprite.bounds.size.x / 2;
            if (i > 0)
            {
                positionX += halfOfThisSprite;
            }

            bugScript.QueuePosition(positionX);

            positionX += halfOfThisSprite + BUG_MARGIN_RIGHT;
        }
        queueFull = bugs.Count >= QUEUE_LIMIT;
    }
コード例 #5
0
    void OnCollisionEnter2D(Collision2D collision)
    {
        Debug.Log("EMILY COLLISION ENTER");
        if (invulnerable)
        {
            return;
        }
        GameObject bug       = collision.collider.gameObject;
        BugScript  bugScript = bug.GetComponent <BugScript> ();

        if (bugScript.lassoed)
        {
            return;
        }


        healthPool.TakeDamage(1);
        aliceScript.ResetAttack();


        bugScript.BackAwayFromEmily();
    }
コード例 #6
0
    void HandleBugLassoed(GameObject bug)
    {
        Debug.Log("LASSOED THIS BUG: " + bug.ToString());
        BugScript bugScript = bug.GetComponent <BugScript>();

        bugScript.lassoed = true;
        Destroy(bugScript.GetComponent <BoxCollider2D>());
        haveBugLassoed = true;
        emilyScript.DefeatedEnemy();
        StartCoroutine(ClearLineAfterLasso());
        if (saySomething)
        {
            int rand = theGame.random(100);
            if (rand > 66)
            {
                emilyScript.Say("getFucked");
            }
            else
            {
                emilyScript.Say("hokay");
            }
        }
        saySomething = !saySomething;
    }
コード例 #7
0
    void NewDirection(BUG_DIRECTION pressed)
    {
        BUG_DIRECTION keyNeeded = bugInputSequence.bugSequence [bugInputSequence.playerSequence.Count];

        if (pressed == keyNeeded)
        {
            aliceScript.isAttacking = true;
            bugInputSequence.playerSequence.Add(pressed);

            if (bugInputSequence.playerSequence.Count.Equals(bugInputSequence.bugSequence.Count))
            {
                BugScript bugScript = bugs [0].GetComponent <BugScript> ();
                bugScript.Kill(this);
                aliceScript.DefeatedEnemy();
                bugDying = true;
            }
        }
        else
        {
            // Player entered wrong arrow, reset input
            aliceScript.ResetAttack();
            // TODO: play bad input sound here
        }
    }