Ejemplo n.º 1
0
        private Sprite LoadCarPartSprite(PartType type)
        {
            var part = Vars.GetCarPart(type);

            if (part is null)
            {
                return(Resources.Load <GameObject>($"Prefabs/Parts/{type.ToString()}_disabled").GetComponent <Image>()
                       .sprite);
            }
            var prefab = Resources.Load <GameObject>($"Prefabs/Parts/{part.PrefabName}");

            return(prefab.GetComponent <Image>().sprite);
        }
Ejemplo n.º 2
0
        public override void Start()
        {
            engineComponent = FindObjectOfType <EngineComponent>();
            aimingComponent = FindObjectOfType <AimingComponent>();
            damageComponent = FindObjectOfType <DamageComponent>();

            aimingComponent.PropertyChanged += (sender, args) =>
                                               playerGun.ShootingAbility.shootingPeriodCoefficient = aimingComponent.Value;

            damageComponent.PropertyChanged += (sender, args) =>
                                               playerGun.ShootingAbility.bullet.damageCoefficient = damageComponent.Value;

            rb             = GetComponent <Rigidbody2D>();
            playerCollider = GetComponent <Collider2D>();
            playerGun      = GetComponentInChildren <GunController>();

            damagePart   = Vars.GetCarPart(PartType.Damage);
            shootingPart = Vars.GetCarPart(PartType.Shooting);
            armorPart    = Vars.GetCarPart(PartType.Armor);
            enginePart   = Vars.GetCarPart(PartType.Engine);
            base.Start();
            StartCoroutine(ApplyParts());
        }