public void Init(MatrixMap matrixMap, Action <Enemy> onEnemyPassed, float x, float y, int targetX, int targetY, Action <Enemy> onDeath) { Health = _maxHealth; _onDeath = onDeath; _pathfinding.Init(matrixMap, this, () => { onEnemyPassed(this); }, _formula, _moveSpeed, x, y, targetX, targetY); }
public void Init(MatrixMap matrixMap, Enemy enemy, Action onEnemyPassed, EPathFormula formula, float moveSpeed, float x, float y, int targetX, int targetY) { _matrixMap = matrixMap; _enemy = enemy; _onEnemyPassed = onEnemyPassed; _formula = formula; _moveSpeed = moveSpeed; _startGridPosition = new GridPosition(x, y); _endGridPosition = new GridPosition(targetX, targetY); InitializePosition(); UpdatePath(); }
public void Init(MatrixMap matrixMap, GameController gameController) { _matrixMap = matrixMap; _gameController = gameController; foreach (var enemyData in _enemiesData.dataArray) { var enemy = Resources.Load <Enemy>("Enemies/enemy" + enemyData.KEY); Assert.IsTrue(enemy != null); enemy.SetParameters(new Enemy.EnemyModel(enemyData.Maxhealth, enemyData.Movespeed, enemyData.Reward, enemyData.Flying)); int index; int.TryParse(enemyData.KEY, out index); _enemyTypes.Add(index, enemy); } }
public void Init(MatrixMap matrixMap) { _matrixMap = matrixMap; foreach (var towerData in _towersData.dataArray) { var tower = Resources.Load <Tower>("Towers/tower" + towerData.KEY); Assert.IsTrue(tower != null); var model = new Tower.TowerModel(tower, towerData.KEY, towerData.Main, towerData.Damage, towerData.Shootdistance, towerData.Firerate, towerData.Turnspeed, tower.IconSprite, towerData.Price, towerData.Upgradetowers); TowerTypes.Add(model, tower); } foreach (var type in TowerTypes) { type.Value.SetParameters(type.Key, TowerTypes.Select(x => x.Key).Where(x => type.Key.Upgrades.Contains(x.Id)).ToList()); } }