制作回合制RPG游戏,一些关于结构的问题.操作脚本 3.



这里的第一个问题:)("AS3"(

首先,如何访问另一个类的变量?
你看,我的"数据库"目前在单个类中,当我调用"scene_battle"时,我需要访问它。编写此代码的最佳方法是什么?我想正确获取类的变量,而不是实例变量,因为我甚至不需要这个类的实例,因为它只是一个数据库。

其次,关于我的游戏的OOP结构的一个更普遍的问题。目前,它是这样的:

scene_battle打电话给playerenemy。玩家和敌人从我的数据库中获取数据。基本上,我只是重复我的玩家类的一个实例,它将有一个基于游戏派对的 ID。

如果你能给我一些关于代码的一般或有用的提示,比如封装一些东西,我将不胜感激。提前谢谢你。

首先,如何访问另一个类的变量?

-如果你想有一个通用类作为值的引用器,你可以使用类的实例或静态类,两者都一样好。

我想正确获取类的变量,而不是 实例变量,因为我甚至不需要这个类的实例, 因为它只是一个数据库。

-如果您像在C++中那样引用获取指针,则无需担心,除非您使用 new 关键字,否则所有与另一个对象均衡的对象都将是指针。

scene_battle召唤玩家和敌人。玩家和敌人从我的 数据库。基本上,我只是重复我的播放器类的一个实例,并且 它将具有基于游戏派对的 ID。

-我以前已经实现过回合制游戏玩法,这是我的做法,请记住,它显然不是最好的实现。

BattleManager
    Members:
    -BattleScenario (this contains all the meta data for your battle scenario, teams, map location, any modifiers that are related to a battle)
    -Teams (this is a list of Team classes wich have players)
    -TeamSequence(this is a list of team wich will be populated from Teams and will control the flow of the battle)
    Functions:
    -StartBattle
    -EndBattle
    -GiveTeamTurn (this function gets the TeamSequence and calls ActTurn on the Class Team and removes the team from the TeamSequence list)
    -RepopulateTeamSequence(when the TeamSequence is empty this is called to repopulate the TeamSequence)
Team
    Members:
    -Players (this is a list of players)
    Functions:
    -ActTurn (this function calls a player that is still able to act during the turn, and tells him to act, this is where you prompt the user for actions or use your AI)

这只是大行,他们的很多东西没有在这里显示,你必须实现。还要注意的是,很多回调会被触发,例如,当玩家完成表演并回电到其团队时,会回电说这个回合已经完成,该团队应该为团队的另一个成员调用 ActTurn 直到完成,团队也是如此,一旦团队的每个玩家都完成这个回合,就会触发对战斗经理的回调。

希望这有帮助,GL !

相关内容

  • 没有找到相关文章

最新更新