[cocos2d]一些代碼的基本問題,..內有代碼

是由子龍山人的教學轉來的

http://www.cnblogs.com/zilongshanren/archive/2011/03/28/1997966.html

这里非常直白:我们从CCSprite派生一个Monster类,然后增加了一些成员变量来记录monster的状态。然后,我们又从Monster类派生出两个不同的monster子类。

现在,打开Monster.m并添加下面的代码:

#import "Monster.h"

@implementation Monster

@synthesize hp
= _curHp;
@synthesize minMoveDuration
= _minMoveDuration;
@synthesize maxMoveDuration
= _maxMoveDuration;

@end

@implementation WeakAndFastMonster

+ (id)monster {

WeakAndFastMonster
*monster = nil;
if ((monster = initWithFile:@"Target.png"] autorelease])) {
monster.hp
=1;
monster.minMoveDuration
=3;
monster.maxMoveDuration
=5;
}
return monster;

}

@end

@implementation StrongAndSlowMonster

+ (id)monster {

StrongAndSlowMonster
*monster = nil;
if ((monster = initWithFile:@"Target2.png"] autorelease])) {
monster.hp
=3;
monster.minMoveDuration
=6;
monster.maxMoveDuration
=12;
}
return monster;

}
@end
這兩個的作用是甚麼??
另外
然后,修改addTarget方法来构造我们新创建的类的实例,而不是直接创建精灵(sprite)。替换spriteWithFile那一行,如下所示:
//CCSprite *target = ;
Monster *target = nil;
if ((arc4random() %2) ==0) {
target
= ;
}
else {
target
= ;
}
這個又有甚麼作用...都是一樣的嗎?
希望大家可以指點我一下..謝謝