diff --git a/data/monster/raids/egg_the_welter.lua b/data/monster/raids/egg_the_welter.lua new file mode 100644 index 000000000..b08da60bd --- /dev/null +++ b/data/monster/raids/egg_the_welter.lua @@ -0,0 +1,88 @@ +local mType = Game.createMonsterType("Egg") +local monster = {} + +monster.description = "Egg" +monster.experience = 0 +monster.outfit = { + lookTypeEx = 4839 +} + +monster.health = 800 +monster.maxHealth = 800 +monster.race = "blood" +monster.corpse = 0 +monster.speed = 0 +monster.manaCost = 0 + +monster.changeTarget = { + interval = 2000, + chance = 0 +} + +monster.strategiesTarget = { + nearest = 100, +} + +monster.flags = { + summonable = false, + attackable = true, + hostile = true, + convinceable = false, + pushable = false, + rewardBoss = false, + illusionable = false, + canPushItems = false, + canPushCreatures = false, + staticAttackChance = 90, + targetDistance = 1, + runHealth = 0, + healthHidden = false, + isBlockable = true, + canWalkOnEnergy = true, + canWalkOnFire = true, + canWalkOnPoison = true +} + +monster.events = { + "TheWelterEgg" +} + +monster.light = { + level = 0, + color = 0 +} + +monster.summon = { +} + +monster.voices = { + interval = 5000, + chance = 10, +} + +monster.defenses = { + defense = 5, + armor = 10 +} + +monster.elements = { + {type = COMBAT_PHYSICALDAMAGE, percent = 0}, + {type = COMBAT_ENERGYDAMAGE, percent = 0}, + {type = COMBAT_EARTHDAMAGE, percent = 0}, + {type = COMBAT_FIREDAMAGE, percent = 0}, + {type = COMBAT_LIFEDRAIN, percent = 0}, + {type = COMBAT_MANADRAIN, percent = 0}, + {type = COMBAT_DROWNDAMAGE, percent = 0}, + {type = COMBAT_ICEDAMAGE, percent = 0}, + {type = COMBAT_HOLYDAMAGE , percent = 0}, + {type = COMBAT_DEATHDAMAGE , percent = 0} +} + +monster.immunities = { + {type = "paralyze", condition = true}, + {type = "outfit", condition = true}, + {type = "invisible", condition = true}, + {type = "bleed", condition = false} +} + +mType:register(monster) \ No newline at end of file diff --git a/data/monster/raids/spawn_of_the_welter.lua b/data/monster/raids/spawn_of_the_welter.lua new file mode 100644 index 000000000..2e52e9d34 --- /dev/null +++ b/data/monster/raids/spawn_of_the_welter.lua @@ -0,0 +1,100 @@ +local mType = Game.createMonsterType("Spawn of the Welter") +local monster = {} + +monster.description = "Spawn of the Welter" +monster.experience = 0 +monster.outfit = { + lookType = 121, + lookHead = 0, + lookBody = 0, + lookLegs = 0, + lookFeet = 0, + lookAddons = 0, + lookMount = 0 +} + +monster.health = 1850 +monster.maxHealth = 1850 +monster.race = "blood" +monster.corpse = 6048 +monster.speed = 206 +monster.manaCost = 0 + +monster.changeTarget = { + interval = 4000, + chance = 10 +} + +monster.strategiesTarget = { + nearest = 70, + health = 10, + damage = 10, + random = 10, +} + +monster.flags = { + summonable = false, + attackable = true, + hostile = true, + convinceable = false, + pushable = false, + rewardBoss = false, + illusionable = true, + canPushItems = true, + canPushCreatures = true, + staticAttackChance = 90, + targetDistance = 1, + runHealth = 0, + healthHidden = false, + isBlockable = false, + canWalkOnEnergy = true, + canWalkOnFire = true, + canWalkOnPoison = true +} + +monster.light = { + level = 0, + color = 0 +} + +monster.voices = { + interval = 5000, + chance = 10, +} + +monster.loot = { +} + +monster.attacks = { + {name ="melee", interval = 2000, chance = 100, minDamage = 0, maxDamage = -270}, + {name ="poisonfield", interval = 2000, chance = 25, range = 7, radius = 3, shootEffect = CONST_ANI_POISON, target = true} +} + +monster.defenses = { + defense = 35, + armor = 27, + {name ="combat", interval = 2000, chance = 25, type = COMBAT_HEALING, minDamage = 260, maxDamage = 407, effect = CONST_ME_MAGIC_BLUE, target = false}, + {name ="spawn of the welter heal", interval = 2000, chance = 20, target = false} +} + +monster.elements = { + {type = COMBAT_PHYSICALDAMAGE, percent = 0}, + {type = COMBAT_ENERGYDAMAGE, percent = 0}, + {type = COMBAT_EARTHDAMAGE, percent = 0}, + {type = COMBAT_FIREDAMAGE, percent = 0}, + {type = COMBAT_LIFEDRAIN, percent = 0}, + {type = COMBAT_MANADRAIN, percent = 0}, + {type = COMBAT_DROWNDAMAGE, percent = 0}, + {type = COMBAT_ICEDAMAGE, percent = 0}, + {type = COMBAT_HOLYDAMAGE , percent = 0}, + {type = COMBAT_DEATHDAMAGE , percent = 0} +} + +monster.immunities = { + {type = "paralyze", condition = true}, + {type = "outfit", condition = false}, + {type = "invisible", condition = true}, + {type = "bleed", condition = false} +} + +mType:register(monster) diff --git a/data/scripts/spells/monster/the_welter_heal.lua b/data/scripts/spells/monster/the_welter_heal.lua index 3f3e8e4fe..2907f42ad 100644 --- a/data/scripts/spells/monster/the_welter_heal.lua +++ b/data/scripts/spells/monster/the_welter_heal.lua @@ -14,7 +14,7 @@ function spell.onCastSpell(creature, var) creature:addHealth(25000) creature:getPosition():sendMagicEffect(CONST_ME_MAGIC_BLUE) return true - elseif spectator:isMonster() and spectator:getName() == "Spawn Of The Welter" then + elseif spectator:isMonster() and spectator:getName() == "Spawn of the Welter" then spectator:getPosition():sendMagicEffect(CONST_ME_DRAWBLOOD) spectator:remove() creature:say("", TALKTYPE_ORANGE_1) diff --git a/data/scripts/spells/monster/the_welter_summon.lua b/data/scripts/spells/monster/the_welter_summon.lua index e0511664c..46f8f5701 100644 --- a/data/scripts/spells/monster/the_welter_summon.lua +++ b/data/scripts/spells/monster/the_welter_summon.lua @@ -20,7 +20,7 @@ local function delayedCastSpell(cid, var) end end -local maxsummons = 1 +local maxsummons = 7 local spell = Spell("instant")