我有這個遊戲像塗鴉跳躍雪碧突然消失了cocos2d
我插在
玩家觸發子彈,並刪除
我插入的NSLog到目標的玩家一些怪物和子彈這兩個所以我知道如果子彈火災和目標顯示
所有在模擬器工作平穩ios 4.0
但是當每次我的設備
子彈上安裝它和目標似乎未出現(是隻有這兩個遊戲依然流暢運行)
,但每次我檢查控制檯我可以看到子彈的NSLog和目標
我嘗試了3周不同的手機的iOS 4.0,5.0和4.2
現在即時通訊混亂,如果有什麼似乎是問題
我在谷歌檢查相同的問題,但我似乎無法找到一個
我也檢查拼寫和迷你問題,但它仍然發生。
什麼似乎是造成這個問題?
PS:應用IM工作是過時的,它是舊版本的cocos2d的。這個 影響它嗎?我嘗試升級,但我有這麼多的錯誤,我不 知道這就是爲什麼我回到默認。
妖怪都出現了約0.5秒,然後就會突然消失這是因爲spriteMoveFinished的?
這裏是代碼(目標):
-(void)addTarget {
Sprite *target =[Sprite spriteWithFile:@"him.png"];
CGSize winSize = [[Director sharedDirector]winSize];
int minX = winSize.width/6;
int maxX = winSize.width - target.contentSize.width/2;
int rangeX = maxX - minX;
int actualX = (arc4random() % rangeX) + minX;
target.position = ccp(actualX,500);
NSLog(@"Location:%f",target.position);
[self addChild:target];
int minDuration = 2.0; int maxDuration = 4.0;
int rangeDuration = maxDuration - minDuration;
int actualDuration = (arc4random() % rangeDuration)+minDuration;
id actionMove = [MoveTo actionWithDuration:actualDuration position:ccp(actualX, -target.contentSize.height/2)];
id actionMoveDone = [CallFuncN actionWithTarget:self selector:@selector(spriteMoveFinished:)];
[target runAction:[Sequence actions:actionMove,actionMoveDone, nil]];
target.tag = 1;
[_targets addObject:target];
}
(子彈):
-(void)ccTouchesEnded:(NSSet *)touches withEvent:(UIEvent *)event {
AtlasSpriteManager *spriteManager = (AtlasSpriteManager*)[self getChildByTag:kSpriteManager];
AtlasSprite *bird = (AtlasSprite*)[spriteManager getChildByTag:kBird];
UITouch *touch = [touches anyObject];
CGPoint location = [touch locationInView:[touch view]];
location = [[Director sharedDirector]convertCoordinate:location];
Sprite *projectile = [Sprite spriteWithFile:@"psn.png"];
projectile.position = ccp(bird.position.x,bird.position.y);
CGSize winSize = [[Director sharedDirector]winSize];
int offX = location.x - projectile.position.x;
int offY = location.y - projectile.position.y;
[self addChild:projectile];
float scalarX = 1.0f;
if(offX < 0.0f) scalarX = -1.0f;
int realX = scalarX * (winSize.width + (projectile.contentSize.width/2));
float ratio = (float) offY/(float) offX;
int realY = (realX *ratio) +projectile.position.y;
CGPoint realDest = ccp(realX,realY);
int offRealX = realX - projectile.position.x;
int offRealY = realY - projectile.position.y;
float length = sqrtf((offRealX*offRealX)+(offRealY*offRealY));
float velocity = 480/1;
float realMoveDuration = length/velocity;
[projectile runAction:[Sequence actions:[MoveTo actionWithDuration:realMoveDuration position:realDest],
[CallFuncN actionWithTarget:self selector:@selector(spriteMoveFinished:)], nil]];
NSLog(@"Shoot!");
projectile.tag = 2;
[_projectiles addObject:projectile];
}
感謝我希望這將得到解決......
嘗試澄清此問題的條件:啓用繪製sprite界限('ccConfig.h'中的'#define CC_SPRITE_DEBUG_DRAW 1'),將紋理更改爲某個檢查圖像,在另一個圖像編輯器中重新保存企鵝圖像...讓我們知道,iDevice究竟發生了什麼問題。 – brigadir 2012-01-12 06:55:22
你的紋理可能有問題嗎?子彈和目標使用什麼樣的紋理?和什麼大小? – purplelilgirl 2012-01-12 06:42:54
@brigadir我不認爲這個問題是關於紋理,因爲我試圖替代我的目標,並且它也沒有出現的雪碧..謝謝 – NoobMe 2012-01-12 09:09:51