public void Setup(IPlayerParams playerParams, GameConfig config) { _playerParams = playerParams; var rb = GetComponent <Rigidbody>(); _movement = new MovementComponent(rb, _playerParams, config); var lookParams = new LookComponentParams { CharacterTr = transform, CameraTr = _cameraSpot, WeaponTrs = new [] { _gun.transform } }; _look = new LookComponent(lookParams); var gunParams = new GunParams { BulletParams = new BulletParams { InitialForce = config.InitialBulletGunForce, Damage = config.BulletDamage } }; _gun.Setup(gunParams); var bazookaParams = new BazookaParams { RocketParams = new RocketParams { InitialForce = config.InitialRocketForce, ExplosionParams = new ExplosionParams { ExplosionRadius = config.RocketExplosionRadius, ExplosionDuration = config.RocketExplosionDuration, MaxDamage = config.MaxRocketDamage, MaxForcePower = config.MaxForcePower } } }; _bazooka.Setup(bazookaParams); _shoot = new ShootComponent(new Weapon[] { _gun, _bazooka }); }
public LookComponent(LookComponentParams lookComponentParams) { _params = lookComponentParams; _weaponsRot = Quaternion.Euler(90, 0, 0); }