iT邦幫忙

2021 iThome 鐵人賽

DAY 19
0
Software Development

在麥塊的農場裡寫 Lua系列 第 19

Day19 將電腦接上數據機和網路線

  • 分享至 

  • xImage
  •  

到目前為止,我試玩過 CC: Tweaked Disk Drive、Speaker、Printer、Monitor 等電腦週邊
而他們都有一樣的限制:只能接在電腦前後左右上下六個方位
而實際上我至少要保留一個方位來操作電腦,所以只能最多安裝五個周邊
但這些週邊設備跟電腦全擠在一起,實在很難看 .....
今天就來試試新的道具:Wired ModemNetworking Cable

如圖,把需要連線的設備,包括電腦本身,都裝上數據機和網路線
接著對電腦和設備雙方的數據機按滑鼠右鍵「使用」
會看到數據機出現紅色邊框,並播放一段語音,說明連線或斷線的設備,例如
「Peripheral "drive_0" connected to network」
「Peripheral "speaker_1" disconnected from network」
當電腦方與設備方的數據機都出現紅色框,並且用網路線連接後,這些網路設備就準備就緒了!
CC: Tweaked Wired Modem and Network Cable

如果你在麥塊事業有點大
你甚至可以搞個磁碟陣列,多個印表機 XD
不過同時寫入多個磁碟,這看來得自己寫 Code 處理了
CC: Tweaked Wired Modem and Network Cable

或是設計個多聲道環繞音響,前後左右都接 Speaker
CC: Tweaked 磁碟陣列、雙螢幕、多聲道

外接完所有設備後,再回去電腦上打指令

peripherals

就會列出類似這樣的畫面
不過這時候我已經搞不清楚誰是誰了,那些編號是全自動的
我沒找到方法可以自定義設備名稱,這點美中不足
CC: Tweaked Programs Peripherals

以往週邊設備直接放在電腦旁邊,就是這樣取得

peripheral.wrap('left')     -- right, top, bottom, front, back

用網路線接起來的設備,則要看它被命名的編號,例如

peripherals.wrap('printer_2')
peripherals.wrap('drive_1')

也可以用 peripheral.find 一次取得所有同類的設備
例如取得所有音響,並讓他們同時,或些微時間差播放不同樂器的聲音

beeMusic = { 4, 2, 2, -1, 3, 1, 1, -1, 0, 1, 2, 3, 4, 4, 4, -1 }    -- 小蜜蜂
volumn = 1.0        -- 音量大小
speakers = {}

peripheral.find('speaker', function(name, obj)
    table.insert(speakers, obj)
end)

for _, v in ipairs(beeMusic) do
    if (v >= 0) then
        speakers[1].playNote('harp', volumn, v)
        sleep(0.05)
        speakers[2].playNote('harp', volumn, v)
        sleep(0.05)
        speakers[3].playNote('bell', volumn, v)
        sleep(0.05)
        speakers[4].playNote('guitar', volumn, v)
        sleep(0.35)
    else
        sleep(0.5)
    end
end

最後,還是不忘了來個三螢幕XD
CC: Tweaked Multi Monitors

那數據機的功能就這樣了嗎?當然不是
名為數據機,當然還要有更強大一點的網路功能
下一回繼續~


上一篇
Day18 將電腦接上印表機,將程式碼或文章包裝成書吧
下一篇
Day20 讓電腦透過數據機和有線、無線網路傳遞訊息
系列文
在麥塊的農場裡寫 Lua30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言