Ios Obj-C创造战斗场景?

Ios Obj-C创造战斗场景?,ios,objective-c,Ios,Objective C,这对我来说已经是一个问题将近一周了,所以我想我应该把它贴在这里寻求帮助。我还在学习Obj-C,所以请容忍我。我会发布我的代码,然后解释我想做什么: - (void) resetStats { self.heroHpLabel.text = [NSString stringWithFormat:@"0"]; self.heroAtkLabel.text = [NSString stringWithFormat:@"0"]; self.heroDefLabel.text = [NSString st

这对我来说已经是一个问题将近一周了,所以我想我应该把它贴在这里寻求帮助。我还在学习Obj-C,所以请容忍我。我会发布我的代码,然后解释我想做什么:

- (void) resetStats {
self.heroHpLabel.text = [NSString stringWithFormat:@"0"];
self.heroAtkLabel.text = [NSString stringWithFormat:@"0"];
self.heroDefLabel.text = [NSString stringWithFormat:@"0"];
self.heroSpdLabel.text = [NSString stringWithFormat:@"0"];
self.enemyHpLabel.text = [NSString stringWithFormat:@"0"];
self.enemyAtkLabel.text = [NSString stringWithFormat:@"0"];
self.enemyDefLabel.text = [NSString stringWithFormat:@"0"];
self.enemySpdLabel.text = [NSString stringWithFormat:@"0"];
}

- (void) setHeroStats {
self.heroHpLabel.text = [NSString stringWithFormat:@"%i", heroHp];
self.heroAtkLabel.text = [NSString stringWithFormat:@"%i", heroAtk];
self.heroDefLabel.text = [NSString stringWithFormat:@"%i", heroDef];
self.heroSpdLabel.text = [NSString stringWithFormat:@"%i", heroSpd];
}

- (void) enemy1 {
enemyHp = 100;
enemyAtk = 1;
enemyDef = 0;
enemySpd = 5;
int enemy1Hp;
enemy1Hp = enemyHp;
self.enemyHpLabel.text = [NSString stringWithFormat:@"%i", enemyHp];
self.enemyAtkLabel.text = [NSString stringWithFormat:@"%i", enemyAtk];
self.enemyDefLabel.text = [NSString stringWithFormat:@"%i", enemyDef];
self.enemySpdLabel.text = [NSString stringWithFormat:@"%i", enemySpd];
enemy1Alive = YES;
if (enemyHp <= 0) {
    NSLog(@"the enemy is dead");
    [self resetStats];
}
}


- (IBAction)fight:(id)sender {
if (battleActive == NO) {
    self.fightOutlet.hidden = YES;
    [self setHeroStats];
    [self enemy1];
    battleActive = YES;
    if (heroHp <= 0) {
        battleActive = NO;
        self.fightOutlet.hidden = NO;
        [self resetStats];
    }
} else if (battleActive == YES)
    useless = 0;

}
-(无效)重置统计信息{
self.heroHpLabel.text=[NSString stringWithFormat:@“0”];
self.heroAtkLabel.text=[NSString stringWithFormat:@“0”];
self.heroDefLabel.text=[NSString stringWithFormat:@“0”];
self.herosdplabel.text=[NSString stringWithFormat:@“0”];
self.enemyHpLabel.text=[NSString stringWithFormat:@“0”];
self.enemyAtkLabel.text=[NSString stringWithFormat:@“0”];
self.enemyDefLabel.text=[NSString stringWithFormat:@“0”];
self.enemyspdlab.text=[NSString stringWithFormat:@“0”];
}
-(void)setHeroStats{
self.heroHpLabel.text=[NSString stringWithFormat:@“%i”,heroHp];
self.heroAtkLabel.text=[NSString stringWithFormat:@“%i”,heroAtk];
self.heroDefLabel.text=[NSString stringWithFormat:@“%i”,heroDef];
self.herosdplabel.text=[NSString stringWithFormat:@“%i”,herosdp];
}
-(无效)灌肠1{
enemyHp=100;
enemyAtk=1;
enemyDef=0;
Enemmyspd=5;
int灌肠1hp;
enemy1Hp=enemyHp;
self.enemyHpLabel.text=[NSString stringWithFormat:@“%i”,enemyHp];
self.enemyAtkLabel.text=[NSString stringWithFormat:@“%i”,enemyAtk];
self.enemyDefLabel.text=[NSString stringWithFormat:@“%i”,enemyDef];
self.enemyspdlab.text=[NSString stringWithFormat:@“%i”,enemySpd];
enemy1Alive=是;

如果(enemyHp首先,你可能应该让你的问题更具体,例如:怪物没有消失,游戏没有结束等等。 我并没有真正阅读您的代码,但我认为您应该先学习如何使用类,而不仅仅是函数。 **顺便说一句,您的代码不起作用,因为您只更改标签的文本,而不更改这些实例的实际值** 此外,每次调用该功能时重置敌人的hp时,该功能将永远无法工作。 为monster创建一个类,为hero创建另一个类,至少您的代码可以不那么混乱和可读