Backup code
parent
05ec4afaa6
commit
773bf65dc9
38
README.md
38
README.md
|
@ -1 +1,37 @@
|
||||||
vignette
|
# Vignette
|
||||||
|
|
||||||
|
Dark gradient hud overlay for a immersive experience. By default it will add
|
||||||
|
a single overlay to a players screen at the beginning of the game.
|
||||||
|
|
||||||
|
Vignette also has an api for other mods to leverage.
|
||||||
|
|
||||||
|
## Api
|
||||||
|
|
||||||
|
> Exposes an api on the vignette namespace with functions `add` and `edit`.
|
||||||
|
> These function can be used by other mods in the following manner.
|
||||||
|
|
||||||
|
|
||||||
|
```lua
|
||||||
|
vignette.set({
|
||||||
|
|
||||||
|
-- player is a required field
|
||||||
|
player = player,
|
||||||
|
|
||||||
|
-- a number between 0 or 5, you can do more but that might result in
|
||||||
|
-- a frame-rate drop
|
||||||
|
darkness = 4
|
||||||
|
|
||||||
|
});
|
||||||
|
|
||||||
|
vignette.add({
|
||||||
|
|
||||||
|
-- same as the first example
|
||||||
|
player = player,
|
||||||
|
|
||||||
|
-- instead of setting it adds the darkness to the current player's screen it
|
||||||
|
-- is allows to pass negative values also. If the darkness results in a
|
||||||
|
-- negative value it is defaulted to 0
|
||||||
|
darkness = 1
|
||||||
|
|
||||||
|
})
|
||||||
|
```
|
||||||
|
|
|
@ -0,0 +1,41 @@
|
||||||
|
vignette = {
|
||||||
|
huds = {}
|
||||||
|
}
|
||||||
|
|
||||||
|
vignette.set = function (defs)
|
||||||
|
|
||||||
|
for i=1, math.max(defs.darkness, #vignette.huds) do
|
||||||
|
--
|
||||||
|
-- adding huds
|
||||||
|
if (i >= #vignette.huds) then
|
||||||
|
local hud_id=defs.player:hud_add({
|
||||||
|
hud_elem_type = "image",
|
||||||
|
position = {x = 0.5, y = 0.5},
|
||||||
|
scale = {
|
||||||
|
x = -100,
|
||||||
|
y = -100
|
||||||
|
},
|
||||||
|
text = "vignette.png"
|
||||||
|
})
|
||||||
|
vignette.huds[defs.player][i] = hud_id;
|
||||||
|
end
|
||||||
|
|
||||||
|
-- removing huds
|
||||||
|
if (i > defs.darkness) then
|
||||||
|
defs.player:hud_remove(vignette.huds[defs.player][i])
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
vignette.add = function (defs)
|
||||||
|
defs.darkness = math.max(defs.darkness + #vignette.huds[defs.player], 0)
|
||||||
|
vignette.set(defs)
|
||||||
|
end
|
||||||
|
|
||||||
|
minetest.register_on_joinplayer(function (player)
|
||||||
|
vignette.huds[player] = {}
|
||||||
|
vignette.set({
|
||||||
|
darkness = 1,
|
||||||
|
player = player
|
||||||
|
})
|
||||||
|
end)
|
Binary file not shown.
After Width: | Height: | Size: 40 KiB |
Loading…
Reference in New Issue