0

DOTA、LoL、その他の MOBA / MMORPG ゲームの能力について少し考えてみました。最初にキャラクター選択でゲームを作るとしたら、ゲーム内に呪文/能力などがあります..

これを行う正しい方法は何ですか?すべての値とテクスチャを使用して 1 つの Champion クラスを作成するか、Game1.cs のように初期化する必要がありますが、それには大量Champion champ = new Champion(texture, name, Q-ability name, Q-cooldown, Q-damage, Q-manacost)の異なる宣言が必要です...

Champion フォルダーを作成し、それらすべての別のクラスを作成する必要がありますか? また、能力-それらを保持するために列挙型を作成することを考えていますか、それともリストまたは別の変数の方がうまく機能しますか? ありがとう!

4

2 に答える 2

3

このようなゲームでは、エンティティ システム ( http://entity-systems.wikidot.com/ ) の使用をお勧めします。これらにより、個別の呪文、能力、プレーヤー、キャラクターなどのクラスを作成し、それらを高度に構成可能なエンティティに構成することができます。人気のある Ash エンティティ フレームワークを C# に移植しました。C# はhttps://github.com/DavidArno/Ash.NETで入手できます。

于 2013-10-28T11:44:17.643 に答える
0

David Arno が提案したエンティティ システムのほかに、これをやりたい場合は、単一のHeroクラスを使用し、その中にアビリティのリストを使用します。能力は皆同じで、違うのはその要因です。たとえば、能力がどれだけのダメージを与えることができるかなどです。このようにして、すべてのチャンピオンとその能力をインスタンス化する必要があります。

于 2013-10-28T12:21:12.687 に答える