mirror of
https://github.com/MightyPirates/OpenComputers.git
synced 2025-09-24 04:50:30 -04:00
Merge branch 'master' of https://github.com/MightyPirates/OpenComputers into MC1.7
This commit is contained in:
commit
5d8c3cc251
171
src/main/resources/assets/opencomputers/lang/zh_TW.lang
Normal file
171
src/main/resources/assets/opencomputers/lang/zh_TW.lang
Normal file
@ -0,0 +1,171 @@
|
||||
# OpenComputer
|
||||
# This is the Traditional Chinese file for localizations.
|
||||
# Use [simplified Chinese] to for a line break.
|
||||
|
||||
# Blocks
|
||||
oc:tile.Adapter.name=連接器
|
||||
oc:tile.Cable.name=線纜
|
||||
oc:tile.Capacitor.name=電容
|
||||
oc:tile.Case0.name=基礎電腦機殼
|
||||
oc:tile.Case1.name=高級電腦機殼
|
||||
oc:tile.Case2.name=超級電腦機殼
|
||||
oc:tile.Charger.name=充電器
|
||||
oc:tile.DiskDrive.name=硬碟驅動器
|
||||
oc:tile.Keyboard.name=鍵盤
|
||||
oc:tile.PowerConverter.name=能量轉換器
|
||||
oc:tile.PowerDistributor.name=能量分配器
|
||||
oc:tile.Redstone.name=紅石I/O
|
||||
oc:tile.Robot.name=機器人
|
||||
oc:tile.RobotAfterimage.name=機器人
|
||||
oc:tile.Router.name=路由器
|
||||
oc:tile.Screen0.name=黑白電腦顯示器
|
||||
oc:tile.Screen1.name=彩色電腦顯示器
|
||||
oc:tile.Screen2.name=高畫質電腦顯示器
|
||||
oc:tile.ServerRack.name=伺服器機架
|
||||
|
||||
# Items
|
||||
oc:item.AbstractBusCard.name=抽象的介面卡
|
||||
oc:item.Acid.name=蝕刻藥水
|
||||
oc:item.ALU.name=算邏運算單元(ALU)
|
||||
oc:item.Analyzer.name=分析器
|
||||
oc:item.ArrowKeys.name=方向鍵
|
||||
oc:item.ButtonGroup.name=按鈕組
|
||||
oc:item.CardBase.name=主板
|
||||
oc:item.CircuitBoard.name=電路板
|
||||
oc:item.ControlUnit.name=控制單元(CU)
|
||||
oc:item.CPU0.name=中央處理器 (CPU) (1級)
|
||||
oc:item.CPU1.name=中央處理器 (CPU) (2級)
|
||||
oc:item.CPU2.name=中央處理器 (CPU) (3級)
|
||||
oc:item.CuttingWire.name=切割線
|
||||
oc:item.Disk.name=磁碟片
|
||||
oc:item.FloppyDisk.name=軟碟機
|
||||
oc:item.GraphicsCard0.name=顯示卡
|
||||
oc:item.GraphicsCard1.name=彩色顯示卡
|
||||
oc:item.GraphicsCard2.name=高畫質顯示卡
|
||||
oc:item.HardDiskDrive0.name=硬碟機 (1級)
|
||||
oc:item.HardDiskDrive1.name=硬碟機 (2級)
|
||||
oc:item.HardDiskDrive2.name=硬碟機 (3級)
|
||||
oc:item.InternetCard.name=上網卡
|
||||
oc:item.IronNugget.name=鐵粒
|
||||
oc:item.Memory0.name=記憶卡 (1級)
|
||||
oc:item.Memory1.name=記憶卡 (2級)
|
||||
oc:item.Memory2.name=記憶卡 (2.5級)
|
||||
oc:item.Memory3.name=記憶卡 (3級)
|
||||
oc:item.Memory4.name=記憶卡 (3.5級)
|
||||
oc:item.Microchip0.name=微晶片 (1級)
|
||||
oc:item.Microchip1.name=微晶片 (2級)
|
||||
oc:item.Microchip2.name=微晶片 (3級)
|
||||
oc:item.NetworkCard.name=網路卡
|
||||
oc:item.NumPad.name=數字鍵盤
|
||||
oc:item.PrintedCircuitBoard.name=印刷電路板(PCB)
|
||||
oc:item.RawCircuitBoard.name=電路板材料
|
||||
oc:item.RedstoneCard.name=紅石卡
|
||||
oc:item.Server0.name=伺服器 (1級)
|
||||
oc:item.Server1.name=伺服器 (2級)
|
||||
oc:item.Server2.name=伺服器 (3級)
|
||||
oc:item.Terminal.name=遠端終端機
|
||||
oc:item.Transistor.name=電晶體
|
||||
oc:item.UpgradeCrafting.name=合成升級
|
||||
oc:item.UpgradeGenerator.name=發電機升級
|
||||
oc:item.UpgradeNavigation.name=導航升級
|
||||
oc:item.UpgradeSign.name=告示牌 I/O 升級
|
||||
oc:item.UpgradeSolarGenerator.name=太陽能發電升級
|
||||
oc:item.WirelessNetworkCard.name=無線網卡
|
||||
|
||||
# GUI
|
||||
oc:gui.Analyzer.Address=§6位址§f: %s
|
||||
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.LastError=§6上一個錯誤§f: %s
|
||||
oc:gui.Analyzer.RobotName=§6名字§f: %s
|
||||
oc:gui.Analyzer.RobotOwner=§6持有者§f: %s
|
||||
oc:gui.Analyzer.RobotXp=§6經驗值§f: %s
|
||||
oc:gui.Analyzer.StoredEnergy=§6儲存能量§f: %s
|
||||
oc:gui.Analyzer.TotalEnergy=§6總儲存能量§f: %s
|
||||
oc:gui.Analyzer.Users=§6使用者§f: %s
|
||||
oc:gui.Chat.WarningLuaFallback=本機 LUA 函式庫無法使用,電腦將無法維持狀態,他會重新啟動並且載入區塊
|
||||
oc:gui.Chat.WarningPower=Universal Electricity 3 不存在. 電腦, 螢幕與所有電腦相關機械將會 §l不§f需要能源. 注意 UE3 也可以同時使用 BuildCraft, IndustrialCraft2 與 Thermal Expansion.
|
||||
oc:gui.Chat.WarningProjectRed=你正在使用的 Project: Red 模組與 OpenComputers 不相容. 請嘗試更新 Project: Red.
|
||||
oc:gui.Error.ComponentOverflow=太多的元件連接到電腦上了
|
||||
oc:gui.Error.DaylightCycle=當時間被凍結,電腦將不會工作 (gamerule doDaylightCycle is false).
|
||||
oc:gui.Error.InternalError=內部錯誤,請查看日誌文件。這可能是一個錯誤。
|
||||
oc:gui.Error.NoCPU=電腦內沒有安裝中央處理器(CPU).
|
||||
oc:gui.Error.NoEnergy=沒有能源
|
||||
oc:gui.Error.NoRAM=電腦內沒有安裝記憶卡
|
||||
oc:gui.Error.OutOfMemory=記憶體不足
|
||||
oc:gui.Robot.Power=能量
|
||||
oc:gui.Robot.TurnOff=關閉
|
||||
oc:gui.Robot.TurnOn=開啟
|
||||
oc:gui.ServerRack.None=無
|
||||
oc:gui.ServerRack.Back=背面
|
||||
oc:gui.ServerRack.Bottom=底部
|
||||
oc:gui.ServerRack.Left=左
|
||||
oc:gui.ServerRack.Right=右
|
||||
oc:gui.ServerRack.Top=上
|
||||
oc:gui.ServerRack.WirelessRange=範圍
|
||||
oc:gui.Terminal.InvalidKey=按鍵無效時,最有可能另一端已經綁定到伺服器。
|
||||
oc:gui.Terminal.OutOfRange=沒訊號.
|
||||
|
||||
# Containers
|
||||
oc:container.Case=電腦
|
||||
oc:container.DiskDrive=硬碟
|
||||
oc:container.Rack=伺服器機架
|
||||
oc:container.Server=伺服器
|
||||
|
||||
# Item / Block Tooltips
|
||||
oc:tooltip.AbstractBusCard=允許與 §fStargateTech 2§7 抽象卡傳送與接收 LIP 封包.
|
||||
oc:tooltip.Acid=一種有毒的假液相物質,通常只有某些海盜會使用它們.[nl]它的腐蝕特性令它非常完美地適用于蝕刻電路板的材料.
|
||||
oc:tooltip.Adapter=用于控制非電腦組件的方塊,[nl]比如原版或者來自其他模組的方塊.
|
||||
oc:tooltip.ALU=用來做算邏運算以免你親自代勞,[nl]它更勝任這份差事.
|
||||
oc:tooltip.Analyzer=用于顯示方塊信息,比如它們的§f地址§7和§f組件名稱§7.[nl]如果計算機未能正常關閉它也會顯示使得計算機崩潰的報錯.
|
||||
oc:tooltip.Cable=連接方塊的廉價選擇.
|
||||
oc:tooltip.Capacitor=儲能以備他用.[nl]能夠非常快速地充電放電.
|
||||
oc:tooltip.CardBase=正如其名,它是用來安裝其他擴展卡的基本卡板.
|
||||
oc:tooltip.Case=計算機電腦機殼是構建計算機的基本方塊,[nl]也是各種§f介面卡§7,§f記憶體§7以及§f硬碟§7的外殼.[nl] 格子: §f%s§7.
|
||||
oc:tooltip.Charger=將電容器的能量傳輸給相鄰機器人.[nl]傳輸效率取決于輸入的§f紅石信號§7強度,無信號意味著不給機器人充電,而最強信號則意味著全速給機器人充電.
|
||||
oc:tooltip.CircuitBoard=現在我們已經取得一些進展.[nl]可以通過蝕刻來得到印制板.
|
||||
oc:tooltip.ControlUnit=用來控制...控制東西...的單元.[nl]你需要這玩意兒來做CPU.所以反正啦,這個非常重要.
|
||||
oc:tooltip.CPU=所有計算機最核心的組件,它的時鐘頻率有點不可靠,[nl]但是你考慮到它是靠便攜日晷來運行的你還能指望啥呢?
|
||||
oc:tooltip.CuttingWire=用于將粘土塊切割成電路板的形狀.[nl]使用一次就會壞掉,這可能使得成為歷來最低效的工具.
|
||||
oc:tooltip.Disk=用于制造持久存儲設備的原始媒介材料.
|
||||
oc:tooltip.DiskDrive.CC=已經§a支持§7使用另一個電腦模組(ComputerCraft)的軟碟.
|
||||
oc:tooltip.DiskDrive=用來讀寫軟碟.
|
||||
oc:tooltip.GraphicsCard=用來改變顯示器顯示內容.[nl]最高分辨率:§f%sx%s§7.[nl] 最大色深: §f%s§7.
|
||||
oc:tooltip.InternetCard=這個介面卡允許你發出 HTTP要求到真實的 TCP sockets.
|
||||
oc:tooltip.IronNugget=顆粒狀的鐵,所以叫鐵粒啦,蠢蠢的感覺...
|
||||
oc:tooltip.Keyboard=可以連接顯示器,能夠輸入顯示文本.
|
||||
oc:tooltip.Memory=電腦運行必備.[nl]記憶體越大,你就可以運行越復雜的程序.
|
||||
oc:tooltip.Microchip=通常也管這種芯片叫集成電路.[nl]我也不知道為啥能和紅石一起運行,但事實如此啊.
|
||||
oc:tooltip.NetworkCard=允許通過其他方塊(比如線纜)相連的遠程計算機能夠向彼此發送信息進行交互.
|
||||
oc:tooltip.PowerConverter.BC=§f建筑模組minecraft焦耳(BC-MJ)§7: §a%s:%s§7.
|
||||
oc:tooltip.PowerConverter.IC2=§f工業時代EU(IC²-EU)§7: §a%s:%s§7.
|
||||
oc:tooltip.PowerConverter.TE=§f熱能擴展RF(TE-RF)§7: §a%s:%s§7.
|
||||
oc:tooltip.PowerConverter.UE=§f通用電力焦耳(UE-Joules§7): §a%s:%s§7.
|
||||
oc:tooltip.PowerConverter=將其他模組的能量轉化為本模組的內部能源形式.轉換率:
|
||||
oc:tooltip.PowerDistributor=在不同網絡中分配能量.[nl]用來通過包含多個理論上獨立的子網絡的轉換器在系統中共享能量時很實用.
|
||||
oc:tooltip.PrintedCircuitBoard=擴展卡,記憶體等的基板.
|
||||
oc:tooltip.RawCircuitBoard=能夠在熔爐或者類似爐子中加工強化成其他材料.
|
||||
oc:tooltip.Redstone=能夠在方塊周圍接收以及發送紅石信號.[nl]可以被與之相連的計算機控制.基本上就像一個外置紅石卡.
|
||||
oc:tooltip.RedstoneCard.RedLogic=已經§a支持§7§f紅石邏輯(RedLogic)§7中的紅石系統.
|
||||
oc:tooltip.RedstoneCard.RedNet=已經§a支持§7MFR中的§f紅石網絡(RedNet)§7.
|
||||
oc:tooltip.RedstoneCard=能夠在計算機和機器人四周接收以及發送紅石信號.
|
||||
oc:tooltip.Robot=和計算機不同,機器人能夠移動并且像玩家那些與世界之中的東西交互.[nl]然而,它們§o不能§r§7直接與外設進行交互!
|
||||
# The underscore makes sure this isn't hidden with the rest of the tooltip.
|
||||
oc:tooltip.Robot_Level=§f等級§7: §a%s§7.
|
||||
oc:tooltip.Robot_StoredEnergy=§f儲能§7: §a%s§7.
|
||||
oc:tooltip.Router=允許設備相互連接不同的網絡.[nl]僅能傳遞網絡信息,通過路由器方式設備并不互相可見.[nl]例如可以通過這種方式來建立獨立網絡但仍允許其使用網卡通訊.
|
||||
oc:tooltip.Screen=由電腦機殼內的顯示卡控制來顯示文字.[nl]最高分辨率:§f%sx%s§7.[nl] 最大色深: §f%s§7.
|
||||
oc:tooltip.Server=這是一台伺服器, 他非常棒, 但是他可以使用元件去升級他功能就像電腦一樣. 他可以插入伺服器機架上執行.[nl] 支援終端機數量: §f%s§7.
|
||||
oc:tooltip.Server.Components=安裝的元件:
|
||||
oc:tooltip.ServerRack=提供安裝最多達四個伺服器。為每個伺服器提供了一個內置的虛擬鍵盤和螢幕元件,相當於一個遠程終端。
|
||||
oc:tooltip.Terminal=允許遠程控制伺服器,只要你在它的範圍內。就像一個隨身型螢幕和鍵盤。按住Shift鍵並滑鼠右鍵單擊某個服務器的服務器機架終端綁定它。
|
||||
oc:tooltip.TooLong=按住潛行鍵(shift)以查看詳細提示信息.
|
||||
oc:tooltip.Transistor=在多數其他計算機的零件中都很基礎的元件.[nl]引腳有點彎了,但還能用.
|
||||
oc:tooltip.UpgradeCrafting=使得機器人能夠將其物品欄的左上區域作為合成網格來制做物品.[nl]物品欄內物品擺放必須與工作臺中一致.
|
||||
oc:tooltip.UpgradeGenerator=用來不斷地消耗燃料發電,燃燒物品并基于它們的燃燒值隨著時間推移產生電力.[nl] §f效率§7: §a%s%%§7.
|
||||
oc:tooltip.UpgradeNavigation=可以用來確定機器人的位置和方向。該位置是相對於被用來製作這個升級地圖的中心。
|
||||
oc:tooltip.UpgradeSign=允許讀取文字與寫入文字到告示牌
|
||||
oc:tooltip.UpgradeSolarGenerator=在移動中可以從陽光獲取能量. 機器人上方必須保持無遮蔽狀態才能. 產生能量 %s%% 速度的能量給引擎.
|
||||
oc:tooltip.WirelessNetworkCard=允許在發送正常信息外無線發送網絡信息.[nl]請確保已設置好§f信號強度§7否則不會發出無線數據包.
|
@ -27,6 +27,10 @@
|
||||
"zh_CN":{
|
||||
"name": "简体中文",
|
||||
"region": "中国"
|
||||
},
|
||||
"zh_TW": {
|
||||
"region": "台灣",
|
||||
"name": "繁體中文"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -1,16 +1,20 @@
|
||||
package li.cil.oc.util
|
||||
|
||||
import li.cil.oc.Settings
|
||||
import net.minecraft.client.Minecraft
|
||||
import net.minecraft.util.StatCollector
|
||||
import org.lwjgl.input.Keyboard
|
||||
import scala.collection.convert.WrapAsJava._
|
||||
import scala.collection.mutable
|
||||
|
||||
object Tooltip {
|
||||
val maxWidth = 200
|
||||
|
||||
def get(name: String, args: Any*): java.util.List[String] = {
|
||||
val tooltip = StatCollector.translateToLocal(Settings.namespace + "tooltip." + name).format(args.map(_.toString): _*)
|
||||
val isSubTooltip = name.contains(".")
|
||||
val shouldShorten = (isSubTooltip || tooltip.length > 50) &&
|
||||
val font = Minecraft.getMinecraft.fontRenderer
|
||||
val shouldShorten = (isSubTooltip || font.getStringWidth(tooltip) > maxWidth) &&
|
||||
!Keyboard.isKeyDown(Keyboard.KEY_LSHIFT) &&
|
||||
!Keyboard.isKeyDown(Keyboard.KEY_RSHIFT)
|
||||
if (shouldShorten) {
|
||||
@ -22,23 +26,39 @@ object Tooltip {
|
||||
val lines = mutable.ArrayBuffer.empty[String]
|
||||
tooltip.split(nl).foreach(line => {
|
||||
val formatted = line.trim.stripLineEnd
|
||||
var position = 0
|
||||
var start = 0
|
||||
var end = 0
|
||||
var count = 0
|
||||
var formats = 0
|
||||
for (c <- formatted.trim) {
|
||||
var lineEnd = 0
|
||||
var width = 0
|
||||
var lineWidth = 0
|
||||
val iterator = formatted.iterator
|
||||
while (iterator.hasNext) {
|
||||
val c = iterator.next()
|
||||
if (c == '§') {
|
||||
formats += 1
|
||||
iterator.next()
|
||||
}
|
||||
else if (c == ' ') {
|
||||
end = count
|
||||
}
|
||||
count += 1
|
||||
if (count - formats > 45 && end > 0) {
|
||||
lines += formatted.substring(start, start + end)
|
||||
count -= end + 1
|
||||
start += end + 1
|
||||
end = 0
|
||||
else {
|
||||
if (c == ' ') {
|
||||
lineEnd = position
|
||||
lineWidth = width
|
||||
}
|
||||
else {
|
||||
width += font.getCharWidth(c)
|
||||
}
|
||||
position += 1
|
||||
if (width > maxWidth) {
|
||||
if (lineEnd > start) {
|
||||
lines += formatted.substring(start, lineEnd)
|
||||
start = lineEnd + 1
|
||||
width -= lineWidth
|
||||
lineWidth = 0
|
||||
}
|
||||
else {
|
||||
lines += formatted.substring(start, position)
|
||||
start = position
|
||||
width = 0
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
if (start < formatted.length) {
|
||||
|
Loading…
x
Reference in New Issue
Block a user