Skip to content
This repository has been archived by the owner on May 20, 2023. It is now read-only.

Commit

Permalink
Fix The Welter boss (#765)
Browse files Browse the repository at this point in the history
• Add The Welter summons and fix in the amount of eggs summons
  • Loading branch information
murilo09 authored Aug 25, 2022
1 parent 6d43e5b commit de220d6
Show file tree
Hide file tree
Showing 4 changed files with 190 additions and 2 deletions.
88 changes: 88 additions & 0 deletions data/monster/raids/egg_the_welter.lua
Original file line number Diff line number Diff line change
@@ -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)
100 changes: 100 additions & 0 deletions data/monster/raids/spawn_of_the_welter.lua
Original file line number Diff line number Diff line change
@@ -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)
2 changes: 1 addition & 1 deletion data/scripts/spells/monster/the_welter_heal.lua
Original file line number Diff line number Diff line change
Expand Up @@ -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("<the welter devours his spawn and heals himself>", TALKTYPE_ORANGE_1)
Expand Down
2 changes: 1 addition & 1 deletion data/scripts/spells/monster/the_welter_summon.lua
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ local function delayedCastSpell(cid, var)
end
end

local maxsummons = 1
local maxsummons = 7

local spell = Spell("instant")

Expand Down

0 comments on commit de220d6

Please sign in to comment.