mirror of
https://git.minetest.land/MineClone2/MineClone2.git
synced 2024-11-28 13:53:45 +01:00
Add function to query stronghold positions
This commit is contained in:
parent
2d8ad7ebf0
commit
55778ab375
17
mods/MAPGEN/mcl_strongholds/API.md
Normal file
17
mods/MAPGEN/mcl_strongholds/API.md
Normal file
@ -0,0 +1,17 @@
|
|||||||
|
# Strongholds API
|
||||||
|
The API provides one function:
|
||||||
|
|
||||||
|
## `mcl_strongholds.get_stronghold_positions()`
|
||||||
|
Returns a table of the positions of all strongholds, centered at the end portal room.
|
||||||
|
This includes strongholds which have not been generated yet.
|
||||||
|
This table is a copy, changes to the table will have no effect on the stronghold generation.
|
||||||
|
|
||||||
|
Format of the returned table:
|
||||||
|
{
|
||||||
|
{ pos = <position>, generated = <true/false> }, -- first stronghold
|
||||||
|
{ pos = <position>, generated = <true/false> }, -- second stronghold
|
||||||
|
-- and so on …
|
||||||
|
}
|
||||||
|
|
||||||
|
* pos: Position of stronghold, centered at the end portal room
|
||||||
|
* generated: `true` if this stronghold has already been generated
|
@ -52,7 +52,7 @@ local init_strongholds = function()
|
|||||||
end
|
end
|
||||||
local pos = { x = math.cos(angle) * dist, y = y, z = math.sin(angle) * dist }
|
local pos = { x = math.cos(angle) * dist, y = y, z = math.sin(angle) * dist }
|
||||||
pos = vector.round(pos)
|
pos = vector.round(pos)
|
||||||
table.insert(strongholds, { pos = pos })
|
table.insert(strongholds, { pos = pos, generated = false })
|
||||||
|
|
||||||
-- Rotate angle by (360 / amount) degrees.
|
-- Rotate angle by (360 / amount) degrees.
|
||||||
-- This will cause the angles to be evenly distributed in the stronghold ring
|
-- This will cause the angles to be evenly distributed in the stronghold ring
|
||||||
@ -90,6 +90,12 @@ local generate_strongholds = function(minp, maxp)
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
-- Minimal API
|
||||||
|
mcl_strongholds = {}
|
||||||
|
mcl_strongholds.get_stronghold_positions = function()
|
||||||
|
return table.copy(strongholds)
|
||||||
|
end
|
||||||
|
|
||||||
|
|
||||||
init_strongholds()
|
init_strongholds()
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user