Skip to content

Commit

Permalink
Merge branch 'master-MC1.7.10' of github.com:MightyPirates/OpenComput…
Browse files Browse the repository at this point in the history
…ers into OC1.5-MC1.7.10

Conflicts:
	build.properties
  • Loading branch information
fnuecke committed Jul 12, 2015
2 parents 282c443 + f1360f8 commit d73447b
Show file tree
Hide file tree
Showing 88 changed files with 950 additions and 200 deletions.
Binary file modified assets/blocks.psd
Binary file not shown.
30 changes: 21 additions & 9 deletions build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -106,7 +106,14 @@ repositories {
name 'DVS1 Maven FS'
url 'http://dvs1.progwml6.com/files/maven'
}

maven {
name 'ProjectRed'
url 'http://files.projectredwiki.com/maven/'
}
maven {
name 'ColoredLightCore'
url "http://coloredlightscore.us.to/maven/clc/"
}
ivy {
name "BuildCraft"
artifactPattern "http://www.mod-buildcraft.com/releases/BuildCraft/[revision]/[module]-[revision]-[classifier].[ext]"
Expand All @@ -119,19 +126,18 @@ repositories {
name 'Mekanism'
artifactPattern "http://ci.cil.li/job/Mekanism/${config.mekanism.build}/artifact/output/[module]-${config.minecraft.version}-[revision].${config.mekanism.build}.[ext]"
}
ivy {
name 'ProjectRed'
artifactPattern "http://projectredwiki.com/maven/mrtjp/[module]/${config.minecraft.version}-[revision]/[module]-${config.minecraft.version}-[revision]-dev.[ext]"
}
ivy {
name 'immibis'
artifactPattern "https://dl.dropboxusercontent.com/u/2944265/mods/autobuilt/files/[module]-[revision].[ext]"
}

ivy {
name 'CoFHLib'
artifactPattern "http://addons-origin.cursecdn.com/files/${config.cofhlib.cf}/[module]-[revision].[ext]"
}
ivy {
name 'CoFHCore'
artifactPattern "http://addons-origin.cursecdn.com/files/${config.cofhcore.cf}/[module]-[revision].[ext]"
}
ivy {
name 'MineFactoryReloaded'
artifactPattern "http://addons-origin.cursecdn.com/files/${config.mfr.cf}/[module]-[revision].[ext]"
Expand Down Expand Up @@ -166,7 +172,9 @@ configurations {

dependencies {
provided "appeng:RotaryCraft:${config.rotc.version}:api"
provided "appeng:appliedenergistics2:${config.ae2.version}:dev"
provided ("appeng:appliedenergistics2:${config.ae2.version}:dev") {
exclude module: 'buildcraft'
}
provided "codechicken:CodeChickenLib:${config.minecraft.version}-${config.ccl.version}:dev"
provided "codechicken:EnderStorage:${config.minecraft.version}-${config.es.version}:dev"
provided "codechicken:ForgeMultipart:${config.minecraft.version}-${config.fmp.version}:dev"
Expand All @@ -182,14 +190,18 @@ dependencies {
provided "notenoughkeys:NeK:${config.minecraft.version}-${config.nek.version}:deobf-dev"
provided "qmunity:QmunityLib:${config.qmunitylib.version}:deobf"
provided "tmech:TMechworks:${config.minecraft.version}-${config.tmech.version}:deobf"
provided ("mrtjp:ProjectRed:${config.projred.version}:dev") {
exclude module: 'CoFHCore'
}
provided "coloredlightscore:ColoredLightsCore:${config.coloredlights.version}:api"

provided name: "buildcraft", version: "${config.bc.version}", classifier: "dev", ext: 'jar'
provided name: 'buildcraft', version: config.bc.version, classifier: "dev", ext: 'jar'
provided name: 'GalacticraftCoreAll', version: config.gc.version, ext: 'jar'
provided name: 'MekanismAll', version: config.mekanism.version, ext: 'jar'
provided name: 'ProjectRed', version: config.projred.version, ext: 'jar'
provided name: 'redlogic', version: config.redlogic.version, ext: 'jar'

provided name: 'CoFHLib', version: config.cofhlib.version, ext: 'jar'
provided name: 'CoFHCore', version: config.cofhcore.version, ext: 'jar'
provided name: 'MineFactoryReloaded', version: config.mfr.version, ext: 'jar'
provided name: 'ComputerCraft', version: config.cc.version, ext: 'jar'
provided name: 'EnderIO', version: config.eio.version, ext: 'jar'
Expand Down
7 changes: 5 additions & 2 deletions build.properties
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
minecraft.version=1.7.10
forge.version=10.13.4.1448-1.7.10

oc.version=1.5.13
oc.version=1.5.14
oc.subversion=

ae2.version=rv2-beta-26
Expand All @@ -14,6 +14,7 @@ cc.version=1.73
ccl.version=1.1.1.104
cofhlib.cf=2230/207
cofhlib.version=[1.7.10]1.0.0RC7-127
coloredlights.version=1.3.7.35
ec.cf=2242/839
ec.version=deobf-1.7.10-2.2.73b129
eio.cf=2219/296
Expand All @@ -32,7 +33,7 @@ mfr.cf=2229/626
mfr.version=[1.7.10]2.8.0RC8-86
nei.version=1.0.3.57
nek.version=1.0.0b35dev
projred.version=4.7.0pre2.87
projred.version=1.7.10-4.6.2.82
qmunitylib.version=0.1.105
rc.cf=2219/321
rc.version=1.7.10-9.4.0.0
Expand All @@ -42,5 +43,7 @@ tmech.version=75.0afb56c
re.version=3.0.0.342
waila.version=1.5.8a
wrcbe.version=1.4.1.2
cofhcore.cf=2246/697
cofhcore.version=[1.7.10]3.0.3B4-302-dev

maven.url=file:///home/www/maven.cil.li/web
2 changes: 1 addition & 1 deletion src/main/java/li/cil/oc/api/API.java
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@
*/
public class API {
public static final String ID_OWNER = "OpenComputers|Core";
public static final String VERSION = "5.5.2";
public static final String VERSION = "5.5.3";

public static DriverAPI driver = null;
public static FileSystemAPI fileSystem = null;
Expand Down
13 changes: 13 additions & 0 deletions src/main/java/li/cil/oc/api/FileSystem.java
Original file line number Diff line number Diff line change
Expand Up @@ -125,6 +125,19 @@ public static li.cil.oc.api.fs.FileSystem fromComputerCraft(final Object mount)
return null;
}

/**
* Wrap a file system retrieved via one of the <tt>from???</tt> methods to
* make it read-only.
*
* @param fileSystem the file system to wrap.
* @return the specified file system wrapped to be read-only.
*/
public static li.cil.oc.api.fs.FileSystem asReadOnly(final li.cil.oc.api.fs.FileSystem fileSystem) {
if (API.fileSystem != null)
return API.fileSystem.asReadOnly(fileSystem);
return null;
}

/**
* Creates a network node that makes the specified file system available via
* the common file system driver.
Expand Down
9 changes: 9 additions & 0 deletions src/main/java/li/cil/oc/api/detail/FileSystemAPI.java
Original file line number Diff line number Diff line change
Expand Up @@ -81,6 +81,15 @@ public interface FileSystemAPI {
*/
FileSystem fromComputerCraft(Object mount);

/**
* Wrap a file system retrieved via one of the <tt>from???</tt> methods to
* make it read-only.
*
* @param fileSystem the file system to wrap.
* @return the specified file system wrapped to be read-only.
*/
FileSystem asReadOnly(final FileSystem fileSystem);

/**
* Creates a network node that makes the specified file system available via
* the common file system driver.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,6 @@ Keep in mind that some of these may not be available, depending on the recipe se

### Extensions
* [Adapter](adapter.md)
* [Cable](cable.md)
* [Geolyzer](geolyzer.md)
* [Motion Sensor](motionSensor.md)
* [Redstone I/O](redstone.md)
Expand All @@ -38,6 +37,8 @@ Keep in mind that some of these may not be available, depending on the recipe se

## Networking
* [Access Point](accessPoint.md)
* [Cable](cable.md)
* [Net Splitter](netSplitter.md)
* [Switch](switch.md)

## Power management
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
# Net Splitter

![*.net *.split](oredict:oc:netSplitter)

The net splitter is a device that allows controlling connectivity between subnetworks. Unlike the [switch](switch.md) or [power converter](powerConverter.md) it directly connects adjacent subnetworks, i.e. components can be accessed. Each side's connectivity can be toggled using a wrench (e.g. the [scrench](../item/wrench.md)). When a redstone signal is applied to the net splitter, all sides' connectivity is inverted.

This block can therefore be used to toggle connectivity to certain parts of a component network. Use a [redstone I/O block](redstone.md) or [redstone cards](../item/redstoneCard1.md) to automate the net splitter.
Original file line number Diff line number Diff line change
Expand Up @@ -4,13 +4,13 @@ Also know as "how to build your first computer". To get your first [computer](co

**Disclaimer**: this will be step-by-step, and also provide some information on how to look for issues yourself later on, so this is quite long. If you have never built a computer in real life, and/or are completely new to the mod, it is highly recommended you read through it all.

First off, you will need a [computer case](../block/case1.md). This is the block which will contain of the components, defining the behavior of the computer you are building.
First off, you will need a [computer case](../block/case1.md). This is the block which will contain all of the components, defining the behavior of the computer you are building.

![A tier two computer case.](oredict:oc:case2)

For example, you will need to choose what tier of [graphics card](../item/graphicsCard1.md) you wish to use, if you need a [network card](../item/lanCard.md), a [redstone card](../item/redstoneCard1.md) or, if you're just playing around in creative mode, maybe even a [debug card](../item/debugCard.md).

When you open the [computer case](../block/case1.md)'s GUI you will see a few slots to the right. The number of slots, and what tier of component can be placed into them (indicated by the small roman numeral in the slot) depends on the tier of the case itself.
When you open the [computer case](../block/case1.md)'s GUI, you will see a few slots to the right. The number of slots, and what tier of component can be placed into them (indicated by the small roman numeral in the slot) depends on the tier of the case itself.
![GUI of a tier two computer case.](opencomputers:doc/img/configuration_case1.png)
In their empty state, [computer cases](../block/case1.md) are pretty useless. You can try to power up your [computer](computer.md) now, but it'll immediately print an error message to your chat log, and make its dissatisfaction heard by beeping at you. Good thing the error message is telling you what you can do to fix this situation: it requires energy. Connect your [computer](computer.md) to some power, either directly or via a [power converter](../block/powerConverter.md).

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,6 @@

### Расширения
* [Адаптер](adapter.md)
* [Кабель](cable.md)
* [Геоанализатор](geolyzer.md)
* [Датчик движения](motionSensor.md)
* [Редстоун I/O](redstone.md)
Expand All @@ -38,6 +37,8 @@

## Сеть
* [Точка доступа](accessPoint.md)
* [Кабель](cable.md)
* [Сетевой переключатель](netSplitter.md)
* [Коммутатор](switch.md)

## Управление питанием
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
# Сетевой переключатель

![*.net *.split](oredict:oc:netSplitter)

Сетевой переключатель позволяет контролировать соединение между подсетями. В отличие от [коммутатора](switch.md) или [конвертера энергии](powerConverter.md) позволяет непосредственно соединить подсети, делая при этом доступными все компоненты. Соединение каждой стороны переключается [ключем](../item/wrench.md). При подаче сигнала красного камня все соединения инвертируются.

Таким образом, этот блок может быть использован для переключения соединения определенных компонентов сети. Используйте [редстоун I/O](redstone.md) или [редстоун карты](../item/redstoneCard1.md) для автоматизации сетевого переключателя.
3 changes: 3 additions & 0 deletions src/main/resources/assets/opencomputers/lang/en_US.lang
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,7 @@ tile.oc.screen2.name=Screen (Tier 2)
tile.oc.screen3.name=Screen (Tier 3)
tile.oc.serverRack.name=Server Rack
tile.oc.switch.name=Switch
tile.oc.netSplitter.name=Net Splitter
tile.oc.waypoint.name=Waypoint

# Items
Expand Down Expand Up @@ -155,6 +156,7 @@ oc:gui.Analyzer.AddressCopied=Address copied to clipboard.
oc:gui.Analyzer.ChargerSpeed=§6Charge speed§f: %s
oc:gui.Analyzer.ComponentName=§6Component name§f: %s
oc:gui.Analyzer.Components=§6Number of connected components§f: %s
oc:gui.Analyzer.CopyToClipboard=Click to copy to clipboard.
oc:gui.Analyzer.LastError=§6Last error§f: %s
oc:gui.Analyzer.RobotName=§6Name§f: %s
oc:gui.Analyzer.RobotOwner=§6Owner§f: %s
Expand Down Expand Up @@ -330,6 +332,7 @@ oc:tooltip.TabletCase=Basic case for tablets. Place it into the assembler to add
oc:tooltip.Terminal=Allows controlling a server remotely, as long as you are in range of it. Acts like a portable screen and keyboard. Shift-right-click a server in a server rack to bind the terminal to it.
oc:tooltip.TexturePicker=This tool allows showing a string describing a block's surface, for use in 3D printer shape definitions. Totally not texture names, nope. No sir.
oc:tooltip.Tier=§8Tier %s
oc:tooltip.NetSplitter=Acts as a dynamic connector. Connectivity of each side can be toggled by hitting it with a wrench. Connectivity of all sides can be inverted by applying a redstone signal.
oc:tooltip.TooLong=Hold [§f%s§7] for a detailed tooltip.
oc:tooltip.Transistor=A basic element in most other computer parts. It's a bit twisted, but it does the job.
oc:tooltip.UpgradeAngel=Allows robots to place blocks in thin air, even if there is no point of reference.
Expand Down
3 changes: 3 additions & 0 deletions src/main/resources/assets/opencomputers/lang/ru_RU.lang
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,7 @@ tile.oc.screen2.name=Монитор (2-ой уровень)
tile.oc.screen3.name=Монитор (3-ий уровень)
tile.oc.serverRack.name=Серверная стойка
tile.oc.switch.name=Коммутатор
tile.oc.netSplitter.name=Сетевой переключатель
tile.oc.waypoint.name=Путевая точка

# Items
Expand Down Expand Up @@ -154,6 +155,7 @@ oc:gui.Analyzer.AddressCopied=Адрес скопирован в буфер об
oc:gui.Analyzer.ChargerSpeed=§6Скорость зарядки§f: %s
oc:gui.Analyzer.ComponentName=§6Имя компонента§f: %s
oc:gui.Analyzer.Components=§6Количество подключенных компонентов§f: %s
oc:gui.Analyzer.CopyToClipboard=Кликните для копирования в буфер обмена.
oc:gui.Analyzer.LastError=§6Последняя ошибка§f: %s
oc:gui.Analyzer.RobotName=§6Имя§f: %s
oc:gui.Analyzer.RobotOwner=§6Владелец§f: %s
Expand Down Expand Up @@ -329,6 +331,7 @@ oc:tooltip.TabletCase=Простой корпус для планшета. По
oc:tooltip.Terminal=Позволяет дистанционно управлять сервером, пока вы находитесь в радиусе его действия. Действует как портативный дисплей с клавиатурой.[nl] Shift+ПКМ по серверу в стойке для привязки к нему терминала.
oc:tooltip.TexturePicker=Простой инструмент, позволяющий узнать название текстуры блока, которое можно использовать в 3D печати.
oc:tooltip.Tier=§8Уровень %s
oc:tooltip.NetSplitter=Работает как переключатель. Соединение каждой стороны переключается ключем. При подаче сигнала красного камня все соединения инвертируются.
oc:tooltip.TooLong=Удерживайте [§f%s§7], чтобы отобразить описание.
oc:tooltip.Transistor=Базовый элемент для других частей компьютера. Он немного деформирован, но отлично выполняет свою работу.
oc:tooltip.UpgradeAngel=Позволяет роботам размещать блоки в воздухе, даже если отсутствует точка опоры.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ local args, options = shell.parse(...)

local fromAddress = options.from and component.get(options.from) or filesystem.get(os.getenv("_")).address
local candidates = {}
for address in component.list("filesystem") do
for address in component.list("filesystem", true) do
local dev = component.proxy(address)
if not dev.isReadOnly() and dev.address ~= computer.tmpAddress() and dev.address ~= fromAddress then
table.insert(candidates, dev)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,11 @@ end

function memoryStream:write(value)
if not self.redirect.write and self.closed then
error("attempt to use a closed stream")
-- if next is dead, ignore all writes
if coroutine.status(self.next) ~= "dead" then
error("attempt to use a closed stream")
end
return true
end
if self.redirect.write then
self.redirect.write:write(value)
Expand Down Expand Up @@ -306,6 +310,7 @@ local function execute(env, command, ...)
elseif pipes[i] then
io.output(pipes[i])
end
io.write('')
end, command)
if not threads[i] then
return false, reason
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -116,7 +116,7 @@ end

-------------------------------------------------------------------------------

for address in component.list('screen') do
for address in component.list('screen', true) do
if #component.invoke(address,'getKeyboards') > 0 then
component.setPrimary('screen',address)
end
Expand Down
4 changes: 2 additions & 2 deletions src/main/resources/assets/opencomputers/loot/OpenOS/init.lua
Original file line number Diff line number Diff line change
Expand Up @@ -28,8 +28,8 @@ do
function rom.inits() return ipairs(rom.invoke("list", "boot")) end
function rom.isDirectory(path) return rom.invoke("isDirectory", path) end

local screen = component.list('screen')()
for address in component.list('screen') do
local screen = component.list('screen', true)()
for address in component.list('screen', true) do
if #component.invoke(address, 'getKeyboards') > 0 then
screen = address
end
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -242,7 +242,7 @@ end
function filesystem.proxy(filter)
checkArg(1, filter, "string")
local address
for c in component.list("filesystem") do
for c in component.list("filesystem", true) do
if component.invoke(c, "getLabel") == filter then
address = c
break
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,6 @@ else
read = read .. current
until current ~= ""
file:close()
io.write(data.toHex(data.md5(read)) .. "\t".. args[i])
io.write(data.toHex(data.md5(read)) .. "\t".. args[i] .. "\n")
end
end
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,6 @@ else
read = read .. current
until current ~= ""
file:close()
io.write(data.toHex(data.sha256(read)) .. "\t".. args[i])
io.write(data.toHex(data.sha256(read)) .. "\t".. args[i] .. "\n")
end
end
2 changes: 1 addition & 1 deletion src/main/resources/assets/opencomputers/lua/machine.lua
Original file line number Diff line number Diff line change
Expand Up @@ -732,7 +732,7 @@ sandbox = {
tonumber = tonumber,
tostring = tostring,
type = type,
_VERSION = _VERSION:match("5.3") and "Lua 5.3.0" or "Lua 5.2.4",
_VERSION = _VERSION:match("5.3") and "Lua 5.3" or "Lua 5.2",
xpcall = function(f, msgh, ...)
local handled = false
local result = table.pack(xpcall(f, function(...)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -576,6 +576,11 @@ motionSensor {
[daylightDetector, "oc:cpu2", daylightDetector]
[ingotGold, "oc:materialCircuitBoardPrinted", ingotGold]]
}
netSplitter {
input: [[ingotIron, "oc:cable", ingotIron]
["oc:cable", craftingPiston, "oc:cable"]
[ingotIron, "oc:materialCircuitBoardPrinted", ingotIron]]
}
printer {
input: [[ingotIron, hopper, ingotIron]
[craftingPiston, "oc:circuitChip3", craftingPiston]
Expand Down
1 change: 1 addition & 0 deletions src/main/resources/assets/opencomputers/robot.names
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,7 @@ Crypto # Kodos
Curiosity # Mars Rover
Daedalus # Deus Ex
Dalek Sec # Doctor Who
David # A.I. (the movie)
Death Trap # Borderlands 2's Mechromancer
Deputy ANDY # Eureka
Dog # Half-Life
Expand Down
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
1 change: 1 addition & 0 deletions src/main/scala/li/cil/oc/Constants.scala
Original file line number Diff line number Diff line change
Expand Up @@ -38,6 +38,7 @@ object Constants {
final val ScreenTier3 = "screen3"
final val ServerRack = "serverRack"
final val Switch = "switch"
final val NetSplitter = "netSplitter"
final val Waypoint = "waypoint"

def Case(tier: Int) = ItemUtils.caseNameWithTierSuffix("case", tier)
Expand Down
Loading

0 comments on commit d73447b

Please sign in to comment.