簡體   English   中英

在Silverlight中動態加載設置

[英]Dynamically Loading Settings In Silverlight

我有一個正在使用Silverlight編寫的簡單游戲。 我想做的是允許更改游戲外觀(所使用的圖像,播放的聲音以及游戲中對象的位置),而無需修改或重新編譯任何Silverlight代碼。

我嘗試采用的方法是將“ ID”傳遞給Silverlight對象。 該ID將注入所有資源的URL中。

http://myServer.com/MyGame/1/Images/1.png

如果制作另一個HTML頁面並傳遞2的GameID,我將獲得完全不同的圖像和聲音集。 該零件似乎工作正常(即使被誤導了)。

但是我也有一些配置項目,例如某些東西在屏幕上的位置以及一些影響游戲玩法的規則。 我想將其放入XML文件中,然后讓游戲使用與“圖像和聲音”相同的方法加載文件-但我似乎無法使其正常工作。 我還沒有找到同步下載文件的任何方法。

我有一些想法-制作自己的“加載屏幕”以異步方式下載文件,讀取文件/設置游戲並開始游戲。 但是我感覺到自己可能正在重新發明輪子或做一些愚蠢的事情。

有沒有更好的方法可以做到這一點?

在某種程度上,您會重新發明輪子,但是您要重新發明的輪子並不是特別復雜。 如果要創建業務應用程序,則可能會在Silverlight工具箱中使用BusyIndicator控件。 此控件允許在運行大量后台活動時顯示一些“正在加載...” UI。

您可以以此為起點,但是您可能希望替換其默認樣式,特別是替換樣式中的默認模板,以呈現與游戲圖形保持一致的UI。

但是,僅包含用於此功能的工具包可能不是一個好的折衷方案。 創建了自己的模板后,很容易重新創建位於模板后面的非常簡單的控件。 因此,是的,您將重新創建輪子,但是無論如何,大部分工作將集中在游戲特有的圖形中,而其余的部分可能是值得的,因為不必在項目中包含工具包dll。

只要用戶知道“事情”正在進展/繼續他們會很高興的,我認為加載屏幕是完全可以接受的,尤其是在游戲社區,幾乎每個游戲都要求您等待地圖等加載時

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM