4997 Commits

Author SHA1 Message Date
Florian Nücke
f4f7bd50a5 fixed event.timer ids; fixed file __gc; fixed render glitch when calling up the interpreter history; fixed folders not being postfixed with "/" in file based filesystem; better error messages (no java class part in the message) 2013-10-02 22:17:11 +02:00
Florian Nücke
1a20aed18a increased ram sizes by one bit shift (reading files - and loading them as scripts - takes quite a bit of ram); network fixes; filesystem fixes 2013-10-02 21:28:58 +02:00
Florian Nücke
90bbdc2633 more work on filesystem stuff 2013-10-02 15:11:49 +02:00
Johannes Lohrer
57c1b0f3a0 BC and UE support 2013-10-01 23:12:33 +02:00
Florian Nücke
59febb056f network rewrite to use uuids as node addresses. this way we won't have to expect addresses to change on network merges, which make a lot of things a much easier (in particular on the Lua side) 2013-10-01 22:10:54 +02:00
Florian Nücke
06eac9254c some import organizing (sorting); switched to converting all strings lua sends via messages to byte arrays instead of strings, since for lua strings are essentially just binary data. this means they have to be converted to strings where appropriate from now on (e.g. the graphics card will convert byte array to utf8 strings for gpu.set) 2013-10-01 15:04:57 +02:00
Florian Nücke
6f18353116 fixed picking of blocks (creative mode) 2013-10-01 11:02:51 +02:00
Florian Nücke
dff6cfa22b removed some reflective calls and similar after making scalac a bit more verbose 2013-10-01 10:38:46 +02:00
Florian Nücke
1da52f8403 removed the overly generic component saving again, items just have to be saved by their inventories. way too many problems with figuring out when to save otherwise (e.g. world unload triggers for each "sub-world", so when going from overworld to nether clearing the cache didn't really make sense; quite the opposite) 2013-10-01 10:03:01 +02:00
Florian Nücke
814f49b0ec Merge branch 'master' of cil.li:oc 2013-09-30 22:22:03 +02:00
Florian Nücke
4ef5e3a72b removed methods that were only there to make it clear what the obfuscated ones were doing 2013-09-30 22:21:58 +02:00
Johannes Lohrer
b2093a9066 added energy net integration to powersupply 2013-09-30 22:18:48 +02:00
Johannes Lohrer
b5d1bef7d3 Merge branch 'master' of cil.li:oc 2013-09-30 21:56:46 +02:00
Johannes Lohrer
249ae147db Merge branch 'master' of cil.li:oc
Conflicts:
	li/cil/oc/common/tileentity/TileEntityComputer.scala

	added energy net integration to powersupply
2013-09-30 21:55:39 +02:00
Florian Nücke
f2f6d0f2e8 some preparation for file system stuff; changed the way item components are stored (more generic, automatically save on world save, no more manual updating in node.address_=) 2013-09-30 21:42:09 +02:00
Johannes Lohrer
a4546d00de updated to 1.6.4 2013-09-30 20:18:15 +02:00
Florian Nücke
b248174aba added some textures for items; added german localization file; pulled resource pack name into a constant (may split later to natively support texture packs or something, but mainly for when the mod name changes) 2013-09-30 07:49:30 +02:00
Florian Nücke
b97f57813a ensuring sleeping computers are resumed properly 2013-09-29 19:49:42 +02:00
Florian Nücke
88a65bd590 added middle mouse button pasting 2013-09-29 17:36:12 +02:00
Florian Nücke
41c1f40377 underped computer tileentity (no updates on client anymore); ram is now evaluated, computers start with none built-in 2013-09-29 17:24:32 +02:00
Florian Nücke
585d62f045 fixed util package 2013-09-29 15:01:04 +02:00
Florian Nücke
c1fd2c0144 refactor run for tile entities 2013-09-29 14:57:05 +02:00
Florian Nücke
bb491ecf04 some more minor refactoring; preparing memory items 2013-09-29 14:15:40 +02:00
Florian Nücke
92b8a28862 removed flicker for command "history"; little hello message on interpreter 2013-09-29 12:38:26 +02:00
Florian Nücke
abddfae2ea some more refactoring; switched up driver loading a bit: they're now loaded from the kernel, by it requesting the list of drivers. this way they're loaded into the sandbox (with the network sending function available, in addition to what the normal sandbox can do); doing primary init of kernel in computer init to get a better idea of how much memory our os stuff needs, in particular the driver table; saving the kernel size now, since the baseline is primarily dependent on the kernel, not what we provide aside from that. this way the "user" memory that comes free is now limitable to 16k with much less variance (init takes around 9k, apparently, the rest is free) 2013-09-29 11:57:14 +02:00
Florian Nücke
d931b6c92f massive refactoring 2013-09-28 18:33:28 +02:00
Florian Nücke
d24f726632 os.reboot() and os.shutdown(); term.keyboardId to control which keyboard's input to listen to; added network "visibility" flag for nodes, controls which other nodes receive connect/reconnect messages from them; some more validation of network node validation (i.e. not sending to / receiving from nodes with address < 1 or visibility == none); fixed margin rendering for screen gui; always injecting the address of a sender for a signal received via the network; fixed item localization; made computers start/stop/queryable via network; major overhaul of multi-threading in computer class, not relying on future.cancel anymore (which apparently didn't interrupt running threads even though it should have) and centralized the state switching a bit (no longer any in signal() for example). removed the saveMonitor (if someone calls us from something other than the server thread its their fault). 2013-09-28 17:32:23 +02:00
Florian Nücke
90f4b2d96f lua allocator memory tracking fix; mutliitem (multiple items sharing same id) 2013-09-27 14:49:16 +02:00
Florian Nücke
3ee9f8cb40 Merge branch 'master' of cil.li:oc 2013-09-27 09:01:34 +02:00
Florian Nücke
cae5bf3103 added getter for neighbors of a network node 2013-09-27 09:01:04 +02:00
Florian Nücke
d7905fe737 timer implementation on the lua side (driven via event.fire) 2013-09-27 08:33:55 +02:00
Florian Nücke
12da32bc6c started working on redstone interfacing; improved term.write performance by caching the screen's resolution and added a signal for screen size changes 2013-09-27 07:12:33 +02:00
Florian Nücke
484dfd6a83 allowing "control characters" in text buffer, too, now (it only works on chars so it really doesn't care, plus our renderer does, too); since java works on unicode strings and conversions are a pain lua will have to live with those. added a couple of unicode-aware replacements for string lib functions, the more complex ones are still todo 2013-09-26 16:15:08 +02:00
Florian Nücke
887a21941d redid font texture to include all ascii chars, even special chars for control characters since there was padding anyway and in particular umlaut chars and such; simplified initialization of renderer a tad, too 2013-09-26 12:12:15 +02:00
Florian Nücke
cca693da31 fixed resuming of paused computers originally in SynchronizedReturn state; fixed items saving their address (graphics cards i.e.) 2013-09-26 10:48:30 +02:00
Florian Nücke
86b7b8441b moved event handlers to a more local scope; some fixes in lua scripts; fixed background worker being spawned twice when starting a computer (automatically triggered via first signal, no need to start one manually) 2013-09-26 09:21:14 +02:00
Florian Nücke
4dfa9ab316 yet more network related fixes 2013-09-25 17:24:40 +02:00
Florian Nücke
6ce3da241d fixed underscore being too under (was cut off); a couple of tweaks for the command line; clipboard support 2013-09-25 13:19:10 +02:00
Florian Nücke
5936c0d81f hell yeah, interactive command line is working 2013-09-25 11:17:21 +02:00
Florian Nücke
75ec692b74 yet more network reworking and starting to work on the Lua side again 2013-09-25 09:37:24 +02:00
Florian Nücke
209ba2ce7e underped network quite a bit 2013-09-25 03:59:12 +02:00
Florian Nücke
2b1d410da3 some eris fixes; compiling with /02 instead of /Ox seems to have solved remaining crashes, we'll see...; yet another lib move, the final one I think 2013-09-24 05:21:59 +02:00
Johannes Lohrer
fe6cc8cc44 IC2 API 2013-09-23 22:24:26 +02:00
Florian Nücke
29a79b5ed0 rudimentary keyboard input is working 2013-09-23 18:13:24 +02:00
Florian Nücke
48cf012d67 messages working it would seem (screen printing works again, some quirks still) 2013-09-23 15:08:27 +02:00
Florian Nücke
f3373710c2 allowing message handlers to return results, which allows for messages with results (e.g. to query information from nodes such as a gpu's current resolution) 2013-09-23 05:38:51 +02:00
Florian Nücke
0930f895c2 screw this, api will be in scala, the pain from java<->Any incompatibilities is too big; still far from done but at least it builds again 2013-09-23 01:30:57 +02:00
Florian Nücke
5aea2ef316 more shifting from pure drivers to network (drivers will still be used for items and "external" blocks) 2013-09-22 23:20:30 +02:00
Florian Nücke
6bcfab2c5e cleanup 2013-09-22 16:59:37 +02:00
Florian Nücke
5871731b7a working on network layer, to replace most driver api logic: everything will be "networked", no direct references to anything anywhere, callbacks will all be via network messages; changed library folder structure and keeping everything in a single library now to avoid issues with dependencies (in particular under linux where dlopen tries to be clever) 2013-09-22 14:58:14 +02:00