Objective-c打僵尸小游戏练习源码

打僵尸代码

练习

假设有两只僵尸,一只是普通僵尸,一只是道具僵尸,特征是:

  • 普通僵尸:姓名、血量、失血量、 被攻击、死亡
  • 道具僵尸:姓名、血量、失血量、道具、被攻击、丢失道具、死亡
代码如下

main.m 主文件

#import <Foundation/Foundation.h>
#import "Zombie.h"
#import "ToolZombie.h"

int main(int argc, const char * argv[]) {
    @autoreleasepool{
        Zombie *z1 = [[Zombie alloc] initWithName:@"普通僵尸" blood:50 loseBlood:3]; // 赋值
        ToolZombie *tz1 = [[ToolZombie alloc]                 initWithName:@"道具僵尸" blood:50 loseBlood:3]; // 赋值
        while((z1.dieFlag == NO || (tz1.dieFlag == NO)){ // 在两种僵尸均未死亡的情况下执行while
        sleep(1); // 每隔1秒执行
        [z1 beingAttacked]; // 普通僵尸被攻击
        [tz1 beingAttacked]; // 道具僵尸被攻击
        }
    }
    retur 0;
}

Zmbie.h父类文件

#impor <Foundation/Foundation.h>

@interface Zombie : NSObject
{
    NSString *_name; // 名字
    NSInteger _blood; // 血量
    NSInteger _loseBlood; // 失血量
    BOOL _dieFlag; // 标记
    }
_ (instancetype)initWithName:(NSString *)name blood:(NSInteger)blood loseBlood:(NSInteger)loseBlood; // 初始化方法
- (void)beingAttacked; // 被攻击
- (BOOL)die; // 死亡
- (BOOL)dieFlag; // getter方法
@end

Zombie.m文件

#import "Zombie.h"

@implementation Zombie
-(instancetype)initWithName:(NSString *)name blood:(NSInteger)blood loseBlood:(NSInteger)loseBlood{ // 初始化方法
    if (self = [super init]){
        _name = name;
        _blood = blood;
        _loseBlood= loseBlood;
        _dieFlag = NO;
    }
    return self;
}
-(
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值