Commit Graph

69 Commits

Author SHA1 Message Date
Peter Nerlich
ab2eb4af43
LCDs: Rework line breaking algorithm, include spaces, show unknown symbols as spaces (#64)
Typeset the lines according to these rules (in order of subjective significance):

 * words that fit on the screen but would let the current line overflow are placed on a new line instead
 *  " | " always forces a linebreak
 *  spaces are included, except when there is a linebreak anyway
 * words with more characters than fit on screen are just chopped up, filling the lines as full as possible
 * don't bother typesetting more lines than fit on screen
 * if we are on the last line that will fit on screen
2020-12-09 17:48:18 +01:00
David Leal
021c521c65
Use mod.conf for dependencies and description (#59) 2020-10-30 15:50:26 +01:00
Christopher Head
434010bdd0 Implement slot tracking
Whenever putting or taking items, tell the listeners which slot they
were put into or taken from. Also tell listeners when the user moves
items from one slot to another.
2019-03-05 22:04:56 -08:00
Christopher Head
9e4f1a5bab Rework Digilines chest
Fix various bugs regarding spurious messages being sent, item stack
swapping not being reported properly, etc.. Change from sending strings
to sending tables. Enhance Pipeworks tube support by reporting which
side an item is added or removed via tube or filter-injector.
2019-03-05 22:04:56 -08:00
DS
925b318800 change digiline to digilines in nodedef (#47)
* change digiline to digilines in nodedef

* choose the other variant
2019-03-05 22:01:12 -08:00
Auke Kok
930ca4779a Update .luacheckrc 2019-03-05 22:00:20 -08:00
GreenXenith
a2230bdeb1 Fix entity overloading and add missing entity check
- Remove bad clear_screen()
- Use minetest.is_player()
- Fix entity with rotated LCD
- Use on_rotate and ad new rotate function, refactor code
2019-03-05 22:00:20 -08:00
12Me21
c7f4185e92 Fix duplicate messages (#52)
* Fixes duplicate messages
2019-03-05 21:41:50 -08:00
HybridDog
a5e2f05d92 Use new minetest.settings (#51)
Use new minetest.settings.
2019-03-05 21:35:36 -08:00
DS
8b73f9e11d add listring to chest (#46)
* add listring to chest
2018-02-16 17:31:53 -08:00
DS-Minetest
fceb4bb696 lcd: make lettering nearer to display 2017-03-14 21:57:52 -07:00
Diego Martínez
7530df494f Backwards compat code. 2017-03-14 21:57:01 -07:00
Diego Martínez
196a6da26c Remove unused args. 2017-03-14 21:57:01 -07:00
Diego Martínez
5caacf3019 Add .luacheckrc and fix warnings. 2017-03-14 21:57:01 -07:00
Diego Martínez
f5e6a7d181 Change to .. 2017-03-14 21:57:01 -07:00
Diego Martínez
6a2fa5a3e4 Rename global table to digilines.
This also adds a backwards compat alias so other mods
shouldn't break.
2017-03-14 21:57:01 -07:00
Diego Martínez
54b1b3fe91 Add settingtypes.txt.
This allows configuring the mod from the GUI.
2017-03-06 13:58:47 -08:00
Christopher Head
84133a10df Use minetest.hash_node_position for searches.
Previously, Digilines used concatenations of X/Y/Z coordinates into
strings as keys to check for repeatedly visiting the same node during a
graph search. Replace them with integer keys generated by
`minetest.hash_node_position`, which should be more efficient.
2017-02-28 22:13:19 -08:00
Christopher Head
25ea72270d Use VoxelManipulators to force-load nodes.
If a node needed during wire traversal is not currently loaded, it is
loaded from disk using a VoxelManipulator.
2017-02-28 22:13:19 -08:00
Christopher Head
514fb2e289 Replace DFS with BFS.
Replace the recursive depth-first search of a wire network with an
iterative breadth-first search, primarily to reduce memory footprint and
eliminate the possibility of stack overflow.
2017-02-28 22:13:19 -08:00
Auke Kok
7ecb29e87f Convert digilines to a mod (not modpack). (#32)
Digilines is probably used by most people in its entirety.

I've retained the ability to disable inventory, rtc, lightsensor and
LCD by the minetest settings "diglines_enable_rtc" etc.. If set to
"false", these components will not be loaded. It is assumed by default
that these are enabled.

In the conversion the digilines_lcd:lcd node was renamed to
digilines:lcd (same for all the other nodes). To retain backwards
compatibility I've provided aliases for each of these nodes.
2016-05-27 16:08:53 -07:00
cheapie
4c743f9c4d Add protection support to channel fields (#33) 2016-05-23 11:13:24 -07:00
Auke Kok
b6e8913901 Adding a screenshot and description.txt
This is for the toplevel folder alone. Subfolders could each use
a separate one, but I feel they are not needed atm.
2016-04-11 21:30:40 -07:00
Auke Kok
2a0e0d6b73 Merge pull request #30 from Rui914/master
Fix undeclared global variable "rules"
2016-04-11 21:24:47 -07:00
Rui914
00deb0c3fc Fix undeclared global variable "rules" 2016-04-10 11:02:01 +09:00
Florian Euchner
60c3e608a9 Merge pull request #28 from electrodude/bugs
Add missing local variable
2016-01-19 17:09:40 +01:00
electrodude
dcb25cbe2f Removed redundant minetest.get_meta(pos) 2016-01-18 11:54:05 -05:00
electrodude
aabf7ec575 Added missing local variable
The on_metadata_inventory_take method of digiline_inventory:chest was
broken, since it used a `channel` local variable that was never defined,
but should have been fetched from the node's meta
2016-01-18 11:44:10 -05:00
Jeija
69e1d1ba9b Merge branch 'Rui914-patch-1' 2015-08-23 10:43:11 +02:00
Rui914
bedfa58672 Fix digilines_lcd problems 2015-08-21 01:28:51 +09:00
Florian Euchner
e2b9141ccc Merge pull request #23 from MT-Modder/infotext-lcd
Add infotext to lcd, like signs
2015-02-14 20:17:40 +01:00
MT-Modder
bb523af0de Add infotext to lcd like signs 2015-02-14 13:21:44 -05:00
Florian Euchner
1dfc602eca Merge pull request #22 from MT-Modder/chest-craft
Add craft recipe for digiline chest
2015-02-13 22:38:24 +01:00
MT-Modder
81ffa957d2 Add craft recipe for digiline chest 2015-02-05 15:24:22 -05:00
Jeija
1bf3151320 Fix #21, undeclared variables 2015-01-12 18:51:49 +01:00
Florian Euchner
a121bc0b12 Merge pull request #20 from 163140/master
Added signal "empty"
2014-12-08 12:38:20 +01:00
163140
c2f74cd42a Added signal "empty"
"Empty" signal useful for automated factories
2014-12-08 01:31:06 +00:00
Jeija
241a7ed75f Fix minetest-mod-mesecons issue #188: Use digiline:tablecopy 2014-11-22 19:26:04 +01:00
Jeija
93135be10c Define digiline chest from scratch by Zefram, posted in #16 2014-11-19 19:27:58 +01:00
Florian Euchner
1bb2230163 Merge pull request #3 from lordcirth/master
Added crafting recipes for digiline and lcd.
2014-11-19 18:59:52 +01:00
Florian Euchner
fcd005c192 Merge pull request #15 from ShadowNinja/fix-unknown-nodes
Add a missing check for unknown nodes
2014-07-01 06:42:45 +02:00
ShadowNinja
101a9bbbbe Add a missing check for unknown nodes 2014-06-30 22:17:39 -04:00
Florian Euchner
1c4db4d675 Merge pull request #14 from cheapie/master
Fix #13
2014-06-05 16:57:14 +02:00
Carter Kolwey
ccd3fbe7ed Don't change the channel if the new channel is nil 2014-06-05 00:55:29 -05:00
Jeija
d674101936 Make spec variable local 2014-04-24 22:56:10 +02:00
Jeija
843c68af14 Fix channel value getting deleted when quitting without editing the value in LCD, RTC and Light Sensor 2014-04-24 10:59:16 +02:00
Jeija
fa3f9ce09d Merge branch 'master' of https://github.com/Jeija/minetest-mod-digilines 2014-04-24 10:48:18 +02:00
Jeija
190278bc78 Allow for non-autoconnecting wires; only if digiline.wire.use_autoconnect is set, autoconnection will be used 2014-04-24 10:46:58 +02:00
Jeija
adb41d4e2a Merge pull request #10 from CiaranG/gmatch
Replace chunk of unnecessary code with gmatch
2014-03-12 20:50:35 +01:00
Ciaran Gultnieks
5220d391b8 Replace chunk of unnecessary code with gmatch 2014-03-12 18:28:38 +00:00