オンボード ゲーム スタイルのモバイル RPG を設計していますが、オブジェクトの構造について質問があります。これは概念的なものなので、好きな言語で回答してください。ただし、私は主に Javascript/JQuery/PHP でプログラミングしています。
次のことを前提としています。
- The mobile application has a Game() class
- The Game() has one Player() and one Dungeon()
- The Dungeon() has many DungeonRooms()
- A DungeonRoom() has many DungeonCards()
- A DungeonCard() has many DungeonCardActions() *1
- A DungeonCardAction() has an onClick() event
- An onClick() event can be designed to harm the Player()'s health. // e.g. "Put hand in Fire"
[1] 注: カードをタップすると、カード固有のアクションが表示されます
私の質問は、プレーヤーの健康を害する合理的な方法は何ですか? 私はそうではないと確信しています:
function onClick()
{
parent.parent.parent.parent.player.health -= 10;
}
これは、厳密なオブジェクト階層があり、深さのシーケンスが変更されていないことを前提としています。
Game() オブジェクトは常に参照によってすべての新しいオブジェクトのコンストラクターに渡されるので、どのオブジェクトでも他のオブジェクトのユニバース全体を閲覧するためのフル アクセスを持っているのでしょうか?