- 版權(quán)聲明:本文為博主原創(chuàng)文章,未經(jīng)博主允許不得轉(zhuǎn)載。
1、定義普通僵尸類:
實(shí)例變量:僵尸種類、僵尸總血量、僵尸每次失血量。
方法:初始化方法(設(shè)置僵尸種類,總血量)、被打擊失血、死亡。
2、定義路障僵尸類:
實(shí)例變量:僵尸種類、僵尸總血量、僵尸每次失血量,道具,弱點(diǎn)。
方法:初始化方法(設(shè)置僵尸種類,總血量)、被打擊失血、失去裝備、死亡。
3、定義鐵桶僵尸類:
實(shí)例變量:僵尸種類、僵尸總血量、僵尸每次失血量,道具,弱點(diǎn)。
方法:初始化方法(設(shè)置僵尸種類,總血量)、被打擊失血、失去裝備、死亡。
4、在main.m中創(chuàng)建普通僵尸對(duì)象,設(shè)置總血量50,每次失血量為 3,沒(méi)有道具。
5、在main.m中創(chuàng)建路障僵尸對(duì)象,設(shè)置總血量80,每次失血量為 2,設(shè)置道具為路障。
6、在main.m中創(chuàng)建鐵桶僵尸對(duì)象,設(shè)置總血量120,每次失血量為 1,設(shè)置道具為鐵桶。
//main.m文件
#import #import "CommonZombie.h"
#import "BarrierZombie.h"
#import "BucketZombie.h"
int main(int argc, const char * argv[])
{
@autoreleasepool {
//創(chuàng)建普通僵尸對(duì)象
CommonZombie *xiaoGuang = [[CommonZombie alloc] initWithKind:@"普通僵尸" totalBlood:50];
//設(shè)置每次失血量
[xiaoGuang setReduceBlood:3];
//創(chuàng)建路障僵尸
BarrierZombie *xiaoMeng = [[BarrierZombie alloc] initWithKind:@"路障僵尸" totalBlood:80];
//設(shè)置每次失血量
[xiaoMeng setReduceBlood:2];
//設(shè)置裝備
[xiaoMeng setProp:@"路障"];
//創(chuàng)建鐵桶僵尸
BucketZombie *xiaoCui = [[BucketZombie alloc] initWithKind:@"鐵桶僵尸" totalBlood:120];
//設(shè)置每次失血量
[xiaoCui setReduceBlood:1];
//設(shè)置裝備 [xiaoCui setProp:@"鐵桶"];
}
return 0;
}```
//普通僵尸CommonZombie.m文件
import "CommonZombie.h"
@implementation CommonZombie
//customized init method
-
(id)initWithKind:(NSString *)kind totalBlood:(NSInteger)totalBlood
{
_kind = kind;_totalBlood = totalBlood;
return self;
}
//失血
-
(void)loseBlood
{
NSLog(@"哎呀,哎呀,要死啦要死啦,掉了3滴血");_totalBlood -= _reduceBlood;
}
//死亡
- (void)death
{
NSLog(@"哎呀,哎呀,死啦死啦,這次是真死啦");
}
//設(shè)置每次的失血量
- (void)setReduceBlood:(NSInteger)reduceBlood
{
_reduceBlood = reduceBlood;
}
@end```
//路障僵尸BarrierZombie.m
#import "BarrierZombie.h"
@implementation BarrierZombie
//customized init method
- (id)initWithKind:(NSString *)kind totalBlood:(NSInteger)totalBlood
{
_kind = kind;
_totalBlood = totalBlood;
return self;
}
//失血
- (void)loseBlood
{
NSLog(@"哎呀,哎呀,要死啦要死啦,掉了3滴血");
_totalBlood -= _reduceBlood;
}
//死亡
- (void)death
{
NSLog(@"哎呀,哎呀,死啦死啦,這次是真死啦");
}
//失去裝備
- (void)loseProp
{
NSLog(@"哎呀,哎呀,要死啦,要死啦,裝備沒(méi)了");
}
//設(shè)置每次的失血量
- (void)setReduceBlood:(NSInteger)reduceBlood
{
_reduceBlood = reduceBlood;
}
//設(shè)置裝備
- (void)setProp:(NSString *)prop
{
_prop = prop;
}
@end```
//鐵桶僵尸BucketZombie.m
import "BucketZombie.h"
@implementation BucketZombie
//customized init method
-
(id)initWithKind:(NSString *)kind totalBlood:(NSInteger)totalBlood
{
_kind = kind;_totalBlood = totalBlood;
return self;
}
//失血
-
(void)loseBlood
{
NSLog(@"哎呀,哎呀,要死啦要死啦,掉了3滴血");_totalBlood -= _reduceBlood;
}
//死亡
- (void)death
{
NSLog(@"哎呀,哎呀,死啦死啦,這次是真死啦");
}
//失去裝備
- (void)loseProp
{
NSLog(@"哎呀,哎呀,要死啦,要死啦,裝備沒(méi)了");
}
//設(shè)置每次的失血量
- (void)setReduceBlood:(NSInteger)reduceBlood
{
_reduceBlood = reduceBlood;
}
//設(shè)置裝備
- (void)setProp:(NSString *)prop
{
_prop = prop;
}
@end```