ShadowNinja
bd1766e448
Improve the LuaController
...
Changes:
* Stops code after a certain number of instructions.
* Allows functions, due to instruction counting.
* Allows loops and goto with non-JIT Lua (LuaJIT doesn't count looping as an instruction, allowing infinite loops), due to instruction counting.
* Removes string matching functions as they can be slow.
* Adds some safe functions.
* Limits the amount of printing that can be done (to prevent console flooding).
* Code cleanup.
* More...
2014-10-07 17:09:25 -04:00
Zefram
f1eaee2281
fix programming microcontroller through form
...
The handling of the "quit" pseudo-field meant that the microcontroller
couldn't be programmed with explicit code, only with the examples.
The "quit" can actually be ignored: what matters for programming the
controller is whether the "code" field was supplied.
2014-04-25 18:30:59 +02:00
Jeija
300abcb587
Fix #155 (option 2 used). Remove non-ActionQueue system. Enable overheat for more than 20 actions per second on lua- / microcontrollers and gates.
...
Fix a bug where a burnt luacontroller didn't have the correct pin-states as the burnt controller does not register any changes from outside.
2014-04-20 21:51:17 +02:00
Novatux
f1ae54ed12
Try to fix gateswith serverstep code.
2014-01-11 07:24:42 +01:00
Uberi
e8d31c3e5a
Change field receipt handling to work properly with Minetest 0.4.8.
2013-12-18 14:54:46 -05:00
Uberi
16b4b79c51
Update code to standards of Minetest 0.4.8.
2013-11-30 22:13:00 -05:00
Vanessa Ezekowitz
f46bc329de
Use minetest.swap_node() instead of mesecons' version, Minor code changes
...
here and there to facilitate this.
2013-11-30 20:34:55 -05:00
khonkhortisan
75ca00f51e
Escape microcontroller code in formspec
2013-08-29 14:14:04 -07:00
khonkhortisan
913e355a71
Merge pull request #112 from khonkhortisan/multi_rules
...
Multi rules
Merged for near-future textures to be merged cleanly.
2013-08-27 22:22:30 -07:00
khonkhortisan
885899cbaf
Crossover
2013-06-20 09:30:26 -07:00
Novatux
afad592783
Change mesecons signals so that they update effectors only after a globalstep, configurable to be on/off
2013-06-05 15:37:55 -04:00
Novatux
edc10dac47
Add an ABM function which resets heat to 0, since gates/controllers won't be cooled normally if they are moved (piston, etc...) during the cooling delay.
2013-06-05 06:45:19 +02:00
RealBadAngel
255e363b04
Fix all crafting recipes to use modern style
2013-04-28 12:40:08 +02:00
Anthony Zhang
3792b692aa
Digging and footstep sounds for everything that needs them! Plus, pushing buttons, punching switches, and flipping levers all make sounds.
2013-03-06 20:51:57 -05:00
Jeija
6b1bfe6391
Add rule-name system. Every input rule can now have a name, that could help e.g. the microcontroller to know where a signal comes from.
2012-12-19 17:34:05 +01:00
Jeija
c0d3bd2abb
Include experimental vertical wires (needs textures)
2012-12-13 18:42:45 +01:00
Jeija
05def1540a
Fix microcontroller digging
2012-12-09 15:32:29 +01:00
Jeija
b37bdbf55c
Port a lot more (basically everything apart from gates, pistons and extrawire crossing) to the new nodedef system. There are some problems with wall button and wall lever (in the way they visually connect to wires)
2012-12-09 00:42:30 +01:00
cornernote
931ac23ff3
Improve T-FF code and add a reset pin on C.
2012-10-07 13:08:01 -04:00
Jeija
500e95c331
Fix Microcontroller bug in a different way, define offstate ports as inputs only
2012-09-09 13:07:59 +02:00
Jeija
f959c16763
Fix Microcontroller bug (discovered by Fenris) and some others that propably noone found
2012-09-08 15:10:31 +02:00
Vanessa Ezekowitz
34737f62e9
oops, that last commit broke something - evidently 'code' is not consistent.
...
This restores the previous behavior when code=nil, and shows the code when not.
2012-09-01 17:42:42 -04:00
Vanessa Ezekowitz
1d29037d8b
fix missing code display when after() is involved
2012-09-01 17:32:49 -04:00
Vanessa Ezekowitz
f641a0cc9c
prevent crash with malformed sbi code.
...
just inserting "sbi(A, C!=D)" into a µC without connecting it to anything
causes 'b' at line 510 to become nil, crashing the server.
2012-09-01 17:28:04 -04:00
Kyle
d399162fc1
Reduced the number of µC images. Instead of 16 top images, there is one
...
off image, then four port images that can be overlaid on top of the
blank.
2012-08-24 23:23:44 -07:00
Vanessa Ezekowitz
d0ae1b56e8
added proper bottom image to microcontroller
2012-08-25 01:32:24 -04:00
Kyle
9cfb13d60c
pressing enter will reprogram the µC instead of acting like escape
2012-08-24 20:59:26 -07:00
khonkhortisan
68b99fed76
display µc programming like a sign
...
I had a grid that mapped buttons to pixels so pressing a button displayed a letter. I had one programming that was a positive match so the pixel turned on, and another programming that was negative and just passed the signal on to the next pixel. If I had to right-click on each µc to see its programming, it would take me longer to find a problem. If I can see the programming just by looking at it, I could find a typo much easier.
I'm not sure about the \n \n\r thing.
2012-08-21 10:35:34 -07:00
Jeija
b2c5a672e7
Remove obsolete digprop_constanttime
2012-08-20 09:51:19 +02:00
Jeija
c103aa6b23
Fix some bug that occurs when placing microcontrollers directly next to each other
2012-08-18 11:06:24 +02:00
Jeija
67dfa93c2e
Finish after() command: works now
2012-08-13 23:20:29 +02:00
Jeija
5ede8f370c
Bugfix for microcontroller's after(): Make sure that microcontroller the code runs on is the same that sends the code
2012-08-13 22:55:14 +02:00
Jeija
9f16e4fcaa
Add not-yet-working after(time, code) function to the microcontroller
2012-08-13 22:33:25 +02:00
Jeija
00ce2540c2
New effector system, effectors have to be registered with mesecon:register_effector(onstate, offstate, rules, function get_rules) rules and function get_rules are optional. You don't have to specify both onstate and offstate (required for e.g. removestone)
2012-08-13 20:17:45 +02:00
Jeija
3ea68a6eae
Fix mesecon delayer bugs and other non-functional changes
2012-08-12 21:28:53 +02:00
Jeija
9829abc74d
HUGE speed improvement
2012-08-12 10:57:00 +02:00
Vanessa Ezekowitz
5d1c184941
thinned the microcontroller down a bit to fit the style of the other floor objects.
2012-08-11 21:04:05 -04:00
Vanessa Ezekowitz
e12b297987
change all recipes to use group:mesecon_conductor_craftable
...
fixed deprecated/invalid recipes in lightstones.
fixed copy&paste error in one of the delayer textures
fixed recipe for player detector to rely on microcontroller instead of old IC
2012-08-11 20:53:47 -04:00
Jeija
1f6e1fa7ab
Mesecons only connect to blocks with group mesecon > 1
2012-08-11 23:39:28 +02:00
Vanessa Ezekowitz
39db9cf01c
Added "mesecon = 1" to the groups setting for most objects, so that they'll
...
visibly connect to neighboring wires.
2012-08-10 17:35:54 -04:00
Jeija
fe6c9f3e09
Little bugfix: Register microcontroller0000 as off receptor
2012-08-10 11:46:17 +02:00
Jeija
ce72ed2bab
Add print command print(string in quotes or condition, can be concatenated using comma)
2012-08-10 10:47:40 +02:00
Jeija
6a524b8cdd
Add else: if(condition)command()>command(); > is else
2012-08-10 10:19:33 +02:00
Jeija
0633809f73
Allow usage of sbi(PORT, condition) and change preset snippets to use this
2012-08-10 09:44:49 +02:00
Jeija
9fa033db7b
Remove dead timer
2012-08-10 08:23:55 +02:00
Jeija
ce928a5954
Little bugfix for programming the microcontroller
2012-08-09 23:09:02 +02:00
Jeija
af3288f61d
Add buttons for logic gates and some FlipFlops
2012-08-09 22:39:54 +02:00
Jeija
f557b6c363
Add overheat protection and lots of bugfixes once again
2012-08-09 21:40:25 +02:00
Jeija
0abfa674d6
A huge lot of bugfixes
2012-08-09 16:25:30 +02:00
Jeija
9854160ece
Bugfix for last push
2012-08-09 13:34:10 +02:00