From ded1b68605967cd4fbe17a143dd8f2cac29c826f Mon Sep 17 00:00:00 2001 From: David G Date: Fri, 7 Sep 2018 13:45:58 -0700 Subject: [PATCH] Added chat command to toggle. --- LICENSE.txt | 14 ++++++++++++- init.lua | 50 +++++++++++++++++++++++++++++++++++++-------- textures/blank.png | Bin 0 -> 8229 bytes 3 files changed, 55 insertions(+), 9 deletions(-) create mode 100644 textures/blank.png diff --git a/LICENSE.txt b/LICENSE.txt index 62bb375..4ef25aa 100644 --- a/LICENSE.txt +++ b/LICENSE.txt @@ -1,5 +1,17 @@ -Licence of vignette textures +License of source code +---------------------- + +The MIT License (MIT) +Copyright 2018 kestral246 + +https://opensource.org/licenses/MIT + + +Licence of media (textures) +--------------------------- Attribution-ShareAlike 3.0 Unported (CC BY-SA 3.0) +Copyright 2018 kestral246 + http://creativecommons.org/licenses/by-sa/3.0/ diff --git a/init.lua b/init.lua index 666e6ee..fefcab6 100644 --- a/init.lua +++ b/init.lua @@ -1,10 +1,44 @@ +-- vignette +-- Adds a vignette filter to player's screen +-- Based on concept by TriBlade9 +-- By David_G (kestral246@gmail.com) +-- Includes chat command "/vignette", which toggles effect off or on + +local vignette = {} + minetest.register_on_joinplayer(function(player) - player:hud_add({ - hud_elem_type = "image", - text = "vignette.png", - position = {x=0, y=0}, - scale = {x=-100, y=-100}, - alignment = {x=1, y=1}, - offset = {x=0, y=0} - }) + local pname = player:get_player_name() + vignette[pname] = { + id = player:hud_add({ + hud_elem_type = "image", + text = "vignette.png", + position = {x=0, y=0}, + scale = {x=-100, y=-100}, + alignment = {x=1, y=1}, + offset = {x=0, y=0} + }), + enable = true } +end) + +minetest.register_chatcommand("vignette", { + params = "", + description = "Toggle display of vignette mask.", + privs = {}, + func = function(name, param) + local player = minetest.get_player_by_name(name) + if vignette[name].enable == true then + player:hud_change(vignette[name].id, "text", "blank.png") + vignette[name].enable = false + else + player:hud_change(vignette[name].id, "text", "vignette.png") + vignette[name].enable = true + end + end, +}) + +minetest.register_on_leaveplayer(function(player) + local pname = player:get_player_name() + if vignette[pname] then + vignette[pname] = nil + end end) diff --git a/textures/blank.png b/textures/blank.png new file mode 100644 index 0000000000000000000000000000000000000000..cf9be3e3007de0f38ae22994542affb29c09537e GIT binary patch literal 8229 zcmeAS@N?(olHy`uVBq!ia0y~yU~gbxV6os}1B$%3e9#$4u_bxCyDx` z7I;J!Gca%qgD@k*tT_@uLG}_)Usv`=oa`dfT%p0qCxJq;nIRD+&iT2ysd*(pE(3#e zQEFmIYKlU6W=V#EyQgnJie4%^1A~00r;B4q#jQ6785x198YcW(|BeIXrcp2&0;3@? z8UmvsFd71*Aut*OqaiRF0;3@?8UmvsFd71*Auy~%py75iGZV;%ihtwp3Jz