SquidDev
15a3882016
Fix monitor clear state being cleared without a redraw
2018-02-21 14:32:53 +00:00
SquidDev
d3ecd5214b
Merge remote-tracking branch 'SquidDev-CC-ComputerCraft/feature/turtle-event'
2018-02-16 10:48:43 +00:00
SquidDev
0a8a8a742e
Add config options to disable various turtle actions
...
Mostly intended for those people who don't like .inspect() or
.getItemDetail(), but could allow modpacks to block equipping upgrades,
placing blocks, etc...
2018-02-16 10:37:47 +00:00
SquidDev
ecff23d027
Add turtle events
...
The main aim of this is to allow for greater extensibility for other
mods. For instance, you can now prevent turtles placing dirt blocks, or
turning when on gravel.
2018-02-16 10:33:32 +00:00
SquidDev
20dcb32bae
Add command to reload config from disk
...
Also bump version number, as we're relatively close to a release and
it's frustrating having to bump it when putting out previews.
2018-02-16 09:33:40 +00:00
SquidDev
678462d2db
Minor fixes to the monitor rewrite
2018-02-15 20:49:34 +00:00
SquidDev
61fdfec09b
Further overrides for wireless modem blockiness
2018-02-15 18:17:38 +00:00
SquidDev
5eadf5533d
Fix wireless modems suffocating entities
...
As of #458 , BlockPeripheral will act as a full/opaque block for some
peripherals and a transparent one for others. However, some Block
methods use the default state rather than the current one. This means
modems report being a full block when they are not, leading to
suffocating entities and lighting glitches.
2018-02-15 18:17:02 +00:00
SquidDev
2d3cd5dc80
Merge pull request #521 from SquidDev-CC/ComputerCraft/hotfix/modem-full-block
...
Fix wireless modems suffocating entities
2018-02-15 18:00:58 +00:00
SquidDev
5208ad0b98
Fix wireless modems suffocating entities
...
As of #458 , BlockPeripheral will act as a full/opaque block for some
peripherals and a transparent one for others. However, some Block
methods use the default state rather than the current one. This means
modems report being a full block when they are not, leading to
suffocating entities and lighting glitches.
2018-02-15 17:56:08 +00:00
SquidDev
662fb96beb
Overhaul monitor's terminal code
...
This restructures monitor in order to make it thread-safe: namely
removing any world interaction from the computer thread.
Instead of each monitor having their own terminal, resize flag, etc...
we use a monitor "multiblock" object. This is constructed on the origin
monitor and propagated to other monitors when required.
We attempt to construct the multiblock object (and so the corresponding
terminal) as lazily as posible. Consequently, we only create the
terminal when fetching the peripheral (not when attaching, as that is
done on the computer thread).
If a monitor is resized (say due to placing/breaking a monitor) then we
will invalidate all references to the multiblock object, construct a new
one if required, and propagate it to all component monitors.
This commit also fixes several instances of glLists not being deleted
after use. It is not a comprehensive fix, but that is outside the scope
of this commit.
2018-02-14 21:30:07 +00:00
SquidDev
4c14431a3d
Various improvements to command system
...
- Ensure usage is consistent
- Allow computer selectors to return multiple values
- Fix commands being marked as usable when it isn't
- Add /computercraft turn-on, a counter to /computercraft shutdown
2018-02-13 11:45:13 +00:00
SquidDev
5ae38a3f18
Merge pull request #520 from SquidDev-CC/ComputerCraft/hotfix/turtle-world-border
...
Prevent turtles moving beyond the world border
2018-02-13 11:21:55 +00:00
SquidDev
94e10d1f67
Prevent turtles moving beyond the world border
...
As tiles outside the world border are not ticked, turtles are rendered
entirely useless. Furthermore, the turtle animation will never progress
resulting in visual glitches.
In order to avoid this, we ensure the target position is within the
world border when moving to it.
2018-02-12 17:50:46 +00:00
SquidDev
0a50676884
Fix turtle owner not being persisted
2018-02-10 16:10:16 +00:00
SquidDev
41cce78fcb
Merge pull request #518 from SquidDev-CC/ComputerCraft/feature/owner-tracking
...
Track which player "owns" a turtle
2018-02-05 11:07:06 +00:00
SquidDev
4c0fa1fabe
Track which player "owns" a turtle
...
When a player places a turtle, they are marked as its owner. Any actions
they perform (such as breaking blocks, moving, etc...) are performed
using this player's game profile.
This allows turtles to work correctly with various permissions mods.
Previously you would have to whitelist all turtles in order for them to
function within a claim.
2018-02-04 21:35:21 +00:00
SquidDev
54e1dafa3f
Merge pull request #517 from SquidDev-CC/ComputerCraft/feature/ore-dict
...
Add ore dictionary support to all recipes
2018-02-04 20:06:34 +00:00
SquidDev
3ac76bc05b
Add ore dictionary support to all recipes
2018-02-04 20:02:12 +00:00
SquidDev
83030df3ee
Add computer performance monitor
2018-02-02 13:34:27 +00:00
SquidDev
3298efe652
Prevent computer dump command sending too much information
2018-01-20 11:07:09 +00:00
SquidDev
01d9919a3e
Merge pull request #508 from SquidDev-CC/ComputerCraft/hotfix/turtle-speaker-model
...
Fix turtle speaker upgrade's missing texture
2018-01-19 13:10:20 +00:00
SquidDev
80b1170b63
Extract required textures from models instead
...
This ensures we will not get missing texture errors in the future, and
allows resource pack artists to use additional textures.
2018-01-19 13:04:50 +00:00
SquidDev
2e7302e654
Fix turtle speaker upgrade's missing texture
...
The sprite was not registered into the atlas, meaning it rendered the
missing texture instead.
2018-01-19 12:42:32 +00:00
SquidDev
ca7fb8a0b4
Cache turtle family within the tile
...
This means one can call .getFamily() in a thread-safe manner, ensuring
turtle.getFuelLimit() does not cause issues. As we use a specialist
TE class for each family this does not require any specialist caching.
2018-01-18 13:06:34 +00:00
SquidDev
c9b0894f26
Cache direction of modems within the tile
...
This ensures the world is not accessed from another thread.
Closes #410
2018-01-18 13:06:11 +00:00
SquidDev
c3454a195d
Merge branch 'master' of https://github.com/dan200/ComputerCraft
2018-01-15 17:18:48 +00:00
Wojbie
0d28c67534
Fix advanced monitor recipe.
...
Fix recipe to create 4 monitors.
2018-01-14 23:03:14 +01:00
Daniel Ratcliffe
3e265c27ff
Merge pull request #455 from Wilma456/fileread
...
Add read() to Filehandle
2018-01-13 00:58:19 +00:00
Daniel Ratcliffe
8d356f50c4
Merge pull request #440 from Wilma456/iomulti
...
Make io.write() accept multiple args
2018-01-13 00:48:07 +00:00
Daniel Ratcliffe
f30c4f16c0
Merge pull request #411 from Wilma456/copyfixup
...
Fix Bug in copy.lua, mkdir.lua and rename.lua (updated)
2018-01-13 00:32:55 +00:00
Daniel Ratcliffe
8bb8caa315
Merge pull request #448 from Wilma456/writecheck
...
Fix check of write()
2018-01-13 00:28:08 +00:00
SquidDev
0f17a3d72e
Merge branch 'master' of https://github.com/dan200/ComputerCraft
2018-01-12 14:15:22 +00:00
Daniel Ratcliffe
7647369e2d
Merge pull request #446 from Wilma456/moduledir
...
Add folder /rom/modules
2018-01-12 14:10:50 +00:00
Daniel Ratcliffe
4b4208e724
Merge pull request #476 from SquidDev-CC/hotfix/printer-clear
...
Fix the printer overwriting the current page
2018-01-12 13:59:51 +00:00
Daniel Ratcliffe
2a16a1df85
Merge pull request #486 from Wilma456/extensionfix
...
Fix Bug in Paint and Edit
2018-01-12 13:59:15 +00:00
Daniel Ratcliffe
25f7c58400
Merge pull request #494 from SquidDev-CC/hotfix/collision-aabb
...
Fix getCollisionBoundingBox not using all AABBs
2018-01-12 13:57:50 +00:00
Daniel Ratcliffe
c3db91f11f
Merge pull request #485 from Luca0208/patch-1
...
Removed the "the" that was too much(In /rom/help/cd.txt)
2018-01-12 13:56:48 +00:00
Daniel Ratcliffe
8c66ce03d4
Merge pull request #475 from Wilma456/ioline
...
Fix io.lines()
2018-01-12 13:56:21 +00:00
Daniel Ratcliffe
2be2a0625e
Merge pull request #502 from SquidDev-CC/hotfix/missing-overlay
...
Fix turtle overlay not being rendered in items
2018-01-12 13:54:59 +00:00
SquidDev
632762768e
Add workaround for incorrect overload of getDrops being overridden
...
Closes #2
2017-12-30 19:03:32 +00:00
SquidDev
c69ba205f8
Merge pull request #502 from SquidDev-CC/ComputerCraft/hotfix/missing-overlay
...
Fix turtle overlay not being rendered in items
2017-12-24 21:49:01 +00:00
SquidDev
019f4dbea9
Fix turtle overlay not being rendered in items
2017-12-24 21:44:55 +00:00
SquidDev
259ea41ce3
Merge pull request #499 from SquidDev-CC/ComputerCraft/hotfix/null-network
...
Fix ComputerCraftAPI.getWirelessNetwork() failing
2017-12-10 15:39:59 +00:00
SquidDev
11290f7204
Fix ComputerCraftAPI.getWirelessNetwork() failing
...
I've got to admit, it is super embarrassing that a) I didn't notice this
when testing and b) no one else has noticed until now.
2017-12-10 15:37:40 +00:00
SquidDev
abd06133fb
More binary compatibility stubs for ILuaAPI
2017-12-07 09:24:44 +00:00
SquidDev
29a3a0c48f
Bump version
2017-12-07 09:08:15 +00:00
SquidDev
2728c63512
Add back ILuaAPI
...
This ensures binary compatibility with all those evil mods (Plethora)
which CC internals.
2017-12-07 09:06:47 +00:00
SquidDev
f3b11bc1c2
Copy over CCTweaks's command system
...
This adds several commands which may be useful for server owners. It'd
be nice to integrate this into ComputerCraft itself, but the associated
command framework is quite large so we'd have to think about it.
2017-12-06 15:51:51 +00:00
SquidDev
04590befb3
Add support for viewing arbitrary computers in a GUI
...
Important terminal (such as terminal size) is packed into the the
coordinate fields.
2017-12-06 15:43:25 +00:00
SquidDev
4e9034f910
Make http.websocket call synchronous in bios.lua
...
I thought I'd done this already, but it's possible it got lost during a
rebase.
2017-12-06 09:28:38 +00:00
SquidDev
341e3e2f89
Merge pull request #497 from SquidDev-CC/ComputerCraft/feature/pocket-map
...
Add map-like rendering for pocket computers
2017-12-01 19:41:07 +00:00
SquidDev
3f70ca5192
Merge pull request #492 from SquidDev-CC/ComputerCraft/feature/fun-turtle-rendering
...
Improve vertex transformation system
2017-12-01 19:39:33 +00:00
SquidDev
f11bfc53ee
Use IComputer instead of ServerComputer on the client
2017-12-01 19:32:15 +00:00
SquidDev
61e3967b8e
Merge pull request #494 from SquidDev-CC/ComputerCraft/hotfix/collision-aabb
...
Fix getCollisionBoundingBox not using all AABBs
2017-12-01 19:19:17 +00:00
SquidDev
add86ea100
Merge pull request #491 from SquidDev-CC/ComputerCraft/feature/api-api
...
Provide an API for registering custom APIs
2017-12-01 19:18:40 +00:00
SquidDev
dd51c89278
Add map-like rendering for pocket computers
2017-12-01 11:28:15 +00:00
SquidDev
788d783745
Fix getCollisionBoundingBox not using all AABBs
...
Closes #493
2017-11-22 10:52:28 +00:00
SquidDev
35da60543e
Improve turtles by 200%
...
Every other mod has some fun feature, so should we. And yes, this was
worth the 400 lines it took to implement.
2017-11-21 00:34:35 +00:00
SquidDev
ce7923d248
Improve vertex transformation system
...
This migrates TurtleMultiModel's current vertex transformation system
into something more powerful and "correct". Namely, it has the following
improvements:
- Handles all position formats (float, byte, etc...)
- Correctly translates normals of quads
- Reorders faces if the winding order is reversed
2017-11-21 00:18:03 +00:00
SquidDev
55847460c5
Provide an API for registering custom APIs
...
ILuaAPI has been moved to dan200.computercraft.api.lua. One creates
a new API by registering an instance of ILuaAPIFactory. This takes an
instance of IComputerSystem and returns such an API.
IComputerSystem is an extension of IComputerAccess, with methods to
access additional information about the the computer, such as its label
and filesystem.
2017-11-19 18:23:38 +00:00
SquidDev
893524b0a8
Mark computers as changed when changing on state
...
Previously they were not marked as such, meaning computer state was not
broadcast to the client until blinking state changed.
2017-11-19 15:23:12 +00:00
SquidDev
aa447ec101
Fix term.getTextScale() not using the main monitor
2017-11-19 14:03:48 +00:00
SquidDev
d7301ff15e
Merge pull request #412 from Wilma456/ComputerCraft-1/textfix
...
Add Check to textutils.tabulate/pagedTabulate
2017-11-15 16:58:13 +00:00
SquidDev
1cf10c5c47
Merge pull request #490 from zardyh/ComputerCraft/master
...
Propagate errors arising from API loading
2017-11-15 16:51:26 +00:00
SquidDev
6691ec8e3a
Merge pull request #390 from Wilma456/ComputerCraft-1/errormsg
...
Show fs error in paint and edit
2017-11-15 16:39:37 +00:00
SquidDev
a9f77221ff
Merge pull request #469 from Wilma456/ComputerCraft-1/newrecipe
...
Add more Recipes to Recipebook
2017-11-15 16:35:27 +00:00
SquidDev
dd3b69a633
Rebranding!
...
I feel kinda guilty about this, but it's probably a good idea to make it
clear that this isn't "actual, proper, stable" ComputerCraft.
2017-11-15 16:25:10 +00:00
hydraz
d766f8b34e
Propagate errors arising from API loading
2017-11-15 14:22:36 -02:00
SquidDev
2ae6fb47e7
Move CommandComputer into a child package
...
Means we can be a little more organised where we put the additional
commands.
2017-11-15 15:57:10 +00:00
SquidDev
dd5698241b
Add support for running multiple computers at the same time
...
- ComputerThread constructs multiple threads instead of just one,
depending on a config options.
- The synchronized blocks of PeripheralAPI.PeripheralWrapper have been
shifted a little to ensure no deadlocks occur.
2017-11-15 13:30:40 +00:00
SquidDev
ed8e9d7817
Add support for enabling Lua's debug library
...
Whilst I'm pretty sure this is safe for general use, I'm disabling this
by default for now. I may consider enabling it in the future if no
issues are found.
2017-11-15 12:18:10 +00:00
SquidDev
6c29b44c3c
Merge pull request #440 from Wilma456/ComputerCraft-1/iomulti
...
Make io.write() accept multiple args
2017-11-15 11:47:33 +00:00
SquidDev
0caa133089
Merge pull request #454 from SquidDev-CC/ComputerCraft/hotfix/lazy-computer-peripheral
...
[WIP] Only instantiate ServerComputer on tile ticks
2017-11-15 11:42:54 +00:00
SquidDev
a8b08bd971
Remove apis.HTTPRequest
...
I evidently duplicated this during some rebase, more fool me.
2017-11-15 11:39:48 +00:00
SquidDev
c9181a121f
Merge pull request #395 from SquidDev-CC/ComputerCraft/feature/websocket
...
Websocket support
2017-11-15 11:39:02 +00:00
SquidDev
30f4e0829f
Add websocket support to HTTP API
...
This uses Netty's websocket functionality, meaning we do not have to
depend on another library.
As websockets do not fit neatly into the standard polling socket model,
the API is significantly more event based than CCTweaks's. One uses
http.websocket to connect, which will wait until a connection is
established and then returns the connection object (an async variant is
available).
Once you have a websocket object, you can use .send(msg) to transmit a
message. Incoming messages will fire a "websocket_message" event, with
the URL and content as arguments. A convenience method (.receive())
exists to aid waiting for valid messages.
2017-11-15 11:32:17 +00:00
SquidDev
2155fce036
Merge pull request #486 from Wilma456/ComputerCraft-1/extensionfix
...
Fix Bug in Paint and Edit
2017-11-14 23:55:14 +00:00
SquidDev
27602ec8fc
Merge pull request #485 from Luca0208/ComputerCraft/patch-1
...
Removed the "the" that was too much(In /rom/help/cd.txt)
2017-11-14 23:54:54 +00:00
SquidDev
66f683d9c9
Merge pull request #475 from Wilma456/ComputerCraft-1/ioline
...
Fix io.lines()
2017-11-14 23:53:50 +00:00
SquidDev
ac08a52323
Merge pull request #480 from Wilma456/ComputerCraft-1/monitorscale
...
Add getTextScale() to Monitor
2017-11-14 23:53:04 +00:00
SquidDev
fe0f998c27
Merge pull request #448 from Wilma456/ComputerCraft-1/writecheck
...
Fix check of write()
2017-11-14 23:50:12 +00:00
Wilma456
bcf79165f9
Merge pull request #455 from Wilma456/ComputerCraft-1/fileread
...
Add read() to Filehandle
2017-11-14 23:48:38 +00:00
Steven Dirth
9b2a50cdfc
Merge pull request #362 from KingofGamesYami/ComputerCraft/featurecommand-event
...
Command Event
2017-11-14 23:27:11 +00:00
Wilma456
c5d99db654
Merge pull request #411 from Wilma456/ComputerCraft-1/copyfixup
...
Fix Bug in copy.lua, mkdir.lua and rename.lua (updated)
2017-11-14 23:24:11 +00:00
SquidDev
5253ab3e58
Merge pull request #463 from josephcsible/ComputerCraft/notnull
...
Remove some unnecessary null checks
2017-11-14 22:58:36 +00:00
SquidDev
11d8253d9c
Merge pull request #464 from josephcsible/ComputerCraft/unnecessary
...
Remove unnecessary code
2017-11-14 22:57:36 +00:00
SquidDev
bc2b481918
Merge pull request #289 from Wojbie/ComputerCraft/Speaker-pocket-computer-light
...
Add pocket computer light support to Speaker.
2017-11-14 22:46:01 +00:00
SquidDev
540e2e25aa
Merge pull request #163 from SquidDev-CC/ComputerCraft/feature/cobalt
...
Replace LuaJ with Cobalt
2017-11-14 21:48:47 +00:00
SquidDev
845118e9e2
Merge pull request #218 from SquidDev-CC/ComputerCraft/feature/new-computer-thread
...
Rewrite the computer thread system
2017-11-14 21:33:20 +00:00
SquidDev
b2b8753ee7
Merge pull request #227 from SquidDev-CC/ComputerCraft/feature/improved-cable
...
Improving cable/wired modem interactions
2017-11-14 21:32:53 +00:00
SquidDev
060fb21bdb
Merge pull request #298 from SquidDev-CC/ComputerCraft/feature/luaj-bit32
...
Replace BitAPI with a LuaJ implementation of bit32
2017-11-14 21:32:19 +00:00
SquidDev
ef008709c7
Merge pull request #402 from SquidDev-CC/ComputerCraft/feature/shell-resolution
...
Tweak shell program resolution slightly
2017-11-14 21:31:10 +00:00
SquidDev
09da119f27
Merge pull request #451 from SquidDev-CC/ComputerCraft/hotfix/disk-drive-stop
...
Use custom packet to play records, instead of using block events
2017-11-14 21:30:52 +00:00
SquidDev
f8487d1e1c
Merge pull request #453 from SquidDev-CC/ComputerCraft/hotfix/eager-remove-te
...
Remove tile before calling destroy
2017-11-14 21:15:47 +00:00
SquidDev
b6f773ffce
Merge pull request #457 from SquidDev-CC/ComputerCraft/hotfix/computer-reload
...
Turn on ServerComputer instances if they have timed out
2017-11-14 21:14:49 +00:00
SquidDev
c8673473ef
Merge pull request #476 from SquidDev-CC/ComputerCraft/hotfix/printer-clear
...
Fix the printer overwriting the current page
2017-11-14 21:14:10 +00:00
SquidDev
3829815756
Merge pull request #479 from SquidDev-CC/ComputerCraft/feature/network-optimisations
...
Only send terminal state to interacting players
2017-11-14 21:13:17 +00:00
SquidDev
0bd0f4d313
Prefix all loaded strings with "="
...
Whilst this is not consistent with normal Lua, this is required in order
to remain compatible with LuaJ.
2017-11-14 18:41:01 +00:00
SquidDev
73873eb8cb
Change timeout system to occur on instructions instead of API calls
...
This means loops which do not touch CC specific methods will still
produce an error, rather than terminating the computer.
2017-11-14 18:41:00 +00:00
SquidDev
0420b6c831
Remove string metatable protection
...
The string metatable and environment are no longer shared, so this
sandboxing is no longer required.
2017-11-14 18:41:00 +00:00
SquidDev
bb741975b7
Migrate LuaJLuaMachine to use Cobalt
2017-11-14 18:41:00 +00:00
Wilma456
9e19dd7070
Fix Bug in Paint and Edit
2017-11-02 20:14:34 +01:00
Luca S
aba0e3d2d4
Removed the "the" that was too much
2017-10-29 19:06:34 +01:00
SquidDev
d9d025e33b
Add simple JEI integration
...
- Ensure pocket computers and turtles are distinguished by upgrades and
computer family.
- Ensure disks are distinguished by colour.
- Hide treasure disks from the list
2017-10-25 13:40:35 +01:00
Wilma456 (Jakob0815)
1fe29ab098
Add getTextScale() to Monitor
2017-10-13 12:37:55 +02:00
SquidDev
53f16782ab
Only send terminal state to interacting players
...
This splits the computer state (blinking, label, etc...) and terminal
state into two separate packets. When a computer changes, the computer
state is sent to all players and the terminal state is sent to players
who are curerntly using the computer.
This reduces network usage by a substantial amount.
2017-10-12 10:45:38 +01:00
SquidDev
bfb4f88304
Fix the printer clearing the previous page
...
When printing on top of an already printed page, the previous contents
should be preserved. However, this did not occur as the stack had been
shrunk and so the item was no longer considered a printout.
Closes SquidDev-CC/ComputerCraft#2
2017-10-06 12:04:49 +01:00
SquidDev
fb6d65ec23
Invalidate the network when the peripheral is removed
...
Fixes #83
2017-10-04 21:49:41 +01:00
SquidDev
6b364052c7
Only render breaking animation on the part being hit
2017-10-04 21:49:40 +01:00
SquidDev
7169abcd7b
Ensure the modem's peripheral is incorrectly invalidated when changed
2017-10-04 21:49:40 +01:00
SquidDev
75ccfbdb3d
Migrate cable core block state to an enum
...
This allows us to render the cable "core", as was done pre-1.8.
2017-10-04 21:49:40 +01:00
SquidDev
728644c104
Initial attempt at improving cable/wired modem interactions
...
- Cable and modem can be broken individually
- Ray tracing will go through "holes" in the cable.
- Pick block will determine which part you are looking at.
- Selection box will only highlight the region you are looking at:
modem or cable.
2017-10-04 21:49:37 +01:00
Wilma456 (Jakob0815)
999351e667
Fix io.lines()
2017-10-04 18:51:48 +02:00
Wilma456
11e879db41
Removce Bow Upgrade Recipe
2017-09-29 18:56:52 +02:00
Wilma456
a4a774fcdf
Add more Recipes to Recipebook
2017-09-27 20:08:48 +02:00
Wilma456
4fb0240a36
Changes suggested by SquidDev and update help file
2017-09-24 17:36:20 +02:00
Joseph C. Sible
80ec54eaf6
Remove unnecessary code
...
- Remove unnecessary casts
- Use the diamond operator where possible
- Remove "throws" declarations that aren't actually thrown
- Remove unused local variables
- Remove unused imports
- Remove redundant superinterfaces
2017-09-24 01:23:29 -04:00
Joseph C. Sible
9e4ae3a494
Remove some unnecessary null checks
...
We know turtle can't be null in any of these places, since in preceding code,
we called methods on it, so we would have gotten a NullPointerException then
and never gotten here if it were null.
2017-09-24 01:00:55 -04:00
Daniel Ratcliffe
19e4c03d3a
Merge pull request #456 from Wilma456/ioerror
...
Set errorlevel for "Unsupported format" to 2
2017-09-22 13:20:34 +01:00
Wilma456 (Jakob0815)
f20a7afa7f
Better Code
2017-09-18 15:22:44 +02:00
SquidDev
01f5d006fc
Fix BlockFaceShape not being overridden for turtles and peripherals
...
This meant one could perform various illogical actions to
non-full-blocks, such as connecting fences and placing paitings.
We also modify the behaviour of isOpaqueCube and isFullCube for
peripherals, only returning false for the case of modems and cables.
2017-09-18 08:33:40 +01:00
SquidDev
cd6b076efe
Turn on ServerComputer instances if they have timed out
2017-09-16 20:09:51 +01:00
Wilma456 (Jakob0815)
f8193a4d23
Set errorlevel for "Unsupported format" to 2
2017-09-16 16:11:36 +02:00
Wilma456
5be2202b2e
Add read() to Filehandle
2017-09-16 16:06:27 +02:00
SquidDev
fbbfe33e21
Do not instantiate ServerComputer instances in the peripheral provider
...
Instead we create a ComputerProxy, which delegates methods to the
ServerComputer or TileComputerBase, depending on which one exists.
2017-09-15 18:58:13 +01:00
SquidDev
7a916ed8c2
Do not instantiate a ServerComputer for pocket computers's mount
2017-09-15 18:48:57 +01:00
SquidDev
60305cd106
Remove tile before calling destroy
...
This ensures that the tile will updating neighbouring blocks, and so
the destroyed tile will not be wrapped as a peripheral.
2017-09-15 17:40:53 +01:00
Wilma456 (Jakob0815)
b8630f739a
Add Check requested by dan200
2017-09-13 19:21:17 +02:00
Daniel Ratcliffe
1c8480a329
Merge pull request #441 from SquidDev-CC/hotfix/paintutils-read
...
Fix a non-existent method being used in paintutils
2017-09-13 17:10:07 +01:00
Daniel Ratcliffe
5219648128
Merge pull request #445 from SquidDev-CC/hotfix/container-backgrounds
...
Fix background and tooltips not rendering within containers
2017-09-13 00:43:10 +01:00
SquidDev
1ef7c8e8db
Only send the packet to people within 64 blocks
...
This is equivalent to what vanilla Minecraft does
2017-09-12 22:44:49 +01:00
Wilma456
1415dd0dae
Changes requested by dan200
2017-09-12 20:43:07 +02:00
Wilma456 (Jakob0815)
282aa804f8
Changes sugested by dan200
2017-09-12 19:42:08 +02:00
Wilma456 (Jakob0815)
373b7ba293
Fix check of write()
...
if you call write(nil), you will get the error "bios.lua:229: bad argument: string expected, got nil", so nil is not a valid argument for write() and should be removed.
2017-09-12 17:17:58 +02:00
Bomb Bloke
70c6f3498b
Correct minor typo in rednet.receive
...
Caused attempts to set a time-out value to throw "expected number, got number".
2017-09-13 01:06:59 +10:00
SquidDev
afec3743f3
Use custom packet to play records, instead of using block events
...
Breaking a disk drive was not stopping the record being played as the
block event never reached the client. Instead, we send a custom packet
which starts/stops music at a given location.
We also remove all the plumbing for eventReceived/sendBlockEvent from
the generic block/tile classes, as they are no longer used.
Closes #443
2017-09-12 15:46:46 +01:00
Wilma456
5989d021c7
Add folder /rom/modules
2017-09-12 16:44:22 +02:00
SquidDev
baa8993999
Fix background and tooltips not rendering within containers
...
The methods to draw these now have to be explicitly called, hence not
showing up.
2017-09-12 15:05:32 +01:00
Wilma456 (Jakob0815)
92f5860de6
Use select()
2017-09-12 15:27:09 +02:00
SquidDev
12abd4292e
Fixes a non-existent method being used in paintutils
2017-09-12 09:52:21 +01:00
SquidDev
4bd5b0d236
Remove HTTPTask, queueing the event when it has finished executing
...
This means we don't have to have lots of shared state between the run
and whenFinished method, and allows for easier chaining of futures later
on.
2017-09-11 22:13:00 +01:00
Wilma456 (Jakob0815)
0115bc8dca
Make io.write() accept multiple args
...
This is just to bring the io API from CC close the the io API from normal lua, which accept multiple args for io.write().
2017-09-11 15:47:30 +02:00
Daniel Ratcliffe
1fdfcdb5f2
Merge pull request #378 from MineRobber9000/patch-3
...
Add ability to load raw data from a string [paintutils]
2017-09-11 13:28:27 +01:00
Daniel Ratcliffe
6c32d8a57e
Merge pull request #394 from Wojbie/bugfix/Filesystem-dots-#35
...
Modify logic behind ... and more in file path.
2017-09-11 13:27:13 +01:00
SquidDev
5f323a85a7
Rethrow/retrigger interrupted status where appropriate
2017-09-10 22:08:08 +01:00
SquidDev
85c556d324
Rewrite the computer thread system
...
This makes a couple of significant changes to the original system, to
reduce the number of threads created and allow for multiple threads in
the future. There are several notable changes from the original
implementation:
- A blocking queue is used for the main task queue queue. This removes
the need for the "monitor" variable and allows for multiple threads
polling this queue in the future.
- The thread used to execute tasks is "cached" between tasks,
significantly reducing the number of threads which need to be
created. If a task needs to be stopped then the thread is then
terminated and a new one constructed, though this rarely happens.
2017-09-10 22:08:08 +01:00
Daniel Ratcliffe
61ff91f237
Merge pull request #316 from SquidDev-CC/feature/minecraft-1.12.2
...
Update to 1.12. Bam!
2017-09-10 20:52:26 +01:00
Wojbie
6aa4a385a3
Requested changes to logic behind ... in file path.
2017-09-10 17:51:29 +02:00
SquidDev
a2da6d9601
Pass the original block in redstone propagation
...
notifyBlockOfStateChange and notifyNeighborsOfStateExcept expect the
block which caused the redstone update, rather than the neighbor block.
Fixes #393
2017-09-10 09:32:02 +01:00
Daniel Ratcliffe
88b1124204
Merge pull request #399 from SquidDev-CC/hotfix/http-encoding
...
Fix setting an invalid content-encoding header
2017-09-10 00:28:39 +01:00
Daniel Ratcliffe
51644e32ed
Merge pull request #415 from Wilma456/palletecheck
...
Add valid check to term.setPaletteColor/getPaletteColor
2017-09-10 00:12:46 +01:00
Daniel Ratcliffe
cf5216aefb
Merge pull request #401 from SquidDev-CC/hotfix/peripheral-errors
...
Fix logPeripheralErrors not being set
2017-09-10 00:06:15 +01:00
Daniel Ratcliffe
c7e5386e80
Merge pull request #414 from Wilma456/listfix
...
Fix Bug in list.lua
2017-09-10 00:04:08 +01:00
Daniel Ratcliffe
707f0899da
Merge pull request #429 from Wilma456/iofix
...
Fix io API
2017-09-09 23:59:57 +01:00
Daniel Ratcliffe
3095a6bbad
Merge pull request #241 from SquidDev-CC/feature/minecraft-1.11.2
...
Update to 1.11.2
2017-09-09 23:54:42 +01:00
Wilma456 (Jakob0815)
a5bbed528d
Make mode from io.open() accept nil
2017-09-06 18:53:44 +02:00
Wilma456
0c1114edbc
Update to new Style
2017-08-30 17:29:06 +02:00
Wilma456 (Jakob0815)
369be7c32c
Fix io API
...
While adding checks to the io API in #424 , I had forgot that the io API has his own type() function who overwrite the default one. This PR fix this. Sorry for that.
2017-08-27 17:08:40 +02:00
Daniel Ratcliffe
fd8837c631
Merge pull request #377 from Wilma456/fserror
...
Better Errors for fs API
2017-08-27 13:51:36 +01:00
Daniel Ratcliffe
2f829a1413
Fixed load() not accepting function arguments
2017-08-27 13:34:33 +01:00
Daniel Ratcliffe
0de3a42808
Merge pull request #424 from Wilma456/newcheck
...
Add more Checks
2017-08-27 12:26:58 +01:00
Daniel Ratcliffe
2fb6a9dc62
Merge pull request #389 from Wilma456/ioerr
...
Make io.open() return Error
2017-08-27 12:22:54 +01:00
Wilma456
79697e37b0
Add Check to load()
2017-08-24 20:18:21 +02:00
Wilma456
4f9de6b02c
Update Checks
2017-08-24 20:17:31 +02:00
Wilma456
e9cea7d0f5
Add more Checks
2017-08-21 15:20:32 +02:00
Wilma456 (Jakob0815)
90626748e4
Remove sleep.txt
...
sleep was removed from CC, so It's time to remove the help file
2017-08-18 15:45:57 +02:00
Wilma456 (Jakob0815)
30b55d966b
Add valid check to term.setPaletteColor/getPaletteColor
2017-08-11 15:38:02 +02:00
Wilma456 (Jakob0815)
3371345fad
Fix Bug in list.lua
...
list.lua check now, if sDir is a Directory
2017-08-11 13:42:20 +02:00
Wilma456 (Jakob0815)
2c264728d9
Add Check to textutils.tabulate/pagedTabulate
2017-08-10 13:40:35 +02:00
Wilma456
90c4ebd208
Fix Bug in copy.lua, mkdir.lua and rename.lua
2017-08-09 19:32:29 +02:00
SquidDev
5df97e5133
Tweak shell program resolution slightly
...
- Path containing '/' or '\' are resolved relative to the current
directory, rather than using the path. Paths starting with '/' still
resolve relative to the root directory.
- Shell completion will also include sub-directories of the current
directory.
Closes #219
2017-08-03 07:24:21 +01:00
SquidDev
8f6feff4fd
Fix logPeripheralErrors not being set
2017-08-01 21:25:23 +01:00
SquidDev
26bca2e109
Fix setting an invalid content-encoding header
2017-07-31 07:50:23 +01:00
Wojbie
0d5397db34
Modify logic behind ... and more in file path.
...
Changes all equal or longer then 3 multidots setups to be treated as .
This removes other potentialy dangerus situations and brings it closer to windows in how it treats said dots.
2017-07-30 14:11:25 +02:00
Wojbie
acb5f65e16
Functional change Lignum suggested
2017-07-29 01:14:36 +02:00
Wilma456
c9e7b45509
Show fs error in paint and edit
2017-07-28 15:36:33 +02:00
Wilma456
226ae3648f
Forget string
2017-07-28 15:21:15 +02:00
Wilma456 (Jakob0815)
83f34b430d
Make io.open() return Error
...
If fs.open() failed, it will return nil and a a error message like "No such file" or "Out of space". This PR make, that io.open() returned this error too.
2017-07-28 15:18:14 +02:00
Wilma456
0a5155c0ff
New style
2017-07-27 16:40:00 +02:00
Daniel Ratcliffe
579f7443a8
Merge pull request #360 from Wojbie/Mixed-lua-side-improvements.-Part-2
...
Mixed-Lua-side-improvements.-Part-2
2017-07-25 23:15:10 +01:00
Daniel Ratcliffe
df1c8e22b8
Merge pull request #376 from CrazedProgrammer/fix-argument-checks
...
Fix argument checks made in PR #304 and #338
2017-07-25 23:13:34 +01:00
CrazedProgrammer
96288164c5
Fix textutils.serializeJSON argument check
2017-07-25 22:36:54 +02:00
SquidDev
263bade338
Add some basic recipe advancements
...
This doesn't provide the ability to unlock the upgrade impostor recipes,
but I'm not sure that is currently feasible.
2017-07-25 21:10:49 +01:00
SquidDev
d29ffed383
Java 8. Java 8. Does whatever Java 8 can.
...
Default methods, everywhere.
Arrow types, switch on strings.
Lambdas!
Here comes Java 8.
2017-07-25 21:10:48 +01:00
SquidDev
08099f08f2
Initial update to 1.12
...
- Convert most recipes to JSON
- Add JSON factories for impostor and turtle recipes.
- Several mappings changes
- Migrate to Forge's new registry system
2017-07-25 21:10:47 +01:00
SquidDev
bee41e7f97
Avoid deprecated warnings on ItemCable
2017-07-25 21:08:52 +01:00
SquidDev
35425f0f61
Update to 1.11.2
2017-07-25 21:08:51 +01:00
Daniel Ratcliffe
f480965e67
Merge pull request #372 from Wilma456/apispro
...
Update alias.lua
2017-07-25 20:32:30 +01:00
Daniel Ratcliffe
6701403370
Merge pull request #364 from KingofGamesYami/feature/computer-get-label
...
Add .getLabel
2017-07-25 20:06:22 +01:00
Daniel Ratcliffe
ff2c26c4a1
Merge pull request #367 from SquidDev-CC/feature/texture-spacing
...
Fix texture artifacts when rendering monitors
2017-07-25 20:05:31 +01:00
Wojbie
4c89364964
Requested changes
2017-07-25 21:01:04 +02:00
Daniel Ratcliffe
94613d28a6
Merge pull request #381 from Wilma456/colerror
...
Better Error for "Invalid color"
2017-07-25 19:56:59 +01:00
Daniel Ratcliffe
f6ea561270
Merge pull request #374 from Wilma456/packapis
...
Add package to apis.lua
2017-07-25 19:05:11 +01:00
Daniel Ratcliffe
b4fb7bb20f
Merge pull request #354 from Wilma456/multifix
...
Fix multishell.launch
2017-07-25 19:04:39 +01:00
Daniel Ratcliffe
35d29e1d88
Merge pull request #348 from Wilma456/termcheck
...
Update term.redirect check to new style
2017-07-25 19:03:55 +01:00
Daniel Ratcliffe
f14a14f4c3
Merge pull request #355 from MineRobber9000/patch-2
...
Make pastebin.lua use HTTPS
2017-07-25 19:03:15 +01:00
Daniel Ratcliffe
77cadf52fe
Merge pull request #351 from Wojbie/Fix-to-349-Monitors-causing-miscolouration-of-tile-entities
...
Fix to #349 - Monitors causing miscolouration of tile entities.
2017-07-25 19:02:43 +01:00
Daniel Ratcliffe
e97a32cd69
Merge pull request #375 from SquidDev-CC/feature/resourcepack-bios
...
Adds the ability to load custom bios.lua files from resource packs
2017-07-25 19:02:05 +01:00
Wilma456 (Jakob0815)
43a5fc9fe7
Better Error for "Invalid color"
...
the "Invalid color" error now contain the wrong color.
2017-07-18 16:12:19 +02:00