diff --git a/build.gradle b/build.gradle index 3914927f7..84c88f357 100644 --- a/build.gradle +++ b/build.gradle @@ -130,7 +130,7 @@ dependencies { provided "codechicken:WR-CBE:${config.minecraft.version}-${config.wrcbe.version}:dev" provided "com.gregoriust.gregtech:gregtech_${config.minecraft.version}:${config.gt.version}:dev" provided "com.mod-buildcraft:buildcraft:${config.bc.version}:dev" - provided "dev.calclavia.universalelectricity:universal-electricity:${config.ue.version}:dev" + provided "dev.calclavia.resonantengine:resonant-engine:${config.re.version}:dev" provided "mcp.mobius.waila:Waila:${config.waila.version}_${config.minecraft.version}:dev" provided "net.industrial-craft:industrialcraft-2:${config.ic2.version}:dev" provided "net.sengir.forestry:forestry_${config.minecraft.version}:${config.forestry.version}:dev" diff --git a/build.properties b/build.properties index d31bc875f..bd71a3231 100644 --- a/build.properties +++ b/build.properties @@ -32,7 +32,7 @@ rc.version=1.7.10-9.4.0.0 redlogic.version=59.0.3 rotc.version=1 tmech.version=75.0afb56c -ue.version=4.0.0.81 +re.version=3.0.0.342 waila.version=1.5.4a wrcbe.version=1.4.1.2 diff --git a/src/main/resources/application.conf b/src/main/resources/application.conf index 30371992e..fa2f1b7df 100644 --- a/src/main/resources/application.conf +++ b/src/main/resources/application.conf @@ -694,7 +694,7 @@ opencomputers { IndustrialCraft2: 200.0 Mekanism: 700.0 RedstoneFlux: 18.0 - UniversalElectricity: 1750.0 + ResonantEngine: 1750.0 } } diff --git a/src/main/resources/assets/opencomputers/lang/de_DE.lang b/src/main/resources/assets/opencomputers/lang/de_DE.lang index ebc590078..71bd3f583 100644 --- a/src/main/resources/assets/opencomputers/lang/de_DE.lang +++ b/src/main/resources/assets/opencomputers/lang/de_DE.lang @@ -226,7 +226,7 @@ oc:tooltip.PowerConverter.Factorization=§fFactorization Charge§7: §a%s:%s§7 oc:tooltip.PowerConverter.IndustrialCraft2=§fIndustrialCraft² EU§7: §a%s:%s§7 oc:tooltip.PowerConverter.Mekanism=§fMekanism Joules§7: §a%s:%s§7 oc:tooltip.PowerConverter.ThermalExpansion=§fThermal Expansion RF§7: §a%s:%s§7 -oc:tooltip.PowerConverter.UniversalElectricity=§fUniversal Electricity Joules§7: §a%s:%s§7 +oc:tooltip.PowerConverter.ResonantEngine=§fResonant Engine Coulombs§7: §a%s:%s§7 oc:tooltip.PowerConverter=Wandelt Strom anderer Mods in den internen Energietyp um. Umwandlungsverhältnisse: oc:tooltip.PowerDistributor=Verteilt Energie zwischen mehreren Netzwerken. Nützlich, um Energie mit einem Wandler auf mehrere Subnetze, die voneinander getrennt sein sollen, zu verteilen. oc:tooltip.PrintedCircuitBoard=Hierauf basieren alle Erweiterungskarten, Speicher und so weiter. diff --git a/src/main/resources/assets/opencomputers/lang/en_US.lang b/src/main/resources/assets/opencomputers/lang/en_US.lang index b8ab313c5..351f48fe2 100644 --- a/src/main/resources/assets/opencomputers/lang/en_US.lang +++ b/src/main/resources/assets/opencomputers/lang/en_US.lang @@ -238,7 +238,7 @@ oc:tooltip.PowerConverter.Factorization=§fFactorization Charge§7: §a%s:%s§7 oc:tooltip.PowerConverter.IndustrialCraft2=§fIndustrialCraft² EU§7: §a%s:%s§7 oc:tooltip.PowerConverter.Mekanism=§fMekanism Joules§7: §a%s:%s§7 oc:tooltip.PowerConverter.ThermalExpansion=§fThermal Expansion RF§7: §a%s:%s§7 -oc:tooltip.PowerConverter.UniversalElectricity=§fUniversal Electricity Joules§7: §a%s:%s§7 +oc:tooltip.PowerConverter.ResonantEngine=§fResonant Engine Coulombs§7: §a%s:%s§7 oc:tooltip.PowerConverter=Converts power from other mods to the internal energy type. Conversion rates: oc:tooltip.PowerDistributor=Distributes energy among different networks. This is useful for sharing power fed into your system from one converter among different sub-networks that should remain separate. oc:tooltip.PrintedCircuitBoard=The basic building block for expansion cards and memory and such. diff --git a/src/main/resources/assets/opencomputers/lang/fr_FR.lang b/src/main/resources/assets/opencomputers/lang/fr_FR.lang index 76069bf48..1949ff8b1 100644 --- a/src/main/resources/assets/opencomputers/lang/fr_FR.lang +++ b/src/main/resources/assets/opencomputers/lang/fr_FR.lang @@ -109,7 +109,7 @@ oc:tooltip.PowerConverter.BuildCraft=§fBuildCraft MJ§7: §a%s:%s§7 oc:tooltip.PowerConverter.IndustrialCraft2=§fIndustrialCraft² EU§7: §a%s:%s§7 oc:tooltip.PowerConverter.Mekanism=§fMekanism Joules§7: §a%s:%s§7 oc:tooltip.PowerConverter.ThermalExpansion=§fThermal Expansion RF§7: §a%s:%s§7 -oc:tooltip.PowerConverter.UniversalElectricity=§fUniversal Electricity Joules§7: §a%s:%s§7 +oc:tooltip.PowerConverter.ResonantEngine=§fResonant Engine Coulombs§7: §a%s:%s§7 oc:tooltip.PowerConverter=Convertis l'énergie d'autres mods en l'énergie requise pour faire fonctionner les ordinateurs. oc:tooltip.PowerDistributor=Distribue l'énergie dans plusieurs réseaux. Utile pour partager cette énergie depuis un convertisseur vers différents sous-réseaux qui doivent rester séparés. oc:tooltip.PrintedCircuitBoard=Le composant basique pour les cartes, la mémoire, etc. diff --git a/src/main/resources/assets/opencomputers/lang/it_IT.lang b/src/main/resources/assets/opencomputers/lang/it_IT.lang index 5a0a27d0a..502ae9162 100644 --- a/src/main/resources/assets/opencomputers/lang/it_IT.lang +++ b/src/main/resources/assets/opencomputers/lang/it_IT.lang @@ -224,7 +224,7 @@ oc:tooltip.PowerConverter.Factorization=§fFactorization Charge§7: §a%s:%s§7 oc:tooltip.PowerConverter.IndustrialCraft2=§fIndustrialCraft² EU§7: §a%s:%s§7 oc:tooltip.PowerConverter.Mekanism=§fMekanism Joules§7: §a%s:%s§7 oc:tooltip.PowerConverter.ThermalExpansion=§fThermal Expansion RF§7: §a%s:%s§7 -oc:tooltip.PowerConverter.UniversalElectricity=§fUniversal Electricity Joules§7: §a%s:%s§7 +oc:tooltip.PowerConverter.ResonantEngine=§fResonant Engine Coulombs§7: §a%s:%s§7 oc:tooltip.PowerConverter=Converte l'energia da altri mod nel tipo di energia interna. Tassi di conversione: oc:tooltip.PowerDistributor=Distribuisce l'eenergia tra reti diverse. Questo è utile per la condivisione di energia immessa nel sistema da un convertitore tra le diverse sotto-reti che dovrebbero rimanere separati. oc:tooltip.PrintedCircuitBoard=L'elemento di base per schede di espansione, per la memoria e così via. diff --git a/src/main/resources/assets/opencomputers/lang/pt_PT.lang b/src/main/resources/assets/opencomputers/lang/pt_PT.lang index 28b84268c..323ee7833 100644 --- a/src/main/resources/assets/opencomputers/lang/pt_PT.lang +++ b/src/main/resources/assets/opencomputers/lang/pt_PT.lang @@ -111,7 +111,7 @@ oc:tooltip.NetworkCard=Permite a computadores distantes ligados por blocos (tais oc:tooltip.PowerConverter.BuildCraft=§fMJ de Buildcraft§7: §a%s:%s§7 oc:tooltip.PowerConverter.IndustrialCraft2=§fEU de IndustrialCraft²§7: §a%s:%s§7 oc:tooltip.PowerConverter.ThermalExpansion=§fRF de Thermal Expansion§7: §a%s:%s§7 -oc:tooltip.PowerConverter.UniversalElectricity=§fJoules de Universal Electricity§7: §a%s:%s§7 +oc:tooltip.PowerConverter.ResonantEngine=§fCoulombs de Resonant Engine§7: §a%s:%s§7 oc:tooltip.PowerConverter=Converte energia de outros mods para o tipo de energia usado internamente. Taxas de conversão: oc:tooltip.PowerDistributor=Distribui energia entre diferentes redes. É util para alimentar várias redes separadas através de uma fonte de energia partilhada. oc:tooltip.PrintedCircuitBoard=O componente básico de placas de expansão, memórias e afins. diff --git a/src/main/resources/assets/opencomputers/lang/ru_RU.lang b/src/main/resources/assets/opencomputers/lang/ru_RU.lang index c819a10a6..6b1c4d802 100644 --- a/src/main/resources/assets/opencomputers/lang/ru_RU.lang +++ b/src/main/resources/assets/opencomputers/lang/ru_RU.lang @@ -131,7 +131,7 @@ oc:gui.Assembler.Warning.Screen=Монитор oc:gui.Chat.NewVersion=Новая версия доступна: %s oc:gui.Chat.WarningFingerprint=§cВНИМАНИЕ§f - несовпадение отпечатка пальца! Ожидаемый: '§a%s§f', полученный: '§e%s§f'. Если Вы не разработчик, использующий деобфусцированную версию мода, то §lкрайне§f желательно заново скачать OpenComputers, поскольку JAR-файл, возможно, был подделан. oc:gui.Chat.WarningLuaFallback=Родные библиотеки Lua не доступны, компьютеры не смогут сохранять своё состояние. Они перезагрузятся после выгрузки чанка. -oc:gui.Chat.WarningPower=Подходящие моды, предоставляющие энергию, не найдены. Компьютеры, мониторы и прочие компоненты §lне будут§f требовать энергию. Для активации данной функции установите один из следующих модов: BuildCraft, IndustrialCraft2, Thermal Expansion или Universal Electricity. Отключите требование энергии в конфиг-файле, чтобы скрыть это предупреждение. +oc:gui.Chat.WarningPower=Подходящие моды, предоставляющие энергию, не найдены. Компьютеры, мониторы и прочие компоненты §lне будут§f требовать энергию. Для активации данной функции установите один из следующих модов: BuildCraft, IndustrialCraft2, Thermal Expansion или Resonant Engine. Отключите требование энергии в конфиг-файле, чтобы скрыть это предупреждение. oc:gui.Chat.WarningProjectRed=Вы используете версию Project: Red, несовместимую с OpenComputers. Попробуйте обновить Project: Red. oc:gui.Error.ComponentOverflow=Слишком много компонентов подключено к компьютеру. oc:gui.Error.InternalError=Внутренняя ошибка, пожалуйста посмотрите лог-файл. Возможно, это баг. @@ -212,7 +212,7 @@ oc:tooltip.PowerConverter.BuildCraft=§fBuildCraft MJ§7: §a%s:%s§7 oc:tooltip.PowerConverter.IndustrialCraft2=§fIndustrialCraft² EU§7: §a%s:%s§7 oc:tooltip.PowerConverter.Mekanism=§fMekanism Joules§7: §a%s:%s§7 oc:tooltip.PowerConverter.ThermalExpansion=§fThermal Expansion RF§7: §a%s:%s§7 -oc:tooltip.PowerConverter.UniversalElectricity=§fUniversal Electricity Joules§7: §a%s:%s§7 +oc:tooltip.PowerConverter.ResonantEngine=§fResonant Engine Coulombs§7: §a%s:%s§7 oc:tooltip.PowerConverter=Преобразует энергию от других модов во внутренний тип энергии. Соотношение энергии: oc:tooltip.PowerDistributor=Передаёт энергию между различными сетями. Это полезно, когда требуется запитать несколько сетей, которые должны быть разделены, от одного преобразователя. oc:tooltip.PrintedCircuitBoard=Основной строительный блок для плат, памяти и прочего. diff --git a/src/main/resources/assets/opencomputers/lang/zh_CN.lang b/src/main/resources/assets/opencomputers/lang/zh_CN.lang index a0dd5f66a..f7980299d 100644 --- a/src/main/resources/assets/opencomputers/lang/zh_CN.lang +++ b/src/main/resources/assets/opencomputers/lang/zh_CN.lang @@ -224,7 +224,7 @@ oc:tooltip.PowerConverter.Factorization=§fCharge§7: §a%s:%s§7 oc:tooltip.PowerConverter.IndustrialCraft2=§fEU§7: §a%s:%s§7 oc:tooltip.PowerConverter.Mekanism=§fJoules§7: §a%s:%s§7 oc:tooltip.PowerConverter.ThermalExpansion=§fRF§7: §a%s:%s§7 -oc:tooltip.PowerConverter.UniversalElectricity=§fJoules§7: §a%s:%s§7 +oc:tooltip.PowerConverter.ResonantEngine=§fCoulombs§7: §a%s:%s§7 oc:tooltip.PowerConverter=将其它模组的能量转化为本模组的内部能源形式. 转换比: oc:tooltip.PowerDistributor=在不同网络中分配能量. 很实用于通过包含多个理论上独立子网络的转换器在系统中共享能量. oc:tooltip.PrintedCircuitBoard=扩展卡, 内存等组件的基础板. diff --git a/src/main/resources/assets/opencomputers/lang/zh_TW.lang b/src/main/resources/assets/opencomputers/lang/zh_TW.lang index e04dcd9df..3d141486d 100644 --- a/src/main/resources/assets/opencomputers/lang/zh_TW.lang +++ b/src/main/resources/assets/opencomputers/lang/zh_TW.lang @@ -223,7 +223,6 @@ oc:tooltip.PowerConverter.Factorization=§f因式分解 (Charge)§7: §a%s:%s§7 oc:tooltip.PowerConverter.IndustrialCraft2=§f工業時代 EU(IC²-EU)§7: §a%s:%s§7 oc:tooltip.PowerConverter.Mekanism=§fMekanism 焦耳(Joules)§7: §a%s:%s§7 oc:tooltip.PowerConverter.ThermalExpansion=§f熱能擴展RF(TE-RF)§7: §a%s:%s§7 -oc:tooltip.PowerConverter.UniversalElectricity=§f通用電力焦耳(UE-Joules§7): §a%s:%s§7 oc:tooltip.PowerConverter=將其他模組的能量轉化為本模組的內部能源形式.轉換率: oc:tooltip.PowerDistributor=在不同網絡中分配能量.[nl]用來通過包含多個理論上獨立的子網絡的轉換器在系統中共享能量時很實用. oc:tooltip.PrintedCircuitBoard=擴展卡,記憶體等的基板. diff --git a/src/main/resources/mcmod.info b/src/main/resources/mcmod.info index 6e97bc53c..bc43b80d8 100644 --- a/src/main/resources/mcmod.info +++ b/src/main/resources/mcmod.info @@ -20,8 +20,7 @@ "RedLogic", "StargateTech2", "Thaumcraft", - "ThermalExpansion", - "UniversalElectricity" + "ThermalExpansion" ], "dependants": [], "useDependencyInformation": "true" diff --git a/src/main/scala/li/cil/oc/Settings.scala b/src/main/scala/li/cil/oc/Settings.scala index 3ee3adc0b..3dd173930 100644 --- a/src/main/scala/li/cil/oc/Settings.scala +++ b/src/main/scala/li/cil/oc/Settings.scala @@ -203,7 +203,7 @@ class Settings(val config: Config) { private val valueIndustrialCraft2 = config.getDouble("power.value.IndustrialCraft2") private val valueMekanism = config.getDouble("power.value.Mekanism") private val valueRedstoneFlux = config.getDouble("power.value.RedstoneFlux") - private val valueUniversalElectricity = config.getDouble("power.value.UniversalElectricity") + private val valueResonantEngine = config.getDouble("power.value.ResonantEngine") private val valueInternal = valueBuildCraft @@ -214,7 +214,7 @@ class Settings(val config: Config) { val ratioIndustrialCraft2 = valueIndustrialCraft2 / valueInternal val ratioMekanism = valueMekanism / valueInternal val ratioRedstoneFlux = valueRedstoneFlux / valueInternal - val ratioUniversalElectricity = valueUniversalElectricity / valueInternal + val ratioResonantEngine = valueResonantEngine / valueInternal // ----------------------------------------------------------------------- // // filesystem diff --git a/src/main/scala/li/cil/oc/common/EventHandler.scala b/src/main/scala/li/cil/oc/common/EventHandler.scala index 8ec9e274d..e8bb02479 100644 --- a/src/main/scala/li/cil/oc/common/EventHandler.scala +++ b/src/main/scala/li/cil/oc/common/EventHandler.scala @@ -25,7 +25,7 @@ import net.minecraft.tileentity.TileEntity import net.minecraftforge.common.MinecraftForge import net.minecraftforge.common.util.ForgeDirection import net.minecraftforge.event.world.WorldEvent -import universalelectricity.api.core.grid.electric.IEnergyNode +import resonant.api.electric.IEnergyNode import scala.collection.mutable import scala.concurrent.ExecutionContext.Implicits.global @@ -53,7 +53,7 @@ object EventHandler { } } - @Optional.Method(modid = Mods.IDs.UniversalElectricity) + @Optional.Method(modid = Mods.IDs.ResonantEngine) def scheduleAE2Add(tileEntity: power.AppliedEnergistics2) { if (SideTracker.isServer) pending.synchronized { pending += (() => if (!tileEntity.isInvalid) { @@ -82,8 +82,8 @@ object EventHandler { } } - @Optional.Method(modid = Mods.IDs.UniversalElectricity) - def scheduleUEAdd(tileEntity: power.UniversalElectricity) { + @Optional.Method(modid = Mods.IDs.ResonantEngine) + def scheduleUEAdd(tileEntity: power.ResonantEngine) { if (SideTracker.isServer) pending.synchronized { pending += (() => if (!tileEntity.isInvalid) { tileEntity.getNode(classOf[IEnergyNode], ForgeDirection.UNKNOWN).reconstruct() diff --git a/src/main/scala/li/cil/oc/common/block/PowerConverter.scala b/src/main/scala/li/cil/oc/common/block/PowerConverter.scala index c75ba35df..319e521c7 100644 --- a/src/main/scala/li/cil/oc/common/block/PowerConverter.scala +++ b/src/main/scala/li/cil/oc/common/block/PowerConverter.scala @@ -48,8 +48,8 @@ class PowerConverter extends SimpleBlock with traits.PowerAcceptor { if (Mods.CoFHEnergy.isAvailable) { addRatio(tooltip, "ThermalExpansion", Settings.get.ratioRedstoneFlux) } - if (Mods.UniversalElectricity.isAvailable) { - addRatio(tooltip, "UniversalElectricity", Settings.get.ratioUniversalElectricity) + if (Mods.ResonantEngine.isAvailable) { + addRatio(tooltip, "ResonantEngine", Settings.get.ratioResonantEngine) } } diff --git a/src/main/scala/li/cil/oc/common/block/traits/PowerAcceptor.scala b/src/main/scala/li/cil/oc/common/block/traits/PowerAcceptor.scala index 70b1ebc81..4d1b7c390 100644 --- a/src/main/scala/li/cil/oc/common/block/traits/PowerAcceptor.scala +++ b/src/main/scala/li/cil/oc/common/block/traits/PowerAcceptor.scala @@ -4,7 +4,7 @@ import java.util import cpw.mods.fml.common.Optional import li.cil.oc.common.block.SimpleBlock -import li.cil.oc.common.tileentity.traits.power.UniversalElectricity +import li.cil.oc.common.tileentity.traits.power.ResonantEngine import li.cil.oc.integration.Mods import li.cil.oc.util.Tooltip import net.minecraft.block.Block @@ -13,22 +13,22 @@ import net.minecraft.item.ItemStack import net.minecraft.tileentity.TileEntity import net.minecraft.world.World import net.minecraftforge.common.util.ForgeDirection -import universalelectricity.api.core.grid.electric.IEnergyNode +import resonant.api.electric.IEnergyNode trait PowerAcceptor extends SimpleBlock { def energyThroughput: Double override def onNeighborBlockChange(world: World, x: Int, y: Int, z: Int, block: Block) { super.onNeighborBlockChange(world, x, y, z, block) - if (Mods.UniversalElectricity.isAvailable) { - updateUENode(world.getTileEntity(x, y, z)) + if (Mods.ResonantEngine.isAvailable) { + updateRENode(world.getTileEntity(x, y, z)) } } - @Optional.Method(modid = Mods.IDs.UniversalElectricity) - private def updateUENode(tileEntity: TileEntity) { + @Optional.Method(modid = Mods.IDs.ResonantEngine) + private def updateRENode(tileEntity: TileEntity) { tileEntity match { - case ue: UniversalElectricity => ue.getNode(classOf[IEnergyNode], ForgeDirection.UNKNOWN).reconstruct() + case re: ResonantEngine => re.getNode(classOf[IEnergyNode], ForgeDirection.UNKNOWN).reconstruct() case _ => } } diff --git a/src/main/scala/li/cil/oc/common/tileentity/traits/PowerAcceptor.scala b/src/main/scala/li/cil/oc/common/tileentity/traits/PowerAcceptor.scala index 98d4ab07a..dba6e46d5 100644 --- a/src/main/scala/li/cil/oc/common/tileentity/traits/PowerAcceptor.scala +++ b/src/main/scala/li/cil/oc/common/tileentity/traits/PowerAcceptor.scala @@ -9,4 +9,4 @@ trait PowerAcceptor with power.IndustrialCraft2Classic with power.Mekanism with power.RedstoneFlux - with power.UniversalElectricity + with power.ResonantEngine diff --git a/src/main/scala/li/cil/oc/common/tileentity/traits/power/UniversalElectricity.scala b/src/main/scala/li/cil/oc/common/tileentity/traits/power/ResonantEngine.scala similarity index 50% rename from src/main/scala/li/cil/oc/common/tileentity/traits/power/UniversalElectricity.scala rename to src/main/scala/li/cil/oc/common/tileentity/traits/power/ResonantEngine.scala index 70cbbeb49..e2d5fc001 100644 --- a/src/main/scala/li/cil/oc/common/tileentity/traits/power/UniversalElectricity.scala +++ b/src/main/scala/li/cil/oc/common/tileentity/traits/power/ResonantEngine.scala @@ -9,46 +9,46 @@ import li.cil.oc.integration.Mods import li.cil.oc.util.ExtendedNBT._ import net.minecraft.nbt.NBTTagCompound import net.minecraftforge.common.util.ForgeDirection -import universalelectricity.api.core.grid.INode -import universalelectricity.api.core.grid.INodeProvider -import universalelectricity.api.core.grid.electric.IEnergyNode -import universalelectricity.core.grid.node.NodeEnergy +import resonant.api.electric.IEnergyNode +import resonant.api.grid.INode +import resonant.api.grid.INodeProvider +import resonant.lib.grid.electric.DCNode -@Injectable.Interface(value = "universalelectricity.api.core.grid.INodeProvider", modid = Mods.IDs.UniversalElectricity) -trait UniversalElectricity extends Common { +@Injectable.Interface(value = "resonant.api.grid.INodeProvider", modid = Mods.IDs.ResonantEngine) +trait ResonantEngine extends Common { private var node: Option[AnyRef] = None - private lazy val useUniversalElectricityPower = isServer && Mods.UniversalElectricity.isAvailable + private lazy val useResonantEnginePower = isServer && Mods.ResonantEngine.isAvailable // ----------------------------------------------------------------------- // override def updateEntity() { super.updateEntity() - if (useUniversalElectricityPower && world.getTotalWorldTime % Settings.get.tickFrequency == 0) { + if (useResonantEnginePower && world.getTotalWorldTime % Settings.get.tickFrequency == 0) { updateEnergy() } } - @Optional.Method(modid = Mods.IDs.UniversalElectricity) + @Optional.Method(modid = Mods.IDs.ResonantEngine) private def updateEnergy() { node match { - case Some(energyNode: NodeEnergy) => - tryAllSides((demand, _) => energyNode.buffer.extractEnergy(demand, doExtract = true), Settings.get.ratioUniversalElectricity) + case Some(energyNode: DCNode) => + tryAllSides((demand, _) => energyNode.extractEnergy(demand, doExtract = true), Settings.get.ratioResonantEngine) case _ => } } override def validate() { super.validate() - if (useUniversalElectricityPower) EventHandler.scheduleUEAdd(this) + if (useResonantEnginePower) EventHandler.scheduleUEAdd(this) } override def invalidate() { super.invalidate() - if (useUniversalElectricityPower) deconstructNode() + if (useResonantEnginePower) deconstructNode() } - @Optional.Method(modid = Mods.IDs.UniversalElectricity) + @Optional.Method(modid = Mods.IDs.ResonantEngine) private def deconstructNode() { getNode(classOf[IEnergyNode], ForgeDirection.UNKNOWN).deconstruct() } @@ -57,50 +57,49 @@ trait UniversalElectricity extends Common { override def readFromNBT(nbt: NBTTagCompound) { super.readFromNBT(nbt) - if (useUniversalElectricityPower) loadNode(nbt) + if (useResonantEnginePower) loadNode(nbt) } - @Optional.Method(modid = Mods.IDs.UniversalElectricity) + @Optional.Method(modid = Mods.IDs.ResonantEngine) private def loadNode(nbt: NBTTagCompound) { node match { - case Some(energyNode: NodeEnergy) => energyNode.load(nbt.getCompoundTag("uepower")) + case Some(energyNode: DCNode) => energyNode.getEnergyStorage().readFromNBT(nbt.getCompoundTag("repower")) case _ => } } override def writeToNBT(nbt: NBTTagCompound) { super.writeToNBT(nbt) - if (useUniversalElectricityPower) saveNode(nbt) + if (useResonantEnginePower) saveNode(nbt) } - @Optional.Method(modid = Mods.IDs.UniversalElectricity) + @Optional.Method(modid = Mods.IDs.ResonantEngine) private def saveNode(nbt: NBTTagCompound) { node match { - case Some(energyNode: NodeEnergy) => nbt.setNewCompoundTag("uepower", energyNode.save) + case Some(energyNode: DCNode) => nbt.setNewCompoundTag("repower", energyNode.getEnergyStorage().writeToNBT) case _ => } } // ----------------------------------------------------------------------- // - @Optional.Method(modid = Mods.IDs.UniversalElectricity) - def getNode(nodeType: Class[_ <: INode], side: ForgeDirection): INode = { - if (nodeType != null && classOf[IEnergyNode].isAssignableFrom(nodeType)) node match { - case Some(energyNode: NodeEnergy) => energyNode + @Optional.Method(modid = Mods.IDs.ResonantEngine) + def getNode[N <: INode](nodeType: Class[_ <: N], side: ForgeDirection): N = { + if (nodeType != null && nodeType.isAssignableFrom(classOf[DCNode])) node match { + case Some(energyNode: DCNode) => energyNode.asInstanceOf[N] case _ => this match { case nodeProvider: INodeProvider => - val conversionBufferSize = energyThroughput * Settings.get.tickFrequency / Settings.get.ratioUniversalElectricity - val energyNode = new NodeEnergy(nodeProvider, conversionBufferSize, conversionBufferSize, conversionBufferSize) { + val energyNode = new DCNode(nodeProvider) { override def canConnect(from: ForgeDirection) = canConnectPower(from) && super.canConnect(from) } node = Option(energyNode) - energyNode + energyNode.asInstanceOf[N] case _ => OpenComputers.log.warn("Failed setting up UniversalElectricity power, which most likely means the class transformer did not run. You're probably running in an incorrectly configured development environment. Try adding `-Dfml.coreMods.load=li.cil.oc.common.launch.TransformerLoader` to the VM options of your run configuration.") - null + null.asInstanceOf[N] } } - else null + else null.asInstanceOf[N] } } diff --git a/src/main/scala/li/cil/oc/integration/Mods.scala b/src/main/scala/li/cil/oc/integration/Mods.scala index 5e05501b6..81239eceb 100644 --- a/src/main/scala/li/cil/oc/integration/Mods.scala +++ b/src/main/scala/li/cil/oc/integration/Mods.scala @@ -56,6 +56,7 @@ object Mods { val ProjectRedTransmission = new SimpleMod(IDs.ProjectRedTransmission) val Railcraft = new SimpleMod(IDs.Railcraft) val RedLogic = new SimpleMod(IDs.RedLogic) + val ResonantEngine = new SimpleMod(IDs.ResonantEngine, providesPower = true) val StargateTech2 = new ModBase { def id = IDs.StargateTech2 @@ -68,7 +69,6 @@ object Mods { val ThermalExpansion = new SimpleMod(IDs.ThermalExpansion, providesPower = true) val TinkersConstruct = new SimpleMod(IDs.TinkersConstruct) val TMechWorks = new SimpleMod(IDs.TMechWorks) - val UniversalElectricity = new SimpleMod(IDs.UniversalElectricity, providesPower = true) val VersionChecker = new SimpleMod(IDs.VersionChecker) val Waila = new SimpleMod(IDs.Waila) val WirelessRedstoneCBE = new SimpleMod(IDs.WirelessRedstoneCBE) @@ -94,12 +94,12 @@ object Mods { tryInit(integration.mystcraft.ModMystcraft) tryInit(integration.opencomputers.ModOpenComputers) tryInit(integration.railcraft.ModRailcraft) + tryInit(integration.re.ModResonantEngine) tryInit(integration.stargatetech2.ModStargateTech2) tryInit(integration.thaumcraft.ModThaumcraft) tryInit(integration.thermalexpansion.ModThermalExpansion) tryInit(integration.tcon.ModTinkersConstruct) tryInit(integration.tmechworks.ModTMechworks) - tryInit(integration.ue.ModUniversalElectricity) tryInit(integration.vanilla.ModVanilla) tryInit(integration.versionchecker.ModVersionChecker) tryInit(integration.waila.ModWaila) @@ -160,12 +160,12 @@ object Mods { final val ProjectRedTransmission = "ProjRed|Transmission" final val Railcraft = "Railcraft" final val RedLogic = "RedLogic" + final val ResonantEngine = "ResonantEngine" final val StargateTech2 = "StargateTech2" final val Thaumcraft = "Thaumcraft" final val ThermalExpansion = "ThermalExpansion" final val TinkersConstruct = "TConstruct" final val TMechWorks = "TMechworks" - final val UniversalElectricity = "UniversalElectricity" final val VersionChecker = "VersionChecker" final val Waila = "Waila" final val WirelessRedstoneCBE = "WR-CBE|Core" diff --git a/src/main/scala/li/cil/oc/integration/ue/EventHandlerUniversalElectricity.scala b/src/main/scala/li/cil/oc/integration/re/EventHandlerResonantEngine.scala similarity index 85% rename from src/main/scala/li/cil/oc/integration/ue/EventHandlerUniversalElectricity.scala rename to src/main/scala/li/cil/oc/integration/re/EventHandlerResonantEngine.scala index e3fe250af..53584b50f 100644 --- a/src/main/scala/li/cil/oc/integration/ue/EventHandlerUniversalElectricity.scala +++ b/src/main/scala/li/cil/oc/integration/re/EventHandlerResonantEngine.scala @@ -1,11 +1,11 @@ -package li.cil.oc.integration.ue +package li.cil.oc.integration.re import cpw.mods.fml.common.eventhandler.SubscribeEvent import li.cil.oc.api.event.RobotUsedToolEvent import net.minecraftforge.common.util.ForgeDirection -import universalelectricity.compatibility.Compatibility +import resonant.lib.grid.Compatibility -object EventHandlerUniversalElectricity { +object EventHandlerResonantEngine { @SubscribeEvent def onRobotApplyDamageRate(e: RobotUsedToolEvent.ApplyDamageRate) { if (Compatibility.isHandler(e.toolAfterUse, ForgeDirection.UNKNOWN)) { diff --git a/src/main/scala/li/cil/oc/integration/re/ModResonantEngine.scala b/src/main/scala/li/cil/oc/integration/re/ModResonantEngine.scala new file mode 100644 index 000000000..976c1bcac --- /dev/null +++ b/src/main/scala/li/cil/oc/integration/re/ModResonantEngine.scala @@ -0,0 +1,13 @@ +package li.cil.oc.integration.re + +import li.cil.oc.integration.ModProxy +import li.cil.oc.integration.Mods +import net.minecraftforge.common.MinecraftForge + +object ModResonantEngine extends ModProxy { + override def getMod = Mods.ResonantEngine + + override def initialize() { + MinecraftForge.EVENT_BUS.register(EventHandlerResonantEngine) + } +} diff --git a/src/main/scala/li/cil/oc/integration/ue/ModUniversalElectricity.scala b/src/main/scala/li/cil/oc/integration/ue/ModUniversalElectricity.scala deleted file mode 100644 index 2a584c6b1..000000000 --- a/src/main/scala/li/cil/oc/integration/ue/ModUniversalElectricity.scala +++ /dev/null @@ -1,13 +0,0 @@ -package li.cil.oc.integration.ue - -import li.cil.oc.integration.ModProxy -import li.cil.oc.integration.Mods -import net.minecraftforge.common.MinecraftForge - -object ModUniversalElectricity extends ModProxy { - override def getMod = Mods.UniversalElectricity - - override def initialize() { - MinecraftForge.EVENT_BUS.register(EventHandlerUniversalElectricity) - } -}