2012-09-19 49 views
0

上學期我們不得不開發遊戲LudoJavaScriptHTML/CSS。這很容易。現在我們必須開發一個後端,用GWT (Java)來創建一個多人遊戲。可悲的是,我們還沒有獲得關於如何使用GWT進行開發的很多信息,並且開始時的練習相當困難。發送服務器信息給客戶端

目前我正在嘗試創建一種不同的玩家可以加入的大堂。 我的想法是使用一些輸入字段,玩家可以輸入他的名字並加入大廳。但我不知道如何向其他客戶提供新玩家加入的信息。

我創建了一個asynchronous interfaces(RPC),玩家可以將他的名字提交給服務器(例如this示例)。這工作正常。但我應該如何分享這些信息?我們的講解員說我們應該使用JSON來分享信息,但是我不知道在這種情況下這應該如何。 有沒有辦法將信息發送給客戶?我讀了很多,只是發現使用額外的庫作爲gwt-comet。

我現在真的知道我怎麼可以繼續。我很感謝每一個幫助和信息!

Greetz

+1

彗星明確地是你需要的,看看這裏:http://stackoverflow.com/questions/11206985/communication-client-server-client。 –

回答

1

你有兩種選擇:推和拉。

「拉」選項:

其他玩家獲得所需的信息時,他們加入了遊說和/或做其他事。您也可以安排定期提取這些信息(如每10分鐘一次)。您可以使用相同的RPC機制從服務器獲取數據到客戶端。 「拉」表示客戶端發起請求,服務器迴應該信息。

「推送」選項:

當有新的玩家加入,服務器推送這個新的數據到所有其他玩家。最好的解決方案取決於你的遊戲實現。正如Jean-Michel所說,彗星是一個不錯的選擇,但從資源的角度來看,彗星更加複雜和「昂貴」。如果您需要遊戲的實時狀態更新,則應該使用此選項。

0

我建議ErraiErraiBus特別是。從Java的角度來看,你只是通過事件總線發送一些事件(觀察者GoF模式)和所有的魔術與阿賈克斯推正在幕後發生。

相關問題