diff --git a/.travis.yml b/.travis.yml index df81f4ef6..22223c3d2 100644 --- a/.travis.yml +++ b/.travis.yml @@ -2,6 +2,7 @@ sudo: false language: scala scala: 2.11.1 jdk: oraclejdk8 +dist: trusty notifications: email: false diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index c886aa52e..c03faf2b7 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -3,4 +3,4 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=http\://services.gradle.org/distributions/gradle-2.7-bin.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-2.7-bin.zip diff --git a/src/main/resources/assets/opencomputers/lang/ru_RU.lang b/src/main/resources/assets/opencomputers/lang/ru_RU.lang index ff5cdf945..fe48cb59b 100644 --- a/src/main/resources/assets/opencomputers/lang/ru_RU.lang +++ b/src/main/resources/assets/opencomputers/lang/ru_RU.lang @@ -8,6 +8,7 @@ tile.oc.adapter.name=Адаптер tile.oc.assembler.name=Сборщик tile.oc.cable.name=Кабель tile.oc.capacitor.name=Конденсатор энергии +tile.oc.carpetedCapacitor.name=Конденсатор с ковровым покрытием tile.oc.case1.name=Системный блок (1-ый уровень) tile.oc.case2.name=Системный блок (2-ой уровень) tile.oc.case3.name=Системный блок (3-ий уровень) @@ -57,6 +58,7 @@ item.oc.CircuitBoard.name=Нетравленая печатная плата item.oc.ComponentBus0.name=Компонентная шина (1-ый уровень) item.oc.ComponentBus1.name=Компонентная шина (2-ой уровень) item.oc.ComponentBus2.name=Компонентная шина (3-ий уровень) +item.oc.ComponentBus3.name=Компонентная шина (Творческая) item.oc.ControlUnit.name=Устройство управления (УУ) item.oc.CPU0.name=Центральный процессор (ЦП) (1-ый уровень) item.oc.CPU1.name=Центральный процессор (ЦП) (2-ой уровень) @@ -201,6 +203,8 @@ oc:gui.Chat.WarningRecipes=Произошла ошибка при загрузк oc:gui.Chat.WarningSimpleComponent=Некоторый мод §eневерно§f использует интрефейс §aSimpleComponent§f. Логика компонента не смогла быть внедрена. Проверьте логи, чобы узнать подробнее. oc:gui.Drive.Managed=Файловый режим oc:gui.Drive.Unmanaged=Блочный режим +oc:gui.Drive.ReadOnlyLock=Блокировка +oc:gui.Drive.ReadOnlyLockWarning=Блокировка §lтолько для чтения§r. Не может быть снята, если только носитель не был стёрт. oc:gui.Drive.Warning=§lВнимание§r: переключение режимов очищает диск! oc:gui.Error.ComponentOverflow=Слишком много компонентов подключено к компьютеру. oc:gui.Error.InternalError=Возникла внутренняя ошибка, пожалуйста, посмотрите лог-файл. Возможно, это баг. @@ -263,6 +267,7 @@ oc:tooltip.APU=Это процессор со встроенной видеок oc:tooltip.Assembler=Позволяет собирать роботов и другие устройства из ряда различных частей компьютера. oc:tooltip.Cable=Простой и дешёвый способ соединить компоненты между собой. oc:tooltip.Capacitor=Накапливает энергию для дальнейшего использования. Может быть очень быстро заполнен и опустошён. +oc:tooltip.CarpetedCapacitor=Накапливает энергию для последующего использования. Может быть заполнен и опорожнен очень быстро. Заряжается, когда по нём гуляют овцы или оцелоты oc:tooltip.CardBase=Как видно из названия, это основа для всех карт расширения. oc:tooltip.Case=Системный блок - основа компьютера, содержащий §fкарты расширения§7, §fОЗУ§7 и §fжёсткие диски§7.[nl] Слотов: §f%s§7 oc:tooltip.Chamelium=Базовый материал для 3D печати. Не глотать: может привести к слепоте и временным отсутствием присутствия. @@ -286,6 +291,7 @@ oc:tooltip.DiskDrive.CC=§aПоддерживаются§7 дискеты из C oc:tooltip.DiskDrive=Позволяет читать и записывать дискеты. Может быть установлен в роботов, что позволит затем вставлять дискеты. oc:tooltip.DiskDriveMountable=Работает так же, как и обычный дисковод, но может быть вставлен только в серверную стойку. oc:tooltip.DiskUsage=Занято %s/%s байт +oc:tooltip.DiskLocked=Блокирован: %s oc:tooltip.DiskModeManaged=Режим: файловый oc:tooltip.DiskModeUnmanaged=Режим: блочный oc:tooltip.Drone=Дроны это легкие и быстрые устройства, но с ограниченным инвентарем. diff --git a/src/main/resources/assets/opencomputers/loot/openos/lib/core/full_text.lua b/src/main/resources/assets/opencomputers/loot/openos/lib/core/full_text.lua index 2f9c33e64..72e55683b 100644 --- a/src/main/resources/assets/opencomputers/loot/openos/lib/core/full_text.lua +++ b/src/main/resources/assets/opencomputers/loot/openos/lib/core/full_text.lua @@ -181,7 +181,7 @@ function text.internal.reader(txt, mode) }, {__index=text.internal.stream_base((mode or ""):match("b"))}) process.closeOnExit(reader) - return require("buffer").new("r", reader) + return require("buffer").new((mode or "r"):match("[rb]+"), reader) end function text.internal.writer(ostream, mode, append_txt) @@ -223,7 +223,7 @@ function text.internal.writer(ostream, mode, append_txt) }, {__index=text.internal.stream_base((mode or ""):match("b"))}) process.closeOnExit(writer) - return require("buffer").new("w", writer) + return require("buffer").new((mode or "w"):match("[awb]+"), writer) end function text.detab(value, tabWidth) diff --git a/src/main/resources/assets/opencomputers/loot/openos/lib/io.lua b/src/main/resources/assets/opencomputers/loot/openos/lib/io.lua index 1a6f25ce7..b6ff97116 100644 --- a/src/main/resources/assets/opencomputers/loot/openos/lib/io.lua +++ b/src/main/resources/assets/opencomputers/loot/openos/lib/io.lua @@ -47,17 +47,12 @@ end function io.stream(fd,file,mode) checkArg(1,fd,'number') + checkArg(2, file, "table", "string", "nil") assert(fd>=0,'fd must be >= 0. 0 is input, 1 is stdout, 2 is stderr') local dio = require("process").info().data.io if file then if type(file) == "string" then - local result, reason = io.open(file, mode) - if not result then - error(reason, 2) - end - file = result - elseif not io.type(file) then - error("bad argument #1 (string or file expected, got " .. type(file) .. ")", 2) + file = assert(io.open(file, mode)) end dio[fd] = file end diff --git a/src/main/resources/assets/opencomputers/lua/machine.lua b/src/main/resources/assets/opencomputers/lua/machine.lua index f0e137b04..1177f5f71 100644 --- a/src/main/resources/assets/opencomputers/lua/machine.lua +++ b/src/main/resources/assets/opencomputers/lua/machine.lua @@ -54,7 +54,7 @@ local function checkDeadline() end local function pcallTimeoutCheck(...) local ok, timeout = ... - if timeout == tooLongWithoutYielding then + if rawequal(timeout, tooLongWithoutYielding) then return ok, tostring(tooLongWithoutYielding) end return ...