Package server.events
package server.events
伺服器排程的迷你遊戲活動子系統:障礙競走、向上攀升、選邊站、OX 問答、滾雪球等。
抽象基底 MapleEvent 定義活動的共通骨架——玩家計數、入場關閉與倒數開場
(scheduleEvent/setEvent/startEvent)、地圖封包廣播,以及
共用的隨機獎勵發放 givePrize(呼叫 RandomRewards 與
MapleInventoryManipulator)。各具體活動類別繼承之並覆寫
startEvent/finished/onMapLoad:MapleCoconut(椰子)、
MapleOla 與 MapleFitness(攀爬計時)、MapleOxQuiz(OX 問答)、
MapleSurvival(生存)、MapleSnowball(滾雪球)。
MapleEventType 是活動種類列舉,每筆綁定其所屬地圖 ID 陣列;
MapleOxQuizFactory 為單例,於啟動時自資料庫載入 OX 問答題庫並快取。活動實例由
ChannelServer 持有並以每頻道為單位排程,跨頻道廣播透過
World,倒數計時則使用 server.Timer 排程器家族。
-
ClassDescription椰子大戰(Coconut Event)小遊戲的事件邏輯,繼承自
MapleEvent。頻道內小遊戲事件(Mini-game Event)的抽象基底類別。伺服器內建小遊戲事件的列舉型別,每個值對應一組活動地圖 ID。楓之谷體能測驗(Maple Physical Fitness Test)小遊戲事件,繼承自MapleEvent。向上攀升(Ola Ola / Obstacle Jump)小遊戲事件,繼承自MapleSurvival。OX 問答(Ox Quiz)小遊戲事件,繼承自MapleEvent。OX 問答題庫的工廠與快取,負責從資料庫載入全部題目並提供隨機抽題。滾雪球(Snowball Event)小遊戲事件,繼承自MapleEvent。生存挑戰(Survival / Ola Ola)小遊戲事件的基底實作,繼承自MapleEvent。