0

このアクションスクリプトをObjective-cに変換するのを手伝ってくれる人はいますか?

if(mcMain.y >= stage.stageHeight - mcMain.height)
{
    mainJumping = false;
    mcMain.y = stage.stageHeight - mcMain.height;
}

具体的には、stage.stageHeight と mcMain.height?

4

2 に答える 2

2

mcMainとは何かを知らstageずに、いいえ、簡単ではありません。stageメインの描画領域を指していると思います。サブクラス内で描画していると仮定するUIViewと、ビューを呼び出すことでビューの寸法を見つけることができますbounds:

CGRect bounds = self.bounds;

CGRectこれは、それ自体がCGPoint、 と呼ばれるorigin、および とCGSize呼ばれるsize;で構成されるを返します。これらは C 構造体です。

struct CGPoint {
    CGFloat x;
    CGFloat y;
};

struct CGSize {
    CGFloat width;
    CGFloat height;
};

の高さを見つけるには、UIView非常に簡単に行うことができます。

CGFloat height = self.bounds.size.height;

ビュークラス自体からビューの高さを見つけようとしていると仮定します。

mcMainある種の画像またはオブジェクトを参照していると推測しているため、その実装はそれが何であるかに依存しています。ただし、ほとんどの座標は に依存してCGRectおりCGPointCGSize何らかの形で依存しています。

于 2009-07-11T18:21:52.693 に答える
0

あなたが Flash の世界から来ているのであれば (私のように)、オープン ソースの Cocos2D-iPhone フレームワークを調べることを強くお勧めします: http://www.cocos2d-iphone.org/

あなたのコードをおおよその Objective-C で書き直しました。

float stageHeight = [UIScreen mainScreen].bounds.size.height;
float guyHeight = mainGuy.contentSize.height;

if(mainGuy.position.y >= stageHeight - guyHeight)
{
    mainJumping = NO;
    mainGuy.position = ccp(mainguy.position.x, stageHeight-guyHeight);
}
于 2009-07-11T21:40:07.223 に答える