public void Shoot() { eventBus.Publish(new OnBulletShooted(gameObject.GetComponent <Player>())); //Evento de quando uma bala e disparada, fazendo todos os jogadores pararem de efetuar inputs. var bullet = bulletFactory.Create(); if (bullet != null) { bullet.transform.position = FirePosition.transform.position; bullet.transform.rotation = gameObject.transform.rotation; Bullet info = bullet.GetComponent <Bullet>(); info.Shooter = gameObject; info.bulletInfo = ChoosedBullet; SpriteRenderer SR = bullet.GetComponent <SpriteRenderer>(); SR.color = ChoosedBullet.BulletColor; BasicPhysicsObject physicsProperties = bullet.GetComponent <BasicPhysicsObject>(); physicsProperties.PhysicsProperties = ChoosedBullet.CustomPhysicsPropertys; physicsProperties.Velocity = FirePosition.transform.localScale.normalized.x * -transform.right * ChoosedBullet.BulletSpeed; } }
private void AddBullet(GunPoints point, Weapon weapon, LayerTags frendlyLayer) { if (null == point.StartbulletPoint || null == point.FinishBulletPoint) { return; } var bl = _bulletFactory.Create(); bl.initialize(point, weapon, frendlyLayer); bl.transform.SetParent(_gameManager.GamePresenter.transform); }
private void Shoot() { _bulletFactory.Create(_tower.TowerData.BulletData, _tower.transform.position, _tower.GetTarget()); _shootCD = _tower.TowerParameters.AttackDelay; }