2011-07-13 15 views
0

私はxcodeでcocos2dを使用しています。 xcodeクラスからcocosクラス(シーン)関数を呼び出すと、initメソッドが起動しますが、アニメーションの開始時にinitが既に起動されているため、私が呼び出すspesific関数のみを起動します。cocos2dでシーンを呼び出すのがfire initメソッドですか?

どうすればよいですか?

HelloWorld *ran=[[HelloWorld alloc] init]; 
    [ran HardwareEvent:DollPart]; 

私が呼び出すcocos2dクラス名はHelloWorldSceneです。 どのように関数を呼び出すことができますが、火災の初期化はできませんか?

おかげ..

答えて

1

は、私はあなたがすでにあなたの現在のシーンをwithingからHelloWorldの上のinitと呼ばれてきたと仮定しています。その場合、現在のシーン全体でHelloWorldにアクセスするための変数を.hに作成します。これは、あなただけの

helloWorld = [[HelloWorld alloc] init]; 

であることを、あなたはHardwareEventを呼び出すことができるようにすべきであるあなたのHelloWorldシーンでのinitと呼ばれる他の時間を変更します

HelloWorld *helloWorld 

:あなたの.hでは、次のようになります。 DollPart:メソッドを呼び出すだけで

[helloWorld HardwareEvent:DollPart]; 
+0

ありがとうございます。それはまさに私がやったことですが、それもinitを呼び出します。 – Curnelious

+0

@Rantあなたはクラス全体の変数を作成しましたか? 'HelloWorld * ran = [[HelloWorld alloc] init];ので、 [ran HardwareEvent:DollPart]; 'はそうしていません。それがあなたがしたことであれば、あなたが作成した変数の名前を取得し、それを使ってメソッドを呼び出すことができます。 – ScottPetit

+0

私はあなたが私を理解しているかどうか分からない、私は普通のクラスからcocos2dクラスに電話したい。はい、私はHelloWorld *を実行しました。通常のクラスの.hファイルに入れて、それを割り当てて、cocos2dクラスの関数を呼び出しました。何が起こるのは、initが呼び出され、私のcocos2dアニメーションが動作していないということです。レイヤーについて何かしていますか? – Curnelious

関連する問題