void Start() { empty = new UnitSkillDetail(); checking = false; gotChest = new List<GameObject>(); gotDoor = new List<GameObject>(); }
public static void TalktoMe(UnitSkillDetail u) { UnitMonsterTells ghost = new UnitMonsterTells(); ghost.monsterName = "Ghost"; ghost.description = "Ghosts: ghosts are strong against physical damage due to being intangible, but weak against magic and especially holy magic! Give that a try"; u.monsterTells.Add(ghost); }
public UnitClassSkill() { skill1 = new UnitSkillDetail(); skill2 = new UnitSkillDetail(); skill3 = new UnitSkillDetail(); skill4 = new UnitSkillDetail(); skill5 = new UnitSkillDetail(); skill6 = new UnitSkillDetail(); skill7 = new UnitSkillDetail(); skill8 = new UnitSkillDetail(); skill9 = new UnitSkillDetail(); skill10 = new UnitSkillDetail(); skill11 = new UnitSkillDetail(); skill12 = new UnitSkillDetail(); }
public static void AssignSkill(string sk, UnitClassSkill u, Unit un) { UnitSkillDetail darkness = new UnitSkillDetail(); darkness.name = "Darkness"; darkness.range = 4; darkness.magicDamage = true; darkness.effects.darkDamage = true; darkness.effects.hitrateReduce = true; darkness.attackPattern = "cross"; UnitSkillDetail darkrift = new UnitSkillDetail(); darkrift.name = "Darkrift"; darkrift.magicDamage = true; darkrift.effects.darkDamage = true; darkrift.effects.shaken = true; darkrift.range = 4; darkrift.attackPattern = "4tileLine"; UnitSkillDetail crushingDarkness = new UnitSkillDetail(); crushingDarkness.name = "Crushing Darkness"; crushingDarkness.effects.fourth = true; crushingDarkness.range = 4; UnitSkillDetail sacrificialBlade = new UnitSkillDetail(); sacrificialBlade.range = 1; sacrificialBlade.effects.selfDamage = true;//take 1/4 damage dealt sacrificialBlade.magicDamage = true; sacrificialBlade.effects.darkDamage = true; sacrificialBlade.extraDamageMod = 1.2f; sacrificialBlade.name = "Sacrificial Blade"; UnitSkillDetail demonArmor = new UnitSkillDetail(); demonArmor.name = "Demon Armor"; demonArmor.range = 0; demonArmor.effects.selfDamage = true; demonArmor.effects.damageReduction = true;//decrease all damage taken for 3 turns UnitSkillDetail growingDarkness = new UnitSkillDetail(); growingDarkness.name = "Growing Darkness"; growingDarkness.range = 0; growingDarkness.effects.counter = true; growingDarkness.magicDamage = true; growingDarkness.effects.darkDamage = true; UnitSkillDetail resurgence = new UnitSkillDetail(); resurgence.name = "Resurgence"; resurgence.range = 0; resurgence.restore = 1 / 4;//heal 1/4 health if (sk == darkness.name) { u.skill1 = darkness; } else if (sk == darkrift.name) { u.skill2 = darkrift; } else if (sk == crushingDarkness.name) { u.skill3 = crushingDarkness; } else if (sk == sacrificialBlade.name) { u.skill4 = sacrificialBlade; } else if (sk == demonArmor.name) { u.skill5 = demonArmor; } else if (sk == growingDarkness.name) { u.skill6 = growingDarkness; } else if (sk == resurgence.name) { u.skill7 = resurgence; } else if (sk == "HeavyBladesMaster1") { un.unitInfo.weaponRanks.HeavyBlade.canUse = true; un.unitInfo.weaponRanks.HeavyBlade.rank = 3; } else if (sk == "AxesMaster1") { un.unitInfo.weaponRanks.Axe.canUse = true; un.unitInfo.weaponRanks.Axe.rank = 3; } }
public static void AssignSkill(string sk, UnitClassSkill u, Unit un) { UnitSkillDetail burningMelody = new UnitSkillDetail(); burningMelody.name = "Burning Melody"; burningMelody.effects.fireDamage = true; burningMelody.effects.berserk = true; burningMelody.magicDamage = true; burningMelody.range = 4; burningMelody.attackPattern = "cross"; UnitSkillDetail hymnOfFrozenLoss = new UnitSkillDetail(); hymnOfFrozenLoss.name = "Frozen Dirge"; hymnOfFrozenLoss.effects.waterDamage = true; hymnOfFrozenLoss.magicDamage = true; hymnOfFrozenLoss.effects.stun = true; hymnOfFrozenLoss.range = 4; hymnOfFrozenLoss.attackPattern = "4tileLine"; UnitSkillDetail thunderAnthem = new UnitSkillDetail(); thunderAnthem.name = "Thunder Anthem"; thunderAnthem.effects.natureDamage = true; thunderAnthem.effects.confuse = true; thunderAnthem.magicDamage = true; thunderAnthem.range = 4; thunderAnthem.attackPattern = "3x3cone"; UnitSkillDetail songOfLife = new UnitSkillDetail(); songOfLife.restore = 1;//restore half magic stat life songOfLife.range = 3; songOfLife.effects.statusHeal = true; songOfLife.attackPattern = "cross"; songOfLife.name = "Song of Life"; UnitSkillDetail riddleOfSteel = new UnitSkillDetail(); riddleOfSteel.name = "Riddle of Steel"; riddleOfSteel.effects.attackBoost = true; // riddleOfSteel.effects.defenseBoost = true; // riddleOfSteel.range = 4; UnitSkillDetail dirgeOfSpelldeath = new UnitSkillDetail(); dirgeOfSpelldeath.name = "Dirge of Spelldeath"; dirgeOfSpelldeath.range = 4; dirgeOfSpelldeath.effects.reduceAttack = true; dirgeOfSpelldeath.effects.reduceDefense = true; dirgeOfSpelldeath.magicDamage = true; dirgeOfSpelldeath.effects.darkDamage = true; UnitSkillDetail raptureOfTheSong = new UnitSkillDetail(); raptureOfTheSong.name = "Rapture of the Song"; raptureOfTheSong.support = true; raptureOfTheSong.effects.magicDefenseBoost = true; raptureOfTheSong.effects.defenseBoost = true;//increase debuff duration UnitSkillDetail talkToMe = new UnitSkillDetail(); talkToMe.name = "Talk to Me!"; talkToMe.range = 4; talkToMe.effects.analyze = true;//learn monster strengths and weaknesses TalktoMe(talkToMe); if (sk == burningMelody.name) { u.skill8 = burningMelody; } else if (sk == hymnOfFrozenLoss.name) { u.skill2 = hymnOfFrozenLoss; } else if (sk == thunderAnthem.name) { u.skill3 = thunderAnthem; } else if (sk == songOfLife.name) { u.skill4 = songOfLife; } else if (sk == riddleOfSteel.name) { u.skill5 = riddleOfSteel; } else if (sk == dirgeOfSpelldeath.name) { u.skill6 = dirgeOfSpelldeath; } else if (sk == raptureOfTheSong.name) { u.skill7 = raptureOfTheSong; } else if (sk == talkToMe.name) { u.skill1 = talkToMe; } else if (sk == "AthamesMaster1") { un.unitInfo.weaponRanks.Athames.canUse = true; un.unitInfo.weaponRanks.Athames.rank = 3; } else if (sk == "LightBladesMaster1") { un.unitInfo.weaponRanks.LightBlades.canUse = true; un.unitInfo.weaponRanks.LightBlades.rank = 3; } }
void OnGUI() { GUILayout.BeginArea(new Rect(0, 0, Screen.width / 2, Screen.height/2)); GUILayout.BeginHorizontal(); GUILayout.FlexibleSpace(); GUILayout.BeginVertical(); GUILayout.FlexibleSpace(); if (currentMenu == Menu.HomeMenu) { if (GUILayout.Button("Select Action")) { currentMenu = Menu.SkillSelection; } if (GUILayout.Button("Use Item")) { currentMenu = Menu.Items; } GUILayout.Space(10); if (GUILayout.Button("Exit Menu")) { menuPar.SetActive(false); } } else if (currentMenu == Menu.SkillSelection) { GUILayout.BeginArea(new Rect(0, 0, Screen.width / 2, Screen.height * 1.5f)); GUILayout.BeginHorizontal(); GUILayout.FlexibleSpace(); GUILayout.BeginVertical(); GUILayout.FlexibleSpace(); // GUILayout.Space(10); scrollPosition = GUILayout.BeginScrollView(scrollPosition, false, true, GUILayout.Width(Screen.width / 2f), GUILayout.Height(Screen.height * 1.5f)); turnCon = GameObject.FindObjectOfType<SpeedCenterTurns>(); unitObj = turnCon.activeUnit; unit = unitObj.GetComponent<Stats>().FindMyself(); attack = unitObj.GetComponent<MapPlayerAttack>(); UnitWeapon weapon = FindEquippedWeapon(); if (weapon.equipped) { if (GUILayout.Button("Attack with " + weapon.name)) { attack.attackArea = weapon.details.range; attack.weapon = weapon; attack.ShowAttack(); checking = false; currentMenu = Menu.HomeMenu; menuPar.SetActive(false); } if (weapon.details.physical) GUILayout.Label("Physical Damage"); if (weapon.details.magic) GUILayout.Label("Magic Damage"); if (weapon.details.effects.poison) GUILayout.Label("Poison"); if (weapon.details.effects.fireDamage) GUILayout.Label("Fire Damage"); } GUILayout.Space(3); if (unit.unitInfo.main.pickSkill.skill1.name != "") { UnitSkillDetail u = unit.unitInfo.main.pickSkill.skill1; if (!checking) { if (GUILayout.Button(u.name)) { attack.currentAttack = unit.unitInfo.main.pickSkill.skill1; checking = true; } if (u.physicalDamage) GUILayout.Label("Physical Damage"); if (u.magicDamage) GUILayout.Label("Magic Damage"); if (u.effects.poison) GUILayout.Label("Poison"); if (u.effects.fireDamage) GUILayout.Label("Fire Damage"); } else if (attack.currentAttack == u) { if (GUILayout.Button("Yes use " + u.name)) { attack.UniqueAttack(); checking = false; currentMenu = Menu.HomeMenu; menuPar.SetActive(false); } if (GUILayout.Button("No")) { attack.currentAttack = empty; checking = false; } } } GUILayout.Space(3); if (unit.unitInfo.main.pickSkill.skill2.name != "") { UnitSkillDetail u = unit.unitInfo.main.pickSkill.skill2; if (!checking) { if (GUILayout.Button(u.name)) { attack.currentAttack = unit.unitInfo.main.pickSkill.skill2; checking = true; } if (u.physicalDamage) GUILayout.Label("Physical Damage"); if (u.magicDamage) GUILayout.Label("Magic Damage"); if (u.effects.poison) GUILayout.Label("Poison"); if (u.effects.fireDamage) GUILayout.Label("Fire Damage"); } else if (attack.currentAttack == u) { if (GUILayout.Button("Yes use " + u.name)) { attack.UniqueAttack(); checking = false; currentMenu = Menu.HomeMenu; menuPar.SetActive(false); } if (GUILayout.Button("No")) { attack.currentAttack = empty; checking = false; } } } GUILayout.Space(3); if (unit.unitInfo.main.pickSkill.skill3.name != "") { UnitSkillDetail u = unit.unitInfo.main.pickSkill.skill3; if (!checking) { if (GUILayout.Button(u.name)) { attack.currentAttack = u; checking = true; } if (u.physicalDamage) GUILayout.Label("Physical Damage"); if (u.magicDamage) GUILayout.Label("Magic Damage"); if (u.effects.poison) GUILayout.Label("Poison"); if (u.effects.fireDamage) GUILayout.Label("Fire Damage"); } else if (attack.currentAttack == u) { if (GUILayout.Button("Yes use " + u.name)) { attack.UniqueAttack(); checking = false; currentMenu = Menu.HomeMenu; menuPar.SetActive(false); } if (GUILayout.Button("No")) { attack.currentAttack = empty; checking = false; } } } GUILayout.Space(3); if (unit.unitInfo.main.pickSkill.skill4.name != "") { UnitSkillDetail u = unit.unitInfo.main.pickSkill.skill4; if (!checking) { if (GUILayout.Button(u.name)) { attack.currentAttack = unit.unitInfo.main.pickSkill.skill4; checking = true; } if (u.physicalDamage) GUILayout.Label("Physical Damage"); if (u.magicDamage) GUILayout.Label("Magic Damage"); if (u.effects.poison) GUILayout.Label("Poison"); if (u.effects.fireDamage) GUILayout.Label("Fire Damage"); } else if (attack.currentAttack == u) { if (GUILayout.Button("Yes use " + u.name)) { attack.UniqueAttack(); checking = false; currentMenu = Menu.HomeMenu; menuPar.SetActive(false); } if (GUILayout.Button("No")) { attack.currentAttack = empty; checking = false; } } } GUILayout.Space(3); if (unit.unitInfo.main.pickSkill.skill5.name != "") { UnitSkillDetail u = unit.unitInfo.main.pickSkill.skill5; if (!checking) { if (GUILayout.Button(u.name)) { attack.currentAttack = unit.unitInfo.main.pickSkill.skill5; checking = true; } if (u.physicalDamage) GUILayout.Label("Physical Damage"); if (u.magicDamage) GUILayout.Label("Magic Damage"); if (u.effects.poison) GUILayout.Label("Poison"); if (u.effects.fireDamage) GUILayout.Label("Fire Damage"); } else if (attack.currentAttack == u) { if (GUILayout.Button("Yes use " + u.name)) { attack.UniqueAttack(); checking = false; currentMenu = Menu.HomeMenu; menuPar.SetActive(false); } if (GUILayout.Button("No")) { attack.currentAttack = empty; checking = false; } } } GUILayout.Space(3); if (unit.unitInfo.main.pickSkill.skill6.name != "") { UnitSkillDetail u = unit.unitInfo.main.pickSkill.skill6; if (!checking) { if (GUILayout.Button(u.name)) { attack.currentAttack = unit.unitInfo.main.pickSkill.skill6; checking = true; } if (u.physicalDamage) GUILayout.Label("Physical Damage"); if (u.magicDamage) GUILayout.Label("Magic Damage"); if (u.effects.poison) GUILayout.Label("Poison"); if (u.effects.fireDamage) GUILayout.Label("Fire Damage"); } else if (attack.currentAttack == u) { if (GUILayout.Button("Yes use " + u.name)) { attack.UniqueAttack(); checking = false; currentMenu = Menu.HomeMenu; menuPar.SetActive(false); } if (GUILayout.Button("No")) { attack.currentAttack = empty; checking = false; } } } GUILayout.Space(3); if (unit.unitInfo.main.pickSkill.skill7.name != "") { UnitSkillDetail u = unit.unitInfo.main.pickSkill.skill7; if (!checking) { if (GUILayout.Button(u.name)) { attack.currentAttack = unit.unitInfo.main.pickSkill.skill7; checking = true; } if (u.physicalDamage) GUILayout.Label("Physical Damage"); if (u.magicDamage) GUILayout.Label("Magic Damage"); if (u.effects.poison) GUILayout.Label("Poison"); if (u.effects.fireDamage) GUILayout.Label("Fire Damage"); } else if (attack.currentAttack == u) { if (GUILayout.Button("Yes use " + u.name)) { attack.UniqueAttack(); checking = false; currentMenu = Menu.HomeMenu; menuPar.SetActive(false); } if (GUILayout.Button("No")) { attack.currentAttack = empty; checking = false; } } } GUILayout.Space(3); if (unit.unitInfo.main.pickSkill.skill8.name != "") { UnitSkillDetail u = unit.unitInfo.main.pickSkill.skill8; if (!checking) { if (GUILayout.Button(u.name)) { attack.currentAttack = unit.unitInfo.main.pickSkill.skill8; checking = true; } if (u.physicalDamage) GUILayout.Label("Physical Damage"); if (u.magicDamage) GUILayout.Label("Magic Damage"); if (u.effects.poison) GUILayout.Label("Poison"); if (u.effects.fireDamage) GUILayout.Label("Fire Damage"); } else if (attack.currentAttack == u) { if (GUILayout.Button("Yes use " + u.name)) { attack.UniqueAttack(); checking = false; currentMenu = Menu.HomeMenu; menuPar.SetActive(false); } if (GUILayout.Button("No")) { attack.currentAttack = empty; checking = false; } } } GUILayout.Space(3); if (unit.unitInfo.main.pickSkill.skill9.name != "") { UnitSkillDetail u = unit.unitInfo.main.pickSkill.skill9; if (!checking) { if (GUILayout.Button(u.name)) { attack.currentAttack = unit.unitInfo.main.pickSkill.skill9; checking = true; } if (u.physicalDamage) GUILayout.Label("Physical Damage"); if (u.magicDamage) GUILayout.Label("Magic Damage"); if (u.effects.poison) GUILayout.Label("Poison"); if (u.effects.fireDamage) GUILayout.Label("Fire Damage"); } else if (attack.currentAttack == u) { if (GUILayout.Button("Yes use " + u.name)) { attack.UniqueAttack(); checking = false; currentMenu = Menu.HomeMenu; menuPar.SetActive(false); } if (GUILayout.Button("No")) { attack.currentAttack = empty; checking = false; } } } GUILayout.Space(3); if (unit.unitInfo.main.pickSkill.skill10.name != "") { UnitSkillDetail u = unit.unitInfo.main.pickSkill.skill10; if (!checking) { if (GUILayout.Button(u.name)) { attack.currentAttack = unit.unitInfo.main.pickSkill.skill10; checking = true; } if (u.physicalDamage) GUILayout.Label("Physical Damage"); if (u.magicDamage) GUILayout.Label("Magic Damage"); if (u.effects.poison) GUILayout.Label("Poison"); if (u.effects.fireDamage) GUILayout.Label("Fire Damage"); } else if (attack.currentAttack == u) { if (GUILayout.Button("Yes use " + u.name)) { attack.UniqueAttack(); checking = false; currentMenu = Menu.HomeMenu; menuPar.SetActive(false); } if (GUILayout.Button("No")) { attack.currentAttack = empty; checking = false; } } } GUILayout.Space(3); if (unit.unitInfo.main.pickSkill.skill11.name != "") { UnitSkillDetail u = unit.unitInfo.main.pickSkill.skill11; if (!checking) { if (GUILayout.Button(u.name)) { attack.currentAttack = unit.unitInfo.main.pickSkill.skill11; checking = true; } if (u.physicalDamage) GUILayout.Label("Physical Damage"); if (u.magicDamage) GUILayout.Label("Magic Damage"); if (u.effects.poison) GUILayout.Label("Poison"); if (u.effects.fireDamage) GUILayout.Label("Fire Damage"); } else if (attack.currentAttack == u) { if (GUILayout.Button("Yes use " + u.name)) { attack.UniqueAttack(); checking = false; currentMenu = Menu.HomeMenu; menuPar.SetActive(false); } if (GUILayout.Button("No")) { attack.currentAttack = empty; checking = false; } } } GUILayout.Space(3); if (unit.unitInfo.main.pickSkill.skill12.name != "") { UnitSkillDetail u = unit.unitInfo.main.pickSkill.skill12; if (!checking) { if (GUILayout.Button(u.name)) { attack.currentAttack = unit.unitInfo.main.pickSkill.skill12; checking = true; } if (u.physicalDamage) GUILayout.Label("Physical Damage"); if (u.magicDamage) GUILayout.Label("Magic Damage"); if (u.effects.poison) GUILayout.Label("Poison"); if (u.effects.fireDamage) GUILayout.Label("Fire Damage"); } else if (attack.currentAttack == u) { if (GUILayout.Button("Yes use " + u.name)) { attack.UniqueAttack(); checking = false; currentMenu = Menu.HomeMenu; menuPar.SetActive(false); } if (GUILayout.Button("No")) { attack.currentAttack = empty; checking = false; } } } GUILayout.Space(10); if (GUILayout.Button("Exit Menu")) { checking = false; attack.currentAttack = empty; currentMenu = Menu.HomeMenu; menuPar.SetActive(false); } GUILayout.Label("", GUILayout.Width(Screen.width / 2.3f), GUILayout.Height(Screen.height * 1.5f)); GUILayout.EndScrollView(); GUILayout.FlexibleSpace(); GUILayout.EndVertical(); GUILayout.FlexibleSpace(); GUILayout.EndHorizontal(); GUILayout.EndArea(); } else if (currentMenu == Menu.Items) { GUILayout.BeginArea(new Rect(0, 0, Screen.width / 2, Screen.height / 2f)); GUILayout.BeginHorizontal(); GUILayout.FlexibleSpace(); GUILayout.BeginVertical(); GUILayout.FlexibleSpace(); GUILayout.Space(10); scrollPosition = GUILayout.BeginScrollView(scrollPosition, false, true, GUILayout.Width(Screen.width / 2f), GUILayout.Height(Screen.height * 1.5f)); turnCon = GameObject.FindObjectOfType<SpeedCenterTurns>(); unitObj = turnCon.activeUnit; unit = unitObj.GetComponent<Stats>().FindMyself(); attack = unitObj.GetComponent<MapPlayerAttack>(); EquipmentOwned e = CurrentGame.game.memoryGeneral.itemsOwned; ItemHolder potionSmall = CurrentGame.game.memoryGeneral.itemsOwned.items.Find(x => x.name == "Potion Small"); ItemHolder potionLarge = CurrentGame.game.memoryGeneral.itemsOwned.items.Find(x => x.name == "Potion Large"); ItemHolder chestKey = CurrentGame.game.memoryGeneral.itemsOwned.items.Find(x => x.name == "Chest Key"); ItemHolder doorKey = CurrentGame.game.memoryGeneral.itemsOwned.items.Find(x => x.name == "Door Key"); if (potionSmall.count > 0) { if (GUILayout.Button("Potion Small " + "x " + potionSmall.count)) { unitObj.GetComponent<Stats>().currentHp += potionSmall.effects.effectBase; unitObj.GetComponent<Stats>().HealHp(potionSmall.effects.effectBase); unitObj.GetComponent<Stats>().UpdateHp(); CurrentGame.game.memoryGeneral.itemsOwned.items.Find(x => x.name == "Potion Small").count--; attack.AssignMe(); MapManager manager = GameObject.FindObjectOfType<MapManager>(); manager.PlayerSkill(); currentMenu = Menu.HomeMenu; menuPar.SetActive(false); } } else { GUILayout.Label("Potion Small x 0"); } if (potionLarge.count > 0) { if (GUILayout.Button("Potion Large " + "x " + potionLarge.count)) { unitObj.GetComponent<Stats>().currentHp += potionLarge.effects.effectBase; unitObj.GetComponent<Stats>().HealHp(potionLarge.effects.effectBase); unitObj.GetComponent<Stats>().UpdateHp(); CurrentGame.game.memoryGeneral.itemsOwned.items.Find(x => x.name == "Potion Large").count--; attack.AssignMe(); MapManager manager = GameObject.FindObjectOfType<MapManager>(); manager.PlayerSkill(); currentMenu = Menu.HomeMenu; menuPar.SetActive(false); } } else { GUILayout.Label("Potion Lagre x 0"); } if (chestKey.count > 0) { if (SomethingClose("Chest", unitObj)) { if (GUILayout.Button("Chest Key " + "x " + chestKey.count)) { float nextTo = 1.9f; List<GameObject> newTargets = new List<GameObject>(); gotChest.Clear(); AssignArray(newTargets, "Chest"); foreach (GameObject obj in newTargets) { float d = Vector3.Distance(GameObject.Find(unitObj.name).transform.position, obj.transform.position); Debug.Log(d + " the space between us"); if (nextTo >= d) gotChest.Add(obj); } } } else { GUILayout.Box("No Nearby Chests"); GUILayout.Label("Chest Key " + "x " + chestKey.count); } } else { GUILayout.Label("Chest Key x 0"); } if (gotChest.Count > 0) { foreach (GameObject obj in gotChest) { if (GUILayout.Button("Open Chest " + obj.name)) { obj.GetComponent<ChestRewards>().RandomReward(); CurrentGame.game.memoryGeneral.itemsOwned.items.Find(x => x.name == "Chest Key").count--; attack.AssignMe(); MapManager manager = GameObject.FindObjectOfType<MapManager>(); manager.PlayerSkill(); gotChest.Clear(); currentMenu = Menu.HomeMenu; menuPar.SetActive(false); } } if (GUILayout.Button("Dont Use Key")) { gotChest.Clear(); } } if (doorKey.count > 0) { if (SomethingClose("Door", unitObj)) { if (GUILayout.Button("Door Key " + "x " + doorKey.count)) { float nextTo = 1.9f; List<GameObject> newTargets = new List<GameObject>(); gotDoor.Clear(); AssignArray(newTargets, "Door"); foreach (GameObject obj in newTargets) { float d = Vector3.Distance(GameObject.Find(unitObj.name).transform.position, obj.transform.position); Debug.Log(d + " the space between us now"); if (nextTo >= d) { Debug.Log("Success now"); gotDoor.Add(obj); } } } } else { GUILayout.Box("No Nearby Doors"); GUILayout.Label("Door Key " + "x " + chestKey.count); } } else { GUILayout.Label("Door Key x 0"); } if (gotDoor.Count > 0) { foreach (GameObject obj in gotDoor) { if (GUILayout.Button("Open Door " + obj.name)) { obj.GetComponent<LockedDoors>().OpenTheWay(); CurrentGame.game.memoryGeneral.itemsOwned.items.Find(x => x.name == "Door Key").count--; attack.AssignMe(); MapManager manager = GameObject.FindObjectOfType<MapManager>(); manager.PlayerSkill(); gotDoor.Clear(); currentMenu = Menu.HomeMenu; menuPar.SetActive(false); } } if (GUILayout.Button("Dont Use Key")) { gotDoor.Clear(); } } GUILayout.Space(10); if (GUILayout.Button("Exit Menu")) { checking = false; currentMenu = Menu.HomeMenu; menuPar.SetActive(false); } GUILayout.Label("", GUILayout.Width(Screen.width / 2f), GUILayout.Height(Screen.height * 1.5f)); GUILayout.EndScrollView(); GUILayout.FlexibleSpace(); GUILayout.EndVertical(); GUILayout.FlexibleSpace(); GUILayout.EndHorizontal(); GUILayout.EndArea(); } GUILayout.FlexibleSpace(); GUILayout.EndVertical(); GUILayout.FlexibleSpace(); GUILayout.EndHorizontal(); GUILayout.EndArea(); }
public static void AssignSkill(string sk, UnitClassSkill u) { UnitSkillDetail endarken = new UnitSkillDetail(); endarken.name = "Endarken"; endarken.range = 4; endarken.effects.darkDamage = true;//buff ally's weapon with dark damage UnitSkillDetail darkbolt = new UnitSkillDetail(); darkbolt.name = "Darkbolt"; darkbolt.magicDamage = true; darkbolt.effects.holyDamage = true; darkbolt.range = 4; UnitSkillDetail fear = new UnitSkillDetail(); fear.name = "Fear"; fear.effects.shaken = true; fear.range = 4; fear.attackPattern = "cross"; UnitSkillDetail darkBlast = new UnitSkillDetail(); darkBlast.range = 4; darkBlast.magicDamage = true; darkBlast.effects.darkDamage = true; darkBlast.name = "Dark Blast"; darkBlast.attackPattern = "cross"; UnitSkillDetail viciousness = new UnitSkillDetail(); viciousness.name = "Viciousness"; viciousness.support = true; viciousness.range = 0; viciousness.effects.attackBoost = true; viciousness.effects.darkDamage = true; UnitSkillDetail shadePulse = new UnitSkillDetail(); shadePulse.name = "Shade Pulse"; shadePulse.range = 1; shadePulse.effects.counter = true; shadePulse.effects.hitrateReduce = true; UnitSkillDetail feedTheNight = new UnitSkillDetail(); feedTheNight.name = "Feed the Night"; feedTheNight.range = 3; feedTheNight.extraDamageMod = 1.5f; feedTheNight.effects.darkDamage = true; feedTheNight.effects.selfDamage = true;// 1/4 damage dealt if (sk == endarken.name) { u.skill1 = endarken; } else if (sk == darkbolt.name) { u.skill2 = darkbolt; } else if (sk == fear.name) { u.skill3 = fear; } else if (sk == darkBlast.name) { u.skill4 = darkBlast; } else if (sk == viciousness.name) { u.skill5 = viciousness; } else if (sk == shadePulse.name) { u.skill6 = shadePulse; } else if (sk == feedTheNight.name) { u.skill7 = feedTheNight; } }
public static void AssignSkill(string sk, UnitClassSkill u, Unit un) { UnitSkillDetail firstBlood = new UnitSkillDetail(); firstBlood.name = "First Blood"; firstBlood.range = 1; firstBlood.physicalDamage = true; firstBlood.effects.shaken = true;//buff ally's weapon with dark damage UnitSkillDetail daggerThrow = new UnitSkillDetail(); daggerThrow.name = "Dagger Throw"; daggerThrow.magicDamage = true; daggerThrow.effects.movementDown = true; daggerThrow.range = 4; UnitSkillDetail pommelBash = new UnitSkillDetail(); pommelBash.name = "Pommel Bash"; pommelBash.effects.confuse = true; pommelBash.range = 1; pommelBash.physicalDamage = true; UnitSkillDetail pierceDefenses = new UnitSkillDetail(); pierceDefenses.range = 1; pierceDefenses.physicalDamage = true; pierceDefenses.effects.reduceDefense = true; pierceDefenses.name = "Pierce Defenses"; UnitSkillDetail blitz = new UnitSkillDetail(); blitz.name = "Blitz"; blitz.range = 1; blitz.physicalDamage = true; blitz.effects.extraHit = true; UnitSkillDetail riposte = new UnitSkillDetail(); riposte.name = "Riposte"; riposte.range = 0; riposte.effects.counter = true; riposte.effects.dodge = true; UnitSkillDetail mainGauche = new UnitSkillDetail(); mainGauche.name = "Feed the Night"; mainGauche.range = 0; mainGauche.support = true; mainGauche.effects.damageReduction = true;//reduce damage using second weapons might if (sk == firstBlood.name) { u.skill1 = firstBlood; } else if (sk == daggerThrow.name) { u.skill2 = daggerThrow; } else if (sk == pommelBash.name) { u.skill3 = pommelBash; } else if (sk == pierceDefenses.name) { u.skill4 = pierceDefenses; } else if (sk == blitz.name) { u.skill5 = blitz; } else if (sk == riposte.name) { u.skill6 = riposte; } else if (sk == mainGauche.name) { u.skill7 = mainGauche; } else if (sk == "CloseMaster1") { un.unitInfo.weaponRanks.Close.canUse = true; un.unitInfo.weaponRanks.Close.rank = 3; } else if (sk == "LightBladesMaster1") { un.unitInfo.weaponRanks.LightBlades.canUse = true; un.unitInfo.weaponRanks.LightBlades.rank = 3; } }
public static void AssignSkill(string sk, UnitClassSkill u) { UnitSkillDetail pistolWhip = new UnitSkillDetail(); pistolWhip.name = "Pistol-Whip"; pistolWhip.physicalDamage = true;//magic / 2 pistolWhip.range = 1; pistolWhip.effects.stun = true; UnitSkillDetail targeting = new UnitSkillDetail(); targeting.name = "Targeting"; targeting.support = true; targeting.effects.attackBoost = true; UnitSkillDetail deadEye = new UnitSkillDetail(); deadEye.name = "Deadeye"; deadEye.effects.critIncrease = true; deadEye.physicalDamage = true; deadEye.range = 4; UnitSkillDetail backBlast = new UnitSkillDetail(); backBlast.range = 4; backBlast.attackPattern = "4tileLine"; backBlast.effects.fireDamage = true; backBlast.magicDamage = true;//50% life backBlast.name = "Backblast"; UnitSkillDetail cauterize = new UnitSkillDetail(); cauterize.name = "Cauterize"; cauterize.range = 0; cauterize.effects.selfDamage = true; cauterize.effects.fireDamage = true; cauterize.effects.statusHeal = true; UnitSkillDetail flashAndFire = new UnitSkillDetail(); flashAndFire.name = "Flash and Fire"; flashAndFire.range = 3; flashAndFire.attackPattern = "3x3cone"; flashAndFire.effects.fireDamage = true; flashAndFire.effects.hitReduction = true; UnitSkillDetail recoil = new UnitSkillDetail(); recoil.name = "Recoil"; recoil.support = true; recoil.physicalDamage = true; recoil.effects.counter = true; if (sk == pistolWhip.name) { u.skill1 = pistolWhip; } else if (sk == targeting.name) { u.skill2 = targeting; } else if (sk == deadEye.name) { u.skill3 = deadEye; } else if (sk == backBlast.name) { u.skill4 = backBlast; } else if (sk == cauterize.name) { u.skill5 = cauterize; } else if (sk == flashAndFire.name) { u.skill6 = flashAndFire; } else if (sk == recoil.name) { u.skill7 = recoil; } }
public static void AssignSkill(string sk, UnitClassSkill u) { UnitSkillDetail descend = new UnitSkillDetail(); descend.name = "Descend"; descend.range = 0; descend.effects.attackBoost = true; UnitSkillDetail demonEyes = new UnitSkillDetail(); demonEyes.name = "Demon Eyes"; demonEyes.effects.shaken = true; demonEyes.range = 3; UnitSkillDetail nightfall = new UnitSkillDetail(); nightfall.name = "Nightfall"; nightfall.physicalDamage = true; nightfall.effects.hitrateReduce = true; nightfall.range = 4; UnitSkillDetail razorWings = new UnitSkillDetail(); razorWings.range = 4; razorWings.magicDamage = true; razorWings.effects.darkDamage = true; razorWings.attackPattern = "3x3cone"; razorWings.name = "Razor Wings"; UnitSkillDetail hackTheBlack = new UnitSkillDetail(); hackTheBlack.name = "Hack The Black"; hackTheBlack.range = 0; hackTheBlack.effects.darkDamage = true;//all attacks deal dark damage instead of physical for 3 turns hackTheBlack.support = true; UnitSkillDetail abyssalImpact = new UnitSkillDetail(); abyssalImpact.name = "Abyssal Inheritor"; abyssalImpact.range = 1; abyssalImpact.effects.darkDamage = true; abyssalImpact.physicalDamage = true; UnitSkillDetail bloodyCall = new UnitSkillDetail(); bloodyCall.name = "Bloody Call"; bloodyCall.support = true; bloodyCall.restore = 0;//heal 10% of dark damage you deal if (sk == descend.name) { u.skill1 = descend; } else if (sk == demonEyes.name) { u.skill2 = demonEyes; } else if (sk == nightfall.name) { u.skill3 = nightfall; } else if (sk == razorWings.name) { u.skill4 = razorWings; } else if (sk == hackTheBlack.name) { u.skill5 = hackTheBlack; } else if (sk == abyssalImpact.name) { u.skill6 = abyssalImpact; } else if (sk == bloodyCall.name) { u.skill7 = bloodyCall; } }
public static void AssignSkill(string sk, UnitClassSkill u, Unit un) { UnitSkillDetail knightsChallenge = new UnitSkillDetail(); knightsChallenge.name = "Knight's Challenge"; knightsChallenge.effects.attackBoost = true; knightsChallenge.attackPattern = "SupportTile"; knightsChallenge.range = 4; UnitSkillDetail shieldBash = new UnitSkillDetail(); shieldBash.name = "Shield Bash"; shieldBash.physicalDamage = true; shieldBash.effects.stun = true; shieldBash.range = 1; UnitSkillDetail guard = new UnitSkillDetail(); guard.name = "Guard"; guard.effects.damageReduction = true; guard.range = 0; UnitSkillDetail blackSwordStrike = new UnitSkillDetail(); blackSwordStrike.physicalDamage = true; blackSwordStrike.range = 1; blackSwordStrike.extraDamageMod = 1.2f; blackSwordStrike.name = "Black Sword Strike"; UnitSkillDetail spikedArmor = new UnitSkillDetail(); spikedArmor.name = "Spiked Armor"; spikedArmor.effects.counter = true; spikedArmor.physicalDamage = true;//Use Def instead of Str for counter UnitSkillDetail pommelStrike = new UnitSkillDetail(); pommelStrike.name = "Pommel Strike"; pommelStrike.range = 1; pommelStrike.effects.confuse = true; pommelStrike.physicalDamage = true; UnitSkillDetail heavy = new UnitSkillDetail(); heavy.name = "Heavy"; heavy.support = true; heavy.effects.defenseBoost = true;//+def, -move if (sk == knightsChallenge.name) { u.skill1 = knightsChallenge; } else if (sk == shieldBash.name) { u.skill2 = shieldBash; } else if (sk == guard.name) { u.skill3 = guard; } else if (sk == blackSwordStrike.name) { u.skill4 = blackSwordStrike; } else if (sk == spikedArmor.name) { u.skill5 = spikedArmor; } else if (sk == pommelStrike.name) { u.skill6 = pommelStrike; } else if (sk == heavy.name) { u.skill7 = heavy; } else if (sk == "SwordMaster1") { un.unitInfo.weaponRanks.HeavyBlade.canUse = true; un.unitInfo.weaponRanks.HeavyBlade.rank = 3; } else if (sk == "AxeMaster1") { un.unitInfo.weaponRanks.Axe.canUse = true; un.unitInfo.weaponRanks.Axe.rank = 3; } }
public static void AssignSkill(string sk, UnitClassSkill u, Unit un) { UnitSkillDetail kidneyShot = new UnitSkillDetail(); kidneyShot.name = "Kidney Shot"; kidneyShot.effects.stun = true; kidneyShot.physicalDamage = true; kidneyShot.range = 4; UnitSkillDetail assassination = new UnitSkillDetail(); assassination.name = "Assassination"; assassination.effects.kill = true; assassination.range = 1; UnitSkillDetail twinFangs = new UnitSkillDetail(); twinFangs.name = "Twin Fangs"; twinFangs.effects.extraHit = true; twinFangs.range = 1; UnitSkillDetail envenom = new UnitSkillDetail(); envenom.physicalDamage = true; envenom.range = 1; envenom.effects.poison = true; envenom.name = "Envenom"; UnitSkillDetail rupture = new UnitSkillDetail(); rupture.name = "Rupture"; rupture.extraDamageMod = 1.2f; //if target is suffering a debuff, deal extra damage rupture.physicalDamage = true; //Use Def instead of Str for counter UnitSkillDetail blackjack = new UnitSkillDetail(); blackjack.name = "Blackjack"; blackjack.range = 1; blackjack.effects.confuse = true; blackjack.physicalDamage = true; UnitSkillDetail bloodyJake = new UnitSkillDetail(); bloodyJake.name = "Bloody Jake"; bloodyJake.support = true; bloodyJake.effects.increaseDebuffs = true;//increase debuff duration if (sk == kidneyShot.name) { u.skill1 = kidneyShot; } else if (sk == assassination.name) { u.skill2 = assassination; } else if (sk == twinFangs.name) { u.skill3 = twinFangs; } else if (sk == envenom.name) { u.skill4 = envenom; } else if (sk == rupture.name) { u.skill5 = rupture; } else if (sk == blackjack.name) { u.skill6 = blackjack; } else if (sk == bloodyJake.name) { u.skill7 = bloodyJake; } else if (sk == "CloseMaster1") { un.unitInfo.weaponRanks.Close.canUse = true; un.unitInfo.weaponRanks.Close.rank = 3; } else if (sk == "LightBladesMaster1") { un.unitInfo.weaponRanks.LightBlades.canUse = true; un.unitInfo.weaponRanks.LightBlades.rank = 3; } }
public static void AssignSkill(string sk, UnitClassSkill u) { UnitSkillDetail barrier = new UnitSkillDetail(); barrier.name = "Barrier"; barrier.effects.nullDamage = true; barrier.range = 0; UnitSkillDetail arcaneBolt = new UnitSkillDetail(); arcaneBolt.name = "Arcane Bolt"; arcaneBolt.magicDamage = true; arcaneBolt.range = 5; UnitSkillDetail auraBurst = new UnitSkillDetail(); auraBurst.name = "Aura Burst"; auraBurst.magicDamage = true; auraBurst.attackPattern = "cross"; auraBurst.range = 0; UnitSkillDetail meditation = new UnitSkillDetail(); meditation.range = 0; meditation.effects.healing = true;//1/5 magic stat meditation.name = "Meditation"; UnitSkillDetail chant = new UnitSkillDetail(); chant.name = "Chant"; chant.range = 0; chant.effects.attackBoost = true; UnitSkillDetail powerThroughPain = new UnitSkillDetail(); powerThroughPain.name = "Power Through Pain"; powerThroughPain.range = 0; powerThroughPain.support = true; powerThroughPain.attackPattern = "self"; powerThroughPain.effects.counter = true; UnitSkillDetail arcaneMastery = new UnitSkillDetail(); arcaneMastery.name = "Arcane Mastery"; arcaneMastery.support = true; arcaneMastery.range = 0; arcaneMastery.extraDamageMod = 1.2f; if (sk == barrier.name) { u.skill1 = barrier; } else if (sk == arcaneBolt.name) { u.skill2 = arcaneBolt; } else if (sk == auraBurst.name) { u.skill3 = auraBurst; } else if (sk == meditation.name) { u.skill4 = meditation; } else if (sk == chant.name) { u.skill5 = chant; } else if (sk == powerThroughPain.name) { u.skill6 = powerThroughPain; } else if (sk == arcaneMastery.name) { u.skill7 = arcaneMastery; } }
public static void AssignSkill(string sk, UnitClassSkill u) { UnitSkillDetail mug = new UnitSkillDetail(); mug.name = "Mug"; mug.physicalDamage = true; mug.range = 1; mug.effects.stealMoney = true; mug.baseEffect = 100; UnitSkillDetail knifeThrow = new UnitSkillDetail(); knifeThrow.name = "Knife Throw"; knifeThrow.physicalDamage = true; knifeThrow.range = 3; UnitSkillDetail disarm = new UnitSkillDetail(); disarm.name = "Disarm"; disarm.range = 1; disarm.physicalDamage = true; disarm.effects.reduceAttack = true; UnitSkillDetail hamstring = new UnitSkillDetail(); hamstring.physicalDamage = true; hamstring.range = 1; hamstring.name = "Hamstring"; hamstring.effects.movementDown = true; UnitSkillDetail gouge = new UnitSkillDetail(); gouge.name = "Gouge"; gouge.range = 1; gouge.physicalDamage = true; gouge.effects.hitrateReduce = true; UnitSkillDetail vanish = new UnitSkillDetail(); vanish.name = "Vanish"; vanish.attackPattern = "Self"; vanish.range = 1; vanish.effects.invisible = true; UnitSkillDetail sanguinarian = new UnitSkillDetail(); sanguinarian.name = "Sanguinarian"; sanguinarian.range = 1; sanguinarian.effects.poison = true; sanguinarian.effects.counter = true; if (sk == mug.name) { u.skill1 = mug; } else if (sk == knifeThrow.name) { u.skill2 = knifeThrow; } else if (sk == disarm.name) { u.skill3 = disarm; } else if (sk == hamstring.name) { u.skill4 = hamstring; } else if (sk == gouge.name) { u.skill5 = gouge; } else if (sk == vanish.name) { u.skill6 = vanish; } else if (sk == sanguinarian.name) { u.skill7 = sanguinarian; } }
public static void AssignSkill(string sk, UnitClassSkill u, Unit un) { UnitSkillDetail vampirism = new UnitSkillDetail(); vampirism.name = "Vampirism"; vampirism.range = 1; vampirism.magicDamage = true; vampirism.effects.darkDamage = true; vampirism.restore = 1 / 4;//heal 1/4 damage dealt UnitSkillDetail shadowStrike = new UnitSkillDetail(); shadowStrike.name = "Shadow Strike"; shadowStrike.magicDamage = true; shadowStrike.effects.darkDamage = true; shadowStrike.effects.extraHit = true; shadowStrike.range = 1; UnitSkillDetail bleedingEdge = new UnitSkillDetail(); bleedingEdge.name = "Bleeding Edge"; bleedingEdge.effects.poison = true; bleedingEdge.range = 1; bleedingEdge.magicDamage = true; bleedingEdge.effects.metalDamage = true; UnitSkillDetail tension = new UnitSkillDetail(); tension.range = 0; tension.effects.speedBoost = true; tension.effects.selfDamage = true; tension.effects.attackBoost = true; tension.name = "Tension"; UnitSkillDetail shred = new UnitSkillDetail(); shred.name = "Shred"; shred.range = 1; shred.physicalDamage = true; shred.effects.reduceDefense = true; UnitSkillDetail bloodFrenzy = new UnitSkillDetail(); bloodFrenzy.name = "Blood Frenzy"; bloodFrenzy.range = 0; bloodFrenzy.effects.counter = true; bloodFrenzy.effects.attackBoost = true; bloodFrenzy.effects.hitReduction = true; UnitSkillDetail feedOnDeath = new UnitSkillDetail(); feedOnDeath.name = "Feed on Death"; feedOnDeath.range = 0; feedOnDeath.support = true; feedOnDeath.restore = 1 / 4;//heal 1/4 damage you deal if (sk == vampirism.name) { u.skill1 = vampirism; } else if (sk == shadowStrike.name) { u.skill2 = shadowStrike; } else if (sk == bleedingEdge.name) { u.skill3 = bleedingEdge; } else if (sk == tension.name) { u.skill4 = tension; } else if (sk == shred.name) { u.skill5 = shred; } else if (sk == bloodFrenzy.name) { u.skill6 = bloodFrenzy; } else if (sk == feedOnDeath.name) { u.skill7 = feedOnDeath; } else if (sk == "CloseMaster1") { un.unitInfo.weaponRanks.Close.canUse = true; un.unitInfo.weaponRanks.Close.rank = 3; } else if (sk == "AthameMaster1") { un.unitInfo.weaponRanks.Athames.canUse = true; un.unitInfo.weaponRanks.Athames.rank = 3; } }
public static void AssignSkill(string sk, UnitClassSkill u) { UnitSkillDetail trample = new UnitSkillDetail(); trample.name = "Trample"; trample.effects.overRun = true; trample.physicalDamage = true; trample.attackPattern = "Self"; UnitSkillDetail joust = new UnitSkillDetail(); joust.name = "Joust"; joust.physicalDamage = true; joust.range = 1; joust.effects.movementDown = true; UnitSkillDetail lance = new UnitSkillDetail(); lance.name = "Lance"; lance.physicalDamage = true; lance.effects.extraHit = true; lance.range = 1; lance.attackPattern = "2TileLine"; lance.physicalDamage = true; UnitSkillDetail flanking = new UnitSkillDetail(); flanking.physicalDamage = true; flanking.range = 1; flanking.name = "Flanking"; flanking.attackPattern = "cross"; UnitSkillDetail vault = new UnitSkillDetail(); vault.name = "Vault"; vault.attackPattern = "Self"; UnitSkillDetail hospitalier = new UnitSkillDetail(); hospitalier.name = "Hospitalier"; hospitalier.range = 1; hospitalier.attackPattern = "Self"; UnitSkillDetail warTrainedMount = new UnitSkillDetail(); warTrainedMount.name = "War Trained Mount"; warTrainedMount.support = true; warTrainedMount.effects.counter = true; if (sk == trample.name) { u.skill1 = trample; } else if (sk == joust.name) { u.skill2 = joust; } else if (sk == lance.name) { u.skill3 = lance; } else if (sk == flanking.name) { u.skill4 = flanking; } else if (sk == vault.name) { u.skill5 = vault; } else if (sk == hospitalier.name) { u.skill6 = hospitalier; } else if (sk == warTrainedMount.name) { u.skill7 = warTrainedMount; } }
public static void AssignSkill(string sk, UnitClassSkill u) { UnitSkillDetail avast = new UnitSkillDetail(); avast.name = "Avast!"; avast.extraDamageMod = 0;//+1/2 dmg vs target avast.range = 3; avast.effects.attackBoost = true; UnitSkillDetail ropeADope = new UnitSkillDetail(); ropeADope.name = "Rope-A-Dope"; ropeADope.physicalDamage = true; ropeADope.effects.swapPosition = true; ropeADope.range = 2; UnitSkillDetail pommelBash = new UnitSkillDetail(); pommelBash.name = "Pommel Bash"; pommelBash.physicalDamage = true; pommelBash.effects.confuse = true; pommelBash.range = 1; UnitSkillDetail toTheHilt = new UnitSkillDetail(); toTheHilt.range = 1; toTheHilt.effects.root = true;//entangle enemy toTheHilt.physicalDamage = true; toTheHilt.name = "To The Hilt"; UnitSkillDetail scatterShot = new UnitSkillDetail(); scatterShot.name = "Scattershot"; scatterShot.range = 3; scatterShot.attackPattern = "3x3cone"; scatterShot.effects.randomDamage = true;//deals random damage (weapon + atk * 2 max) scatterShot.physicalDamage = true; UnitSkillDetail parry = new UnitSkillDetail(); parry.name = "Parry"; parry.range = 0; parry.support = true; parry.attackPattern = "self"; parry.effects.dodge = true; parry.effects.counter = true; UnitSkillDetail shotOffTheBow = new UnitSkillDetail(); shotOffTheBow.name = "Shot off the Bow"; shotOffTheBow.range = 5; shotOffTheBow.effects.shaken = true; shotOffTheBow.attackPattern = "4tileLine"; shotOffTheBow.physicalDamage = true; if (sk == avast.name) { u.skill1 = avast; } else if (sk == ropeADope.name) { u.skill2 = ropeADope; } else if (sk == pommelBash.name) { u.skill3 = pommelBash; } else if (sk == toTheHilt.name) { u.skill4 = toTheHilt; } else if (sk == scatterShot.name) { u.skill5 = scatterShot; } else if (sk == parry.name) { u.skill6 = parry; } else if (sk == shotOffTheBow.name) { u.skill7 = shotOffTheBow; } }
public static void AssignSkill(string sk, UnitClassSkill u, Unit un) { UnitSkillDetail focused = new UnitSkillDetail(); focused.name = "Focused"; focused.effects.attackBoost = true; focused.support = true; focused.mod = 0.25f; focused.attackPattern = "SupportTile"; focused.range = 0; UnitSkillDetail wildStrike = new UnitSkillDetail(); wildStrike.name = "Wild Strike"; wildStrike.physicalDamage = true; wildStrike.attackPattern = "BackAndFront"; UnitSkillDetail bullrush = new UnitSkillDetail(); bullrush.name = "Bull Rush"; bullrush.physicalDamage = true; bullrush.effects.damageReduction = true; bullrush.effects.knockBack = true; bullrush.range = 1; UnitSkillDetail doubleEdged = new UnitSkillDetail(); doubleEdged.physicalDamage = true; doubleEdged.range = 1; doubleEdged.extraDamageMod = 1.2f; doubleEdged.name = "Double Edged"; doubleEdged.effects.selfDamage = true; UnitSkillDetail blitz = new UnitSkillDetail(); blitz.name = "Blitz"; blitz.range = 1; blitz.physicalDamage = true; blitz.effects.extraHit = true; blitz.effects.hitrateReduce = true; UnitSkillDetail lunge = new UnitSkillDetail(); lunge.name = "Lunge"; lunge.range = 1; lunge.attackPattern = "LineVert"; lunge.physicalDamage = true; UnitSkillDetail counter = new UnitSkillDetail(); counter.name = "Counter"; counter.support = true; counter.effects.counter = true; if (sk == focused.name) { u.skill1 = focused; } else if (sk == wildStrike.name) { u.skill2 = wildStrike; } else if (sk == bullrush.name) { u.skill3 = bullrush; } else if (sk == doubleEdged.name) { u.skill4 = doubleEdged; } else if (sk == blitz.name) { u.skill5 = blitz; } else if (sk == lunge.name) { u.skill6 = lunge; } else if (sk == counter.name) { u.skill7 = counter; } else if (sk == "SwordMaster1") { un.unitInfo.weaponRanks.HeavyBlade.canUse = true; un.unitInfo.weaponRanks.HeavyBlade.rank = 3; } }
public static void AssignSkill(string sk, UnitClassSkill u, Unit un) { UnitSkillDetail eyeline = new UnitSkillDetail(); eyeline.name = "Eyeline"; eyeline.effects.hitrateReduce = true; eyeline.range = 5; UnitSkillDetail enfiliade = new UnitSkillDetail(); enfiliade.name = "Enfilade"; enfiliade.physicalDamage = true; enfiliade.attackPattern = "3x3cone"; UnitSkillDetail hailOfArrows = new UnitSkillDetail(); hailOfArrows.name = "Hail of Arrows"; hailOfArrows.physicalDamage = true; hailOfArrows.range = 4; hailOfArrows.attackPattern = "cross"; UnitSkillDetail fullDraw = new UnitSkillDetail(); fullDraw.physicalDamage = true; fullDraw.range = 7; fullDraw.effects.hitReduction = true; fullDraw.name = "Full Draw"; UnitSkillDetail counterfire = new UnitSkillDetail(); counterfire.name = "Counterfire"; counterfire.effects.counter = true;//return fire when recieving ranged attack counterfire.support = true; counterfire.physicalDamage = true; UnitSkillDetail overDraw = new UnitSkillDetail(); overDraw.name = "Over Draw"; overDraw.range = 5; overDraw.extraDamageMod = 1.2f; overDraw.physicalDamage = true; UnitSkillDetail eagleEye = new UnitSkillDetail(); eagleEye.name = "Eagle Eye"; eagleEye.support = true; eagleEye.effects.increaseAccuracy = true;//+def, -move if (sk == eyeline.name) { u.skill1 = eyeline; } else if (sk == enfiliade.name) { u.skill2 = enfiliade; } else if (sk == hailOfArrows.name) { u.skill3 = hailOfArrows; } else if (sk == fullDraw.name) { u.skill4 = fullDraw; } else if (sk == counterfire.name) { u.skill5 = counterfire; } else if (sk == overDraw.name) { u.skill6 = overDraw; } else if (sk == eagleEye.name) { u.skill7 = eagleEye; } else if (sk == "RangedMaster1") { un.unitInfo.weaponRanks.Ranged.canUse = true; un.unitInfo.weaponRanks.Ranged.rank = 3; un.unitInfo.weaponRanks.Close.canUse = true; un.unitInfo.weaponRanks.Close.rank = 3; } else if (sk == "CloseMaster1") { un.unitInfo.weaponRanks.Close.canUse = true; un.unitInfo.weaponRanks.Close.rank = 3; } }
public static void AssignSkill(string sk, UnitClassSkill u) { UnitSkillDetail healingLight = new UnitSkillDetail(); healingLight.name = "Healing Light"; healingLight.restore = 1;//magic / 2 healingLight.range = 4; healingLight.effects.healing = true; UnitSkillDetail smite = new UnitSkillDetail(); smite.name = "Smite"; smite.magicDamage = true; smite.effects.holyDamage = true; smite.range = 4; UnitSkillDetail purify = new UnitSkillDetail(); purify.name = "Purify"; purify.effects.statusHeal = true; purify.range = 4; UnitSkillDetail breathOfLife = new UnitSkillDetail(); breathOfLife.range = 4; breathOfLife.effects.revive = true; //1/5 magic stat breathOfLife.restore = 0; //50% life breathOfLife.name = "Breath of Life"; UnitSkillDetail divineProtection = new UnitSkillDetail(); divineProtection.name = "Divine Protection"; divineProtection.range = 4; divineProtection.effects.defenseBoost = true; divineProtection.effects.magicDefenseBoost = true; UnitSkillDetail pray = new UnitSkillDetail(); pray.name = "Pray"; pray.range = 0; pray.attackPattern = "self"; pray.effects.attackBoost = true; UnitSkillDetail divineMastery = new UnitSkillDetail(); divineMastery.name = "Divine Mastery"; divineMastery.support = true; divineMastery.extraDamageMod = 1.2f; if (sk == healingLight.name) { u.skill1 = healingLight; } else if (sk == smite.name) { u.skill2 = smite; } else if (sk == purify.name) { u.skill3 = purify; } else if (sk == breathOfLife.name) { u.skill4 = breathOfLife; } else if (sk == divineProtection.name) { u.skill5 = divineProtection; } else if (sk == pray.name) { u.skill6 = pray; } else if (sk == divineMastery.name) { u.skill7 = divineMastery; } }
public static void AssignSkill(string sk, UnitClassSkill u, Unit un) { UnitSkillDetail lightItUp = new UnitSkillDetail(); lightItUp.name = "Light it Up!"; lightItUp.range = 1; lightItUp.magicDamage = true; lightItUp.effects.fireDamage = true;//deal fire damage to foe UnitSkillDetail kaboom = new UnitSkillDetail(); kaboom.name = "Kaboom"; kaboom.magicDamage = true; kaboom.effects.fireDamage = true; kaboom.effects.knockBack = true; kaboom.range = 4; kaboom.attackPattern = "cross"; UnitSkillDetail chainshot = new UnitSkillDetail(); chainshot.name = "Chainshot"; chainshot.effects.movementDown = true; chainshot.range = 5; chainshot.physicalDamage = true; UnitSkillDetail breachBlast = new UnitSkillDetail(); breachBlast.range = 2; breachBlast.attackPattern = "cross"; breachBlast.physicalDamage = true;//deal half physical, half fire damage to surrounding foes and self breachBlast.effects.fireDamage = true; breachBlast.effects.selfDamage = true; breachBlast.name = "Breach Blast"; UnitSkillDetail blowTheGates = new UnitSkillDetail(); blowTheGates.name = "Blow the Gates"; blowTheGates.range = 4; blowTheGates.attackPattern = "4tileLine"; blowTheGates.magicDamage = true; blowTheGates.effects.metalDamage = true; UnitSkillDetail cannonSwing = new UnitSkillDetail(); cannonSwing.name = "Cannon Swing"; cannonSwing.range = 1; cannonSwing.effects.metalDamage = true; cannonSwing.magicDamage = true; cannonSwing.effects.counter = true; cannonSwing.effects.knockBack = true; UnitSkillDetail flechette = new UnitSkillDetail(); flechette.name = "Flechette"; flechette.range = 3; flechette.attackPattern = "3x3cone"; flechette.effects.reduceDefense = true;//reduce enemy defense if (sk == lightItUp.name) { u.skill1 = lightItUp; } else if (sk == kaboom.name) { u.skill2 = kaboom; } else if (sk == chainshot.name) { u.skill3 = chainshot; } else if (sk == breachBlast.name) { u.skill4 = breachBlast; } else if (sk == blowTheGates.name) { u.skill5 = blowTheGates; } else if (sk == cannonSwing.name) { u.skill6 = cannonSwing; } else if (sk == flechette.name) { u.skill7 = flechette; } else if (sk == "CloseMaster1") { un.unitInfo.weaponRanks.Close.canUse = true; un.unitInfo.weaponRanks.Close.rank = 3; } else if (sk == "RangedMaster1") { un.unitInfo.weaponRanks.LightBlades.canUse = true; un.unitInfo.weaponRanks.LightBlades.rank = 3; } }
public static void AssignSkill(string sk, UnitClassSkill u) { UnitSkillDetail volley = new UnitSkillDetail(); volley.name = "Volley"; volley.attackPattern = "cross"; volley.physicalDamage = true; volley.range = 5; UnitSkillDetail longShot = new UnitSkillDetail(); longShot.name = "Long Shot"; longShot.physicalDamage = true; longShot.range = 8; longShot.effects.hitrateReduce = true; UnitSkillDetail doubleNock = new UnitSkillDetail(); doubleNock.name = "Double-Nock"; doubleNock.physicalDamage = true; doubleNock.effects.damageReduction = true; doubleNock.effects.extraHit = true; doubleNock.range = 5; UnitSkillDetail pierce = new UnitSkillDetail(); pierce.physicalDamage = true; pierce.range = 5; pierce.extraDamageMod = 1.2f; pierce.name = "Pierce"; UnitSkillDetail armShot = new UnitSkillDetail(); armShot.name = "Arm Shot"; armShot.range = 5; armShot.physicalDamage = true; armShot.effects.hitrateReduce = true; UnitSkillDetail legShot = new UnitSkillDetail(); legShot.name = "Leg Shot"; legShot.range = 4; legShot.effects.movementDown = true; legShot.physicalDamage = true; UnitSkillDetail stabbingArrow = new UnitSkillDetail(); stabbingArrow.name = "Stabbing Arrow"; stabbingArrow.support = true; stabbingArrow.effects.counter = true; if (sk == volley.name) { u.skill1 = volley; } else if (sk == longShot.name) { u.skill2 = longShot; } else if (sk == doubleNock.name) { u.skill3 = doubleNock; } else if (sk == pierce.name) { u.skill4 = pierce; } else if (sk == armShot.name) { u.skill5 = armShot; } else if (sk == legShot.name) { u.skill6 = legShot; } else if (sk == stabbingArrow.name) { u.skill7 = stabbingArrow; } }
public static void AssignSkill(string sk, UnitClassSkill u, Unit un) { UnitSkillDetail spearThrust = new UnitSkillDetail(); spearThrust.name = "Spear Thrust"; spearThrust.attackPattern = "2tileLine"; spearThrust.physicalDamage = true; spearThrust.range = 2; UnitSkillDetail hammerAndNail = new UnitSkillDetail(); hammerAndNail.name = "Hammer and Nail"; hammerAndNail.physicalDamage = true; hammerAndNail.range = 1; hammerAndNail.attackPattern = "cross"; UnitSkillDetail pierceDefenses = new UnitSkillDetail(); pierceDefenses.name = "Pierce Defenses"; pierceDefenses.effects.reduceDefense = true; pierceDefenses.physicalDamage = true; pierceDefenses.range = 1; UnitSkillDetail hurl = new UnitSkillDetail(); hurl.physicalDamage = true; hurl.range = 4; hurl.attackPattern = "4tileLine"; hurl.name = "Hurl"; UnitSkillDetail helmCleaver = new UnitSkillDetail(); helmCleaver.name = "Helm Cleaver"; helmCleaver.extraDamageMod = 1.2f; helmCleaver.physicalDamage = true; helmCleaver.effects.confuse = true; UnitSkillDetail charge = new UnitSkillDetail(); charge.name = "Charge!"; charge.range = 5;//rush an enemy and blow them back charge.effects.knockBack = true; charge.physicalDamage = true; UnitSkillDetail ringTheBell = new UnitSkillDetail(); ringTheBell.name = "Ring the Bell"; ringTheBell.effects.counter = true; ringTheBell.effects.movementDown = true;//increase debuff duration if (sk == spearThrust.name) { u.skill1 = spearThrust; } else if (sk == hammerAndNail.name) { u.skill2 = hammerAndNail; } else if (sk == pierceDefenses.name) { u.skill3 = pierceDefenses; } else if (sk == hurl.name) { u.skill4 = hurl; } else if (sk == helmCleaver.name) { u.skill5 = helmCleaver; } else if (sk == charge.name) { u.skill6 = charge; } else if (sk == ringTheBell.name) { u.skill7 = ringTheBell; } else if (sk == "HeavyBladesMaster1") { un.unitInfo.weaponRanks.HeavyBlade.canUse = true; un.unitInfo.weaponRanks.HeavyBlade.rank = 3; } else if (sk == "SpearMaster1") { un.unitInfo.weaponRanks.Spear.canUse = true; un.unitInfo.weaponRanks.Spear.rank = 3; } }
public static void AssignSkill(string sk, UnitClassSkill u) { UnitSkillDetail shadowstick = new UnitSkillDetail(); shadowstick.name = "Shadowstick"; shadowstick.magicDamage = true;//magic / 2 shadowstick.effects.darkDamage = true; shadowstick.range = 3; shadowstick.effects.root = true; UnitSkillDetail lightFades = new UnitSkillDetail(); lightFades.name = "Light Fades"; lightFades.effects.invisible = true;; lightFades.effects.hitrateReduce = true; lightFades.range = 0; lightFades.attackPattern = "Self"; UnitSkillDetail dirtyTrick = new UnitSkillDetail(); dirtyTrick.name = "Dirty Trick"; dirtyTrick.effects.randomDebuff = true; dirtyTrick.range = 1; UnitSkillDetail shades = new UnitSkillDetail(); shades.range = 0; shades.support = true; shades.effects.hitrateReduce = true; shades.effects.counter = true; shades.name = "Shades"; UnitSkillDetail smokeBomb = new UnitSkillDetail(); smokeBomb.name = "Smoke Bomb"; smokeBomb.range = 3; smokeBomb.effects.hitrateReduce = true; smokeBomb.effects.poison = true; smokeBomb.attackPattern = "cross"; UnitSkillDetail darkIntentions = new UnitSkillDetail(); darkIntentions.name = "Dark Intentions"; darkIntentions.effects.increaseDebuffs = true; darkIntentions.range = 0; darkIntentions.support = true; UnitSkillDetail knifeTheSoul = new UnitSkillDetail(); knifeTheSoul.name = "Knife the Soul"; knifeTheSoul.range = 0; knifeTheSoul.effects.trueDamage = true;//deals weapon half weapon might to enemy ignoring defense if it hits knifeTheSoul.effects.hitReduction = true; if (sk == shadowstick.name) { u.skill1 = shadowstick; } else if (sk == lightFades.name) { u.skill2 = lightFades; } else if (sk == dirtyTrick.name) { u.skill3 = dirtyTrick; } else if (sk == shades.name) { u.skill4 = shades; } else if (sk == smokeBomb.name) { u.skill5 = smokeBomb; } else if (sk == darkIntentions.name) { u.skill6 = darkIntentions; } else if (sk == knifeTheSoul.name) { u.skill7 = knifeTheSoul; } }
public static void AssignSkill(string sk, UnitClassSkill u, Unit un) { UnitSkillDetail cover = new UnitSkillDetail(); cover.name = "Cover";//take damage for adjacent enemy for 1 turn cover.effects.absorbDamage = true; cover.range = 1; UnitSkillDetail judgement = new UnitSkillDetail(); judgement.name = "Judgement"; judgement.effects.holyDamage = true; judgement.range = 4; UnitSkillDetail holyAura = new UnitSkillDetail(); holyAura.name = "Holy Aura"; holyAura.effects.counter = true;//heal 1/4 magic stat to adjacent units holyAura.attackPattern = "cross"; holyAura.range = 1; UnitSkillDetail mercy = new UnitSkillDetail(); mercy.restore = 1;//heal magic stat to adjacent ally mercy.range = 1; mercy.effects.statusHeal = true; mercy.name = "Mercy"; UnitSkillDetail divineStrike = new UnitSkillDetail(); divineStrike.name = "Divine Strike"; divineStrike.extraDamageMod = 1.2f; //if target is suffering a debuff, deal extra damage divineStrike.physicalDamage = true; //Use Def instead of Str for counter divineStrike.effects.holyDamage = true; UnitSkillDetail mightOfHeaven = new UnitSkillDetail(); mightOfHeaven.name = "Might of Heaven"; mightOfHeaven.range = 0; mightOfHeaven.effects.defenseBoost = true; mightOfHeaven.effects.magicDefenseBoost = true; mightOfHeaven.effects.magicBoost = true; UnitSkillDetail heavensSteps = new UnitSkillDetail(); heavensSteps.name = "Heavens Steps"; heavensSteps.support = true; heavensSteps.effects.movementIncrease = true;//increase debuff duration if (sk == cover.name) { u.skill1 = cover; } else if (sk == judgement.name) { u.skill2 = judgement; } else if (sk == holyAura.name) { u.skill3 = holyAura; } else if (sk == mercy.name) { u.skill4 = mercy; } else if (sk == divineStrike.name) { u.skill5 = divineStrike; } else if (sk == mightOfHeaven.name) { u.skill6 = mightOfHeaven; } else if (sk == heavensSteps.name) { u.skill7 = heavensSteps; } else if (sk == "HeavyBladesMaster1") { un.unitInfo.weaponRanks.HeavyBlade.canUse = true; un.unitInfo.weaponRanks.HeavyBlade.rank = 3; } else if (sk == "StavesMaster1") { un.unitInfo.weaponRanks.Stave.canUse = true; un.unitInfo.weaponRanks.Stave.rank = 3; } }
public static void AssignSkill(string sk, UnitClassSkill u, Unit un) { UnitSkillDetail possess = new UnitSkillDetail(); possess.name = "Possess"; possess.range = 4; possess.effects.absorbDamage = true;//for 1 turn, target takes half the damage you do UnitSkillDetail invidious = new UnitSkillDetail(); invidious.name = "Invidious"; invidious.magicDamage = true; invidious.effects.darkDamage = true; invidious.effects.shaken = true; invidious.range = 1; UnitSkillDetail hellBlade = new UnitSkillDetail(); hellBlade.name = "Hell Blade"; hellBlade.effects.fireDamage = true;//deals half fire, half dark hellBlade.effects.darkDamage = true; hellBlade.effects.stun = true; hellBlade.range = 1; hellBlade.magicDamage = true; UnitSkillDetail callTheDarkSpirits = new UnitSkillDetail(); callTheDarkSpirits.range = 4; callTheDarkSpirits.physicalDamage = true; callTheDarkSpirits.effects.shaken = true; callTheDarkSpirits.effects.confuse = true; callTheDarkSpirits.name = "Call to Dark Spirits"; callTheDarkSpirits.attackPattern = "cross"; UnitSkillDetail blackSword = new UnitSkillDetail(); blackSword.name = "Black Sword"; blackSword.range = 1; blackSword.magicDamage = true; blackSword.effects.metalDamage = true; UnitSkillDetail darkProtection = new UnitSkillDetail(); darkProtection.name = "Dark Protection"; darkProtection.range = 0; darkProtection.effects.selfDamage = true; darkProtection.effects.defenseBoost = true; darkProtection.effects.magicDefenseBoost = true; UnitSkillDetail evilThoughts = new UnitSkillDetail(); evilThoughts.name = "Evil Thoughts"; evilThoughts.range = 0; evilThoughts.support = true; evilThoughts.effects.magicBoost = true;//reduce damage using second weapons might evilThoughts.effects.increaseDebuffs = true; if (sk == possess.name) { u.skill1 = possess; } else if (sk == invidious.name) { u.skill2 = invidious; } else if (sk == hellBlade.name) { u.skill3 = hellBlade; } else if (sk == callTheDarkSpirits.name) { u.skill4 = callTheDarkSpirits; } else if (sk == blackSword.name) { u.skill5 = blackSword; } else if (sk == darkProtection.name) { u.skill6 = darkProtection; } else if (sk == evilThoughts.name) { u.skill7 = evilThoughts; } else if (sk == "HeavyBladesMaster1") { un.unitInfo.weaponRanks.HeavyBlade.canUse = true; un.unitInfo.weaponRanks.HeavyBlade.rank = 3; } else if (sk == "SpearMaster1") { un.unitInfo.weaponRanks.Spear.canUse = true; un.unitInfo.weaponRanks.Spear.rank = 3; } }