1
0
mirror of https://github.com/pyrollo/display_modpack.git synced 2025-06-29 06:31:10 +02:00

30 Commits
v1.0 ... v1.1.1

Author SHA1 Message Date
a0d596bab9 Creation for boards mod 2018-07-16 10:26:26 +02:00
c19348d305 Cleanup some unused code 2018-07-16 10:18:37 +02:00
4b02cfdfca Fix default font chosing when multiple fonts 2018-07-16 10:18:08 +02:00
fac6dfe1f8 Removed a debug trick and fixed indentation 2018-07-15 09:40:18 +02:00
897b0f1f98 Update README.md 2018-07-13 23:23:46 +02:00
78f7994976 Replaced default epilepsy font by Metro font. 2018-07-13 23:16:05 +02:00
8c7557e45d Rework all nodes displaying text according to new font_api 2018-07-13 20:41:53 +02:00
e51afb851c Fix Poster crash (amend) 2018-07-09 14:04:51 +02:00
8661a5ca62 Fixed crash when opening Poster formspec due to change in font_api. 2018-07-09 13:55:07 +02:00
a83d494d45 Fix typos in API.md 2018-07-09 07:19:27 +00:00
d3aae9b262 Added two documentation schema 2018-07-08 21:27:39 +02:00
b96550ab24 Creation of Font class and code update accordingly (fix) 2018-07-08 20:41:02 +02:00
c6cad702bc Creation of Font class and code update accordingly 2018-07-08 20:36:34 +02:00
23bcd70199 Update README.md 2018-05-30 10:07:04 +00:00
aa319e4144 Merge pull request #15 from Thomas--S/positions
PR merged : Allow a greater object offset
2018-03-04 18:15:44 +01:00
ec48743fb9 Allow a greater object offset
This allows e.g. polemounted signs.
Required for display_modpack to be usable in the streets mod.
Backwards compatible.
2018-02-25 18:47:58 +01:00
9c877a0244 Merge pull request #12 from Thomas--S/api
Seperate signs API from signs definitions
2018-02-13 21:12:04 +01:00
f3970f641e Seperate signs API from signs definitions
Change modnames from *_lib to *_api
2018-02-07 06:04:12 +01:00
2acccd7261 Fix ndef nill value in steles mod when technics not installed 2018-02-02 22:44:58 +01:00
d2fadaea7b Merge pull request #11 from Thomas--S/formspec
Use default formspec style
2018-02-02 22:39:01 +01:00
1721f6cef4 Merge pull request #10 from Thomas--S/patch-1
Fix typo and formatting in API.md
2018-02-02 22:38:34 +01:00
3483f34fa9 Use default formspec style 2018-02-01 16:56:19 +01:00
e374903061 Fix typo and formatting in API.md 2018-01-31 19:39:16 +01:00
2977ad5113 Update display_lib API.md 2018-01-29 13:17:32 +00:00
9b65804de2 Update display_lib API.md 2018-01-29 13:15:24 +00:00
60e80180c6 Copyright notices update 2018-01-28 19:08:07 +01:00
c7d13fca9e Merge pull request #9 from Thomas--S/lbm_update
Update the entities as soon as mapblock is loaded
2018-01-28 15:09:49 +01:00
1c1be8a7c1 Update the entities as soon as mapblock is loaded
Useful e.g. after /clearobjects
Introduces the group `display_lib_node`
2018-01-28 13:46:16 +01:00
78e3b85274 Rotation after placement of steles and code style 2018-01-18 22:13:15 +01:00
ea36ed50d8 Added display_lib.entity_spacing variable to centralize entity spacing. 2018-01-18 21:46:10 +01:00
1321 changed files with 3049 additions and 936 deletions

View File

@ -1,9 +1,13 @@
# Display Modpack # Display Modpack
Version 1.1.1
This modpack provides mods with dynamic display. Mods are : This modpack provides mods with dynamic display. Mods are :
- **display_lib**: A library for adding display entities to nodes; - **display_api**: A library for adding display entities to nodes;
- **font_lib**: A library for displaying fonts on entities; - **font_api**: A library for displaying fonts on entities;
- **signs_api**: A library for the easy creation of signs;
- **boards**: A mod providing school boards;
- **ontime_clocks**: A mod providing clocks which display the ingame time; - **ontime_clocks**: A mod providing clocks which display the ingame time;
- **signs**: A mod providing signs and direction signs displaying text; - **signs**: A mod providing signs and direction signs displaying text;
- **signs_road**: A mod providing road signs displaying text; - **signs_road**: A mod providing road signs displaying text;
@ -15,6 +19,38 @@ For more information, see the [forum topic](https://forum.minetest.net/viewtopic
## Changelog ## Changelog
### 2018-07-16 (Version 1.1.1)
- Boards mod added.
- Bug fix in default font chosing when multiple font registered.
### 2018-07-13 (Version 1.1.0)
- Font API rework introducing Font class.
- Replaced default Epilepsy Font by Metro Font for licensing purposes,
- Rework of all nodes displaying text accordingly to the Font API rework.
As font_epilepsy mod has been replaced by font_metro mod, **don't forget to activate font_metro mod after updating** or you won't have any text displayed.
### 2018-05-30 (Version 1.0.1)
Mostly bug fixes :
- Fix steles orientation when placing
- Update entity on mapblock load
- Use default formspec style
- Fix ndef nill value in steles mod when technics not installed
- Seperate signs API from signs définitions
- Allow a greater offset between display and block
### 2018-01-13 (Version 1.0) ### 2018-01-13 (Version 1.0)
- Switch to Epilepsy font by KREATIVE SOFTWARE - Switch to Epilepsy font by KREATIVE SOFTWARE

4
boards/LICENSE_FONT.txt Normal file
View File

@ -0,0 +1,4 @@
The FontStruction “Tiny Cursive”
(https://fontstruct.com/fontstructions/show/63155) by “cyfry77” is licensed
under a Creative Commons Attribution Share Alike license
(http://creativecommons.org/licenses/by-sa/3.0/).

View File

@ -1,2 +1,2 @@
Code by Pierre-Yves Rollo (pyrollo) Code by Pierre-Yves Rollo (pyrollo)
Font by (cyfry77)

2
boards/depends.txt Normal file
View File

@ -0,0 +1,2 @@
default
signs_api

27
boards/font_tinycurs.lua Normal file
View File

@ -0,0 +1,27 @@
--[[
Tinycurs font for Font API
Original font Tiny Cursive
by cyfry77
G and J textures by Pierre-Yves Rollo (pyrollo)
released under CC-BY-SA license
https://fontstruct.com/fontstructions/show/63155/tiny_cursive
Derivative texture are under CC-BY-SA license
Code is under LGPL v3 license
--]]
font_api.register_font('tinycurs',
{
default = false, -- Don't register this font as a possible default font
margintop = -2,
marginbottom = -2,
linespacing = -4,
height = 19,
widths = {
[0]=9, [32]=9, [33]=6, [34]=7, [35]=10, [36]=14, [37]=14, [38]=12, [39]=3, [40]=6, [41]=6, [42]=9, [43]=8, [44]=3, [45]=7, [46]=3, [47]=9, [48]=9, [49]=7, [50]=10, [51]=9, [52]=9, [53]=10, [54]=10, [55]=9, [56]=10, [57]=8, [58]=5, [59]=5, [60]=8, [61]=8, [62]=8, [63]=8, [64]=12, [65]=9, [66]=7, [67]=9, [68]=10, [69]=8, [70]=8, [71]=8, [72]=10, [73]=7, [74]=8, [75]=9, [76]=9, [77]=12, [78]=10, [79]=9, [80]=9, [81]=9, [82]=11, [83]=11, [84]=8, [85]=11, [86]=11, [87]=12, [88]=12, [89]=11, [90]=11, [91]=8, [92]=5, [93]=8, [94]=8, [95]=8, [96]=5, [97]=6, [98]=6, [99]=6, [100]=7, [101]=6, [102]=5, [103]=6, [104]=6, [105]=4, [106]=5, [107]=7, [108]=5, [109]=9, [110]=8, [111]=6, [112]=9, [113]=8, [114]=7, [115]=7, [116]=6, [117]=8, [118]=8, [119]=11, [120]=10, [121]=8, [122]=8, [123]=8, [124]=6, [125]=9, [126]=10, [8216]=4, [8217]=4, [8220]=6, [8221]=6
},
}
);

139
boards/init.lua Normal file
View File

@ -0,0 +1,139 @@
--[[
boards mod for Minetest. Black boards with text on it.
(c) Pierre-Yves Rollo
This file is part of boards.
boards is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
boards is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with boards. If not, see <http://www.gnu.org/licenses/>.
--]]
boards = {}
boards.name = minetest.get_current_modname()
boards.path = minetest.get_modpath(boards.name)
-- Load support for intllib.
local S, NS = dofile(boards.path.."/intllib.lua")
boards.intllib = S
local F = function(...) return minetest.formspec_escape(S(...)) end
-- Load font
dofile(boards.path.."/font_tinycurs.lua")
local function set_formspec(pos)
local meta = minetest.get_meta(pos)
meta:set_string("formspec",
"size[6,4]"..default.gui_bg..default.gui_bg_img..default.gui_slots..
"textarea[0.5,0.7;5.5,3;display_text;"..F("Text")..";${display_text}]"..
"button_exit[3,3.5;2,1;ok;"..F("Write").."]"..
"button_exit[1,3.5;2,1;wipe;"..F("Wipe").."]")
end
-- On boards, everyone is allowed to write and wipe
local function on_receive_fields(pos, formname, fields, player)
if fields then
if fields.ok or fields.key_enter then
signs_api.set_display_text(pos, fields.display_text, fields.font)
end
if fields.wipe then
signs_api.set_display_text(pos, "", fields.font)
end
end
end
models = {
black_board = {
depth = 1/16, width = 1, height = 1,
entity_fields = {
top = -1/32,
size = { x = 1, y = 15/16 },
maxlines = 5,
color = "#fff",
font_name = "tinycurs",
valign = "top",
},
node_fields = {
description = S("Black board"),
tiles = { "default_wood.png", "default_wood.png",
"default_wood.png", "default_wood.png",
"default_wood.png", "board_black_front.png" },
drawtype = "nodebox",
node_box = {
type = "fixed",
fixed = {
{-0.5, -0.5, 7/16, 0.5, 0.5, 0.5},
{-0.5, -7/16, 6/16, 0.5, -0.5, 7/16}
},
},
on_construct = function(pos)
set_formspec(pos)
display_api.on_construct(pos)
end,
on_receive_fields = on_receive_fields,
},
},
green_board = {
depth = 1/16, width = 1, height = 1,
entity_fields = {
top = -1/32,
size = { x = 1, y = 15/16 },
maxlines = 5,
color = "#fff",
font_name = "tinycurs",
valign = "top",
},
node_fields = {
description = S("Green board"),
tiles = { "default_wood.png", "default_wood.png",
"default_wood.png", "default_wood.png",
"default_wood.png", "board_green_front.png" },
drawtype = "nodebox",
node_box = {
type = "fixed",
fixed = {
{-0.5, -0.5, 7/16, 0.5, 0.5, 0.5},
{-0.5, -7/16, 6/16, 0.5, -0.5, 7/16}
},
},
on_construct = function(pos)
set_formspec(pos)
display_api.on_construct(pos)
end,
on_receive_fields = on_receive_fields,
},
},
}
-- Node registration
for name, model in pairs(models)
do
signs_api.register_sign("boards", name, model)
end
-- Recipes
minetest.register_craft(
{
output = "boards:black_board",
recipe = {
{"group:wood", "group:stone", "dye:black"},
}
})
minetest.register_craft(
{
output = "boards:green_board",
recipe = {
{"group:wood", "group:stone", "dye:dark_green"},
}
})

45
boards/intllib.lua Normal file
View File

@ -0,0 +1,45 @@
-- Fallback functions for when `intllib` is not installed.
-- Code released under Unlicense <http://unlicense.org>.
-- Get the latest version of this file at:
-- https://raw.githubusercontent.com/minetest-mods/intllib/master/lib/intllib.lua
local function format(str, ...)
local args = { ... }
local function repl(escape, open, num, close)
if escape == "" then
local replacement = tostring(args[tonumber(num)])
if open == "" then
replacement = replacement..close
end
return replacement
else
return "@"..open..num..close
end
end
return (str:gsub("(@?)@(%(?)(%d+)(%)?)", repl))
end
local gettext, ngettext
if minetest.get_modpath("intllib") then
if intllib.make_gettext_pair then
-- New method using gettext.
gettext, ngettext = intllib.make_gettext_pair()
else
-- Old method using text files.
gettext = intllib.Getter()
end
end
-- Fill in missing functions.
gettext = gettext or function(msgid, ...)
return format(msgid, ...)
end
ngettext = ngettext or function(msgid, msgid_plural, n, ...)
return format(n==1 and msgid or msgid_plural, ...)
end
return gettext, ngettext

40
boards/locale/fr.po Normal file
View File

@ -0,0 +1,40 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the PACKAGE package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2018-07-16 10:00+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: 8bit\n"
#: init.lua
msgid "Text"
msgstr "Texte"
#: init.lua
msgid "Write"
msgstr "Ecrire"
#: init.lua
msgid "Wipe"
msgstr "Effacer"
#: init.lua
msgid "Black board"
msgstr "Tableau noir"
#: init.lua
msgid "Green board"
msgstr "Tableau vert"

View File

@ -0,0 +1,34 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the PACKAGE package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2018-07-16 10:00+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: 8bit\n"
#: init.lua
msgid "Text"
msgstr ""
#: init.lua
msgid "Write"
msgstr ""
#: init.lua
msgid "Wipe"
msgstr ""
#: init.lua
msgid "Black board"
msgstr ""

Binary file not shown.

After

Width:  |  Height:  |  Size: 563 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 485 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 248 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 230 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 305 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 289 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 304 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 338 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 303 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 325 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 291 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 299 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 298 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 292 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 298 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 287 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 286 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 282 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 305 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 311 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 309 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 320 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 314 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 315 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 322 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 315 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 311 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 316 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 320 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 294 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 296 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 286 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 292 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 287 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 309 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 335 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 314 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 308 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 312 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 313 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 303 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 308 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 168 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 324 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 308 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 182 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 305 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 306 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 318 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 314 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 311 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 311 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 313 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 318 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 315 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 307 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 311 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 309 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 315 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 310 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 329 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 327 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 315 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 297 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 316 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 296 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 286 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 298 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 296 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 304 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 299 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 306 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 301 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 307 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 304 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 300 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 290 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 300 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 305 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 299 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 305 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 308 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 295 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 313 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 307 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 306 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 302 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 299 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 296 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 296 B

Some files were not shown because too many files have changed in this diff Show More