でRECT私はタッチを使用して、私のターゲットを選択したいこれらのようにコーディングすることによって、私の選択されていないドットを作成していはcocos2d
をRECT: -
以下targets1 = [[NSMutableArray alloc] init];
for(int i=0;i<3;i++)
{
for (int y=0; y<3; y++) {
CCTexture2D *texture =
[[CCTextureCache sharedTextureCache] addImage:@"UnselectedDot.png"];
block = [CCSprite spriteWithTexture:texture rect:CGRectMake(0,0,82,82)];
CGFloat xoffset = ((block.contentSize.width)*10) + (((block.contentSize.height)-175)*y);
block.position = ccp((i*82)+80,xoffset);
[bg1 addChild:block];
[targets1 addObject:block];
}
}
は私のサンプル出力です。
今私はタッチ方式で全てのドットを選択する必要があります。私の概念をコーディング上記のとおり
- (void)update:(ccTime)dt {
// NSLog(@"%@",targets1);
for (CCSprite *sprite in targets1) {
CGRect dotrect = CGRectMake(sprite.position.x,
sprite.position.y-95,
sprite.contentSize.width,
sprite.contentSize.height);
CGFloat x = location.x;
CGFloat y = location.y;
CGFloat width = (location1.x - location.x);
CGFloat height = -(location1.y - location.y);
CGRect touchrect = CGRectMake (x, y, width,height);
NSLog(@"dotrect = %f,%f,%f,%f",dotrect.origin.x,dotrect.origin.y,dotrect.size.width,dotrect.size.height);
NSLog(@"touch rect = %f,%f,%f,%f,%f,%f",touchrect.origin.x,touchrect.origin.y,touchrect.size.width,touchrect.size.height,location1.x,location1.y);
if(CGRectContainsRect(dotrect, touchrect))
{ //collision detection
NSLog(@"am touched dot ");
}
}
}
- (BOOL)ccTouchBegan:(UITouch *)touch withEvent:(UIEvent *)event {
location = [touch locationInView:[touch view]];
location = [[CCDirector sharedDirector] convertToGL:location];
NSLog(@"am touched began");
return YES;
}
- (void)ccTouchEnded:(UITouch *)touch withEvent:(UIEvent *)event {
location1 = [touch locationInView:[touch view]];
location1 = [[CCDirector sharedDirector] convertToGL:location1];
location1 = [self convertToNodeSpace:location1];
}
さ: - - :私はこれらのようなコーディング書か使ってタッチが始まり、終わったタッチがここに四角形を作っています。これらのtouchrectの内側に私の非選択ドットRECT iは、その後..手段が検出collsison来ましたそこに私のものをすることができます。そのすべてが衝突することはありません。
私は間違っていました。
編集:1
は、今私がなぜ実際にinsidemyタッチは、複数の矩形を持つRECT ...動作していないcoillisionました..これだけ...ここ.. rectcontainsrectを使用していても問題はtahts ..他の方法.. colllsion検出のためのいくつかの矩形を持つRECTする
あなたの結果は何ですか?ブレークポイントを追加するとタッチの開始/終了方法がヒットしますか? – nycynik
@nycynik実際に私のiPhoneの画面で正方形の形式をドラッグしようとすると..何も起こっていない...同じitryもし単一の選択されていない画像の何かの衝突検出..何か私はドット毎に変化する必要があります..私のタッチでrect ... –