private void Awake() { CreepType = creepType; //For defenders currentTowerLevel = 1; TowerDefenderLevel = currentTowerLevel; TowerDefenderUpgradePath = 0; defenderHealth = GetComponent <scrUnitHealth>(); animationEventHandler = GetComponentInChildren <scrAnimationEventHandler>(); }
void Start() { stats = GetComponent <scrCreepTypeDefiner>().CreepType; //Moved from awake to prevent conflict CreateHealthbar(); CurrentHealth = stats.initialHealth; //This could be written better i suppose, using virtual classes or such. I might go back and make that change later, if I deem it necessary //or feel like I would like the practise. 4 now tho, lets focus on getting this done at my current level of understanding. _creep = GetComponent <Creep>(); _defender = GetComponent <DefenderEngagementHandler>(); }
private void Start() { stats = GetComponent <scrCreepTypeDefiner>().CreepType; //Moved from awake to avoid conflict if (myPath != null) { transform.position = myPath.path.GetPoint(0); //Spawns the creep at the first point // Subscribed to the pathUpdated event so that we're notified if the path changes during the game myPath.pathUpdated += OnPathChanged; } //currentWaypointIndex = 0; _CreepHealth = GetComponent <scrUnitHealth>(); MovementSpeed = stats.movementSpeed; //For modifying the property movementspeed in other scripts //creepPossition = transform.position; //Stores the position of the transform RandomizedPossition = RandomizeCreepPossition(); //Randomizes the possition for each creep on start }
public void DefenderIsUpgraded(CreepStatsSO _newStats) { defenderOrCreepStats = _newStats; }
private void Awake() { defenderOrCreepStats = GetComponentInParent <scrCreepTypeDefiner>().CreepType; //Get the "creepType" from the stats on the gameobject localSplashDamageClass = GetComponentInParent <scrSplashDamage>(); //Gets the reference UnitDealsSplashDamage = false; }
public CreepStatsSO UpgradeDefenderStats(int _towerPath, int _towerLevel) { //print("Upgrading defender stats..."); TowerDefenderLevel = _towerLevel; TowerDefenderUpgradePath = _towerPath; if (TowerDefenderLevel == 2) //If the tower is at level 2 { //print("Defenders are now level 2"); switch (TowerDefenderUpgradePath) { case 1: UpdateHealthAndDamage(Path1Level2Defender); return(CreepType = Path1Level2Defender); case 2: UpdateHealthAndDamage(Path2Level2Defender); return(CreepType = Path2Level2Defender); case 3: UpdateHealthAndDamage(Path3Level2Defender); return(CreepType = Path3Level2Defender); default: Debug.LogError("The TowerProjectileUpgradePath variable in the scrTowerProjectileStatsRecorder script is assigned a number that is either null or incorrect."); return(CreepType = creepType); } } if (TowerDefenderLevel == 3) { //print("Defenders are now level 3"); switch (TowerDefenderUpgradePath) { case 1: UpdateHealthAndDamage(Path1Level3Defender); return(CreepType = Path1Level3Defender); case 2: UpdateHealthAndDamage(Path2Level3Defender); return(CreepType = Path2Level3Defender); case 3: UpdateHealthAndDamage(Path3Level3Defender); return(CreepType = Path3Level3Defender); default: Debug.LogError("The TowerProjectileUpgradePath variable in the scrTowerProjectileStatsRecorder script is assigned a number that is either null or incorrect."); return(CreepType = creepType); } } if (TowerDefenderLevel == 4) { //print("Defenders are now level 4"); switch (TowerDefenderUpgradePath) { case 1: UpdateHealthAndDamage(Path1Level4Defender); return(CreepType = Path1Level4Defender); case 2: UpdateHealthAndDamage(Path2Level4Defender); return(CreepType = Path2Level4Defender); case 3: UpdateHealthAndDamage(Path3Level4Defender); return(CreepType = Path3Level4Defender); default: Debug.LogError("The TowerProjectileUpgradePath variable in the scrTowerProjectileStatsRecorder script is assigned a number that is either null or incorrect."); return(CreepType = creepType); } } else { Debug.LogError("The TowerProjectileLevel variable in the scrTowerProjectileStatsRecorder script is assigned a number that is either null or incorrect."); return(CreepType = creepType); } }
private void UpdateHealthAndDamage(CreepStatsSO newStats) { defenderHealth.DefenderUpgraded(newStats); animationEventHandler.DefenderIsUpgraded(newStats); }
public void DefenderUpgraded(CreepStatsSO _newStats) { stats = _newStats; CurrentHealth = _newStats.initialHealth; }