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 Nov 21, 2015
2 parents ab607f0 + f19dd57 commit 57caa89
Show file tree
Hide file tree
Showing 329 changed files with 2,744 additions and 137 deletions.
4 changes: 2 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.19
oc.version=1.5.20
oc.subversion=

ae2.version=rv2-beta-26
Expand All @@ -21,7 +21,7 @@ eio.cf=2219/296
eio.version=1.7.10-2.2.1.276
es.version=1.4.5.24
fmp.version=1.1.0.308
forestry.version=3.5.7.16
forestry.version=4.1.0.44
gc.build=3
gc.version=3.0.7
gt.version=5.04.06
Expand Down
33 changes: 30 additions & 3 deletions src/main/java/li/cil/oc/api/API.java
Original file line number Diff line number Diff line change
@@ -1,7 +1,13 @@
package li.cil.oc.api;

import com.typesafe.config.Config;
import li.cil.oc.api.detail.*;
import li.cil.oc.api.detail.DriverAPI;
import li.cil.oc.api.detail.FileSystemAPI;
import li.cil.oc.api.detail.ItemAPI;
import li.cil.oc.api.detail.MachineAPI;
import li.cil.oc.api.detail.ManualAPI;
import li.cil.oc.api.detail.NanomachinesAPI;
import li.cil.oc.api.detail.NetworkAPI;

/**
* Central reference for the API.
Expand All @@ -12,7 +18,25 @@
*/
public class API {
public static final String ID_OWNER = "OpenComputers|Core";
public static final String VERSION = "5.6.2";
public static final String VERSION = "5.6.4";

// ----------------------------------------------------------------------- //

/**
* The loaded config.
*/
public static Config config = null;

/**
* Whether OpenComputers uses power.
* <p/>
* This is set in the init phase, so do not rely it before the post-init phase.
*/
public static boolean isPowerEnabled = false;

// ----------------------------------------------------------------------- //
// Prefer using the static methods in the respective classes in this package
// over accessing these instances directly.

public static DriverAPI driver = null;
public static FileSystemAPI fileSystem = null;
Expand All @@ -22,5 +46,8 @@ public class API {
public static NanomachinesAPI nanomachines = null;
public static NetworkAPI network = null;

public static Config config = null;
// ----------------------------------------------------------------------- //

private API() {
}
}
16 changes: 16 additions & 0 deletions src/main/java/li/cil/oc/api/Network.java
Original file line number Diff line number Diff line change
Expand Up @@ -114,6 +114,22 @@ public static void leaveWirelessNetwork(final WirelessEndpoint endpoint) {
API.network.leaveWirelessNetwork(endpoint);
}

/**
* Removes a wireless endpoint from the wireless network of a specific dimension.
* <p/>
* This may be useful if the dimension of an endpoint changed and you can only
* react to that change (e.g. a player changing dimensions).
* <p/>
* Calling this for an endpoint that was not added before does nothing.
*
* @param endpoint the endpoint to remove from the wireless network.
* @param dimension the dimension with the wireless network to remove the endpoint from.
*/
public static void leaveWirelessNetwork(final WirelessEndpoint endpoint, final int dimension) {
if (API.network != null)
API.network.leaveWirelessNetwork(endpoint, dimension);
}

/**
* Sends a packet via the wireless network.
* <p/>
Expand Down
13 changes: 13 additions & 0 deletions src/main/java/li/cil/oc/api/detail/NetworkAPI.java
Original file line number Diff line number Diff line change
Expand Up @@ -80,6 +80,19 @@ public interface NetworkAPI {
*/
void leaveWirelessNetwork(WirelessEndpoint endpoint);

/**
* Removes a wireless endpoint from the wireless network of a specific dimension.
* <p/>
* This may be useful if the dimension of an endpoint changed and you can only
* react to that change (e.g. a player changing dimensions).
* <p/>
* Calling this for an endpoint that was not added before does nothing.
*
* @param endpoint the endpoint to remove from the wireless network.
* @param dimension the dimension with the wireless network to remove the endpoint from.
*/
void leaveWirelessNetwork(WirelessEndpoint endpoint, int dimension);

/**
* Sends a packet via the wireless network.
* <p/>
Expand Down
6 changes: 5 additions & 1 deletion src/main/resources/application.conf
Original file line number Diff line number Diff line change
Expand Up @@ -951,7 +951,7 @@ opencomputers {

# The amount of ticks the delay is *reduced* by per tier of the CPU
# inserted into a switch.
relayDelayUpgrade: 1
relayDelayUpgrade: 1.5

# This is the size of the queue of a not upgraded switch. Increasing it
# avoids packets being dropped when many messages are sent in a single
Expand Down Expand Up @@ -1152,6 +1152,10 @@ opencomputers {
# the *worst case* is ~30KB/s/client. Again, for normal use-cases this
# is actually barely noticeable.
setRawDelay: 0.2

# Whether the hologram block should provide light. It'll also emit light
# when off, because having state-based light in MC is... painful.
emitLight: true
}

# Other settings that you might find useful to tweak.
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
# Adapter

![Nun mit 100% mehr Alles!](oredict:oc:adapter)

Der Adapter ermöglicht es [Computern](../general/computer.md) mit Vanilla-Minecraft-Blöcken oder Blöcken von anderen Mods zu interagieren. Unterstützte Blöcke neben dem Adapter werden als Komponenten des Computers aufgelistet.

Zudem stellt der Adapter einige Slots für einige Updates bereit. Zum Beispiel das [Inventarkontroll-Upgrade](../item/inventoryControllerUpgrade.md), welches Computern die Möglichkeit gibt, mehr Informationen über ein angeschlossenes Inventar anzufragen. Ähnliches ist auch möglich, wenn das Upgade in einem Gerät (wie einem [Roboter](robot.md) oder einer [Drohne](../item/drone.md) installiert ist. Das [Tank-Kontrollupgrade](../item/tankControllerUpgrade.md) bietet dieselben Funktionen für Flüssigkeiten in Tanks.
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
# Elektronik-Werkbank

![Harder, better, faster, stronger.](oredict:oc:assembler)

Die Elektronik-Werkbank ist eine fortgeschrittene Maschine welche verwendet werden kann, um komplexere elektronische Geräte wie [Roboter](robot.md), [Drohnen](../item/drone.md) oder [Tablets](../item/tablet.md) zu bauen. Sie benötigen eine große Menge an Energie um Geräte zu montieren, daher wird empfohlen, sie mittels einer [Kondensatorbank (capacitor bank)](capacitor.md) mit Energie zu versorgen.

Um ein Gerät mit Hilfe der Elektronik-Werkbank zu bauen muss ein Basisteil des Geräts eingebaut werden. Für [Roboter](robot.md) ist dies ein [Computergehäuse](case1.md) jeder Stufe, für Tablets hingegen ist es ein [Tabletgehäuse](../tabletCase1.md). So wie es bei jedem OpenComputers-Inventar der Fall ist, können diese Teile in bestimmte Slots eingesetzt werden. Wird der Mauszeiger über einen Slot gehalten, werden die Teile im eigenen Inventar angezeigt, die in diesen Slot passen. Wenn NotEnoughItems geöffnet ist, werden gefilterte OpenComputers-Items die mit dem Slot kompatibel sind ebenfalls markiert. Am wichtigsten ist es, ein Betriebssystem oder einen Weg eines zu installieren zur Verfügung zu stellen (zum Beispiel kann man bei [Robotern](robot.md) ein [Diskettenlaufwerk](diskDrive.md) installieren, um später [Disketten](../item/floppy.md) einzusetzen). Bei den meisten Geräten kann der [EEPROM](../item/eeprom.md) später geändert werden, indem das Gerät mit einem anderen EEPROM in eine Werkbank gelegt wird. Vorhandener EEPROM wird in das Inventar zurückgelegt.

Zu bedenken ist, dass [Roboter](robot.md) einen [Bildschirm (Stufe 1)](screen1.md) benötigen. Um darauf schreiben zu können, wird zudem eine [Tastatur](keyboard.md) benötigt. In [Tablets](../item/tablet.md) ist der Bildschirm bereits im [Tabletgehäuse](../item/tabletCase1.md) vorhanden, aber es ist nötig, eine Tastatur zu installieren, falls der Wunsch besteht auf dem Tablet zu schreiben.

Sobald alles an seinem Platz liegt, wird mit dem Startknopf die Prozedur gestartet. Das Gerät wird montiert und geladen. Es ist wichtig zu bedenken, dass das Gerät *nicht geändert werden kann*, sobald es montiert wurde. Wenn etwas fehlt, muss das Gerät wieder [demontiert](disassembler.md) werden, was das Risiko von Teilverlust innehat.

Eine letzte Sache über Komplexitäten: Die Stufe eines Items legt die Komplexitätspunkte fest, die es benötigt. Stufe 1-Items benötigen einen Komplexitätspunkt, Stufe 2-Items benötigen zwei und Stufe 3-Items benötigen drei Komplexitätspunkte. Ausnahme hierbei bilden die Containerupgrades. Hier ist die Anzahl der benötigten Komplexitätspunkte gleich der Stufe multipliziert mit 2. (Ein Stufe-2-[Upgrade-Container](../item/upgradeContainer1.md) benötigt entsprechend 4 Komplexitätspunkte.)
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
# Kabel

![Salat.](oredict:oc:cable)

Das Kabel ist eine Möglichkeit, [Computer](../general/computer.md) und Maschinen, die weit auseinander stehen zu verbinden. Kompakte Bauten, bei denen sich alle Komponenten direkt oder indirekt berühren (die meisten Blöcke verhalten sich für Kabel) benötigen in der Regel keine Kabel.

Kabel mit Färbemitteln gefärbt werden. Gefärbte Kabel verbinden sich nur mit Kabeln der selben Farbe sowie mit hellgrauen Kabeln (hellgrau ist der Standard). Dies ist nützlich, wenn verschiedene Kabel für verschiedene Subnetzwerke parallel verlaufen sollen.

Wenn nötig können Kabel auch mit Forge MultiPart-Covern ider Immibis Microblocks-Covern abgedeckt werden. [3D-Drucker](print.md) sind Forge MultiPart-kompatibel, also ist es möglich, eigene Cover zu drucken.
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
# Kondensator

![It's over 9000.](oredict:oc:capacitor)

Der Kondensator speichert Energie welche vom Netzwerk genutzt werden kann. Dadurch funktioniert es als Energiepuffer wenn es benötigt wird. Im Gegensatz zum Konvertieren von Energietypen anderer Mods (mittels eines [Energiekonverters](powerConverter.md)) erfolgt die Umwandlung von Energie innerhalb eines Subnetzwerkes ohne Verzögerung. Es ist nützlich, einen internen Energiepuffer für energieintensive Aufgaben (wie [Montage](assembler.md) oder das [Aufladen](charger.md) von Geräten wie [Robotern](robot.md) oder [Drohnen](../item/drone.md) zu haben.

Die Speichereffizienz steigt mit der Anzahl der Kondensatoren im direkten Kontakt oder in der Nähe. Beispielsweise haben zwei Kondensatoren einen größeren Energiespeicher als die Summe der Speicher zweier separater Kondensatoren. Dieser Nachbarschaftsbonus trifft auf Kondensatoren zu, die maximal zwei Blöcke voneinander entfernt sind, wobei er sich bei steigender Distanz weiter verringert.

Der Kondensator kann mit einem [Energieverteiler](powerDistributor.md) verbunden werden, um Energie für andere [Computer](../general/computer.md) oder Geräte im Netzwerk zur Verfügung zu stellen.
37 changes: 37 additions & 0 deletions src/main/resources/assets/opencomputers/doc/de_DE/block/case1.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
# Computergehäuse

![Just in case.](oredict:oc:case1)

Computergehäuse gibt es in drei verschiedenen Stufen. Die Stufe bestimmt die maximale Anzahl an Komponenten, die eingesetzt werden können. Es gibt eine zusätzliche Stufe für den Kreativ-Modus. Gehäuse können ebenfalls in einer [Elektronik-Werkbank](assembler.md) platziert werden, um [Roboter](robot.md) zu bauen.

Die größte Stufe, die eine Komponente haben kann wird im entsprechenden Slot als römische Zahl angezeigt. Ein Stufe-2-Slot kann beispielsweise eine Stufe-1-Komponente enthalten, aber keine Stufe-3-Komponente.

Das Stufe-1-Gehäuse kann folgende Komponenten enthalten:
- Zwei Stufe-1-Erweiterungskarten (wie [Grafikkarten](../item/graphicsCard1.md), [Netzwerkkarten](../item/lanCard.md), etc)
- Eine Stufe-1-[CPU](../item/cpu1.md)
- Ein Stufe-1-[RAM-Riegel](../item/ram1.md)
- Eine Stufe-1-[Festplatte](../item/hdd1.md)

Ein Stufe-2-Gehäuse kann folgende Komponenten enthalten:
- Eine Erweiterungskarte (wie [Grafikkarten](../item/graphicsCard1.md), [Netzwerkkarten](../item/lanCard.md), etc)
- Eine Stufe-2-Erweiterungskarte
- Eine Stufe-2[CPU](../item/cpu2.md)
- Zwei Stufe-2-[RAM-Riegel](../item/ram3.md)
- Eine Stufe-1-[Festplatte](../item/hdd1.md)
- Eine Stufe-2-[Festplatte](../item/hdd2.md)

Ein Stufe-3-Gehäuse kann folgende Komponenten enthalten:
- Eine Stufe-3-Erweiterungskarte (wie [Grafikkarten](../item/graphicsCard1.md), [Netzwerkkarten](../item/lanCard.md), etc)
- Zwei Stufe-2-Erweiterungskarten
- Eine Stufe-1-[CPU](../item/cpu3.md)
- Zwei Stufe-3-[RAM-Riegel](../item/ram5.md)
- Eine Stufe-2-[Festplatte](../item/hdd2.md)
- Eine Stufe-3-[Festplatte](../item/hdd3.md)
- Eine [Diskette](../item/floppy.md)

Das Stufe-4-Gehäuse (das Creative-Gehäuse) kann folgende Komponenten enthalten:
- Drei Stufe-3-Erweiterungskarten (wie [Grafikkarten](../item/graphicsCard1.md), [Netzwerkkarten](../item/lanCard.md), etc)
- Eine Stufe-3-[CPU](../item/cpu3.md)
- Zwei Stufe-3-[RAM-Riegel](../item/ram5.md)
- Zwei Stufe-3-[Festplatten](../item/hdd3.md)
- Eine [Diskette](../item/floppy.md)
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
#REDIRECT case1.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
#REDIRECT case1.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
#REDIRECT case1.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
# Chamälium-Block

![So... nichtssagend...](oredict:oc:chameliumBlock)

Einige Stücke [Chamälium](../item/chamelium.md) können kombiniert werden, um einen dekorativen Monochrom-Block zu schaffen. Chamäliumblöcke können mit einer der 16 Minecraft-Farben gefärbt werden.

Der Chamäliumblock kann als Textur in einem [3D-Drucker](print.md) verwendet werden, wodurch das Gedruckte weiß wird.
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
# Ladegerät

![Gehen wir es an!](oredict:oc:charger)

Das Ladegerät wird verwendet, um Geräte wie den [Roboter](robot.md), [Drohnen](../item/drone.md) und [Tablets](../item/tablet.md) zu laden. Ein Ladegerät muss mit einem Redstonesignal aktiviert werden. Die Ladegeschwindigkeit hängt von der Stärke des Redstonesignals ab. Eine Stärke von 15 bedeutet 100% Ladegeschwindigkeit.

Es gilt zu bedenken, dass dies umgestellt werden kann, wenn das Ladegerät mit einem [Schraubenschlüssel](../item/wrench.md) berührt wird. In diesem Modus ist die Standardgeschwindigkeit 100% welche mit einem Redstonesignal verringert werden kann.

Wenn sich ein Tablet in einem Ladegerät befindet wird die erste Festplatte mit angeschlossenen [Computern](../general/computer.md) verbunden, ähnlich wie es bei [Disketten](../item/floppy.md) in [Diskettenlaufwerken](diskDrive.md) der Fall ist. So können Daten zwischen dem Computer und dem Tablet ausgetauscht werden.
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
# Recycler

![Bau' es auf, reiß' es ab.](oredict:oc:disassembler)

Der Recycler kann verwendet werden, um die meisten Items in ihre Bestandteile aufzuteilen. Dies ist besonders nützlich um Materialien von unnütz gewordenen Bauteilen zurückzubekommen, oder um Geräte zu demontieren, die nicht länger nützlich sind oder inkorrekt gebaut wurden (z.B. [Roboter](robot.md) ohne [Betriebssystem](../general/openOS.md)).

Die Demontage benötigt eine lange Zeit und kann viel Energie verbrauchen. Es besteht zudem eine geringe Wahrscheinlichkeit, dass eine Komponente verloren geht.
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
# Diskettenlaufwerk

![Und das Rad dreht sich rundherum...](oredict:oc:diskDrive)

Das Diskettenlaufwerk kann verwendet werden, um [Disketten](../item/floppy.md) mittels eines Computers auszulesen. Dies ist am Anfang nützlich, da niedrigstufige [Computergehäuse](case1.md) keinen eingebauten Diskettenslot haben. Dennoch benötigst du ein Betriebssystem um den Computer hochzufahren. Eine [OpenOS](../general/openOS.md)-Diskette kann mit einer leeren [Diskette](../item/floppy.md) und dem [Handbuch](../item/manual.md) gefertigt werden.

Ein Diskettenlaufwerk kann zudem in [Robotern](robot.md) installiert werden, was den Einsatz von [Disketten](../item/floppy.md) in den Roboter ermöglicht. Dies ist ist sehr nützlich, da der einzige Weg Daten von und zu einem Roboter zu kopieren mittels eines Netzwerks ist (beispielsweise mittels einer [Netzwerkkarte](../item/lanCard.md)).

[Disketten](../item/floppy.md) können auch entfernt und eingesetzt werden ohne die GUI zu öffnen, indem beim Schleichen das Diskettenlaufwerk mit der Diskette in der Hand rechts angeklickt wird.
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
# Geolyzer

![Er rockt!](oredict:oc:geolyzer)

Der Geolyzer kann von [Computern](../general/computer.md) verwendet werden, um das umgebende Terrain auf die ungefähre Härte von Blöcken zu analysieren. Dies ist nützlich um Karten der Gegend zu generieren, die auf einem [Hologrammprojektor](hologram1.md) angezeigt werden. Erze sind üblicherweise härter als Erde und Stein, daher kann man mit dem Geolyzer potenziell wertvolle Blöcke finden. Die Ergebnisse sind in der Regel etwas ungenau, theoretisch können mehrere Scans zu genaueren Ergebnissen führen.

Der Geolyzer kann außerdem in [Robotern](robot.md) und [Tablets](../item/tablet.md) als ein Upgrade installiert werden um die Umgebung zu scannen. Dies verbraucht einiges an Energie, was den Akku des Gerätes schnell entladen wird.
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
# Hologrammprojektor

![Is this the real life? Is this just fantasy?](oredict:oc:hologram1)

Der Hologrammprojektor ist ein 3D-Display, das bedeutet es stellt ein dreidimensionales Array von "Voxeln" bereit, die von einem Computer einzeln aktiviert oder deaktiviert können. Der Stufe-2-Projektor hat dieselbe Auflösung, unterstützt allerdings die Darstellung in drei verschiedenen Farben.

Hologramme können an ihrer vertikalen Achse rotiert werden, wenn sie mit einem [Schraubenschlüssel](../item/wrench.md) an ihrer Ober- oder Unterseite berührt werden. Dies erspart den Aufwand, dies softwareseitig zu realisieren. Hologramme können auch skaliert werden.
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
#REDIRECT hologram1.md
47 changes: 47 additions & 0 deletions src/main/resources/assets/opencomputers/doc/de_DE/block/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
# Blöcke

Dieser Index listet alle dokumentierten Blöcke in OpenComputers auf. Items sind im [Item-Index](../item/index.md) zu finden.

Es gilt zu bedenken, dass manche Blöcke nicht verfügbar sein könnten, wenn es in den Rezepteinstellungen so definiert ist.

## Computer
* [Computergehäuse](case1.md)
* [Mikrocontroller](microcontroller.md)
* [Roboter](robot.md)
* [Serverschrank](serverRack.md)

## Komponenten

### Eingabe / Ausgabe
* [Hologrammprojektor](hologram1.md)
* [Tastatur](keyboard.md)
* [Bildschirm](screen1.md)

### Speicher
* [Diskettenlaufwerk](diskDrive.md)
* [RAID](raid.md)

### Extensions
* [Adapter](adapter.md)
* [Geolyzer](geolyzer.md)
* [Bewegungssensor](motionSensor.md)
* [Redstone E/A](redstone.md)
* [Wegpunkt](waypoint.md)

## Montage / Druck
* [3D-Druck](print.md)
* [3D-Drucker](printer.md)
* [Elektronik-Werkbank](assembler.md)
* [Chamäliumblock](chameliumBlock.md)
* [Disassembler](disassembler.md)

## Netzwerktechnik
* [Kabel](cable.md)
* [Net Splitter](netSplitter.md)
* [Relay](relay.md)

## Energiemanagement
* [Kondensator](capacitor.md)
* [Ladestation](charger.md)
* [Leistungswandler](powerConverter.md)
* [Stromverteiler](powerDistributor.md)
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
# Tastatur

![QWERTY](oredict:oc:keyboard)

Eine Tastatur wird benötigt um Text auf [Bildschirme](screen1.md) zu schreiben, egal ob in der Welt platziert oder in Geräte eingebaut (wie bei [Robotern](robot.md) oder [Tablets](../item/tablet.md)).

Damit eine Tastatur mit einem [Bildschirm](screen1.md) in der Welt funktioniert, muss sie neben dem Bildschirm und in Richtung des Bildschirms oder direkt auf dem Bildschirm aufgestellt werden. Ob die Tastatur funktioniert kann festgestellt werden, wenn beim Rechtsklick auf die Tastatur die GUI des Bildschirms geöffnet wird.
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
# Mikrocontroller

![Don't belittle it.](block:OpenComputers:microcontroller)

Mikrocontroller werden gebaut, indem ein [Mikrocontrollergehäuse](../item/microcontrollerCase1.md) in der [Elektronik-Werkbank](assembler.md) verwendet wird. Im Vergleich zu [Computern](../general/computer.md) haben sie weniger Funktionen, sind aber günstiger zu bauen. Ganz besonders *können sie nicht mit externen Komponenten interagieren*.

Mikrocontroller können einige Komponenten verwenden, wie [CPUs](../item/cpu1.md), [RAM-Riegel](../item/ram1.md) und Erweiterungskarten. Mikrocontroller können keine [Festplatte](../item/hdd1.md) enthalten, allerdings einen Slot für einen [EEPROM](../item/eeprom.md), welcher für bestimmte Anwendungszwecke programmiert werden kann. Sie haben einen Vorteil gegenüber Computergehäusen, da sie manche Upgrades wie das [Kolbenupgrade](../item/pistonUpgrade.md) verwenden können.
Loading

0 comments on commit 57caa89

Please sign in to comment.