public void Update()// for debugging { if (Input.GetMouseButtonDown(1)) { Debug.Log(annie.GetRune().ToString()); GameDebugUtility.ShowAllDebugMsg(); } }
public void Calculate(Dictionary <int, SpellListItem> spellCastsSequence) { Debug.Log("Calculating using advanced technologies... "); GameDebugUtility.AddDebugMsg("--------------Calculating using advanced technologies...--------- "); intTime = 0; for (int i = 0; i < totalTime * 10; i++) { if (spellCastsSequence.ContainsKey(intTime)) { if (spellCastsSequence[intTime].caster.heroName.Equals("Annie")) { List <SpellCast> spellCasts = new List <SpellCast>(); SpellCast spellCast; switch (spellCastsSequence[intTime].strSpell) { case "A": spellCast = annie.CastSpell(BaseSpell.A); break; case "HextechProtobelt_01": spellCast = annie.CastSpell(BaseSpell.HextechProtobelt_01); break; case "HextechGunblade": spellCast = annie.CastSpell(BaseSpell.HextechGunblade); break; case "Spellbinder": spellCast = annie.CastSpell(BaseSpell.Spellbinder); break; case "Flash": spellCast = annie.CastSpell(BaseSpell.Flash); break; case "Ignite": spellCast = annie.CastSpell(BaseSpell.Ignite); break; default: Debug.Log("Current casting: " + spellCastsSequence[intTime]); spellCast = annie.CastSpell(spellCastsSequence[intTime].strSpell); break; } spellCasts.Add(spellCast); foreach (string addInfo in spellCast.strAdditionalInfo) { if (addInfo.Equals("Electrocute")) { spellCasts.Add(annie.CastSpell(BaseSpell.Electrocute)); } if (addInfo.Equals("ArcaneComet")) { spellCasts.Add(annie.CastSpell(BaseSpell.ArcaneComet)); } if (addInfo.Equals("Echo")) { spellCasts.Add(annie.CastSpell(BaseSpell.Echo)); } if (addInfo.Equals("HextechRevolver")) { spellCasts.Add(annie.CastSpell(BaseSpell.HextechRevolver)); } if (addInfo.Equals("SpellBlade_LichBane")) { spellCasts.Add(annie.CastSpell(BaseSpell.SpellBlade_LichBane)); } if (addInfo.EndsWith("Scorch")) { spellCasts.Add(annie.CastSpell(BaseSpell.Scorch)); } } enemy.Update(spellCasts); } else if (spellCastsSequence[intTime].caster.heroName.Equals("Enemy")) { List <SpellCast> spellCasts = new List <SpellCast>(); SpellCast spellCast; switch (spellCastsSequence[intTime].strSpell) { case "A": spellCast = enemy.CastSpell(BaseSpell.A); break; case "HextechProtobelt_01": spellCast = enemy.CastSpell(BaseSpell.HextechProtobelt_01); break; case "HextechGunblade": spellCast = enemy.CastSpell(BaseSpell.HextechGunblade); break; case "Spellbinder": spellCast = enemy.CastSpell(BaseSpell.Spellbinder); break; case "Flash": spellCast = enemy.CastSpell(BaseSpell.Flash); break; case "Ignite": spellCast = enemy.CastSpell(BaseSpell.Ignite); break; default: Debug.Log("Current casting: " + spellCastsSequence[intTime]); spellCast = enemy.CastSpell(spellCastsSequence[intTime].strSpell); break; } spellCasts.Add(spellCast); foreach (string addInfo in spellCast.strAdditionalInfo) { if (addInfo.Equals("Electrocute")) { spellCasts.Add(enemy.CastSpell(BaseSpell.Electrocute)); } if (addInfo.Equals("ArcaneComet")) { spellCasts.Add(enemy.CastSpell(BaseSpell.ArcaneComet)); } if (addInfo.Equals("Echo")) { spellCasts.Add(enemy.CastSpell(BaseSpell.Echo)); } if (addInfo.Equals("HextechRevolver")) { spellCasts.Add(enemy.CastSpell(BaseSpell.HextechRevolver)); } if (addInfo.Equals("SpellBlade_LichBane")) { spellCasts.Add(enemy.CastSpell(BaseSpell.SpellBlade_LichBane)); } if (addInfo.EndsWith("Scorch")) { spellCasts.Add(enemy.CastSpell(BaseSpell.Scorch)); } } annie.Update(spellCasts); } } else { enemy.Update(); } annie.Update(); intTime += intUpdateInterval; } logText.text = GameDebugUtility.ShowAllDebugMsg(); }