Page 2 of 2
Re: How can I spawn a monster randomly?
Posted: Thu Sep 20, 2012 12:44 pm
by Daght
Thank you all, this was truly usefull. But i got anorther question... can it be that more monsters (tentacles) spawns in the same tile? Cause i got a tile with 2 tentacles at once.
Re: How can I spawn a monster randomly?
Posted: Thu Sep 20, 2012 1:05 pm
by Daght
How can it be... in one dungeon this works weel, the same code in a second dungeon doesn't work. No spawn... i'm sad for this.
tis is the code:
Code: Select all
function spawnInRandomRangeChanceTime(objectToSpawn,Xrange,Yrange,ChanceTime)
local coordinateX = self.x
local coordinateY = self.y
local basecoordinateX = coordinateX-Xrange
local basecoordinateY = coordinateY-Yrange
local maxSpawnX = Xrange*2
local maxSpawnY = Yrange*2
local randomCoordinateX = math.random(0,maxSpawnX)
local randomCoordinateY = math.random(0,maxSpawnY)
local finalCoordinateX = basecoordinateX + randomCoordinateX
local finalCoordinateY = basecoordinateY + randomCoordinateY
local chancetospawn = math.random(1,100)
if chancetospawn < ChanceTime then
spawn(objectToSpawn,1,finalCoordinateX,finalCoordinateY,0)
--print(finalCoordinateX,finalCoordinateY)
end
end
function check()
spawnInRandomRangeChanceTime("tentacles",2,2,95)
end
and the Timer is set on Running and Interval 1. Event: Activate - Target:; ScriptTentacles - Action: Check
Re: How can I spawn a monster randomly?
Posted: Thu Sep 20, 2012 1:32 pm
by cromcrom
did you check the level where you put the code ? it works only on level 1, I will try to improve this, at it is a little dumb.
Re: How can I spawn a monster randomly?
Posted: Thu Sep 20, 2012 5:19 pm
by cromcrom
the below code should work whatever the level is.
Code: Select all
function spawnInRandomRangeChanceTime(objectToSpawn,Xrange,Yrange,ChanceTime)
local coordinateX = self.x
local coordinateY = self.y
local level = self.level
local basecoordinateX = coordinateX-Xrange
local basecoordinateY = coordinateY-Yrange
local maxSpawnX = Xrange*2
local maxSpawnY = Yrange*2
local randomCoordinateX = math.random(0,maxSpawnX)
local randomCoordinateY = math.random(0,maxSpawnY)
local finalCoordinateX = basecoordinateX + randomCoordinateX
local finalCoordinateY = basecoordinateY + randomCoordinateY
local chancetospawn = math.random(1,100)
if chancetospawn < ChanceTime then
spawn(objectToSpawn,level ,finalCoordinateX,finalCoordinateY,0)
--print(finalCoordinateX,finalCoordinateY)
end
end
function check()
spawnInRandomRangeChanceTime("tentacles",2,2,95)
end