2011-08-14 3 views
1

저는 레이 Wenderlich의 튜토리얼 (http://codeviewer.org/view/code:1d8b)에서이 코드 스 니펫을 따라 왔습니다. 나는 스프라이트 시트 (batchnode)를 사용하고 있다는 것을 제외하고는 거의 같은 일을하려하고있다. 그리고 목표물/적을 화면의 오른쪽에서 산란시키고 (어떤 높이에서도), 왼쪽으로 이동하기를 원한다. (동일한 높이에서). 여기 내 코드가있다. (http://codeviewer.org/view/code:1d8c).랜덤 위치에서 적을 스폰합니다.

추가 정보 - "두더지"는 내 타겟/적입니다. 처음 몇 줄 옆의 주석 처리 된 코드 (//)는 내 노트입니다. EDIT - mjvotaw의 답변에 대한 내 의견을 확인하십시오.

+0

무엇이 문제입니까? – jtbandes

+0

오류나 충돌은 없지만 적군이 왼쪽 하단 모서리에서 스폰되고 ccp : (100, 100)으로 이동합니다. 그들은 잘못된 곳에서 산란합니다. 또한, 그들은 모두 구석의 정확히 같은 장소에 산다. 무작위로 분류되지 않았습니다. – Joethemonkey101

+0

[codeviewer.org 링크가 더 이상 작동하지 않기 때문에]이 질문을 닫으려고합니다 (https://meta.stackoverflow.com/questions/345443/what-should-happen-to-questions-using-codeviewer- org-for-sharing-code)을 사용합니다. 이러한 링크가 없으면 질문에 명확한 [최소, 완료 및 확인 가능한 예제] (https://stackoverflow.com/help/mcve)가 없습니다. – g00glen00b

답변

-1

오른쪽 측면을 따라 임의의 장소에 몰 스프라이트를 배치 할 경우, 당신은 할 수 있어야한다 그냥 할 : 임의의 지점에, 오른쪽 가장자리에있는 몰을 설정

[mole setPosition: ccp(winSize.width - [mole contentSize].width, arc4random() % winSize.height)]; 

y 축을 따라. 그런 다음 CCMoveTo를 사용하는 actionMove 대신 CCMoveBy를 사용하여 위치를 ccp (-winSize.width, 0)로 설정할 수 있습니다.

이것이 원하는 것이 아니라면 질문을하는 법을 다시 생각해보십시오.

+0

도움 주셔서 감사합니다. 코드를 약간 변경했습니다 (http://codeviewer.org/view/code:1d91). 내가 달릴 때 적에게 내가 원하는 위치에 깜박 거리게하지만 그 위치를 다시 화면의 아래쪽으로 바꿉니다. 내 코드에 문제가 있습니까? 확인해 줘, 고마워. – Joethemonkey101

+0

6 번줄에 두더스의 위치를 ​​설정했는데 19 번까지 두더지 객체를 실제로 만들지는 않았습니다. 어떻게 그걸 잡아 내지 못했는지 모르겠습니다. CCSprite를 만들기 전에 두더지 객체를 참조하면 안됩니다. – mjvotaw

+0

고맙습니다. 너 내가 너를 얼마나 도왔는지 너는 모른다. = D. – Joethemonkey101

-1

무작위 지점에서 시작하여 대상쪽으로 이동하는 적을 생성하는 방법에 대해서는 this tutorial을 참조하십시오. 그것은 페이지 아래로 약간의 방법입니다.

편집 :

가 임의의 Y 스폰 포인트를 작성하려면 다음을 수행하십시오

// Define these at the top of the .m file 
#define ARC4RANDOM_MAX 0x100000000 
#define RAND_FLOAT ((float)arc4random()/ARC4RANDOM_MAX) 

- (CGPoint)pointWithRandomYAtX:(float)locationX 
{ 
    CGSize size = [[CCDirector sharedDirector] winSize]; 
    return CGPointMake(locationX, RAND_FLOAT * size.height); 
} 

그런 다음 단순히에 "몰"의 위치를 ​​설정 (당신적인 Cocos2D를 사용한다고 가정) 포인트.

+0

그건 내가 발췌 부분을 가져온 것과 정확히 똑같은 튜토리얼입니다. 그건 제 질문이 아닙니다. 나는 어떻게/어디로 적을 움직이고 싶은지 알고 있지만, 원래의 산란 장소는 나에게 곤경을주고있다. – Joethemonkey101

+0

위의 편집 내용보기 –

+0

내가 할 때, 적들은 왼쪽 하단 모서리 (잘못된 장소)에 산란 한 다음 왼쪽의 화면에서 벗어납니다. 새로운 것이 생기면, 화면의 왼쪽에있는 다른/임의의 위치에서 적을 깜박입니다 (단 두 초 동안 깜박입니다.). 화면). 이 파일 좀 봐 주시겠습니까? 내 것이 야. 감사합니다 http://www.4shared.com/file/zY8LSBiW/Mole.html 코드는 addMole 메소드에 있습니다. – Joethemonkey101