[閒聊] 多節電車的實作方式

看板mud_sanc (Sanctuary - 聖殿)作者 (揮淚斬馬雲)時間9年前 (2016/09/19 13:59), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串1/1
概念就是,一列電車可能有 n 節車廂,因此當它停靠在月台邊時, 乘客可從每一個車廂的進出口上下車。 那麼,該如何透過現行 times_check.c 及 boat.c 設計來實作呢? 很簡單,首先弄出 n 個 boat,每 1 個 boat 代表一節車廂,然後 設定相同的運作周期,這樣就會一起關門→啟動→停靠→開門→循環 。然後,再於每一艘 boat 設定相連通的出口即可。 撰寫一個車廂繼承樣本,再讓每一個車廂繼承即可。 它的最大優點,就是每一個車廂及每一個停靠月台,都可以聽到廣播 ,而且車廂易於增加及縮減,並做出各種設定。 缺點就是,times_check 在同一時間得驅動 n 個車廂。 那另一個做法就是「只驅動火車頭」的部份,然後想辦法讓它模擬出 n 個車廂也一起驅動的效果,例如設定廣播的範圍到全體車廂,停靠 時亦模擬有多個進出口可進入各自的車廂等,這個較難,一般比較適 合像是郵輪火艦艇這一類的大型船隻(由多個房間組成),因為通常上 下船的地方只有一個。 所以電車我會傾向採用前者的做法。依目前的 times_check 設計來說 ,大概十幾個都還在可接受的範圍。 LAechan -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 61.224.61.240 ※ 文章網址: https://www.ptt.cc/bbs/mud_sanc/M.1474264772.A.CB2.html
文章代碼(AID): #1Nttx4oo (mud_sanc)
文章代碼(AID): #1Nttx4oo (mud_sanc)