private void ThrowDuckling() { if (Input.GetKeyDown(KeyCode.Mouse0)) { Vector3 worldMousePosition = Camera.main.ScreenToWorldPoint(new Vector2(Input.mousePosition.x, Input.mousePosition.y)); Vector2 relativePosition = worldMousePosition - transform.position; if (ammo > 0) { --ammo; throwing = true; AudioManager.instance.PlaySound("duckling"); Duckling duckling = ducklings[ammo]; StartCoroutine(WingSpin()); ducklings.Remove(duckling); duckling.motherless = true; duckling.an.SetBool("Thrown", true); duckling.NotJumping(); ParentConstraint dpc = duckling.gameObject.GetComponent <ParentConstraint>(); Rigidbody2D drc = duckling.gameObject.GetComponent <Rigidbody2D>(); duckling.gameObject.transform.position = new Vector2(transform.position.x, transform.position.y + 2f); dpc.constraintActive = false; drc.AddForce(relativePosition.normalized * throwPower, ForceMode2D.Impulse); drc.simulated = true; } } }
public void DucklingSaysTweet() { var duck = new Duckling(); var greeting = duck.SayHello(); Assert.That(greeting, Is.EqualTo("tweet")); }
private void OnTriggerEnter2D(Collider2D collision) { if (collision.gameObject.CompareTag("Duckling")) { Duckling duckling = collision.gameObject.GetComponent <Duckling>(); if (duckling.hasHat == false) { duckling.hasHat = true; EndGameResultsData.instance.totalHats++; transform.parent = duckling.hat.transform; this.transform.localPosition = Vector2.zero; this.transform.localRotation = Quaternion.identity; Debug.Log("Touched Duckling"); } } }
private void OnCollisionEnter2D(Collision2D collision) { if (collision.gameObject.CompareTag("Duckling")) { checkGroundRequest = false; grounded = true; an.SetBool("Jumping", false); if (ducklings.Count > 0) { foreach (Duckling d in ducklings) { if (d != null) { d.NotJumping(); } } } Duckling duckling = collision.gameObject.GetComponent <Duckling>(); PlaceDuckling(duckling); } else if (collision.gameObject.CompareTag("Platform")) { checkGroundRequest = false; grounded = true; an.SetBool("Jumping", false); if (ducklings.Count > 0) { foreach (Duckling duckling in ducklings) { if (ducklings != null) { duckling.NotJumping(); } } } } }
private void PlaceDuckling(Duckling duckling) { if (!duckling.isAmmo) { if (ammo < maxAmmo) { Debug.Log($"Gained Ammo {duckling.gameObject.name}"); duckling.isAmmo = true; //ducklings[ammo] = duckling; ducklings.Add(duckling); ParentConstraint dpc = duckling.gameObject.GetComponent <ParentConstraint>(); Rigidbody2D drc = duckling.gameObject.GetComponent <Rigidbody2D>(); duckling.GetComponent <SpriteRenderer>().sortingOrder = 3 - ammo; dpc.constraintActive = true; drc.simulated = false; dpc.SetTranslationOffset(0, new Vector2(-0.75f, 0.50f + ammo)); ammo++; } } else { return; } }