// Update is called once per frame void Update() { //if (!NetworkServer.active) return; if (!initialized) { initialized = MonsterInitializer.Initialize(gameObject, new AttackAbility { name = "Attack", description = "Basic attack.", damage = 1.5f, element = Element.piercing, baseStat = BaseStat.strength, hitEffect = 2 }, new AttackAbility { name = "Acid Breath", description = "Ankheg breath.", damage = 1.75f, element = Element.acid, baseStat = BaseStat.strength, isRanged = true, rangedProjectile = 2, cooldown = 15f }); } }
// Update is called once per frame void Update() { //if (!NetworkServer.active) return; if (!initialized) { initialized = MonsterInitializer.Initialize(gameObject, new AttackAbility { name = "Attack", description = "Spell attack.", damage = 0.25f, element = Element.dark, baseStat = BaseStat.intelligence, hitEffect = 7, rangedProjectile = 7, isRanged = true, attributes = new List <AbilityAttribute> { new AbilityAttribute { type = "inflictVulnerability", parameters = new List <AbilityAttributeParameter> { new AbilityAttributeParameter { name = "degree", value = 100f }, new AbilityAttributeParameter { name = "duration", value = 10f } } } } }); } }
// Update is called once per frame void Update() { //if (!NetworkServer.active) return; if (!initialized) { initialized = MonsterInitializer.Initialize(gameObject, new AttackAbility { name = "Pushing Attack", description = "Pushing attack.", damage = 1.125f, element = Element.bashing, baseStat = BaseStat.strength, hitEffect = 1, attributes = new List <AbilityAttribute> { new AbilityAttribute { type = "knockback", parameters = new List <AbilityAttributeParameter> { new AbilityAttributeParameter { name = "degree", value = 5f } } } } }); GetComponent <Monster>().elementalAffinities.Add(new ElementalAffinity(Element.piercing, -50)); } }
// Update is called once per frame void Update() { //if (!NetworkServer.active) return; if (!initialized) { initialized = MonsterInitializer.Initialize(gameObject, new AttackAbility { name = "Attack", description = "Spell attack.", damage = 1f, element = Element.dark, baseStat = BaseStat.intelligence, hitEffect = 7, rangedProjectile = 7, isRanged = true }, new UtilityAbility { name = "Cure", description = "Cure wounds.", baseStat = BaseStat.wisdom, mpUsage = 20, attributes = new List <AbilityAttribute> { new AbilityAttribute { type = "heal", parameters = new List <AbilityAttributeParameter> { new AbilityAttributeParameter { name = "degree", value = 1.125f } } } } }); } }
// Update is called once per frame void Update() { //if (!NetworkServer.active) return; if (!initialized) { initialized = MonsterInitializer.Initialize(gameObject, new AttackAbility { name = "Attack", description = "Basic attack.", damage = 1.5f, element = Element.bashing, baseStat = BaseStat.strength, hitEffect = 1 }, new AttackAbility { name = "Charge", description = "Charge.", damage = 2.62f, element = Element.bashing, baseStat = BaseStat.strength, cooldown = 3f, hitEffect = 1, attributes = new List <AbilityAttribute> { new AbilityAttribute { type = "chargeTowards" } } }); } }
// Update is called once per frame void Update() { //if (!NetworkServer.active) return; if (!initialized) { initialized = MonsterInitializer.Initialize(gameObject, new AttackAbility { name = "Attack", description = "Basic attack.", damage = 1.5f, element = Element.piercing, baseStat = BaseStat.strength, hitEffect = 2 }, new AttackAbility { name = "Spider Poisoning", description = "Spider poisoning.", damage = 0f, element = Element.acid, baseStat = BaseStat.strength, dotDamage = 3.9375f, dotTime = 6f, cooldown = 6f, hitEffect = 2 }); GetComponent <Monster>().elementalAffinities.Add(new ElementalAffinity(Element.slashing, -50)); } }
// Update is called once per frame void Update() { //if (!NetworkServer.active) return; if (!initialized) { initialized = MonsterInitializer.Initialize(gameObject, new AttackAbility { name = "Basic Attack", description = "Basic attack.", damage = 1.5f, element = Element.slashing, hitEffect = 0 }, new UtilityAbility { name = "Cure All", description = "Heals all allies", baseStat = BaseStat.wisdom, cooldown = 5, attributes = new List <AbilityAttribute> { new AbilityAttribute { type = "healAll", parameters = new List <AbilityAttributeParameter> { new AbilityAttributeParameter { name = "degree", value = 3.5f } } } } }); GetComponent <Monster>().elementalAffinities.Add(new ElementalAffinity(Element.dark, -50)); GetComponent <Monster>().elementalAffinities.Add(new ElementalAffinity(Element.light, 100)); } }
// Update is called once per frame void Update() { //if (!NetworkServer.active) return; if (!initialized) { initialized = MonsterInitializer.Initialize(gameObject, new AttackAbility { name = "Fire", description = "Fire.", damage = 1.6f, element = Element.fire, baseStat = BaseStat.strength, cooldown = 30, radius = 4, aoe = 3, hitEffect = 3, rangedProjectile = 0, isRanged = true }, new AttackAbility { name = "Basic Attack", description = "Basic attack.", damage = 1.5f, element = Element.fire, baseStat = BaseStat.strength, hitEffect = 3 }); GetComponent <Monster>().elementalAffinities.Add(new ElementalAffinity(Element.ice, -50)); GetComponent <Monster>().elementalAffinities.Add(new ElementalAffinity(Element.fire, 100)); } }
// Update is called once per frame void Update() { //if (!NetworkServer.active) return; if (!initialized) { initialized = MonsterInitializer.Initialize(gameObject, new AttackAbility { name = "Attack", description = "Spell attack.", damage = 1f, element = Element.fire, baseStat = BaseStat.intelligence, hitEffect = 3, rangedProjectile = 1, isRanged = true }, new UtilityAbility { name = "Mirror Image", description = "Creates mirror images.", cooldown = 300f, attributes = new List <AbilityAttribute> { new AbilityAttribute { type = "mirrorImage" } } }); } }
// Update is called once per frame void Update() { //if (!NetworkServer.active) return; if (!initialized) { initialized = MonsterInitializer.Initialize(gameObject, new AttackAbility { name = "Attack", description = "Basic attack.", damage = 1f, element = Element.piercing, baseStat = BaseStat.dexterity, isRanged = true }); } }
// Update is called once per frame void Update() { //if (!NetworkServer.active) return; if (!initialized) { initialized = MonsterInitializer.Initialize(gameObject, new AttackAbility { name = "Attack", description = "Basic attack.", damage = 1.5f, element = Element.bashing, baseStat = BaseStat.strength, hitEffect = 1 }); } }
// Update is called once per frame void Update() { //if (!NetworkServer.active) return; if (!initialized) { initialized = MonsterInitializer.Initialize(gameObject, new AttackAbility { name = "Spitting Attack", description = "Spitting attack.", damage = 0f, element = Element.acid, baseStat = BaseStat.strength, hitEffect = 5, dotDamage = 0.75f, dotTime = 8f, rangedProjectile = 2, isRanged = true, attributes = new List <AbilityAttribute> { new AbilityAttribute { type = "speed-", parameters = new List <AbilityAttributeParameter> { new AbilityAttributeParameter { name = "degree", value = 0.75f }, new AbilityAttributeParameter { name = "duration", value = 8f } } } } }); GetComponent <Monster>().elementalAffinities.Add(new ElementalAffinity(Element.piercing, -50)); GetComponent <Monster>().elementalAffinities.Add(new ElementalAffinity(Element.acid, 100)); } if (character == null) { character = GetComponent <Character>(); } if (character != null) { character.GetComponent <Health>().hp = Mathf.Min(character.GetComponent <Health>().maxHP, character.GetComponent <Health>().hp + (Time.deltaTime * character.GetComponent <Health>().maxHP / 5)); } }
// Update is called once per frame void Update() { //if (!NetworkServer.active) return; if (!initialized) { initialized = MonsterInitializer.Initialize(gameObject); var monster = GetComponent <Monster>(); monster.elementalAffinities.Add(new ElementalAffinity(Element.piercing, 75)); monster.elementalAffinities.Add(new ElementalAffinity(Element.bashing, 75)); monster.elementalAffinities.Add(new ElementalAffinity(Element.slashing, 75)); monster.elementalAffinities.Add(new ElementalAffinity(Element.fire, 75)); monster.elementalAffinities.Add(new ElementalAffinity(Element.ice, 75)); monster.elementalAffinities.Add(new ElementalAffinity(Element.light, 75)); monster.elementalAffinities.Add(new ElementalAffinity(Element.dark, 75)); monster.elementalAffinities.Add(new ElementalAffinity(Element.acid, 75)); var i = Random.Range(0, monster.elementalAffinities.Count); monster.elementalAffinities[i].amount = -50; } }
// Update is called once per frame void Update() { //if (!NetworkServer.active) return; if (!initialized) { initialized = MonsterInitializer.Initialize(gameObject, new AttackAbility { name = "Attack", description = "Basic attack.", damage = 1.5f, element = Element.slashing, baseStat = BaseStat.strength, hitEffect = 1 }); GetComponent <Monster>().elementalAffinities.Add(new ElementalAffinity(Element.ice, -50)); GetComponent <Monster>().elementalAffinities.Add(new ElementalAffinity(Element.piercing, 50)); GetComponent <Monster>().elementalAffinities.Add(new ElementalAffinity(Element.slashing, 50)); GetComponent <Monster>().elementalAffinities.Add(new ElementalAffinity(Element.bashing, 50)); } }
// Update is called once per frame void Update() { //if (!NetworkServer.active) return; if (!initialized) { initialized = MonsterInitializer.Initialize(gameObject, new AttackAbility { name = "Attack", description = "Basic attack.", damage = 1.5f, element = Element.slashing, baseStat = BaseStat.strength, hitEffect = 0 }); } //if (GetComponent<MonsterCombatant>().InCombat()) hidden = false; else { hidden = true; } }
// Update is called once per frame void Update() { //if (!NetworkServer.active) return; if (!initialized) { initialized = MonsterInitializer.Initialize(gameObject, new AttackAbility { name = "Attack", description = "Basic attack.", damage = 1f, element = Element.light, baseStat = BaseStat.intelligence, rangedProjectile = 6, hitEffect = 6, isRanged = true }); GetComponent <Monster>().elementalAffinities.Add(new ElementalAffinity(Element.piercing, -50)); GetComponent <Monster>().elementalAffinities.Add(new ElementalAffinity(Element.dark, -50)); GetComponent <Monster>().elementalAffinities.Add(new ElementalAffinity(Element.acid, 50)); GetComponent <Monster>().elementalAffinities.Add(new ElementalAffinity(Element.light, 50)); } }
// Update is called once per frame void Update() { //if (!NetworkServer.active) return; if (!initialized) { initialized = MonsterInitializer.Initialize(gameObject, new AttackAbility { name = "Pulling Attack", description = "Pulling attack.", damage = 1.4f, element = Element.dark, baseStat = BaseStat.strength, cooldown = 3, hitEffect = 7, rangedProjectile = 7, isRanged = true, attributes = new List <AbilityAttribute> { new AbilityAttribute { type = "pullTowards", parameters = new List <AbilityAttributeParameter> { new AbilityAttributeParameter { name = "degree", value = 5f } } } } }, new AttackAbility { name = "Basic Attack", description = "Basic attack.", damage = 1.5f, element = Element.slashing, baseStat = BaseStat.strength, hitEffect = 0 }); GetComponent <Monster>().elementalAffinities.Add(new ElementalAffinity(Element.slashing, 50)); GetComponent <Monster>().elementalAffinities.Add(new ElementalAffinity(Element.bashing, 50)); } }
// Update is called once per frame void Update() { //if (!NetworkServer.active) return; if (!initialized) { initialized = MonsterInitializer.Initialize(gameObject, new AttackAbility { name = "Attack", description = "Basic attack.", damage = 1.5f, element = Element.bashing, baseStat = BaseStat.strength, hitEffect = 1 }, new AttackAbility { name = "Squid Ink", description = "Squid ink.", damage = 1.75f, element = Element.bashing, baseStat = BaseStat.strength, rangedProjectile = 7, cooldown = 30f, hitEffect = 1, isRanged = true, attributes = new List <AbilityAttribute> { new AbilityAttribute { type = "blind", parameters = new List <AbilityAttributeParameter> { new AbilityAttributeParameter { name = "duration", value = 6f } } } } }); GetComponent <Monster>().elementalAffinities.Add(new ElementalAffinity(Element.fire, -50)); GetComponent <Monster>().elementalAffinities.Add(new ElementalAffinity(Element.ice, 50)); } }
// Update is called once per frame void Update() { //if (!NetworkServer.active) return; if (!initialized) { initialized = MonsterInitializer.Initialize(gameObject, new AttackAbility { name = "Explode", description = "Explode.", damage = 15f, element = Element.fire, baseStat = BaseStat.strength, hitEffect = 3, aoe = 3, attributes = new List <AbilityAttribute> { new AbilityAttribute { type = "selfDestruct" } } }); GetComponent <Monster>().elementalAffinities.Add(new ElementalAffinity(Element.piercing, -50)); } }
// Update is called once per frame void Update() { //if (!NetworkServer.active) return; if (!initialized) { initialized = MonsterInitializer.Initialize(gameObject, new AttackAbility { name = "Mug", description = "Does damage and steals an item.", damage = 1.5f, element = Element.slashing, baseStat = BaseStat.strength, hitEffect = 1, attributes = new List <AbilityAttribute> { new AbilityAttribute { type = "steal" } } }); GetComponent <Monster>().elementalAffinities.Add(new ElementalAffinity(Element.light, -50)); GetComponent <Monster>().elementalAffinities.Add(new ElementalAffinity(Element.bashing, -50)); GetComponent <Monster>().elementalAffinities.Add(new ElementalAffinity(Element.dark, 50)); } }
// Update is called once per frame void Update() { //if (!NetworkServer.active) return; if (!initialized) { initialized = MonsterInitializer.Initialize(gameObject, new AttackAbility { name = "Attack", description = "Spell attack.", damage = 0.01f, element = Element.fire, baseStat = BaseStat.intelligence, hitEffect = 3, rangedProjectile = 1, isRanged = true }); health = GetComponent <Health>(); } if (creator == null) { GetComponent <MonsterMortal>().diedToPlayer = false; GetComponent <MonsterMortal>().OnDeath(); } }
// Update is called once per frame void Update() { //if (!NetworkServer.active) return; if (!initialized) { initialized = MonsterInitializer.Initialize(gameObject, new AttackAbility { name = "Fireball", description = "Fireball.", damage = 1.0f, element = Element.fire, baseStat = BaseStat.intelligence, isRanged = true, rangedProjectile = 1 }); GetComponent <Monster>().elementalAffinities.Add(new ElementalAffinity(Element.light, -50)); GetComponent <Monster>().elementalAffinities.Add(new ElementalAffinity(Element.dark, 50)); } if (!hasSummoned) { var mob = GetComponent <Monster>(); //if (GetComponent<Monster>()!=null && mob.GetComponent<MonsterCombatant>().InCombat()) Summon(); } }
// Update is called once per frame void Update() { //if (!NetworkServer.active) return; if (!initialized) { initialized = MonsterInitializer.Initialize(gameObject, new AttackAbility { name = "Attack", description = "Basic attack.", damage = 1.5f, element = Element.piercing, baseStat = BaseStat.strength, hitEffect = 0 }, new AttackAbility { name = "Ghoul Paralysis", description = "Ghoul paralysis.", damage = 3f, element = Element.dark, baseStat = BaseStat.strength, cooldown = 10f, hitEffect = 1, attributes = new List <AbilityAttribute> { new AbilityAttribute { type = "paralyze", parameters = new List <AbilityAttributeParameter> { new AbilityAttributeParameter { name = "duration", value = 1f } } } } }); GetComponent <Monster>().elementalAffinities.Add(new ElementalAffinity(Element.light, -50)); GetComponent <Monster>().elementalAffinities.Add(new ElementalAffinity(Element.dark, 50)); } }
// Update is called once per frame void Update() { //if (!NetworkServer.active) return; if (!initialized) { initialized = MonsterInitializer.Initialize(gameObject, new AttackAbility { name = "Attack", description = "Spell attack.", damage = 0.3f, element = Element.fire, baseStat = BaseStat.intelligence, hitEffect = 3, rangedProjectile = 1, isRanged = true, attributes = new List <AbilityAttribute> { new AbilityAttribute { type = "projectileSpread" } } }); GetComponent <Monster>().elementalAffinities.Add(new ElementalAffinity(Element.light, -50)); GetComponent <Monster>().elementalAffinities.Add(new ElementalAffinity(Element.dark, 100)); } }