OTcreator
Active Member
- Joined
- Feb 14, 2022
- Messages
- 425
- Solutions
- 1
- Reaction score
- 44
Hello.
I used this scripts with monster table.
How add createmonsters on positions?
If bosted creaures = 2 (etc. troll and smuler)
create monster - troll on pos1 , smugler on pos2.
If bosted creatures = 1 (etc. troll)
create monster - torll on pos1.
If bosted creatures = 3 (etc. troll, smugler, dragon)
create monster - troll on pos 1, smugler on pos 2, dragon on pos 3.
Maxiumum bosted = 3 monsters, minimum 1.
I used this scripts with monster table.
How add createmonsters on positions?
If bosted creaures = 2 (etc. troll and smuler)
create monster - troll on pos1 , smugler on pos2.
If bosted creatures = 1 (etc. troll)
create monster - torll on pos1.
If bosted creatures = 3 (etc. troll, smugler, dragon)
create monster - troll on pos 1, smugler on pos 2, dragon on pos 3.
Maxiumum bosted = 3 monsters, minimum 1.
Lua:
boostedMonsters = {}
boostedMonstersExperienceMultiplier = 2 -- 1 = default, 2 = 200% (aka, double experience)
boostedMonstersLootChanceMultiplier = 2 -- 1 = default, 2 = 200% (aka, double chance of loot.) (1.36% -> 2.72%)(88% -> 100%)
local boostedMonstersAmount = 2 -- how many arrays from boostedMonstersList will be chosen
-- NOTE: Ensure that this amount does not exceed the amount of arrays in boostedMonstersList.. or your server will crash.
local boostedMonstersList = {
{"rat", "cave rat"}, -- setup like this, so an entire monster race can become boosted
{"troll"},
{"cyclops"}, -- don't put the same monster twice.. or bad things might happen. xP
{"demon"},
{"fire elemental"}
}
local function generateBoostedMonstersText()
local text = ""
for i = 1, #boostedMonsters do
if text ~= "" then
if i == #boostedMonsters then
text = text .. " and "
else
text = text .. ", "
end
end
text = text .. boostedMonsters[i]
end
text = "Today's boosted monsters are " .. text .. "."
return text
end
local function chooseBoostedMonsters()
local boostedMonstersCount = 0
while boostedMonstersCount < boostedMonstersAmount do
local randomMonster = math.random(#boostedMonstersList)
if not table.contains(boostedMonsters, boostedMonstersList[randomMonster][1]:lower()) then
for i = 1, #boostedMonstersList[randomMonster] do
table.insert(boostedMonsters, boostedMonstersList[randomMonster][i]:lower())
end
boostedMonstersCount = boostedMonstersCount + 1
end
end
print(generateBoostedMonstersText())
end
local global = GlobalEvent("globalEvent_boostedMonsters")
function global.onStartup()
addEvent(chooseBoostedMonsters, 0)
return true
end
global:register()
local loginEvent = CreatureEvent("onLogin_boostedMonsters")
loginEvent:type("login")
function loginEvent.onLogin(player)
player:sendTextMessage(MESSAGE_STATUS_DEFAULT, generateBoostedMonstersText())
return true
end
loginEvent:register()