void Start() { rb = gameObject.GetComponent<Rigidbody> (); lighting = gameObject.GetComponent<Light>(); playerObject = GameObject.Find ("Player"); scscript = playerObject.GetComponent<SpellCaster>(); released = false; }
//TODO: start combat here. public override void OnEvent(FinalBoss evnt) { BoltConsole.Write("Final Boss battle (not yet implemented so everyone dies)"); BoltConsole.Write("Final Boss battle (not yet implemented so everyone dies)"); PanelHolder.instance.displayNotify("Final Boss Battle", "(not yet implemented so everyone dies)", "OK"); playerSpellcaster = playerEntity.GetComponent <Player>().spellcaster; playerSpellcaster.TakeDamage((int)(playerSpellcaster.fCurrentHealth)); SpellCaster.savePlayerData(playerSpellcaster); }
public override void Cast(SpellCaster caster) { var spawn = caster.spawn; var proj = Instantiate(projectile, spawn.transform.position, spawn.transform.rotation); var hommingScript = proj.GetComponent <HommingProjectile>(); hommingScript.speed = projectileSpeed; hommingScript.target = caster.target.transform; }
override public void Use(SpellCaster x) { GameObject i = InstantiateSpell(x); if (i.TryGetComponent(out SpellInstance spellInstance)) { spellInstance.Initialize(x); } }
public override void UseItem(SpellCaster player) { SoundManager.instance.PlaySingle(SoundManager.riftTalisman); player.RemoveFromInventory(this); CrisisHandler.instance.roundsUntilCrisis++; NetworkManager.s_Singleton.ModifyRoundsUntilNextCrisis(1); PanelHolder.instance.displayNotify("Rift Talisman", "The " + CrisisHandler.instance.currentCrisis + " will be delayed by 1 round.", "InventoryScene"); }
public override void Awake() { base.Awake(); spellCaster = this.GetComponent <SpellCaster> (); facingRight = false; Targets = new List <GameObject> (); Targets.Add(GameObject.FindGameObjectWithTag("Player")); }
public void CombatCast(SpellCaster player, float orbPercentage) { orbPercentage = orbPercentage * 100f; float multiplier = ((Mathf.Floor(orbPercentage / 20f) * 5f) + 5f) / 100f; //int healAmount = (int) player.fMaxHealth * multiplier; //player.HealDamage(healAmount); NetworkManager.s_Singleton.HealAllAlliesByPercent(multiplier, sSpellName); }
public void Interact(SpellCaster spellCaster) { if (_dead || owner != null) { return; } owner = spellCaster; spellCaster.pickUpSpell(this); }
private void Awake() { GameObject p = GameObject.FindGameObjectWithTag("LocalPlayer"); if (p != null) { Debug.Log("Combat found local player"); localSpellcaster = p.GetComponent <Player>().Spellcaster; } else { Debug.Log("Combat in test"); //Tests /* * localSpellcaster = new Summoner(); * localSpellcaster.chapter.spellsCollected.Add(new Skeletons()); // Pass * localSpellcaster.chapter.spellsCollected.Add(new Ravenssong()); // Pass * localSpellcaster.chapter.spellsCollected.Add(new Bearsfury());; // Pass * localSpellcaster = new Illusionist(); * localSpellcaster.chapter.spellsCollected.Add(new Catharsis()); //Pass * localSpellcaster.chapter.spellsCollected.Add(new Catastrophe()); // Pass * localSpellcaster.chapter.spellsCollected.Add(new Tragedy()); //Pass * localSpellcaster = new Chronomancer(); * localSpellcaster.chapter.spellsCollected.Add(new ReverseWounds()); // Pass * localSpellcaster.chapter.spellsCollected.Add(new Manipulate()); //Pass * localSpellcaster.chapter.spellsCollected.Add(new Chronoblast()); // Pass * localSpellcaster = new Elementalist(); * localSpellcaster.chapter.spellsCollected.Add(new Fireball()); //Looks like ToxicPotion * localSpellcaster.chapter.spellsCollected.Add(new EyeOfTheStorm()); // Looks like Bears fury, chronoblast, Natural Disaster * localSpellcaster.chapter.spellsCollected.Add(new NaturalDisaster()); // Looks like Tragedy * localSpellcaster = new Arcanist(); * localSpellcaster.chapter.spellsCollected.Add(new MarcellasBlessing()); //Looks like DistilledPotion * localSpellcaster.chapter.spellsCollected.Add(new RunicDarts()); // Pass * localSpellcaster.chapter.spellsCollected.Add(new Archive()); // Pass */ localSpellcaster = new Alchemist(); localSpellcaster.chapter.spellsCollected.Add(new DistilledPotion()); // Pass localSpellcaster.chapter.spellsCollected.Add(new PotionofBlessing()); // Needs more localSpellcaster.chapter.spellsCollected.Add(new ToxicPotion()); // Looks like Fireball, NaturalDisaster /* */ } InvokeRepeating("UpdateHealthBars", 0f, 1f); ImageScript.LinesUpdated += LinesUpdated; ImageScript.LinesCleared += LinesCleared; //Finding Pixel To World Unit Conversion Based On Orthographic Size Of Camera WorldUnitsInCamera.y = gameObject.GetComponent <Camera>().orthographicSize * 2; WorldUnitsInCamera.x = WorldUnitsInCamera.y * Screen.width / Screen.height; WorldToPixelAmount.x = Screen.width / WorldUnitsInCamera.x; WorldToPixelAmount.y = Screen.height / WorldUnitsInCamera.y; ResetButton.onClick.AddListener(ResetSwipe); }
public void SpellcastPhase2(int sID, SpellCaster player) { this.player = player; // cast spell for free if Umbra's Eclipse is active if (SpellTracker.instance.CheckUmbra()) { if (player.spellcasterID != sID) { PanelHolder.instance.displaySpellCastNotif(sSpellName, "You and your ally will have an extra D9 next time you roll.", "MainPlayerScene"); } if (player.tempDice.ContainsKey("D9")) { player.tempDice["D9"] += 1; } else { player.tempDice.Add("D9", 1); } NetworkManager.s_Singleton.CastOnAlly(player.spellcasterID, sID, sSpellName); player.numSpellsCastThisTurn++; SpellTracker.instance.lastSpellCasted = this; } else if (player.iMana < iManaCost) { PanelHolder.instance.displayNotify("Not enough Mana!", "You do not have enough mana to cast this spell.", "OK"); } else { // subtract mana player.iMana -= iManaCost; if (player.spellcasterID != sID) { PanelHolder.instance.displaySpellCastNotif(sSpellName, "You and your ally will have an extra D9 next time you roll.", "MainPlayerScene"); } if (player.tempDice.ContainsKey("D9")) { player.tempDice["D9"] += 1; } else { player.tempDice.Add("D9", 1); } NetworkManager.s_Singleton.CastOnAlly(player.spellcasterID, sID, sSpellName); player.numSpellsCastThisTurn++; SpellTracker.instance.lastSpellCasted = this; } }
public override bool CanBeCastedBy(SpellCaster caster, out string error) { if (caster.caster.unit && caster.caster.unit.currentHealth >= caster.caster.unit.maxHealth) { error = "life is already full"; return(false); } error = ""; return(true); }
private static void Postfix(SpellCaster __instance) { if (__instance.creature != Creature.player) { return; } TryLevitate(__instance.casterLeft); TryLevitate(__instance.casterRight); }
public void SpellcastPhase2(int sID, SpellCaster player) { OrbPercent = OrbPercent * 100f; //for every 20% the orb is filled, add 5% to the multiplier float multiplier = ((Mathf.Floor(OrbPercent / 20f) * 5f) + 10f) / 100f; // player.totalDamage += player.totalDamage * multiplier; NetworkManager.s_Singleton.CastOnAlly(player.spellcasterID, sID, sSpellName); NetworkManager.s_Singleton.IncreaseAllyDamageByPercent(sID, multiplier); }
public void CombatCast(SpellCaster player, float orbPercentage) { // for every 20% the orb is filled, add 5% to the multiplier. orbPercentage = orbPercentage * 100f; float tapBuff = (int)Mathf.Floor(orbPercentage / 20f) * 5f; float totalIncrease = (tapBuff + 15f) / 100f; //teamTapTotal += teamTapTotal * totalIncrease; NetworkManager.s_Singleton.IncreaseTeamTapPercentage(totalIncrease, sSpellName); }
public override void Load(SpellCaster spellCaster, Level level) { base.Load(spellCaster, level); spellCaster.telekinesis.grabRagdoll = true; _defaultRagdollSpeed = spellCaster.telekinesis.followRagdollSpeedCurve.keys[1].value; //minimum is 1.0 ModifyRagdollSpeed(Mathf.Max(1.0f, ragdollSpeedBoost)); }
public override void Load(SpellCaster spellCaster) { base.Load(spellCaster); hasSpawnedDagger = false; isSpawningHandle = false; controller = spellCaster.mana.gameObject.GetOrAddComponent <DaggerController>(); controller.itemId = itemId; controller.daggersOrbitWhenIdle = daggersOrbitWhenIdle; isCasting = false; }
public override void Merge(bool active) { base.Merge(active); this.active = active; if (active) { daggerCaster = (mana.casterLeft.spellInstance is SpellDagger) ? mana.casterLeft : mana.casterRight; otherCaster = daggerCaster.ragdollHand.otherHand.caster; } }
public void CombatCast(SpellCaster player, float orbPercentage) { // throw new System.NotImplementedException(); // for every 20% the orb is filled, add 5% to the damage multiplier orbPercentage = orbPercentage * 100f; float multiplier = 5f + (int)(Mathf.Floor(orbPercentage / 20f) * 5f); NetworkManager.s_Singleton.IncreaseTeamDamageByPercent(multiplier / 100f, sSpellName); // teamOutput += teamOutput * (multiplier / 100); }
public void SpellcastPhase2(int sID, SpellCaster player) { this.player = player; // cast spell for free if Umbra's Eclipse is active if (SpellTracker.instance.CheckUmbra()) { if (sID != player.spellcasterID) { NetworkManager.s_Singleton.CastOnAlly(player.spellcasterID, sID, sSpellName); } else { if (SpellTracker.instance.lastSpellCasted == null) { PanelHolder.instance.displayNotify("No Spell was Cast", "Player has not cast any spells yet!", "OK"); } else { Spell newSpell = SpellTracker.instance.lastSpellCasted; player.CollectMana(newSpell.iManaCost); newSpell.SpellCast(player); } } player.numSpellsCastThisTurn++; } else if (player.iMana < iManaCost) { PanelHolder.instance.displayNotify("Not enough Mana!", "You don't have enough mana to cast this spell.", "OK"); } else { // subtract mana player.iMana -= iManaCost; if (sID != player.spellcasterID) { NetworkManager.s_Singleton.CastOnAlly(player.spellcasterID, sID, sSpellName); } else { if (SpellTracker.instance.lastSpellCasted == null) { PanelHolder.instance.displayNotify("No Spell was Cast", "Player has not cast any spells yet!", "OK"); } else { Spell newSpell = SpellTracker.instance.lastSpellCasted; player.CollectMana(newSpell.iManaCost); newSpell.SpellCast(player); } } player.numSpellsCastThisTurn++; } }
//The ally recieves this event. public override void OnEvent(CastOnAllyEvent evnt) { playerSpellcaster = playerEntity.GetComponent <Player>().spellcaster; // 8 stands for all spellcasters, the spell is targeting everyone if (playerSpellcaster.spellcasterID == evnt.ToSpellcaster || evnt.ToSpellcaster == 8) { //PanelHolder.instance.displayNotify(evnt.EventName, "Lose " + ((int)(evnt.PercentDmgDecimal * 100)) + "% health", "OK"); IAllyCastable spell = (IAllyCastable)AllSpellsDict.AllSpells[evnt.Spellname]; spell.RecieveCastFromAlly(playerSpellcaster); } }
// GET: SpellCaster/Edit/5 public ActionResult Edit(int id) { var spellCaster = GetSpellCasterById(id); var viewModel = new SpellCaster() { Name = spellCaster.Name, Id = spellCaster.Id }; return(View(viewModel)); }
public override void UseItem(SpellCaster player) { SoundManager.instance.PlaySingle(SoundManager.opalAmmonite); player.RemoveFromInventory(this); int randMana = Random.Range(800, 2600); player.CollectMana(randMana); PanelHolder.instance.displayNotify("Opal Ammonite", "The Opal Ammonite granted you " + randMana + " mana!", "InventoryScene"); }
private SpellCaster _spellcaster; //Class to launch spells void Start() { _spellcaster = GetComponentInChildren <SpellCaster>(); energy = maxEnergy; mana = maxMana; life = maxLife; _movementCircle = Instantiate(movementCirclePrefab, transform); if (!movementDist) { _movementCircle.SetActive(!_movementCircle.activeSelf); } }
public void CombatCast(SpellCaster player, float orbPercentage) { orbPercentage = orbPercentage * 100f; float multiplier = ((Mathf.Floor(orbPercentage / 20f) * 5f) + 20f) / 100f; //int healAmount = (int) player.fCurrentHealth * multiplier; //player.HealDamage(healAmount); //enemy.DealDamage(healAmount / 2); // NetworkManager.s_Singleton.HealAllAlliesByPercent(multiplier, sSpellName); // NetworkManager.s_Singleton.DealPercentDmgToBoss(0.1f); NetworkManager.s_Singleton.Ravensong(multiplier, 0.1f); }
// private Key myKey; // the key that unlocks this door public void Interact(SpellCaster spellCaster) { if (_locked) { return; } if (movement != null) { return; } movement = StartCoroutine(doorRotation()); }
/*Everyone recieves this during combat*/ public override void OnEvent(HealPercentMissingHealth evnt) { playerSpellcaster = playerEntity.GetComponent <Player>().spellcaster; playerSpellcaster.HealPercentMissingHP(evnt.Percent); //TODO: Display feedback. PanelHolder.instance.displaySpellCastNotif(evnt.Spellname, "All allies were healed by " + (evnt.Percent * 100) + " percent of missing health!", "OK"); if (BoltNetwork.IsServer) { gameStateEntity.GetComponent <NetworkGameState>() .IncrementAttackCount(); } }
private void Start() { brain = GetComponent <NavMeshBrain>(); if (brain) { canFire = false; brain.OnTargetOnAttackRange += Enable; brain.OnStartChasingTarget += Disable; } x = GetComponent <SpellCaster>(); InvokeRepeating("UseSpell", timeInterval, timeInterval); }
public static void SpellCasterTests() { SpellCaster caster = new SpellCaster(); GD.Print("Blank caster looks like this" + caster.ToString()); caster = new SpellCaster(new List <Item.Types> { Item.Types.Crossbow, Item.Types.Spear, Item.Types.Knife }); GD.Print("Caster with three spells looks like this." + caster.ToString()); }
public void RecieveCastFromAlly(SpellCaster player) { foreach (Spell s in player.chapter.spellsCollected) { if (s.combatSpell) { ++s.iCharges; } } PanelHolder.instance.displaySpellCastNotif("Leon's Shining", "You gained a charge in all your combat spells!", "MainPlayerScene"); }
public void RecieveCastFromAlly(SpellCaster player) { PanelHolder.instance.displaySpellCastNotif(sSpellName, "You and your ally will have an extra D9 next time you roll.", "MainPlayerScene"); if (player.tempDice.ContainsKey("D9")) { player.tempDice["D9"] += 1; } else { player.tempDice.Add("D9", 1); } }
void SetDescription(SpellCaster caster) { if (!caster) { txtDescription.text = ""; } else { txtDescription.text = "<size=20>" + caster.name + "</size>\n" + caster.info; } }
// Use this for initialization public override void Start () { base.Start (); sprite_renderer = this.GetComponent<SpriteRenderer> (); //Initialize caster component caster = this.GetComponent<SpellCaster> (); caster.Initialize(this, new Spell[4], mana); //Initialize AttributeManager attributes = this.GetComponent<AttributeManager>(); attributes.AssignSkillpoints (5); }
// Use this for initialization void Start () { spelCaster = GameObject.FindObjectOfType<SpellCaster> (); ritualScript = GameObject.FindObjectOfType<RitualScript> (); }
protected override void Awake() { base.Awake(); mStats = GetComponentInChildren<UnitStat>(); mFlockUnit = GetComponentInChildren<FlockUnit>(); mListener = GetComponentInChildren<ActionListener>(); mActTarget = GetComponentInChildren<ActionTarget>(); mSpriteControl = GetComponentInChildren<UnitSpriteController>(); mWeapon = GetComponentInChildren<Weapon>(); mSpellCaster = GetComponentInChildren<SpellCaster>(); //hook calls up mStats.statChangeCallback += OnStatChange; if(mFlockUnit != null) { mFlockUnit.groupMoveEnabled = false; } if(mListener != null) { mListener.enterCallback += OnActionEnter; mListener.hitEnterCallback += OnActionHitEnter; mListener.hitExitCallback += OnActionHitExit; mListener.finishCallback += OnActionFinish; } }
void Start() { instance = this; }