iPad専用アクションゲーム「スライムは投げる」

最近のエントリー

iPhoneの開発言語であるObjective-CはCの上位互換言語なのでC言語で出来ることは一通り出来ます。クラス(NSObjectの派生クラス)にするとメモリ周りのオーバーヘッドが気になる!もしくはクラスを使うまでも無い!という場合は構造体を使うと良いかと思います。

struct Hogehoge {
	int aaaa;
	int bbbb;
};

ただ、C++と違ってCなので構造体を使うときにもいちいち型を「struct Hogehoge」と指定してやらなきゃいけません。

そんなときにはtypedefを使うと楽になります。

typedef struct {
	int aaaa;
	int bbbb;
} Hogehoge;

これで「Hogehoge」だけで構造体の型を利用できるようになります。

この方法はCの頃は結構当たり前のように使っていたのですが、C++にしばらく入り浸っているうちに忘れてしまっていました。
(というか、structつけずに型を使おうとしてコンパイルエラーが出たときは、なんだか懐かしく感じました(^^;;)
またObjective-Cで思い出したので情報として残しておきます。

サイト引っ越しました~。
すみませんが、ブックマークやリンクをされている方は、
こちらのアドレスに変更をお願いいたしますm(_ _)m

前のサーバーは最初の頃は調子が良かったのですが、サーバーのシステムが途中で入れ替わってからは、特定のIPからサイトにアクセス出来なくなってしまいました。
何度かサーバー管理者へもご相談させていただいて、あれこれやっていただいたのですが、なかなか上手い具合に改善されず困っておりました。
(もともと無料でレンタルさせて頂いたので、あまり無理も言えず。。。)

さすがにEDGE2のようなシュアウェアをサポートするにあたり、サイトがずっと行方不明のままではまずいだろうと思いまして(たまに心配のメールが来ていましたorz)、今回思い切って引っ越しをすることにしました。

ちなみに今回引っ越しするにあたり、知り合いのデザイナーさんにデザイン全般をお願いしたわけなのですが、かなりの無理難題を聞いてくださいましてかっちょいいサイトに仕立ててくださいました。
また、サイトのデザインだけでなく、WordPressの組み込みやドメイン取得など、いろんな面でご協力いただきました。
もしWebサイト制作や印刷物の制作のお仕事がありましたら、是非彼に依頼してみてください☆(感謝も込めて宣伝しまくり)

デザイナーさんのサイトはこちら↓
ブロックワークス

またもし掲示板で投稿できないですとか、ファイルがダウンロードできないですとか変なところがありましたら、お手数ですがご連絡をお願いいたします。

  1. プロジェクトのResourcesを右クリック→追加→新規ファイルを選ぶ
  2. Mac OS Xテンプレートの中からOther→Strings Fileを選ぶ
  3. ファイル名は「Localizable.strings」にする
  4. プロジェクトに追加された「Localizable.strings」の情報を表示し、「ファイルをローカライズ可能にする」ボタンをクリック
  5. 最初はEnglishしか無いので、「ローカリゼーションを追加」ボタンを押してJapaneseを追加する
  6. プロジェクトの「Localizable.strings」ファイルの左に三角マークが付くのでクリックして展開し、「Japanese」の情報を表示する
  7. 「一般」タブをクリックし、エンコーディングを「Unicode (UTF-16)」に設定する【重要】

これで準備は整いました。

次に、
「Localizable.strings」の「Japanese」をxcodeで開き、

"New" = "新規作成";
"Open" = "開く";
・・・

と言うように”キー”=”文字列”;という組み合わせで文字列を書き込みます。

あとは、

[[NSBundle mainBundle] localizedStringForKey:@"New" value:@"New" table:nil]

などと呼び出せば、言語環境に合わせて文字列データを引っ張ってきてくれます。

第一引数がキー。
第二引数はキーが見つからなかった場合のデフォルト文字列。
第三引数は文字列ファイル名(nilでLocalizableになる)。

なので、第二引数に英語の文字列を書いておき、「Localizable.strings」の「Japanese」やその他の言語にローカライズした文字データを書いておけばよさそう(英語のstringsファイルは空っぽのまま)。

ネットを徘徊するとNSLocalizedString()を使ったやり方もある模様。

DirectSoundを使うまでもない音の再生は
sndPlaySound API
http://msdn.microsoft.com/ja-jp/library/cc428790.aspx
もしくは
PlaySound API
http://msdn.microsoft.com/ja-jp/library/cc428768.aspx
を使う。

たしか複数再生が出来ないといった制限があったはずですが、ちょっとした効果音を鳴らすにはこれで足りるかと思います。

メモ

NSString* path = [[NSBundle mainBundle] pathForResource:@"ファイル名" ofType:@"拡張子"];

記事検索

コミュニティ

Banner designed by 真帆様
ドット絵掲示板
ドット絵掲示板
自作の「ドット絵」を投稿することができます。ドッターさん同士の交流の場としてご利用ください。
TakaboSoft Wiki
TakaboSoft Wiki
ソフトウェアに関する質問・不具合報告・要望などを書き込むことができます。