Add the intro cutscene, a start to the map, and various other things.

This commit is contained in:
Signal 2025-11-16 02:48:08 -05:00
parent d0c0a3ebb6
commit 1b2199705b
46 changed files with 1401 additions and 91 deletions

View file

@ -2,6 +2,9 @@
minetest = core
artifact = {
-- This toggles a lot of things, including whether initialization takes place,
-- whether nodes can be pointed, and whether the player is permitted to
-- bypass certain restrictions imposed by the story.
debug = true
}
@ -47,19 +50,38 @@ end
-- HACK: Lookup table for getting a rotation from a
-- facedir (because Minetest doesn't have any way
-- to get this)
-- to get this information normally)
local facedir_rotations = {
-- +Y
[0] = vector.new(0,0,0),
[1] = vector.new(0, math.pi *1.5, 0),
[2] = vector.new(0, math.pi, 0),
[3] = vector.new(0, math.pi *0.5, 0),
[0] = vector.new(0, 0, 0),
[1] = vector.new(0, math.pi * 1.5, 0),
[2] = vector.new(0, math.pi * 1.0, 0),
[3] = vector.new(0, math.pi * 0.5, 0),
-- +Z
[4] = vector.new(math.pi *1.5, 0, 0),
[5] = vector.new(math.pi *1.5, math.pi *1.5, 0),
[6] = vector.new(math.pi *1.5, math.pi, 0),
[7] = vector.new(math.pi *1.5, math.pi *0.5, 0),
[4] = vector.new(math.pi * 1.5, 0, 0),
[5] = vector.new(0, math.pi * 1.5, math.pi * 1.5),
[6] = vector.new(math.pi * 0.5, math.pi * 1.0, 0),
[7] = vector.new(0, math.pi * 0.5, math.pi * 0.5),
-- -Z
[8] = vector.new(math.pi * 0.5, 0, 0),
[9] = vector.new(0, math.pi * 1.5, math.pi * 0.5),
[10] = vector.new(math.pi * 1.5, math.pi * 1.0, 0),
[11] = vector.new(0, math.pi * 0.5, math.pi * 1.5),
-- +X
[12] = vector.new(0, 0, math.pi * 0.5),
[13] = vector.new(math.pi * 1.5, math.pi * 1.5, 0),
[14] = vector.new(0, math.pi * 1.0, math.pi * 1.5),
[15] = vector.new(math.pi * 0.5, math.pi * 0.5, 0),
-- -X
[16] = vector.new(0, 0, math.pi * 1.5),
[17] = vector.new(math.pi * 0.5, math.pi * 1.5, 0),
[18] = vector.new(0, math.pi * 1.0, math.pi * 0.5),
[19] = vector.new(math.pi * 1.5, math.pi * 0.5, 0),
-- -Y
[20] = vector.new(0, 0, math.pi * 1.0),
[21] = vector.new(0, math.pi * 0.5, math.pi * 1.0),
[22] = vector.new(0, math.pi * 1.0, math.pi * 1.0),
[23] = vector.new(0, math.pi * 1.5, math.pi * 1.0),
}
function artifact.facedir_to_rotation(facedir)
return facedir_rotations[facedir] or minetest.facedir_to_dir(facedir):dir_to_rotation()