Ejemplo n.º 1
0
        // Changes a characters weapon
        public void ChangeCharactersWeapon(int characterIndex, IWeaponBehaviour weapon)
        {
            if (weapon == null)
                throw new ArgumentNullException("IWeaponBehaviour passed to GameManager.ChangeCharatersWeapon was NULL");

            if (characterIndex < 0 || characterIndex > characters.Count())
                throw new IndexOutOfRangeException();

            characters[characterIndex].Weapon = weapon;
        }
Ejemplo n.º 2
0
        public void ChangeFightingBehaviour(IWeaponBehaviour weaponBehaviour)
        {
            if (weaponBehaviour is null)
            {
                throw new ArgumentNullException(nameof(weaponBehaviour));
            }

            Console.WriteLine(GetType().Name + " changed the fighting behaviour!");
            this.weaponBehaviour = weaponBehaviour;
        }
Ejemplo n.º 3
0
        public Character CreateInstance(string characterName, IWeaponBehaviour weaponBehaviour)
        {
            if (string.IsNullOrEmpty(characterName))
            {
                throw new ArgumentNullException(nameof(characterName));
            }
            if (ReferenceEquals(null, weaponBehaviour))
            {
                throw new ArgumentNullException(nameof(weaponBehaviour));
            }

            Type typeToCreate = GetTypeToCreate(characterName);

            if (typeToCreate == null)
            {
                return(new UnknownCharacter(new UnknownBehaviour()));
            }

            return(Activator.CreateInstance(typeToCreate, weaponBehaviour) as Character);
        }
Ejemplo n.º 4
0
        private void Downgrade()
        {
            var previousType = m_behaviour.Type;

            switch (previousType)
            {
            case WeaponType.Bomb:
                m_behaviour = WeaponFactory.GetCurrentWeapon(WeaponType.Laser);
                break;

            case WeaponType.Cross:
                m_behaviour = WeaponFactory.GetCurrentWeapon(WeaponType.Bomb);
                break;

            default:
                break;
            }

            TryUpdateWeapon(previousType);
        }
Ejemplo n.º 5
0
        public static IWeaponBehaviour GetCurrentWeapon(WeaponType type)
        {
            IWeaponBehaviour controller = null;

            switch (type)
            {
            case WeaponType.Laser:
                controller = new WeaponLaserBehaviour();
                break;

            case WeaponType.Bomb:
                controller = new WeaponBombBehaviour();
                break;

            case WeaponType.Cross:
                controller = new WeaponCrossBehaviour();
                break;
            }

            return(controller);
        }
Ejemplo n.º 6
0
        public void Upgrade()
        {
            SoundManager.PlaySoundEffect("PowerUpCollected");

            var previousType = m_behaviour.Type;

            switch (previousType)
            {
            case WeaponType.Laser:
                m_behaviour = WeaponFactory.GetCurrentWeapon(WeaponType.Bomb);
                break;

            case WeaponType.Bomb:
                m_behaviour = WeaponFactory.GetCurrentWeapon(WeaponType.Cross);
                break;

            default:
                break;
            }

            TryUpdateWeapon(previousType);
        }
Ejemplo n.º 7
0
 void Start()
 {
     m_behaviour     = WeaponFactory.GetCurrentWeapon(WeaponType.Laser);
     m_downgradeTime = Time.time;
 }
Ejemplo n.º 8
0
 public SmurfStorm(IWeaponBehaviour weaponBehaviour) : base(weaponBehaviour)
 {
 }
Ejemplo n.º 9
0
 public Character()
 {
     Weapon = new AxeBehaviour();//wordt nooit gebruikt
 }
Ejemplo n.º 10
0
 public abstract void ChangeWeapon(IWeaponBehaviour w);
Ejemplo n.º 11
0
 public override void ChangeWeapon(IWeaponBehaviour w)
 {
     weapon = w;
 }
Ejemplo n.º 12
0
 protected Person(IWeaponBehaviour weaponBehaviour) => _weaponBehaviour = weaponBehaviour;
Ejemplo n.º 13
0
 public abstract void ChangeWeapon(IWeaponBehaviour w);
Ejemplo n.º 14
0
 // Public interface.
 public void Start()
 {
     _input = GetComponent<PlayerInput>();
     _current_weapon_behaviour = new IdleWeaponBehaivour();
     _animator = GetComponent<Animator>();
 }
Ejemplo n.º 15
0
 public Smurfette(IWeaponBehaviour iwb) : base(iwb)
 {
 }
Ejemplo n.º 16
0
 public SmurfStorm(IWeaponBehaviour iwb) : base(iwb)
 {
 }
Ejemplo n.º 17
0
 public King(IWeaponBehaviour iwb) : base(iwb)
 {
 }
Ejemplo n.º 18
0
 public Knight(IWeaponBehaviour iwb) : base(iwb)
 {
 }
Ejemplo n.º 19
0
 public Mindil(IWeaponBehaviour iwb) : base(iwb)
 {
 }
Ejemplo n.º 20
0
 public UnknownCharacter(IWeaponBehaviour weaponBehaviour) : base(weaponBehaviour)
 {
 }
Ejemplo n.º 21
0
 public Bowman(IWeaponBehaviour weaponBehaviour) : base(weaponBehaviour)
 {
 }
Ejemplo n.º 22
0
 public Troll(IWeaponBehaviour weaponBehaviour) : base(weaponBehaviour)
 {
 }
Ejemplo n.º 23
0
 public void Update()
 {
     _current_weapon_behaviour = _current_weapon_behaviour.Update(this, _animator);
 }
Ejemplo n.º 24
0
 public Troll(IWeaponBehaviour iwb) : base(iwb)
 {
 }
Ejemplo n.º 25
0
 public Knight(IWeaponBehaviour weaponBehaviour) : base(weaponBehaviour)
 {
 }
Ejemplo n.º 26
0
 public Queen(IWeaponBehaviour weaponBehaviour) : base(weaponBehaviour)
 {
 }
Ejemplo n.º 27
0
 public Queen(IWeaponBehaviour iwb) : base(iwb)
 {
 }
Ejemplo n.º 28
0
 public Character(IWeaponBehaviour weaponBehaviour)
 {
     this.weaponBehaviour = weaponBehaviour;
 }
Ejemplo n.º 29
0
 public Smurfette(IWeaponBehaviour weaponBehaviour) : base(weaponBehaviour)
 {
 }
Ejemplo n.º 30
0
 public King(IWeaponBehaviour weaponBehaviour) : base(weaponBehaviour)
 {
 }
Ejemplo n.º 31
0
 public void setWeapon(IWeaponBehaviour weapon) => this.weapon = weapon;
Ejemplo n.º 32
0
 public Character()
 {
     Weapon = new KnifeBehaviour(); // as default.
 }
Ejemplo n.º 33
0
 public override void ChangeWeapon(IWeaponBehaviour w)
 {
     weapon = w;
 }
Ejemplo n.º 34
0
 public Swordsman(IWeaponBehaviour weaponBehaviour) : base(weaponBehaviour)
 {
 }