private void Start() { bulletPool = new PrefabPool(bulletPrefab); // don't shoot right after spawning cooldown = TimeBetweenShots; avatar = GetComponent <BaseAvatar>(); }
private void OnTriggerEnter2D(Collider2D other) { BaseAvatar avatar = null; switch (this.type) { case BulletType.PlayerSpiralBullet: case BulletType.PlayerBullet: avatar = other.gameObject.GetComponent <EnemyAvatar>(); break; case BulletType.EnemyBullet: avatar = other.gameObject.GetComponent <PlayerAvatar>(); break; default: Debug.LogError("Unknown bullet type " + this.type); break; } if (avatar != null) { avatar.TakeDamage(this.Damage); BulletFactory.Instance.Release(this); } }
private void OnAvatarDeath(BaseAvatar baseAvatar) { if (baseAvatar.GetType() == typeof(PlayerAvatar) && !playerHasDied) { playerHasDied = true; OnGameOver(); } }
protected virtual void Start() { this.baseAvatar = this.GetComponent <BaseAvatar>(); if (this.baseAvatar == null) { Debug.LogWarning(string.Format("Can't retrieve a base avatar on the gameobject {0}.", this.gameObject.name)); } }
private void OnTriggerEnter2D(Collider2D other) { BaseAvatar avatar = other.gameObject.GetComponent <BaseAvatar>(); if (avatar != null) { avatar.TakeDamage(this.DamageDealthAtCollision); this.TakeDamage(avatar.DamageDealthAtCollision); } }
// Use this for initialization void Start() { mySpawn = GetComponent <Spawn>(); myCorgi = GameObject.FindGameObjectWithTag("Player").GetComponent <BaseAvatar>(); myCanvas = GameObject.FindGameObjectWithTag("UI").GetComponent <CanvasController>(); myScore = GetComponent <ScoreSystem>(); wavesObjectif.text = ""; UpdateNiveau(); // UpdateTest(); isPlaying = true; }
public override void Apply() { target.StartCoroutine(ApplyOvertime(data.duration)); targetAvatar = target.GetComponent <BaseAvatar>(); targetAvatar.maxArmor.bonus += data.armorAdded; target.armor += data.armorAdded; effectObject = GameObject.Instantiate(data.effectPrefab, target.transform.position + Vector3.up, target.transform.rotation, target.transform); effectObject.GetComponent <NetworkTransformChild>().target = target.transform; NetworkServer.Spawn(effectObject); base.Apply(); }
private void Start() { this.baseAvatar = this.GetComponent <BaseAvatar>(); if (this.baseAvatar == null) { Debug.LogWarning(string.Format("Can't retrieve a base avatar on the gameobject {0}.", this.gameObject.name)); } // Positioning the gameobject at the center of the allowed zone. if (this.autoPositionAtStart) { this.Position = this.allowedZone.center; } }
private void OnTriggerEnter2D(Collider2D other) { string tag = other.gameObject.tag; if (tag == "Bullet") { other.gameObject.SetActive(false); this.gameObject.SetActive(false); } else if (tag == "Player" || tag == "Enemy") { BaseAvatar avatar = other.GetComponent <BaseAvatar>(); avatar.TakeDamage(damage); this.gameObject.SetActive(false); } }
public void ApplyStatus(StatusFactory factory, BaseAvatar source) { if (currentEffects.Contains(factory)) { return; } Status s = factory.GetStatus(this, source); currentEffects.Add(factory); s.OnUnapply += () => { Debug.Log("OnUnapply"); currentEffects.Remove(factory); OnStatusRemoved(s); }; s.Apply(); OnStatusApplied(s); }
public void SpawnEnemy() { GameObject newEnemyGameObj = null; BaseAvatar newEnemy = null; if (this.enemies.Exists(b => !b.gameObject.activeSelf)) { newEnemy = this.enemies.Find(b => !b.gameObject.activeSelf); newEnemy.gameObject.SetActive(true); newEnemy.Spawn(new Vector3(this.enemyPrefab.transform.position.x, Random.Range(-66.0f, 66.0f), 0), this.transform.rotation); } else { newEnemyGameObj = Instantiate(this.enemyPrefab, new Vector3(this.enemyPrefab.transform.position.x, Random.Range(-66.0f, 66.0f), 0), this.transform.rotation); newEnemy = newEnemyGameObj.GetComponent <BaseAvatar>(); this.enemies.Add(newEnemy); } }
void OnTriggerEnter2D(Collider2D col) { BaseAvatar target = col.gameObject.GetComponent <BaseAvatar>(); if (target && !(target.GetComponent <Engines>() && target.GetComponent <Engines>().Dashing)) { if (target.tag == "Enemy" && ally) { target.TakeHit(damage, owner); Disappear(); } if (target.tag == "Player" && !ally) { target.TakeHit(damage, owner); Disappear(); } } }
private void OnTriggerEnter2D(Collider2D collision) { BaseAvatar avatar = collision.gameObject.GetComponent <BaseAvatar>(); if (avatar != null) { avatar.TakeDamage(Damage); BulletFactory.ReleaseBullet(this); } else { Bullet bullet = collision.gameObject.GetComponent <Bullet>(); if (bullet != null) { BulletFactory.ReleaseBullet(this); BulletFactory.ReleaseBullet(bullet); } } }
private void Start() { // Retrieve the player avatar of the game object. this.avatar = this.GetComponent <BaseAvatar>(); if (this.avatar == null) { Debug.LogWarning("There is no avatar on the game object."); } // Hit particle system. this.hitParticleSystem = this.GetComponentInChildren <ParticleSystem>(); if (this.hitParticleSystem == null) { Debug.LogWarning("There is no hit particle system on the game object."); } this.avatar.OnDamageTaken += this.Avatar_OnDamageTaken; }
private void Awake() { /* * Instantiate(player); * Instantiate(fond1); * Instantiate(fond2); * Instantiate(canvas); * Instantiate(zone);*/ mySpawn = GetComponent <Spawn>(); myCorgi = GameObject.FindGameObjectWithTag("Player").GetComponent <BaseAvatar>(); myCanvas = GameObject.FindGameObjectWithTag("UI").GetComponent <CanvasController>(); myScore = GetComponent <ScoreSystem>(); mylevel = GetComponent <Level>(); Debug.Assert(mylevel != null); wavesObjectif.text = ""; UpdateNiveau(); // UpdateTest(); isPlaying = true; }
void OnTriggerEnter2D(Collider2D other) { //Selon la nature de la balle, on cible le joueur on l'ennemi BaseAvatar target = null; if (bulletType == BulletType.Player) { target = other.GetComponent <EnemyAvatar> (); } else if (bulletType == BulletType.EnnemyBullet) { target = other.GetComponent <PlayerAvatar> (); } //On blesse la cible acquise et on détruit la balle if (target) { target.TakeDamage(Damage); BulletFactory.Instance.Relase(gameObject.GetComponent <Bullet>()); } }
// Use this for initialization void Start() { if (_type == CombineType.combine_mesh) { _base_avater = new CombineMeshAvatar(); } else if (_type == CombineType.share_skeleton) { _base_avater = new SkeletonAvatar(); } else if (_type == CombineType.combine_mesh_material_1) { _base_avater = new CombineMeshAvatar(); } else if (_type == CombineType.combine_mesh_material_2) { _base_avater = new Material2Avatar(); } _base_avater.Init(pfb_skeleton); }
public virtual void TakeDamage(float damage, BaseAvatar source) { if (IsDead) { return; } if (armor > 0) { float armorDamageTaken = damage - armor; if (armorDamageTaken > 0) { // if enough damage was dealt to bypass the current armor // destroy armor armor = 0; OnArmorBroken(damage); // damage health for the remainder currentHealth -= armorDamageTaken; OnHealthDamaged(armorDamageTaken); } else { // if armor absorbs all of the incoming damage, damage armor only armor -= damage; OnArmorDamaged(damage); } } else { currentHealth -= damage; OnHealthDamaged(damage); } OnDamaged(damage); if (currentHealth <= 0) { IsDead = true; OnDeath(damage); Die(); } }
/*public Vector2 Position * { * get * { * return this.transform.position; * } * * set * { * this.transform.position = value; * } * }*/ // Use this for initialization void Start() { baseAvatar = this.GetComponent <BaseAvatar>(); myTransform = this.GetComponent <Transform>(); }
// Start is called before the first frame update void Start() { baseAvatar = GetComponent <BaseAvatar>(); maxSpeed = baseAvatar.MaxSpeed; }
private BaseAvatar baseAvatar; // Reference to the avatar script of the AI. // Use this for initialization. public void Start() { // Getting a reference to the AI avatar script. This will be used to update the position of the AI considering the speed. this.baseAvatar = this.GetComponent <BaseAvatar>(); }
public abstract Status GetStatus(Health target, BaseAvatar source);
// Use this for initialization void Start() { myBase = GetComponent <BaseAvatar>(); }
private void Start() { _baseAvatar = GetComponent <BaseAvatar>(); _sr = GetComponent <SpriteRenderer>(); }
// Start is called before the first frame update void Start() { _baseAvatar = GetComponent <BaseAvatar>(); }
void Awake() { avatar = this.GetComponent <BaseAvatar>(); speed = avatar.GetMaxSpeed(); }
// Start is called before the first frame update void Start() { baseAvatar = GetComponent <BaseAvatar>(); maxSpeed = baseAvatar.MaxSpeed; speed = new Vector2(-0.1f, 0); }