4971 Commits

Author SHA1 Message Date
svitoos
e85f3e1f83 Improved chunkloader upgrade by svitoos
change reduced by payonel

Namely:

- moving setting for chunkloaders, svitoos choice was cleaner
- allowing chunkloaders in microcontrollers

Closes #2499.
2018-10-31 02:42:57 -07:00
payonel
9b7d125ebb add disk_drive.media(), get floppy disk address
closes #2972
2018-10-29 23:03:13 -07:00
payonel
e7eddad588 add proper support for \b and \r. ignore \15
closes #2971
2018-10-29 21:59:58 -07:00
payonel
ad8218a2ea fix the chunkloader upgrade i just broke 2018-10-28 00:22:15 -07:00
payonel
a0821f1493 add white/blacklist option for chunkloading
new settings options: misc.chunkloaderDimensionBlacklist and
misc.chunkloaderDimensionWhitelist

closes #2768
2018-10-27 22:55:12 -07:00
payonel
1e35f8e49a connect internal nodes created from side effects
it has been found that a screen placed below a case can be connected
the the case before the case's internal components have been added to
a network. This causes the screen to miss its chance to connect to the
gpu, causing the gpu's bound screen to be unavailable, and gpu api
calls will error

This is likely the root cause for many "stalled" or crashed when
restarting servers, or chunks loading

closes #2962
2018-10-21 23:15:56 -07:00
payonel
6d5dd948b5 add wake message support to link cards
same api as network card

closes #2753
2018-10-12 14:05:33 -07:00
payonel
cc0fddb914 allow setFrequency on owned ender storage chests
ender storage, the mod itself, lets players change frequency of owned
chests without any type of owner check

closes #2775
2018-10-12 12:24:36 -07:00
payonel
4731cb1b01 add recrafting option to link 2 link cards
also, clean up the net_splitter.getSides() return, it should use the
exact same index values you need to use in setSides.

added getChannel() on link cards. Link cards of the same channel are
linked in the same network. Also inventory controllers can read this as
the `linkChannel` from the item

closes #2400
2018-10-12 10:07:30 -07:00
payonel
6182fde957 allow waypoints to face UP or DOWN
the block faces up or down, depending on the pitch of your cross-hair
when you place the block down, just like screens

closes #2364
2018-10-12 01:13:29 -07:00
payonel
904db35be2 platter size an even factor for unmanaged disks
closes #2305
2018-10-11 23:46:13 -07:00
payonel
a5b6e3fec3 honor enableNanomachinePfx when false
also the distance check for nanomachine wireless comm was perhaps
not as intended. this change increases the range by correctly computing
the distance

closes #2505
2018-10-10 00:38:26 -07:00
payonel
1301ed8c3d meant to name it net_splitter 2018-10-09 22:36:00 -07:00
payonel
4142e09671 new net_splitter component with api
getSides, setSides, open, and close

closes #2531
2018-10-09 22:34:51 -07:00
payonel
fd3ba6a55e add scanContentsAt debug card method 2018-10-06 18:32:10 -07:00
payonel
80a742c304 change variable case to match others 2018-10-06 11:48:45 -07:00
payonel
93d72aaa59 check for null on node connections
closes #2952
2018-10-06 11:32:48 -07:00
payonel
f38de55699 change http to https for oc sites 2018-10-05 19:11:17 -07:00
payonel
6d045c106c change getSortIndex to more popular getMerchantId 2018-10-01 14:53:45 -07:00
payonel
cf5e23e1f1 clean up new trade code slightly 2018-10-01 02:47:55 -07:00
payonel
4e24b36cd4 add getSortIndex to trading recipe
Trades can be grouped by the merchant offering them
The index is the sort order placement of a merchant in the list of
available merchants offering trades within range. Because it is merely a
sort index, it can change between calls to getTrades if merchants leave
or enter the range, or any previous merchant stops offering any trades

closes #2383
2018-10-01 02:12:48 -07:00
payonel
52c55e3db6 split the eeprom crafting stack to 1
drones, mcus, robots, and tablets can be crafted with an eeprom
the code was erroneously inserting an entire eeprom stack into the
device, while leaving the crafting grid with n-1 of the stack, thus
duplicating a lot of eeproms :)

closes #2800
2018-10-01 00:35:20 -07:00
payonel
d080eab1c2 return extracted counts for suck and transferItem
this modifies the return value for 3 component methods
robot.suck
robot.suckFromSlot
transposer.transferItem

These methods used to return true or false. They continue to return
false for failed transfers, but return the transfered item count instead
of true (which in lua environments is still truethy)

closes #2807
2018-09-30 22:27:30 -07:00
payonel
8a9740b641 funnel wake-on-lan start through host, not direct
The network card's wake-on-lan previously was sending a computer.start
message directly to the machine. But some hosts, specifically the Drone
need to make certain start actions before the machine starts. For
instance, the drone zeros its velocity (technically, it rises by .5m)

closes #2866
2018-09-28 17:30:42 -07:00
payonel
d350b30e9c make line reads safer
closes #2934
2018-09-27 18:26:14 -07:00
payonel
2158aac5d1 fix typo in in-game manual
closes #2805
2018-09-27 15:07:27 -07:00
payonel
6adad2adbe network loot disk installed via install only
The previous network installer was from legacy days, the new install
tool provides the reboot options it was meant to have

closes #2472
2018-09-27 09:48:03 -07:00
payonel
bf9eae1be9 provide inventory gui for mountable disk drives
rack click accessible as well as "from the hip" with your held item

closes #2704
2018-09-25 17:57:16 -07:00
payonel
c57dc9ae48 try exact trade first before item type only check
again closes #2788
2018-09-23 21:14:52 -07:00
payonel
89eeae875b make weak ItemStack comparison for trading
Mimicking vanilla minecraft, we now only compare Item types in recipe
inputs for making a trade with villagers. This commit also adds a
parameter to our inv utils for extracting ItemStacks, whether to make
a strict and exact comparison (as it was always doing before, and is
still the default) or to make a weak check only (which only verifies the
Item types are the same)

closes #2788
2018-09-22 21:11:07 -07:00
payonel
e5ccda83f0 use Node to find the angel upgrade
closes #2573
2018-09-22 06:48:09 -07:00
payonel
3a2a4d0a18 ic2 type check on cast
protect from event crash in case class transformer crashed on start
2018-09-22 00:26:38 -07:00
payonel
0cb24f9c4f simple nil check on drain from empty fluid tank
closes #2291
2018-09-20 22:49:09 -07:00
payonel
2f0e495265 allow force luaj even when natives are available
closes #2880
2018-09-16 00:10:37 -07:00
payonel
4bf8bbbd7f mimic player inventory with back ref to player
also, remove node neighbor check in keyboard, vex didn't like it, also
because it didn't work as intended

closes #2870
2018-09-15 23:00:27 -07:00
payonel
195074678b return bool to lua that the robot really moved
In #2334 it was reported that robot movement can at times return
success even when it didn't move. In addition to that, sangar
had left in comments that sometimes the api calls to move return true
even when they couldn't make the movements, but we don't know why

I was unable to repro this behavior. However, it seems reasonable to
believe that returning success of the api calls ALONG with a check
of the robots current position compared to the requested position it
move to, might be sufficient to correct the result sent to the machine

closes #2334 (probably, maybe)
2018-09-15 01:26:10 -07:00
payonel
202988676f voodoo magic of the dead
Apparently, mob (skeletons, zombies) equipment drops (armor, tools, etc)
were being duplicated as a side effect of the robot kill code when the
robot had no more inventory space to suck up the item. It would seem
that the vanilla mechanic for mobs dropping these special loot items is
different, and somehow oc's robot collect drop code was causing two
items to be created.

Strangely, setDead fixes this and doesn't appear to break anything else!
Very confused why, but, I've tested this and it seems to work. Works
with partial stacks pickups, full inventories, full pickups, and
various mob types

closes #2392
2018-09-15 01:21:15 -07:00
payonel
3228131dbb allow the keyboard to attach to sides
closes #2524
2018-09-13 21:26:59 -07:00
payonel
2653f31c98 allow redstone setOutput to specify large values
This appears to work fine with other mods, and with vanilla redstone
tested from 1.7.10 and up.

Also, I reviewed code in other mods setting redstone signals and it
seems that we don't need to cap our redstone signal

Note that this is not an exploit on vanilla redstone, setting output to
2,000 (for example) does not propogate a powered redstone "wire" (dust
line) further than the vanilla 15 blocks. Also, when reading a vanilla
redstone dust line that was powered with a value greater than 15 (e.g.
2,000 again), we do not read huge values either. The vanilla mc system
is capping the values for us.

closes #2058
2018-09-09 19:30:37 -07:00
payonel
a75992e164 type safe check to remove erasure warning 2018-09-09 16:34:17 -07:00
payonel
436bd1808f expose beep pattern api to lua
closes #2716
2018-09-09 14:34:45 -07:00
payonel
7b77dba230 allow processes to handle hard interrupts
no general purpose api at this time

closes #2904
2018-09-08 11:39:37 -07:00
payonel
bf0fea1354 reduce event delay for term_available, delay rc
Load rc on "init" event
to keep rc load order consistent, move before boot fs event
registrations.

This change allows rc scripts and autoruns to consistently have term io
available
2018-09-08 00:17:53 -07:00
payonel
b65f536257 devfs psuedo files can be zero size 2018-09-05 17:20:19 -07:00
payonel
6591147c15 improved statement parsing, new reset alias
> args can expand to new params
add `reset`, clears screen and sets resolution to max

closes #2642
2018-09-05 15:45:11 -07:00
payonel
68914a63f8 alias more to less --noback
removing more in place of an alias to less
updating man docs to describe value of more over less in low mem cases
adding (END) to less status when the end of a buffer is reached
2018-09-04 16:48:25 -07:00
payonel
399ef4b1ba /bin/less: optimize splits for super long lines 2018-09-04 13:27:10 -07:00
payonel
bb1c97edb4 rework more and less. simpler code, works with long lines payonel 09/04/2018 10:38 AM 2018-09-04 10:39:02 -07:00
payonel
4e5188da08 fix non tty cursor echo and support __call close 2018-09-04 08:44:25 -07:00
payonel
afe858ff2d tab complete aliases and improve io.dup efficiency 2018-09-03 16:00:54 -07:00