1,105,208 Community Members

Cocos2d objective c sprite movement problem

Member Avatar
Junior Poster in Training
55 posts since Jul 2010
Reputation Points: -5 [?]
Q&As Helped to Solve: 0 [?]
Skill Endorsements: 0 [?]
int realX = winSize.width + (projectile.contentSize.width/2);
float ratio = (float) offY / (float) offX;
int realY = (realX * ratio) + projectile.position.y;
CGPoint realDest = ccp(realX, realY);
[_projectiles addObject:projectile];
projectile.tag = 2;

[projectile runAction:[CCSequence actions:
                       [CCMoveTo actionWithDuration:realMoveDuration position:realDest],
                       [CCCallFuncN actionWithTarget:self selector:@selector(spriteMoveFinished:)],

In this simple app, I am trying to make a projectile flying from the middle of the screen to wherever the user touches, and beyond, to the edge of the screen. For whatever reason, the projectile will only fly to destinations with positive x coordinates, no matter when the user presses. If you imagine an x y plane, with the center of the screen (and at this point, the only spot the player can be) being origin, the projectile will only fly to places on in the quadrants to the right of origin. If the user touches a point on the left two, the projectile flies in the opposite direction, on the same slope as the ratio of the touch to origin. .... .........? Any ideas, thanks in advance

This article has been dead for over three months: Start a new discussion instead
Start New Discussion
View similar articles that have also been tagged: