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); }
void SetFirstBugSequence() { if (bugs.Count > 0) { BugScript bugScript = bugs [0].GetComponent <BugScript> (); bugInputSequence.ReplaceBugSequence(bugScript.sequence); } else { bugInputSequence.bugSequence = new List <BUG_DIRECTION> (); } }
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); }
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; }
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(); }
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; }
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 } }