// Update is called once per frame // void LateUpdate(){ // float xPos = transform.position.x + 21.5f; // float yPos = transform.position.y + 12; // if (tilemap.GetTile ((int)xPos, (int)yPos, 3) != -1){ // Destroy (gameObject); // } // } void OnCollisionEnter2D(Collision2D coll) { if (owner.transform.localScale.x == 1) { q = psBulletSparks.transform.rotation; } else { q = psBulletSparks.transform.rotation * Quaternion.Euler(0, 180, 0); } Instantiate(psBulletSparks, transform.position, q); Destroy(gameObject); // For players GameObject enemy = coll.gameObject; if (enemy.tag == "Player") { PlayerScript playerScript = enemy.GetComponent <PlayerScript>(); playerScript.Health -= damageOutput; psPlayerHit.maxParticles = (int)damageOutput; Instantiate(psPlayerHit, transform.position, Quaternion.identity); } else if (enemy.tag == "Mob") { MobScript mobScript = enemy.GetComponent <MobScript>(); mobScript.Health -= damageOutput; } }
void OnTriggerEnter2D(Collider2D coll) { // For players if (attack) { GameObject enemy = coll.gameObject; if (enemy.tag == "Player" && enemy != player) { PlayerScript playerScript = enemy.GetComponent <PlayerScript>(); playerScript.Health -= damage; psPlayerHit.maxParticles = (int)damage; if (transform.parent.transform.localScale.x == 1) { q = psPlayerHit.transform.rotation; } else { q = psPlayerHit.transform.rotation * Quaternion.Euler(0, 90, 0); } Instantiate(psPlayerHit, coll.transform.position, q); } else if (enemy.tag == "Mob") { MobScript mobScript = enemy.GetComponent <MobScript>(); mobScript.Health -= damage; } } }
void OnCollisionEnter2D(Collision2D coll) { // For players hitGround = true; GameObject enemy = coll.gameObject; if (enemy.tag == "Player") { PlayerScript playerScript = enemy.GetComponent <PlayerScript>(); playerScript.Health -= 10.0f; } else if (enemy.tag == "Mob") { MobScript mobScript = enemy.GetComponent <MobScript>(); mobScript.Health -= 10.0f; } }
void OnCollisionEnter2D(Collision2D coll) { Destroy(gameObject); // For players GameObject enemy = coll.gameObject; if (enemy.tag == "Player") { PlayerScript playerScript = enemy.GetComponent <PlayerScript>(); playerScript.Health -= damageOutput; psPlayerHit.maxParticles = (int)damageOutput; Instantiate(psPlayerHit, transform.position, Quaternion.identity); } else if (enemy.tag == "Mob") { MobScript mobScript = enemy.GetComponent <MobScript>(); mobScript.Health -= damageOutput; } }
// Update is called once per frame void FixedUpdate() { //int c = ea.Count; //for (int i = 0; i < c; i++) //{ //Health h = ea[i].GetComponent<Health>(); //Debug.Log("Enemy #" + i + " hp: " + ea[i].hp); //ea[i].h.damage(); //} // moving Vector3 pos = transform.position; if (Input.GetKey("a") || Input.GetKey("d")) { //if (Math.Abs(speedx) < speedCap) //{ count++; if (Input.GetKey("a")) { if (speedx > (speedCap * -1)) { speedx = speedx - accel; } } if (Input.GetKey("d")) { if (speedx < speedCap) { speedx = speedx + accel; } } //Debug.Log(count + ": Speed: x" + speedx); //} } else { if (Math.Abs(speedx) != 0) { if (speedx > 0) { speedx = speedx - (accel); } if (speedx < 0) { speedx = speedx + (accel); } } else { speedx = 0; } } if (Input.GetKey("w") || Input.GetKey("s")) { //if (Math.Abs(speedy) < speedCap) //{ count++; if (Input.GetKey("s")) { if (speedy > (speedCap * -1)) { speedy = speedy - accel; } } if (Input.GetKey("w")) { if (speedy < speedCap) { speedy = speedy + accel; } } //Debug.Log(count + ": Speed y: " + speedy); //} } else { if (Math.Abs(speedy) != 0) { if (speedy > 0) { speedy = speedy - (accel); } if (speedy < 0) { speedy = speedy + (accel); } } else { speedy = 0; } } // jumping //Vector3 scale = transform.localScale; // checking to see if jumpCount is 0, if so the obj is on ground /* * if (jumpCount > 0) * { * onGround = false; * } * else * { * onGround = true; * } */ // checking if key is down or not /* * if (Input.GetKeyDown("space")) * { * if (jumpCount == 0) * { * jU = true; * jD = false; * } * } * else * { * * } */ /* * // if jumping up * if (jU == true) * { * if (jumpCount < jumpTime) * { * jumpCount += jumpSpeed; * scale.x += scaleSpeed * Time.deltaTime; * scale.y += scaleSpeed * Time.deltaTime; * speedy += upSpeed * Time.deltaTime; * } * * if (jumpCount == jumpTime) * { * jU = false; * jD = true; * } * } * * // if going down * if (jD == true) * { * if (onGround != true) * { * jumpCount -= jumpSpeed; * scale.x -= scaleSpeed * Time.deltaTime; * scale.y -= scaleSpeed * Time.deltaTime; * speedy -= upSpeed * Time.deltaTime; * } * } */ // update list of existing hittable objects //hitBox.OnTriggerEnter(hitBoxes); //hitBox.OnTriggerExit(hitBoxes); //Debug.Log("Speedy: " + speedy); // move the obj //transform.localScale = scale; velocity = new Vector2(speedx, speedy); rb2D.MovePosition(rb2D.position + velocity * Time.fixedDeltaTime); transform.position = pos; // ATTACK CODE -------------------------------------------------------- GameObject mobObj = GameObject.Find("Mob"); for (int i = 0; i < enemyArray.Count; i++) { e = enemyArray[i]; if (enemyArray[i] != null) { eh = e.GetComponent <Health>(); ms = e.GetComponent <MobScript>(); //playerPos = p.transform.position; enemyPos = e.transform.position; float distance = Vector3.Distance(pos, enemyPos); //Debug.Log("player to enemy: " + distance); if (Input.GetKeyDown("p")) { if (distance < range) { eh.damage(damage); ms.isPunched = true; ms.pc = 500; if (pos.x < enemyPos.x) { ms.punchLaunch = 500; } else { ms.punchLaunch = -500; } //Debug.Log("in range"); } else { //Debug.Log("Too far away to hit"); } } } Debug.Log(eh.hp); } // -------------------------------------------------------------------- /* * ContactFilter2D contactFilter = new ContactFilter2D(); * contactFilter.NoFilter(); * * int colliderCount = hitBox.OverlapCollider(contactFilter, hitBoxes); * //Debug.Log("Collider Count: " + colliderCount); */ }