Пример #1
0
        public void Upgrade()
        {
            if (Gameplay_Upgrade == null)
            {
                return;
            }

            if (GameController.GetInstance().SpendResource(Gameplay_UpgradeCost))
            {
                GameElement temp_object = (Instantiate(Gameplay_Upgrade) as GameElement).GetComponent <GameElement>();

                name_string = temp_object.name_string;

                // modify sprite and scale
                sprite_renderer_reference.sprite = temp_object.Sprite_renderer_reference.sprite;
                sprite_renderer_reference.transform.localScale = temp_object.transform.localScale;

                // modify behaviours
                UpgradeBehaviours(temp_object.behaviours);

                // update next upgrade level and cost
                Gameplay_Upgrade     = temp_object.Gameplay_Upgrade;
                Gameplay_UpgradeCost = temp_object.Gameplay_UpgradeCost;

                UpgradeTransferSounds(temp_object);

                GameObject.Destroy(temp_object.gameObject);

                PlaySound(Audio_OnUpgrade);
            }
        }
Пример #2
0
        public BehaviourMoverTrajectory(GameElement parent, Trajectory trajectory, float speed, bool use_velocity) :
            base(parent, speed, use_velocity)
        {
            //SetTrajectory (trajectory);

            rigidbody.drag = 1.0f;
        }
        public BehaviourTrajectoryToTarget(GameElement parent, Trajectory trajectory, GameObject target, float speed) : base(parent)
        {
            trajectory_mover = new BehaviourMoverTrajectory(parent, trajectory, speed, false);
            target_mover     = new BehaviourMoverTarget(parent, target, speed, false);

            CurrentBehaviour = trajectory_mover;
        }
Пример #4
0
 void UpgradeTransferSounds(GameElement upgraded_element)
 {
     Audio_OnSpawn   = upgraded_element.Audio_OnSpawn;
     Audio_OnUpgrade = upgraded_element.Audio_OnUpgrade;
     Audio_OnSelect  = upgraded_element.Audio_OnSelect;
     Audio_OnGetHit  = upgraded_element.Audio_OnGetHit;
     Audio_OnDie     = upgraded_element.Audio_OnDie;
 }
Пример #5
0
        public void SelectElement(GameElement element)
        {
            Clear();
            selected_element = element;

            EnableName(true);
            selected_name.text = element.name_string;
        }
Пример #6
0
        public BehaviourMover(GameElement parent, float speed, bool use_velocity) : base(parent)
        {
            _speed = speed;
            _reached_destination = false;
            _use_velocity        = use_velocity;

            rigidbody = _parent.gameObject.GetComponent <Rigidbody2D> ();
        }
        public BehaviourGatherer(GameElement parent,
                                 float gather_frequency,
                                 int gather_amount) : base(parent)
        {
            _gather_frequency = gather_frequency;
            _gather_amount    = gather_amount;

            gather_timer = gather_frequency;
        }
Пример #8
0
        public void Clear()
        {
            selected_element = null;

            EnableName(false);
            EnableDamage(false);
            EnableHealth(false);
            EnableRange(false);
            EnableUpgradeButton(false);
        }
Пример #9
0
        //DragShooter drag_shooter;


        public BehaviourManualShooter(GameElement parent, GameObject projectile_prefab,
                                      float power, int damage) :
            base(parent)
        {
            //this._drag_shooter_prefab  = object_prefab;
            //this._spawn_position  = spawn_position;
            _projectile_prefab = projectile_prefab;

            this._damage = damage;
            this._power  = power;
        }
Пример #10
0
        public BehaviourMoverTarget(GameElement parent, GameObject target, float speed, bool use_velocity) :
            base(parent, speed, use_velocity)
        {
            //_point = point;
            //_speed = speed;
            _target = target;

            //rigidbody.drag = 1.0f;

            //rigidbody = _parent.gameObject.GetComponent<Rigidbody2D> ();
        }
Пример #11
0
        public void SpawnEnemy(GameElement enemy_template, GameElement enemy_target)
        {
            if (trajectories.Length == 0)
            {
                return;
            }

            Trajectory enemy_trajectory = trajectories [Random.Range(0, trajectories.Length)];

            GameObject enemy = Instantiate(enemy_template.gameObject, this.transform.position, Quaternion.identity) as GameObject;

            enemy.GetComponent <GE_Enemy_Basic> ().SetParameters(enemy_trajectory, enemy_target.gameObject);
        }
Пример #12
0
 public BehaviourShooter(GameElement parent,
                         GameObject projectile,
                         int damage,
                         float range,
                         float frequency,
                         string target_tag) : base(parent)
 {
     _projectile = projectile;
     _range      = range;
     _damage     = damage;
     _frequency  = frequency;
     shoot_timer = frequency;
     _target_tag = target_tag;
 }
 public BehaviourDoDamageTarget(GameElement parent, GameObject target, int damage_value) : base(parent)
 {
     _damage_value = damage_value;
     _target       = target;
 }
 public GameElementBehaviour(GameElement parent)
 {
     _parent = parent;
 }
 public BehaviourHealthPoints(GameElement parent, int health_points) : base(parent)
 {
     _health_points = health_max = health_points;
 }
Пример #16
0
 public BehaviourBounty(GameElement parent, int score_bounty, int resource_bounty) : base(parent)
 {
     _score_bounty    = score_bounty;
     _resource_bounty = resource_bounty;
 }
Пример #17
0
 public BehaviourDoDamageTag(GameElement parent, string target_tag, int damage_value) : base(parent)
 {
     _damage_value = damage_value;
     _target_tag   = target_tag;
 }
 public BehaviourPlayerHealthPoints(GameElement parent) : base(parent)
 {
     game_instance = GameController.GetInstance();
 }
 public BehaviourRotateToDirection(GameElement parent) : base(parent)
 {
     _rotation_treshold = GameController.GetInstance().Rotation_Treshold;
     rigidbody          = parent.gameObject.GetComponent <Rigidbody2D> ();
 }