private void Awake() { damageable = GetComponent <DamageableComp>(); rigidBody = GetComponent <Rigidbody2D>(); isEnemy = gameObject.layer == EnemyController.LAYER; }
/** * We do some reference initializations here to avoid accessing * them on every frame Update(). */ private void Awake() { weaponTransform = weaponObj.transform; bodySpriteR = GetComponent <SpriteRenderer>(); weaponObjSpriteR = weaponObj.GetComponent <SpriteRenderer>(); flippableComp = GetComponent <FlippableSpriteComp>(); damageableComp = GetComponent <DamageableComp>(); knockbackComp = GetComponent <KnockbackComp>(); slashSpawnComp = GetComponent <SlashSpawnComp>(); }
private void DamageUnitsHit() // TODO move to a 'DamagingComp' class which will be shared among player & enemy ctrl { Collider2D[] unitsHit = Physics2D.OverlapCircleAll( transform.position + new Vector3(damageCenter.x, damageCenter.y, 0), damageRadius, unitMask); foreach (Collider2D unit in unitsHit) { DamageableComp damageable = unit.GetComponent <DamageableComp>(); damageable?.Damage(slashOwner.transform.position); // the null-check operator will bypass any collider2d objects that don't have the damageable component } }
void Awake() { LAYER = LayerMask.NameToLayer("Player"); damageable = GetComponent <DamageableComp>(); damageable.unitIsHit = IsHit; damageable.shakeCameraOnHit = true; damageable.cameraCtrl = Camera.main.GetComponent <CameraController>(); flippable = GetComponent <FlippableSpriteComp>(); characterAnmtr = GetComponent <Animator>(); weaponController = GetComponent <PlayerWeaponController>(); knockbackComp = GetComponent <KnockbackComp>(); movingComp = GetComponent <MovingComp>(); }