C#如何写下类构造函数的参数';s方法,您正在另一个类中使用该方法

本文关键字:方法 另一个 构造函数 何写下 参数 | 更新日期: 2023-09-27 18:25:48

因此,我尝试在类Health中的类Level中使用一个bool方法UpHealth。但是,Level类的构造函数具有参数levelIndex。我不知道在Health类的新Level之后在参数点上写什么。这是等级等级:

partial class Level : GameObjectList
{
protected bool upHealth;
public Level(int levelIndex)
{
    //Stuff
}
public bool UpHealth()
{
    upHealth = false;
    SpriteGameObject healthpack = this.Find("uphealth") as SpriteGameObject;
    Player player = this.Find("player") as Player;
    if (healthpack.CollidesWith(player))
        return true;
    return false;
}

这是健康等级:

class Health : GameObjectList
{
Level level;
public Health(int layer = 3, string id = "") : base(layer, id) 
{
    //Stuff
    level = new Level( <--WHAT DO I WRITE HERE?--> );
}
public override void Update(GameTime gameTime)
{
    base.Update(gameTime);
    Player player = GameWorld.Find("player") as Player;
    AnimatedGameObject rocket = GameWorld.Find("rocket") as AnimatedGameObject;
    foreach (GameObject obj in gameObjects)
    {
        SpriteGameObject h = obj as SpriteGameObject;
        if (level.UpHealth())
        {
            this.Add(h);
            return;
        }
    }
}

这可能是一个简单的解决方案,但我不知道该怎么办。

C#如何写下类构造函数的参数';s方法,您正在另一个类中使用该方法

新级别(<--我在这里写什么?-->)

好吧,看看构造函数:

public Level(int levelIndex)

你在那里写一个int。任何整数值都会满足编译器的要求,并允许代码执行。简单如:

new Level(0)

或整数变量,例如:

new Level(layer)

至于应该使用什么概念值,这真的取决于你。我们没有设计你的应用程序,所以我们不能真正说明你应该如何初始化你的对象。但在严格的技术层面上,如果您的构造函数期望一个整数,那么您会给它一个整数。