※2016-02-13追記:新たにユーザーフォーラムを設置いたしました。今後の新規ご質問はそちらへ投稿していただきますようお願い申し上げます。
ブログ本編の記事で取り扱っていない事柄への質問はこのページのコメントでお寄せ頂けるようにいたしました。
返信またはブログ記事にてお応えいたします。
※質問内容は『インディゲームクリエイター Clickteam Fusion 2.5(以下CF2.5)』及びそれに関連する事柄に限ります。
※ブログ本編記事で取り上げた内容はそれぞれの記事へコメントして下さい。
※質問内容の難易により、お答えする順番が前後する場合があります。ご了承下さい。
※お寄せ頂いたご質問にはできる限り調査し返答いたしますが、以下の分野の質問内容には明確なお答えをいたしかねる場合がありますことをお伝えさせて頂きます(質問禁止というわけではありません)。
・モバイルアプリ関係(iOS、Android等。筆者の手元に検証する環境が不足しているため。)
・ネットワーク関係(CF2.5以外にネットワーク関係の知識も必要なため)
※初めて投稿される方のコメントは、管理者による承認を受けるまで表示されません。ご了承ください。
※コメントへの添付ファイルでmfaは対応しておりませんので、zipに圧縮してください。
以前はお世話になりました。
おかげさまで無事APPSTOREにて販売開始することが出来ました。
今回は別の質問なのですが、iOSアプリ等でアプリのAPPSTOREページURL、スコア等の値をツイートするツイートボタンを実装したいのですが、それは可能でしょうか?
URLを開くだけなら簡単に出来るのですが・・・
宜しくお願いいたします。
>>hide
返信が遅れましてすみません。
販売できたようでおめでとうございます。それに関しましては明確なアドバイスができず申し訳ありませんでした。
今回のご質問は、URLを開いてTwitter公式サイトを経由するのではなく、iOSアプリ自体をクライアントソフトとして投稿機能を実装するという内容でしょうか?
その場合Twitterアプリケーションとしての登録やユーザーアカウントの認証機能が必要になると思われますし、またそれらの機能をCF2.5で実装可能かどうか不明です。
URLを開いて公式経由で投稿(実機を持っていないので実際の動作(その処理をAPPLEが許可するかというのも含めて)は判りませんが)する機能でもよいのであれば、やはりそちらの方が簡単ではないかと。
同じオブジェクトの全体削除という機能はないのでしょうか?
たとえばイベントオブジェクト作成でAとBを同じオブジェクトで作ったとします
作っていたゲームがシューティングゲームの場合は接触した敵と自分の弾が消滅しますがこれを自分の弾全てを消したいと思います(つまりAの弾が敵に当たるとBも消える)
オブジェクトグループで削除を試しても消えるのは接触した弾だけで接触せずに起動するイベントの場合は消滅すらしません
それと前にあった質問は削除したのでしょうか?
削除したのであればどこか別の場所に記載しておいた方がいいと思いますが
返信は一体いつになるのですか?
すでに1週間経過したようなものですが
前は3日いないには返してくれたのに
不自然に消された質問達もありますし
>>ミマトさん
申し訳ありません。運営側のミスによりブログデータの消失という事態が発生しておりました。
過去のコメントは復旧不可能でしたがテキスト自体は手元にあるので、特別にページを設けて再掲するか現在検討中です。
報告が遅れましたことをお詫びいたします。
>>ミマトさん
https://blog.clickteam.jp/wp-content/uploads/2015/02/cf25_blog_cm_2015-02-22_all_other_objects_destroy.zip
オブジェクトの個体をを特定せずに全て破壊する場合は、破壊するイベントの条件にオブジェクトの個体が特定される条件を含めなければ良いのです。
衝突条件の時に破壊すると、衝突したオブジェクトがピックされた状態にあるので、それのみが対象になります。
例えば、衝突したときに、弾ではない第三者のオブジェクトのフラグをONにします。
そのオブジェクトのフラグがONの時を条件として弾を破壊すれば他の同オブジェクトも一緒に破壊することができます(フラグはOFFに戻しておく)。
サンプルでは、フラグや変数を消費しなくても良い(リセットも不要)という意味で高速ループを1回だけまわす形にしてみました。
余談ですが、弾幕シューでよくある「敵を倒すとその敵が撃っていた弾だけが消える(アイテムに変わる)」ということも、弾に、どの敵から発射されたものなのかという情報を与えておけば、
それを条件にすることで一律にではなく特定の個体群だけ破壊ということが可能です。
管理人様
お世話になります。
少し前にiniplusの件でご相談しましたものです。
ようやく触ることができたのですが、
消される前に回答いただいていた方法でもうまくいきませんでした。
たぶん当時の開発環境に戻す必要があるようですね…放置していた私が悪いです。
せっかくこのソフトを買ったのに残念です。
取り急ぎご連絡まで。
ブログ楽しみに拝見させて頂いてます
さっそくですが質問があります
iosでアクションゲームを作っているのですが
アクティブオブジェクトでキャラのアニメーションをさせようとして
キャラを反転させるためにcf2.5から追加されたエフェクトの反転を使っていたのですが
iosアプリの場合エフェクトが使えないようです
自分では通常と反転を二つ作り左右で切り替えるくらいしか思いつきませんでした
できる限り軽くしたいのでなかなか迷っております
何かオススメの方法など教えて頂けると助かります
質問とは関係ないのですが
使うほどすごく面白いソフトなのでもっと広がって欲しいと思ってます
それでは失礼します
>>参目さん
基本的には、Windows EXEアプリケーション以外のプラットフォームではStandard以外のエフェクトは使用できません。
参目さんのお考えの通り、通常と反転の2種類を登録して切りかえるしかないと思います。
アニメーションが大量の場合、反転で済ませられれば確かに楽ですしデータ削減にもなりますが、
エフェクトの大半がDirect3D 9とピクセルシェーダ(2.0以上)を使用していますので、ハードウェアの違いからも対応は難しいと思います。
なるほどやはり難しいですか
もうちょっと自分でも探してみます、分かりやすい解説と説明ありがとうございました!
ログも見ずに初歩的な質問しますが、
ライブラリに素材を追加する場合どうすればいいのでしょうか?
また、対応しているアニメーション素材等のファイルの種類ってなんでしょうか?
>>新参1999さん
まず、ライブラリに追加する素材(アクティブオブジェクトや背景オブジェクトなど)納めたmfaファイルを用意する必要があります。
ライブラリに追加するには、ライブラリツールバー左側のツリー上で右クリックして『新規作成』を選択し、素材を納めたmfaのある場所を選択すると追加されます。
アニメーションの種類はアクティブオブジェクト編集時のアニメーションエディタで『インポート』を選択して、ファイルの種類のリスト確認してください。
ファイル選択後『アニメーションとしてインポート』にチェックしてください。
ちなみに、わざわざ動画形式にしないとインポートできないというわけではなく、ファイル名を連番にしたBMPファイルを用意して、先頭のファイルをインポートし、『アニメーションとしてインポート』にチェックすれば、それ以降のファイルもアニメーションとして取り込むことができます。
理解できました、ありがとうございます。
また質問させてもらうんですが、
何か良いチュートリアルもっとありませんかね?
ヘルプの奴や、公式のチュートも大変分かりやすく参考になるんですが、
分かりやすいから練習用にもっと数が欲しいんです。
>>新参1999さん
http://www.clickteam.com/tutorials
本家Clickteamのサイトに色々とありますが英文です。
http://www.clickteam.jp/tutorials
日本語版公式サイトでは本家のガイド・チュートリアルからピックアップして順次翻訳して公開されておりますので、今後の更新をお待ちください。
連投すいません
オブジェクト(グラ)に、奥行きの概念は持たせられますかね?
手前の物が奥の物より後ろに見えると困るような場面です。
>>新参1999さん
「手前の物が奥の物より後ろに見える」というのがどういう状況か良く分かりませんが、
オブジェクトの拡大縮小、エフェクトやエクステンションを使って擬似3Dのような表示は可能です。
参考になるレス有難うございます。
俺が気になってるのは、描画の順番なんです。
3D空間上で、手前にある物が先に描画されて、次に奥にあるものが重なるように描画されると、手前の物が隠れてしまいます。
グラ(オブジェクト)が描画される順序って、どうなってるんでしょうか?
>>新参1999さん
基本的には、後から生成されるオブジェクトの方が上に来ます。
ですが、イベントで表示順位を制御できますし、フレームエディタにてレイヤーツールバーからレイヤー分けをすれば、下のレイヤーに作成したオブジェクトが上のレイヤーより手前に表示されることはありません(ただし、オブジェクトの衝突判定は同一レイヤー上のみ)。
「レイヤー分け」を試してみたら、大体どんな感じか理解できました。アリガトウございます
また質問させてもらいます。
はじめまして。
まだまだ始めたばかりなのですが
アクティブオブジェクトの動作をマウスコントロールで行う場合マウスの速度を変更することは可能なのでしょうか。
>>DJOさん
標準ではマウスの速度変更機能は備わっていませんが、エクステンションの『The Big Boxオブジェクト』により変更可能です。
エクステンションマネージャには登録されていませんので、以下のリンク先から『TheBigBox.zip』をダウンロードし、zipを解凍して作成されたフォルダ『Data』『Extensions』『Help』をCF2.5インストール先の同じフォルダへ上書きしてください。
http://community.clickteam.com/threads/35880-The-Big-Box?p=621286&viewfull=1#post621286
イベントのThe Big Boxのアクションに『Change the mouse speed』があります。
但しこれはシステムのマウス速度を変更するものなので、アプリ終了後も速度がそのままです。
変更前に現在の速度を取得しておいて、終了時に戻す処理が必要でしょう。
ご回答頂いたのにお礼が遅くなりまして申し訳ございません。
マウス速度は解決いたしました。ありがとうございます。
今後ともよろしくお願い致します。
また質問です。
例えば、マリオのような横スクロールのプラットフォームゲームを作るとき、
「ジャンプ」を実装するときに、何かオススメのセオリーはありますかね??
当方まずここでつまずいております。
プロパティの「物理動作」を基本にすると、細かく動き制御する場合やりにくそうだし(よくわからないし)
イベントの常時実行で位置を変えるのは効率悪そうだし。
何か良い方法は無いですかね。
>>新参1999さん
動作は、すべて自前で作れれば、移動量などを完全に把握することができて理想的なのですが、なかなかそうもいきませんよね。
標準動作がいまいち機能不足であることは否めません。
標準のプラットフォーム動作に不満でしたら、エクステンションの『Platform Movement object』をご利用ください。エクステンションマネージャから入手可能です。
基本的な使い方については過去にMMF2 wikiでまとめておりますので、そちらをご覧ください。
http://wikiwiki.jp/mmf2/?%A5%A8%A5%AF%A5%B9%A5%C6%A5%F3%A5%B7%A5%E7%A5%F3%B2%F2%C0%E2%2FPlatform%20Movement%20object
応用すれば、敵キャラの制御も同じように行うことができます。
注意点としましては、このオブジェクトで制御された場合、物理演算オブジェクト(送風機やコンベア等々)の影響は受けられないことです。
管理人さんへ
横スクロールアクションを考え中です。
プレイヤーの攻撃をボタン連続入力により、攻撃パターンを変更させる簡単な方法はありませんでしょうか?
こんな感じです。
1入力:ジョブ、2入力:ストレート、3入力:アッパー
>>若葉さん
変数とフラグを使用することで実現可能です。
https://blog.clickteam.jp/wp-content/uploads/2015/04/cf25_blog_cm_2015-04-26_button_renzoku_push.zip
簡単なものですがサンプルを作りましたのでご覧ください。
ありがとうございます。
次の質問は、「スクロール」(横スクロール)です。
スクロール機能とか付いてないのでしょうか。
プロパティに、「スクロールオプション」なる項目はあるようですが。
今スクロールの実験中なんですが、
画面のある部分まできたら、キャラの位置を固定して、その他のオブジェの位置をずらすことで、スクロールさせようとしています。キャラのオブジェの動作は「物理-ジャンプとはしご」を使ってます。
差分や、慣性動作のスクロールへの反映はできたのですが、
問題は、慣性(初速度やジャンプの落下中の飛び幅など)を取得してスクロールしているはずなのに(物理アクションが有効)、キャラのアニメーションがなぜか止まってしまうんです。(キャラはサンプルのDSoldier1を使ってます。)
画面端で、キーを押し続け、歩行アクションの差分だけスクロールしているのに、なぜかモーションが無く、立ち止まっています。
キャラは、座標を指定してるだけです。
歩いているように見せるにはどうすればいいでしょうか。
>>新参1999さん
スクロール機能は備わっています。
フレームサイズをウィンドウサイズより大きく設定し、イベントの『ストーリーボードコントロール』内の『スクローリング』アクションを使用します。
サンプルをご覧ください。
https://blog.clickteam.jp/wp-content/uploads/2015/04/cf25_blog_cm_2015-04-28_scroll_example.zip
背景自体が動いてスクロールしているように見せる手法は、シューティングではアリなのですが、アクションには不向きです。
アリガトウございます。膨大な計算の作業をするところでした。
聞いた方が早いので、これからどんどん聞いて行きます。
前回回答して頂いてありがとうございました
また質問なのですが、サブアプリケーションを用いてアプリ作ってるのですが
(今回はwindowsEXEアプリケーションを作成しております)
メインのアプリにccnを読み込むと「cctrans.dllが見つかりません!」というエラーが出ます
cf2.5で起動させるとエラーは出ないのですがどうやったら解決できるでしょうか
ご連絡お待ちしてます
>>参目さん
サブアプリケーション(ccn)で使用されるエクステンションやトランジションと一部の標準動作のファイルは親アプリに依存しています。
親アプリにサブアプリで使用しているエクステンションやトランジションが一切存在していないとエラーが発生します。
「cctrans.dllが見つかりません!」というエラーの場合は、親アプリのフレームもしくはオブジェクトにトランジション(種類は問わない)を設定して下さい。
(使用しないブランクフレームを追加して設定するか、使用しないアクティブオブジェクトにトランジションを設定してプロパティの『開始時に作成』を外す)
このような場で質問してもよいのか分かりませんが
公式HPのチュートリアルにあるオンラインスコアに関して
PHPの編集をするところでzipファイルが出てきますが
どこを探してもzipファイルらしきものがありません。
よろしければどこにあるのか教えていただけないでしょうか?
>>初心者マークさん
オンラインスコアのチュートリアルで使用するphpファイルおよびサンプルのmfaファイルが納められたzipファイルは以下の場所にて公開されております。
http://community.clickteam.com/threads/84503-A-Guide-to-saving-high-scores-online?p=617747&viewfull=1#post617747
『Example MFA file and support files:』のリンクをクリックして下さい。
なお、以下のリンクにて追加のチュートリアルが公開されておりますので、こちらも併せてご覧下さい。
http://community.clickteam.com/threads/87185-Online-High-Score-Tutorial
ページ内にリンクが無くご迷惑をお掛けいたしました。担当者に連絡し追加いたします。
迅速な対応ありがとうございます。
また困ったときに質問させていただくかもしれませんので
その時はよろしくお願いします。
返信ありがとうございます
そして頂いたアドバイスで無事解決できました、ありがとうございました!
こんにちわ^^
今、グラを描いてるんですが、
描いた絵のオブジェクトを、透過(背景色の切り抜き)させるのってどうやればいいのでしょうか?
プロパティのエフェクト所の、透過の色指定で、白(255,255,255)で指定(もしくは左上のピクセル)してあるのに、グラの余分な白の部分がそのまま残ってしまいます。
>>新参1999さん
画像の背景色が本当に(255,255,255)であるか、また左上のピクセルが別の色になっていないか確認してください。
ですが、ご質問内容から察するに、『ピクチャ』や『アクティブピクチャ』オブジェクトを使って表示しようとしていませんか?
それでも構わないのですが、通常はキャラクタ(動いたりアニメーションするもの)は『アクティブ』、背景(動かずアニメーションもしないもの)は『背景』オブジェクトを使用します。
『アクティブ』、『背景』オブジェクトに登録した画像はアプリケーション(EXE)に内蔵されますが、『ピクチャ』、『アクティブピクチャ』は内臓せず、外部ファイルを参照して表示します(内臓することもできますが)。
基本的には『アクティブ』、『背景』オブジェクトを使ってください。
ASDさん
>『ピクチャ』、『アクティブピクチャ』は内臓せず、外部ファイルを参照して表示します
2点ほどお聞きしたいです。
1点目;外部ファイル参照のメリットはapkファイルのサイズが大きくなりすぎるような場合に、apk内の大きなサイズのファイルを外部に保存して参照することでメインのapkファイルサイズを小さくできるという認識でよいでしょうか?
2点目;具体的にはどのような手順を踏めばよいか教えていただけないでしょうか?「表示」-「データエレメンツ」-バイナリータブの中に目的の画像のパスを追加し、追加した画像を使用したいタイミングでイベントエディタの「アクティプピクチャ」を右クリック後、「新しいピクチャ」を選択してデータエレメンツのバイナリタブに追加したものと同じパスを入力すればよいのでしょうか?
わかりにくいかもしれませんがよろしくお願いいたします
>>JK0079さん
アクティブオブジェクトや背景オブジェクトなど、所謂CF2.5のピクチャエディタを通してインポートした画像は独自形式として格納されるため、元画像のフォーマット(PNGやJPGなど)による圧縮効果は無くなります。
外部ファイル参照で表示するメリットは仰るとおりファイルサイズの削減にあります。また、ユーザーによって画像を変更させるアプリの作成も可能です(画像ビューワなど)。デメリットは(比較すると)読み込みに時間がかかることです。
使用する外部画像は露出させずにビルドしたアプリケーションに含めることもできます。方法は仰る通りで、『データレメンツ』の『バイナリデータ』に使用している画像を登録して、同じパスを指定します。『ピクチャ』や『アクティブピクチャ』は自動でバイナリデータからの読み出しに対応しているので、特にイベントで抽出する処理は必要ありません(使用するオブジェクトによっては必要な場合もあります)。
上手く表示されない場合は、アプリと同じフォルダに置く等、ファイルパスが複雑にならないようにしてみてください。
自分で問題を調べてみたところ、どうやらPNG形式の画像だと、透過されないようでした。(色は合ってるはずなんだけどなー)
BMP形式にしたら、上手くいきました。
TIPSアリガトウございます。参考にします。
また質問です。
透過(背景の切り抜き)について、
アクティブと、アクティブピクチャで、プロパティが異なるようで、
ピクチャのほうでは透過できたのですが、アクティブのほうではできませんでした。
アクティブオブジェクトで透過するには、どうすればいいのでしょうか。
>>新参1999さん

透過色はピクチャエディタにて画像を読み込み(インポート)する時に表示されるオプションウィンドウで設定できます。
透過色の赤枠で囲った部分、『選択』をクリックするとカーソルがスポイトになるので、画像内の背景色部分をクリックしてください。
その横の色のボックスをダブルクリックすると出てくるカラーピッカーでも透過色を指定することができます。
また、画像登録後に透過色を変えることもできます。赤枠で囲った部分をダブルクリックすると透過色を変更可能です。
PNGの場合、アルファチャンネル付きで保存してはいませんか?アルファチャンネルを設定している場合は、透過情報は透過色ではなくアルファチャンネルの方になります。
赤枠部分の『透過』ボタンをクリックし、透過の種類が『アルファチャンネル』になっている場合は、『透過色』に変更して下さい。
なんか、黒(0,0,0)なら透過できてるみたいだし、それでやってみようかなー。
androidのビルドについて質問があります。
まだ、初期のADKやSDKのインストール段階なのですが・・・
どうも上手くいきません。
インストールはできるのですが、「jdk1.6.0_43」というファイル(?)が見当たりません。
説明通りやっているつもりなのですが失敗します・・・orz
ですので、よろしければもう少し詳細な説明をして頂きたいです。
どうかご教授のほどよろしくお願い致します。
>>yyyyさん
Java 6は古いバージョンなので、オラクルの通常のダウンロードページからは入手できなくなってしまいました。
Oracle Java Archive
http://www.oracle.com/technetwork/java/javase/archive-139210.html
こちらから入手可能です。ログインが必要ですのでアカウントをお持ちでなければ作成してください。
また、稀にJavaのバージョンが低すぎることによるエラーもあるようですので、その場合は上位版(Android SDKのサイトによればJDK7でも良いようです。)や最新版(JDK8)を試してみてください。
>>ASDさん
早速の回答ありがとうございます。
せっかく回答を頂いたのですが、申し訳ありません。
こういう物に疎いもので理解ができません。
よろしければ、
このサイトからどれをダウンロードすればいいのか?
CF2.5でどのファイルを指定すればいいのか?
を教えていただけないでしょうか?
お手数だとは思いますがよろしくお願い致します。
>>yyyyさん
– Which I should use version of the JDK? 6? 7 or later?
http://community.clickteam.com/threads/92203-Which-I-should-use-version-of-the-JDK-6-7-or-later?p=663389&viewfull=1#post663389
先刻はJDK6のダウンロード先をご案内させていただきましたが、その後開発元のClickteamに問い合わせたところ、最新のJDK8で問題ないようです(上記リンク参照)。
– Java SE – Downloads | Oracle Technology Network | Oracle
http://www.oracle.com/technetwork/java/javase/downloads/
上記リンク先の『JDK DOWNLOAD』ボタンをクリックし、次のページで『Java SE Development Kit 8u45』の『Accept License Agreement』にチェックを入れて、お使いのOSが32bitか64bitかに関係なく『Windows x86(32bit版)』をダウンロードしてインストールしてください。
– Download Android Studio and SDK Tools | Android Developers
https://developer.android.com/sdk/
Android SDKは、上記ページ下部の『Other Download Options』から『SDK Tools Only』をダウンロードしてインストールします(通常は『Recommended』と書かれている方でOK)。
その後は、
http://www.clickteam.jp/faq
最下部の『Android/OUYA Exporter インストールについて』をお読み頂き、SDKへの必要なAPIパッケージのインストールおよび、CF2.5本体にJDKとSDKのパスを設定してください。
SDKでのパッケージのインストールは分からなければ全てインストールしても構いません(時間は掛かりますが)。最低限でもデフォルトで選択済みのものと(Android 4.0 (API 14)はインストールしてください。
動作確認について、Android実機をお持ちであればそれで構いませんが、エミュレータで動作させる場合は、SDK標準のエミュレータはとても重いので、サードパーティー製の別のエミュレータを使用されることをお薦めします。
いくつか種類がありますので、「Android エミュレータ」などで検索してお好みのものをお探しください。
>>ASD さん
返信が遅くなってしまい申し訳ありません。
問題の、ビルドなんですが・・・
無事成功いたしました。
とても感激しております。
非常にわかりやすい説明で、スムースに進みました。
本当にありがとうございました!
また、質問することがあると思いますので、その時はよろしくお願い致しますm(__)m
前回はマウスの速度の事でお世話になりました。
また、マウスの件なのですが2台のマウスをPCに接続しそれぞれで別々の
アクティブオブジェクトを動かす事は出来るのでしょうか。
宜しくお願い致します。
>>DJOさん
Windowsの仕様上、マウスを複数接続してもカーソルは1つだけとなります。複数のカーソルを表示することができるソフトも存在しますが、CF2.5側でどちらのカーソルを使うかの指定などはできないため、やはり不可能です。
ご回答ありがとうございました。
やはり駄目なのですね。
別の方法を模索してみます。
androidで広告システムを導入したい場合
どうしてもDeveloper版がなければいけないのでしょうか?
Android エクスポータとインディゲームクリエイターだけでは
だめなのでしょうか?
>>drさん
http://www.clickteam.jp/product/comparison
http://www.clickteam.com/android-export-module-details
製品比較ページ及び、各製品の紹介ページをご覧ください。
Androidに限らず、基本的にマネタイズオブジェクトはDeveloper版専用となっております。
風車みたいなのを置きたいんですが、
グラを単に回転させる場合ってどうすれば良いのでしょうか。
>>新参1999さん
イベントでアクティブオブジェクトの『スケール/角度』内の『角度を変更』アクションを使用します。
条件は『常に実行』でアクションに『角度を変更』を設定。計算式に『角度を取得』数式を使用して現在の角度を取得して、後ろに+1を付けます(Angle( “アクティブ” ) + 1)。
これで常に回転する処理になります。逆回転させたい場合は+を-に、速度を調整する場合は変更する度数の値を変えます。
なお、角度は0度が基準になるので、元画像は右向きの物を用意してください。
サンプル: https://blog.clickteam.jp/wp-content/uploads/2015/05/cf25_blog_cm_2015-05-29_rotate.zip
もう1個質問します
ストーリー移行するとき、移行先のプレイヤーの開始点を、移行前のイベントエディタで指定するようなことはできますか?
>>新参1999さん
『グローバル変数』を使えばフレームを移動しても値が維持されます。
『グローバル変数』に変更したいX,Y座標を入れておき、次のフレーム移行後、プレイヤーの座標をグローバル変数から引用して変更すれば実現可能です。
ビルドの件はありがとうございましたm(__)m
早速ですが、今回はandroidの音楽についての質問です。
ビデオandroidというオブジェクトで行けると思うのですが、対応している形式の音楽を追加しても反応がありません。
試しに、MP3とogg形式の音楽をプロパティから指定して、クリックをすると再生されるようにしてみたのですが、音楽の再生が行われませんでした。
解決策やその他に使えるオブジェクトなどがありましたら、ご教授のほどよろしくお願い致します。
>>yyyyさん
『ビデオ Android』オブジェクトで再生するには、プロパティで指定したファイルの内、どのファイルを再生するかを指定しなければいけません。
『ビデオのリソース名』アクションでパックしたファイル名を指定してください。その後『ビデオを再生』アクションを実行すれば再生されます。
apkにパックせずに外部ファイルを再生する場合は『ビデオ URL』もしくは『ビデオのファイル名』アクションを使用します。詳しくはヘルプの『ビデオ Android』の項目を参照してください。
なお、もしご質問の内容がゲーム中のBGMを再生するというものでしたら、別に『ビデオ Android』を使わなくとも、標準のサウンド機能で鳴らすことができますよ。
>>ASD さん
回答ありがとうございますm(__)m
無事、音を鳴らすことが出来ました。
オブジェクトでしなくてもよかったんですね^^;
もう1つ質問をお願いします。
アプリを実機で試す時に、別のアプリなのに同じアプリとしてインストールがされます。
説明が難しいのですが・・・
例えば、初めにアプリ1をインストールしていたとします。
その後に、別のアプリ2をインストールすると、アプリ1に上書きされてアプリ1が消えてしまいます。
アプリ名を変えたり、ファイル名を変えたりしているのですが、何故か同じアプリとして扱われます。
解決策があればご教授のほどよろしくお願い致します。
>>yyyyさん
プロパティのAndroidオプションの『パッケージ名』を別名に変えてください。ここでアプリケーションの識別をしているので、同名の場合同じアプリケーションと認識されてしまいます。
>>ASDさん
回答ありがとうございます。
無事解決いたしました。
ありがとうございました。
連続で申し訳ありません。
INIオブジェクトについて質問があります。
アプリを終了した時に、データが保存されるようしたくて、
アプリケーションが終了とフレームが終了した時に、データが保存されるようにしました。
すると、スマホの戻るボタンで終了した場合には、保存されるのですが・・・
ホームボタンでアプリを終了をするとデータが保存されません。
解決策がありましたらご教授のほどよろしくお願い致します。
>>yyyyさん
『ホームボタンを押した』ということを自体を判定する機能は今のところ存在しないようです。
アプリケーションプロパティにて『フォアグランドでない場合にアプリケーションを終了』を無効にすると、バックボタンやホームボタンを押してもアプリが終了されなくなるので誤って押してしまっても消えてしまうことはありません。
アプリを再開した時を判定するには『AndroidPlusオブジェクト』の『App Returning from Pause』条件を使います。
インディーズクリエイター、Developer、エクスポーターのどれかを使えば
windows8アプリってつくれますか?
>>drさん
Windowsストアアプリのことでしょうか?HTML5エクスポーターとMicrosoft Visual Studio Express 2013で作ることができるようです。
英語ですが、開発元の本家Clickteamのフォーラムにて解説されているスレッドがありましたのでご紹介します。
– How create Windows 8 Modern UI applications using HTML5 Exporter.
http://community.clickteam.com/threads/85790-How-create-Windows-8-Modern-UI-applications-using-HTML5-Exporter
– Detailed Guide on How to create a Windows Store App with HTML5 exporter
http://community.clickteam.com/threads/88485-Detailed-Guide-on-How-to-create-a-Windows-Store-App-with-HTML5-exporter
プレイヤー(アクティブ 物理ージャンプとはしご)のプロパティで設定した移動速度を、イベントエディタ等で、速度を変えることはできますか?
>>新参1999さん
動作速度等はイベントで変更可能です。イベントエディタにてオブジェクトのアクションの中から『動作』の項目を選択するとその中にあります。
『動作エクステンション』カテゴリの動作(円動作、ベクター動作など)の制御には『Clickteam 動作コントローラー』オブジェクトを使用します。
回答を頂く前ですが、1つ問題が起きたので質問致します。
フレームで実行をした場合はイベントが反映されるのですが・・・
アプリケーションで実行をした場合は、何故かイベントが反映されなくなりました。
少し調べてみましたら、移動が3フレーム以内ならイベントが反映されます。
× トップ画面⇒ストーリー⇒メイン画面⇒別フレーム
(3フレームをまたいで4フレーム目ではイベントが反映されません。)
○ 別フレーム
(別フレームを、1番目に持ってきてアプリケーションで実行すると反映されます。)
○ トップ画面⇒別フレーム
(別フレームを2番目に持ってきても反映されます。)
○ トップ画面⇒メイン画面⇒別フレーム
(別フレームを3番目に持ってきても反映されます。)
こんな感じですorz
非常に困っております・・・
解決策がありましたらご教授のほどよろしくお願い致します。
>>yyyyさん
こちらでテストした限りでは4フレーム目でもイベントは実行されております。
よろしければ、報告される際は症状が発生しているファイルを提示して頂けると検証しやすいです。
>> ASDさん
ホームボタンの件、ありがとうございますm(__)m
非常に助かります。
4フレーム目が動かない件ですが、、、
非常に言いにくいのですが・・・
申し訳ありません。
私のミスでしたorz
原因はINIオブジェクトでした。
フレーム終了でデータを保存、フレーム開始でデータを読み込む設定にしているのをすっかり忘れていました。
すいませんでしたm(__)m
次から、何かあった場合はファイルを提示致します。。
Macをyosemite、 Xcodeを6.3.2にアップデートし、実機テストしようとしたところ、アプリが進行しなくなりました。
下記の部分にフォーカスされます。
short frame = adPtr->adFrames[raAnimFrame];
「EXC_BAD_ACCESS」が出ています。
もし原因がわかりましたらお教えください。
よろしくお願いいたします。
>>hideさん
申し訳ありません。当方Macを所有しておらず、検証することができません。
開発元の本家Clickteamのフォーラムにて質問中ですので。返答がありましたらご報告させていただきます。
>>hideさん
向こうにて、「V-SyncがONのときに良く似たエラーがあった」という情報を頂きました。もしV-Syncにチェックされているのでしたら外してお試しください。
それでも解決しなければ、問題のファイル(mfaとビルドしたプロジェクトファイル一式)をご提示いただければ、開発元へ検証を依頼できます。
はじめまして。
横スクロールアクションゲームを作成していますが
1点質問させてください。
レイヤーを選択時に設定できるプロパティにある
「水平方向にループ」
「垂直方向にループ」
の使い方について教えて下さい。
おそらく、スクロール時に同じ背景を
繰り返し表示する機能だと思うのですがチェックしても
変化しませんでした(1枚の背景がスクロールするだけ)。
よろしくお願いします。
>>たこやきさん
そのオプションは、フレームプロパティで『仮想の幅』と『仮想の高さ』をフレーム(動作領域)サイズより大きくした場合に効果があります。
仮想フレームを使うと実際のフレームサイズを大きくしなくてもスクロールさせることができます。
仮想フレームのサイズをフレームサイズより大きく設定します。そしてレイヤープロパティの『水平方向にループ』及び『垂直方向にループ』にチェックを入れます。その状態でスクロールさせると、フレームサイズを超えた先で、またフレーム内に置かれていた背景が再び現れ、それが仮想フレームサイズの最後まで繰り返されるようになります。
例えば、遠景レイヤーの背景は同じものが繰り返される、という場合に、このループを使えば、同じものを延々と配置しなくても済みます。
ちなみに、仮想サイズを『-1』にすると終わりのない無限スクロールになります。
ただし、このオプションを活用する場合、フレームサイズを広げられないため、エディタにて編集がし辛くなります。ですので、エディタ上のフレーム(動作領域)サイズは大きく設定しておき、イベントでフレーム開始時に動作領域のサイズを変更するのが良いと思います。
> ASDさん
回答ありがとうございます。
解決致しました。
別件で質問させてください。
CF2.5にはマスク機能はあるのでしょうか。
イメージとしては、以下のような表現を実現する機能です。
1.レイヤー1に背景画像、レイヤー2に円形画像を配置
2.円形画像の部分のみ背景が表示される
はじめまして。
ストップウォッチのようにスタート/ストップで
時間を計測するアプリを作りたいと思っています。
時間のカウントは、変数を使いフレーム数を時間に変換するやり方でやっていますが
ホーム画面やスリープ状態にしたときフレームカウントが一時停止されてしまいます。
スリープ時やホーム画面でも一時停止にならず
フレームカウントを継続するような方法はあるのでしょうか?
もしくは他に時間をカウントするいいやり方があれば教えていただきたいです。
>>やましーさん
アプリがバックグラウンドへ移行すると一時停止するのは仕様のようです。
フレームカウントではなく『日付 & 時間オブジェクト』を使ってリアルタイムの時間から計測するのであれば、一時停止から復帰したときの時刻と比較することで、停止中の時間を加算することができると思います。
一時停止から復帰したことを判定するには『AndroidPlusオブジェクト』の『App Returning from Pause』条件を使います。
変数などに常に時刻を記録。→一時停止から復帰したときの時刻と現在の時刻を比較し、経過した分の時間をカウントに加算。
>ASDさま
ご回答ありがとうございました!
大変助かりました。
重ね重ねで申し訳ありませんがもうひとつ質問させてください。
日付&時間オブジェクトでモードをストップウォッチ(クロノ)
にした時
2・・・5・・・7・・・10・・・12・・・15・・・
と秒数が飛び飛びで表示されてしまいます。(時計のタイプ:デジタル)
試しに
「常に実行」→「カウンターをchrono of(“日付&時間”)」としてみましたが
256・・・512・・・768・・・1024・・・1280
という風に表示されました。
フレームレートは60です。
どうしたらストップウォッチがうまく動くでしょうか?
ご教授いただければ幸いです。
>>やましーさん
Windowsランタイム上で、表示モードがDirect3Dの場合そうなるようです。標準モードでは正常にカウントされます。
バグだと思われますので開発に報告いたします。ご報告ありがとうございました。
なお、Flash、Android、HTML5などWindows以外では正常にカウントされております。
わかりました。原因がわかりほっとしました。ご回答どうもありがとうございました。
Perspectiveを使うと画面が真っ黒になるのですが、どうしたらいいですか?
また、パズドラのようなマッチ3のゲームを作りたいのですがどこかに
説明してるサイトや動画は無いでしょうか?英語でもかまいません。
>>しずえさん
Perspectiveオブジェクトのことでしょうか?グラフィック系のオブジェクトはHWA(Direct3Dモード)との相性が悪いものがほとんどです。
アプリケーションプロパティの『ランタイムオプション』にある『表示モード』を『標準』に変えると表示されると思います。ただしDirect3Dによる高速化の恩恵はなくなります。
Direct3Dモードではエフェクトを使って画像を変化させるのが基本です。ブログ本編の記事にてエフェクトの設定方法とダウンロード先を記載しておりますので色々とお試しください。
パズドラは未プレイなのでよく分かりませんが、以前下記のサイトにて、MMF2(CF2.5の1つ前のソフト)でズーキーパーを作るという企画がありました。
作成過程のファイルがダウンロード可能ですので、参考にしてみてください。
http://prester.org/mmf2/?p=8456
お世話になっております。
別フレームに移動して元のフレームに戻ってきたときに、オブジェクトの位置を前の状態で、そのまま使えるようにしたいのですが、うまくいきません。
INIオブジェクトにオブジェクトの位置の保存とロードがあるのでこれを使うのだと思うのですが・・・orz
ご教授のほどよろしくお願い致します。
>>yyyyさん
INIオブジェクトにオブジェクトの位置の保存とロードで可能ですが、同じオブジェクトが複数存在する場合の対応はできないと思います。
もし単体のオブジェクトに対してもうまくできないならお知らせください。
フレームの状態を再現するなら、『ストーリーボードコントロール』の『フレームの位置を保存』を使う方法もあります。
これは保存した時点でフレームに存在していたオブジェクトの位置と変数やフラグの状態が記録されます。ファイルをロードすると位置と変数・フラグの状態が再現されます。
ただし、Windowsランタイム以外では非対応の機能です。
>> ASDさん
回答ありがとうございます。
わかりました。
Windowsランタイム以外では複数は無理なんですね。
会話用等のメッセージウィンドウを作ろうとしてるんですが、
リッチエディットやフォーマット、文字列などのオブジェクトで、何か適任はありますか?
文字列オブジェクトで今やってるんですが、
テキストがいっぺんに表示されるのですが、1文字ずつ表示とかできませんかね。
たくさんの会話用文字列を扱うのに、適したデータ構造とかあれば教えてください。
>>新参1999さん
https://blog.clickteam.jp/wp-content/uploads/2015/06/cf25_blog_cm_2015-06-13_typewriter.zip
『特別』の『文字列』内にある関数を使うと、指定した指定した文字数分だけ取得するといったことが可能です。
取得する文字数を変数にして1ずつ増やしていけば1文字ずつ表示される処理になります。
以前までは文字列オブジェクトを表示してフレームをスクロールさせると重くなるという問題があったため、他のテキスト系オブジェクトを模索する流れにありましたが、最新ビルドではそれが改善しましたので、文字列オブジェクトでも大丈夫です。
文字データの管理については、慣れてくれば原文文字列の先頭に識別文字を付けて、それによってキャラの顔グラフィックを変えるということも可能だと思います。
もう一つ。
イベントエディタで、「条件を満たさないとき」っていう行はできないのでしょうか。
if文に対するelse文に相当するものです。
行に条件を追加していって、その条件から外れたすべての条件に対して実行される行です。
>>新参1999
標準機能としてはElse条件はサポートされていません。別の行では逆の条件を設定してElseとするしかなさそうです。
エクステンションで『IfElse Nest object』というものがあります(マネージャにあります)。これを使えば一応はIf Elseなイベント群を組むことはできます。
続けて質問をよろしくお願い致します。
Admobのオブジェクトを挿入した状態でビルドしようとすると、エラーになってしまいますorz
↓のようなエラーです。
ご教授のほどよろしくお願い致します。
Buildfile: C:\Users\yyyy\AppData\Local\Temp\AndA96D.tmp\build.xml
-set-mode-check:
-set-debug-files:
-check-env:
[checkenv] Android SDK Tools Revision 24.3.0
[checkenv] Installed at C:\Users\yyyy\Downloads\SDK
-setup:
[echo] Project Name: RuntimeAndroid
[gettype] Project Type: Application
-set-debug-mode:
-debug-obfuscation-check:
-pre-build:
-build-setup:
[getbuildtools] Using latest Build Tools: 22.0.1
[echo] Resolving Build Target for RuntimeAndroid…
[gettarget] Project Target: Android 5.1.1
[gettarget] API level: 22
[echo] ———-
[echo] Creating output directories if needed…
[mkdir] Created dir: C:\Users\yyyy\AppData\Local\Temp\AndA96D.tmp\bin
[mkdir] Created dir: C:\Users\yyyy\AppData\Local\Temp\AndA96D.tmp\bin\res
[mkdir] Created dir: C:\Users\yyyy\AppData\Local\Temp\AndA96D.tmp\bin\rsObj
[mkdir] Created dir: C:\Users\yyyy\AppData\Local\Temp\AndA96D.tmp\bin\rsLibs
[mkdir] Created dir: C:\Users\yyyy\AppData\Local\Temp\AndA96D.tmp\gen
[mkdir] Created dir: C:\Users\yyyy\AppData\Local\Temp\AndA96D.tmp\bin\classes
[mkdir] Created dir: C:\Users\yyyy\AppData\Local\Temp\AndA96D.tmp\bin\dexedLibs
[echo] ———-
[echo] Resolving Dependencies for RuntimeAndroid…
[dependency] Library dependencies:
[dependency]
[dependency] ——————
[dependency] Ordered libraries:
[dependency]
[dependency] ——————
[echo] ———-
[echo] Building Libraries with ‘debug’…
nodeps:
-set-mode-check:
-set-debug-files:
-check-env:
[checkenv] Android SDK Tools Revision 24.3.0
[checkenv] Installed at C:\Users\yyyy\Downloads\SDK
-setup:
[echo] Project Name: facebook
[gettype] Project Type: Android Library
-set-debug-mode:
-debug-obfuscation-check:
-pre-build:
-build-setup:
[getbuildtools] Using latest Build Tools: 22.0.1
[echo] Resolving Build Target for facebook…
BUILD FAILED
C:\Users\yyyy\Downloads\SDK\tools\ant\build.xml:597: The following error occurred while executing this line:
C:\Users\yyyy\Downloads\SDK\tools\ant\build.xml:538: Unable to resolve project target ‘android-10’
Total time: 2 seconds
>>yyyyさん
エラーログ最後にある、「Unable to resolve project target ‘android-10′」とは、API 10が必要であることを示しています。
CF2.5 ビルド284からはAdMobを使う場合はAPI 10が必要になったようです。
– AdMob + Export android = Error
http://community.clickteam.com/threads/92360-AdMob-Export-android-Error?p=664547&viewfull=1#post664547
>>ASDさん
回答ありがとうございます。
SDKマネージャーからAPI10をインストールしたのですが、うまくいきませんでした・・・
今度は以下のようなエラーが出ますorz
ご教授のほどよろしくお願い致します。
Buildfile: C:\Users\yyyy\AppData\Local\Temp\And99B0.tmp\build.xml
-set-mode-check:
-set-debug-files:
-check-env:
[checkenv] Android SDK Tools Revision 24.3.2
[checkenv] Installed at C:\Users\yyyy\Downloads\SDK
-setup:
[echo] Project Name: RuntimeAndroid
[gettype] Project Type: Application
-set-debug-mode:
-debug-obfuscation-check:
-pre-build:
-build-setup:
[getbuildtools] Using latest Build Tools: 22.0.1
[echo] Resolving Build Target for RuntimeAndroid…
[gettarget] Project Target: Android 5.1.1
[gettarget] API level: 22
[echo] ———-
[echo] Creating output directories if needed…
[mkdir] Created dir: C:\Users\yyyy\AppData\Local\Temp\And99B0.tmp\bin
[mkdir] Created dir: C:\Users\yyyy\AppData\Local\Temp\And99B0.tmp\bin\res
[mkdir] Created dir: C:\Users\yyyy\AppData\Local\Temp\And99B0.tmp\bin\rsObj
[mkdir] Created dir: C:\Users\yyyy\AppData\Local\Temp\And99B0.tmp\bin\rsLibs
[mkdir] Created dir: C:\Users\yyyy\AppData\Local\Temp\And99B0.tmp\gen
[mkdir] Created dir: C:\Users\yyyy\AppData\Local\Temp\And99B0.tmp\bin\classes
[mkdir] Created dir: C:\Users\yyyy\AppData\Local\Temp\And99B0.tmp\bin\dexedLibs
[echo] ———-
[echo] Resolving Dependencies for RuntimeAndroid…
[dependency] Library dependencies:
[dependency]
[dependency] ——————
[dependency] Ordered libraries:
[dependency]
[dependency] ——————
[echo] ———-
[echo] Building Libraries with ‘debug’…
nodeps:
-set-mode-check:
-set-debug-files:
-check-env:
[checkenv] Android SDK Tools Revision 24.3.2
[checkenv] Installed at C:\Users\yyyy\Downloads\SDK
-setup:
[echo] Project Name: facebook
[gettype] Project Type: Android Library
-set-debug-mode:
-debug-obfuscation-check:
-pre-build:
-build-setup:
[getbuildtools] Using latest Build Tools: 22.0.1
[echo] Resolving Build Target for facebook…
[gettarget] Project Target: Android 2.3.3
[gettarget] API level: 10
[echo] ———-
[echo] Creating output directories if needed…
[mkdir] Created dir: C:\Users\yyyy\AppData\Local\Temp\And99B0.tmp\google-play-services_lib\bin
[mkdir] Created dir: C:\Users\yyyy\AppData\Local\Temp\And99B0.tmp\google-play-services_lib\bin\res
[mkdir] Created dir: C:\Users\yyyy\AppData\Local\Temp\And99B0.tmp\google-play-services_lib\bin\rsObj
[mkdir] Created dir: C:\Users\yyyy\AppData\Local\Temp\And99B0.tmp\google-play-services_lib\bin\rsLibs
[mkdir] Created dir: C:\Users\yyyy\AppData\Local\Temp\And99B0.tmp\google-play-services_lib\gen
[mkdir] Created dir: C:\Users\yyyy\AppData\Local\Temp\And99B0.tmp\google-play-services_lib\bin\classes
[mkdir] Created dir: C:\Users\yyyy\AppData\Local\Temp\And99B0.tmp\google-play-services_lib\bin\dexedLibs
[echo] ———-
[echo] Resolving Dependencies for facebook…
[dependency] Library dependencies:
[dependency] No Libraries
[dependency]
[dependency] ——————
[dependency] API<=15: Adding annotations.jar to the classpath.
-code-gen:
[mergemanifest] Merging AndroidManifest files into one.
[mergemanifest] Manifest merger disabled. Using project manifest only.
[echo] Handling aidl files…
[aidl] No AIDL files to compile.
[echo] ———-
[echo] Handling RenderScript files…
[echo] ———-
[echo] Handling Resources…
[aapt] Generating resource IDs…
BUILD FAILED
C:\Users\yyyy\Downloads\SDK\tools\ant\build.xml:597: The following error occurred while executing this line:
C:\Users\yyyy\Downloads\SDK\tools\ant\build.xml:649: The following error occurred while executing this line:
C:\Users\yyyy\Downloads\SDK\tools\ant\build.xml:694: Execute failed: java.io.IOException: Cannot run program "C:\Users\yyyy\AppData\Local\Temp\And99B0.tmp\google-play-services_lib\${aapt}" (in directory "C:\Users\yyyy\AppData\Local\Temp\And99B0.tmp\google-play-services_lib"): CreateProcess error=2, 指定されたファイルが見つかりません。
at java.lang.ProcessBuilder.start(ProcessBuilder.java:1048)
at java.lang.Runtime.exec(Runtime.java:620)
at org.apache.tools.ant.taskdefs.launcher.Java13CommandLauncher.exec(Java13CommandLauncher.java:58)
at org.apache.tools.ant.taskdefs.Execute.launch(Execute.java:428)
at org.apache.tools.ant.taskdefs.Execute.execute(Execute.java:442)
at org.apache.tools.ant.taskdefs.ExecTask.runExecute(ExecTask.java:628)
at org.apache.tools.ant.taskdefs.ExecTask.runExec(ExecTask.java:669)
at org.apache.tools.ant.taskdefs.ExecTask.execute(ExecTask.java:495)
at com.android.ant.AaptExecTask.execute(AaptExecTask.java:703)
at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:292)
at sun.reflect.GeneratedMethodAccessor4.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:497)
at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106)
at org.apache.tools.ant.Task.perform(Task.java:348)
at org.apache.tools.ant.taskdefs.Sequential.execute(Sequential.java:68)
at com.android.ant.IfElseTask.execute(IfElseTask.java:120)
at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:292)
at sun.reflect.GeneratedMethodAccessor4.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:497)
at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106)
at org.apache.tools.ant.Task.perform(Task.java:348)
at org.apache.tools.ant.taskdefs.Sequential.execute(Sequential.java:68)
at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:292)
at sun.reflect.GeneratedMethodAccessor4.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:497)
at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106)
at org.apache.tools.ant.Task.perform(Task.java:348)
at org.apache.tools.ant.taskdefs.MacroInstance.execute(MacroInstance.java:396)
at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:292)
at sun.reflect.GeneratedMethodAccessor4.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:497)
at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106)
at org.apache.tools.ant.Task.perform(Task.java:348)
at org.apache.tools.ant.Target.execute(Target.java:435)
at org.apache.tools.ant.Target.performTasks(Target.java:456)
at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1393)
at org.apache.tools.ant.helper.SingleCheckExecutor.executeTargets(SingleCheckExecutor.java:38)
at org.apache.tools.ant.Project.executeTargets(Project.java:1248)
at org.apache.tools.ant.taskdefs.Ant.execute(Ant.java:441)
at org.apache.tools.ant.taskdefs.SubAnt.execute(SubAnt.java:306)
at org.apache.tools.ant.taskdefs.SubAnt.execute(SubAnt.java:221)
at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:292)
at sun.reflect.GeneratedMethodAccessor4.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:497)
at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106)
at org.apache.tools.ant.Task.perform(Task.java:348)
at org.apache.tools.ant.taskdefs.Sequential.execute(Sequential.java:68)
at com.android.ant.IfElseTask.execute(IfElseTask.java:120)
at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:292)
at sun.reflect.GeneratedMethodAccessor4.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:497)
at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106)
at org.apache.tools.ant.Task.perform(Task.java:348)
at org.apache.tools.ant.Target.execute(Target.java:435)
at org.apache.tools.ant.Target.performTasks(Target.java:456)
at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1393)
at org.apache.tools.ant.Project.executeTarget(Project.java:1364)
at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41)
at org.apache.tools.ant.Project.executeTargets(Project.java:1248)
at org.apache.tools.ant.Main.runBuild(Main.java:851)
at org.apache.tools.ant.Main.startAnt(Main.java:235)
at org.apache.tools.ant.launch.Launcher.run(Launcher.java:280)
at org.apache.tools.ant.launch.Launcher.main(Launcher.java:109)
Caused by: java.io.IOException: CreateProcess error=2, 指定されたファイルが見つかりません。
at java.lang.ProcessImpl.create(Native Method)
at java.lang.ProcessImpl.(ProcessImpl.java:386)
at java.lang.ProcessImpl.start(ProcessImpl.java:137)
at java.lang.ProcessBuilder.start(ProcessBuilder.java:1029)
… 68 more
Total time: 2 seconds
>>yyyyさん
それは最新のSDKのバグによるもののようです。
公式サイトにて対応方法をご案内しております。もしくはアップデート等の対応がされるまでしばらくお待ちください。
– Android ビルドとリリース|Clickteam 公式サイト
http://www.clickteam.jp/tutorials/android-build-steps
>>ASDさん
回答ありがとうございます。
HPの更新が行われていたんですね。
ゆっくり見てみますm(__)m
質問の1つに答えてもらっていない、、、
はじめまして、葉丸と申します。
画像を回転させたい、と思っているのですが、
いざ回転させてみると、「画像の左上の端」を中心に回ってしまいます。
画像の中心を軸に回転させるためには、どうすればよいのでしょうか…?
(歯車の円画像を、軸中心にまわしたいです)
お忙しいところすみません。よろしくお願いいたします。
>>葉丸さん

それは画像のホットスポットが左上に設定されてしまっているからでしょう。
アニメーションエディタで目玉のアイコンのボタンをクリックするとホットスポットの位置を変更することができます。
ホットスポットの位置が画像の中心とみなされ、アニメーションや回転、オブジェクトの座標位置等に関わってきます。
詳しくは、CF2.5ヘルプの『オブジェクト』→『共通のプロパティ』→『動作』→『物理』→『ホットスポット』のページを参照してください(『ホットスポット』で検索してもヒットします。)。
ASD様
丁寧な解説を、ありがとうございました!
今度何か似たようなことがありましたら、
ホットスポットに気をつけてみようと思います。
それでもまだ、左上端が中心になってしまっているので、自身の命令の仕方が良くないのかな、と思っています。
命令文
・主に実行
(画像):角度を timer + 1 に変更(品質=1)
質問を重ねてしまうこと、申し訳ありません。
「方法が違うよ!」などありましたら、
ぜひ、教えていただければと思っています。
>>葉丸さん
解決しない場合はファイルをご提示頂ければ検証いたします。
よろしくお願いいたします。
お世話になります。また質問させてください。
CF2.5にはマスク機能はあるのでしょうか。
イメージとしては、以下のような表現を実現する機能です。
1.レイヤー1に背景画像、レイヤー2に円形画像を配置
2.円形画像の部分のみ背景が表示される
>>たこやきさん
公式ではマスク機能はありませんが、過去に海外ユーザーが作成したエフェクトパックの中にできるものがありました。
しかし現在は公開されていないようなので問い合わせ中です。判りましたら改めてご案内いたします。
>ASD様
回答ありがとうございます。
情報が入りましたらお知らせ頂けると助かります。
ASD様
ありがとうございます!
Googleドライブに上げ、リンクをWebsiteの欄に記入しております。
上から3行目に、うまく回転できない命令文があります。
どうか、よろしくお願いいたします・・・!
>>葉丸さん
拝見しました。
風車のオブジェクト(アクティブ 2)のホットスポットが左上のままになっています。中央に変更すれば直ります。
また回転ですが、現在の角度を取得してそれに+1(逆回転の場合は-1)することで可能です。
数式エディタ下部のオブジェクトリストからアクティブオブジェクト(風車)を右クリックし、『スケール/角度』から『角度を取得』を選択します。
具体的には以下のような式になります。
Angle( “アクティブ 2” ) + 1
いつもお世話になっております。
可変文字列やパラグラフのインデックス取得で、マイナス数値で呼び出しても、エラーになったりしませんでしょうか?
>>新参1999さん
エラーにはならないと思いますが、インデックスはマイナスからは始まっていないので取得できません。
一部のパラメータは-1に対応しているものもあります(例:高速ループの回数を-1とすると無限ループ、リストオブジェクトの検索など)。
いつものことながら、追加質問。
オブジェクトのポインタ呼び出しというか、すべての(もしくは一部)オブジェクトをインデックス取得して呼び出しみたいなことはできませんでしょうか。
C言語的に言うと、
void *ob = &(アクティブ1) //アクティブ1のアドレスを取得
ob->変数A = 0 //アドレスからアクティブ1の変数Aを呼び出し
みたいな。
>>新参1999さん
条件の『新規オブジェクト』にある『値を参照してオブジェクトを選択』を使用するとオブジェクトに振られている値からオブジェクトを選択することができます。
オブジェクトはフレームに作成されると、『固定値』というユニーク値が自動的に振られるので、『固定』にて固定値を入力すれば、その固定値を持つオブジェクトが選択されます。
固定値でなくとも、自前で変数にIDを割り振ってもいいかと思います。
なんとなく、固定値をいじりたいんだが、構文エラーになってしまう、、、
変数A( 変数B(”アクティブ1”) ) //アクティブ1の変数B(Fixed)で、変数Aを参照(したい)
っていう感じなんですが、どこか間違ってますか?
>>新参1999さん

追加情報です。全てのオブジェクトを同種のオブジェクトグループに設定してください(ただし、アクティブとカウンタなど、オブジェクト自体の種類が異なると同種のグループに設定しても区別されます)。
イベントでは変数や文字列を取得するときにはオブジェクトグループから取得するよう設定します。そうすれば、グループに属しているオブジェクトの中から、条件によってピックされたものの内容が取得できるようになります。
×固定値をいじる
○固定値を使いたい
Fixedで良いんだよね? 固定値から、可変文字列の参照ってどうやるのでしょうか?
>>新参1999さん
変数・文字列の取得は個々のオブジェクトの数式からでしか取得できないようです。
つまり、Aというオブジェクトが複数存在していて、その中から条件に合致するものをピックして取得、ということはできるのですが、種類に関係なくすべてのオブジェクトから取得、はできないということです。
文字列を取得するオブジェクトの種類を限定するか、異なる種類のオブジェクトに渡って選択する必要がある場合は、あらかじめ一か所に集めておくのが良いかと思います。
ASDさん。
おかげさまでビルドを行うことが出来ました。
改めましてお礼を申し上げます。
ありがとうございました。
Admobについて新しく質問をお願い致します。
一度、実機で広告を確かめたいのですが、早速問題にぶつかりましたorz
説明動画を見まして、登録方法や広告ユニットIDをオブジェクトのAdmob IDに入れることは理解できました。
なので試しに、広告ユニットIDを入れてフレーム開始でバナーが表示されるようにして実機で試したのですが、広告は表示されませんでした。
そこで、もう1度ヘルプを見ていると「デバイスのテスト」という項目を発見しました。
デバイスのハッシュIDがいるみたいで、GoogleのHPも見たのですがハッシュ化されたデバイスIDをどうのように取得すればいいのか理解が出来ません。。。
長々と書いてしまい申し訳ありません、
まとめますと、実機で広告を1度みたいということになります。
よろしければ、手順などのご教授をよろしくお願い致します。
>>yyyyさん
デバイスIDの欄には*(アスタリスク)を入れると自動で取得されるようになっているとのことです。
– How Admob test device
http://community.clickteam.com/threads/90542-How-Admob-test-device?p=652233&viewfull=1#post652233
– test device id for admob?
http://community.clickteam.com/threads/85212-test-device-id-for-admob?p=622180&viewfull=1#post622180
こちらではテストできる環境にないので確認できていませんが、お試しください。
>>ASDさん
回答ありがとうございます。
いつも助かります。
また、よろしくお願い致しますm(__)m
ASD様
検証と修正の方法を、ありがとうございました!
昨日今日と挑戦したものの、
教えの通りやれていないのか、今はまだ変な回転をしています。
良く分かっていないだけかもしれませんが、もう少し頑張ってみてできないようでしたら、また相談しに来たいと思います。
お手数おかけしました・・・!そして、ありがとうございました!
ありがとうございます。
以前に説明してくれた、文字列データの扱いで、先頭文字を取得する方法を教えてください。
>>新参1999さん
サンプルをどうぞ。
https://blog.clickteam.jp/wp-content/uploads/2015/06/cf25_blog_cm_2015-06-20_identifer_character.zip
先頭の識別子を取得するには『左サブ文字列を抽出』を使い識別子の文字数分を指定して取得。取得した識別子に応じたアクションを実行後、識別子以降の文字列を取得するには『中央サブ文字列を抽出』を使用して開始文字数を識別子以降の文字数に指定します。
文字列オブジェクトの、パラグラフの数って、上限があるんですか?
プログラム経験の全くない素人です。
ものすごく初歩的だと思う質問を2つさせてください。
1.あるオブジェクトを任意の時間で任意の距離を移動させる(たとえば1秒でX座標を30移動させる等)にはどうすればよいのでしょうか?
2.条件1を満たした際に動作1を実行し、その後でさらに条件2を満たした際に続けて動作2を実行させる(条件1かつ条件2でも、条件2のみでもなく、条件1のみで動作1を実行し、その後に条件2が満たされた時に動作させるという意味です。)にはどうすれば良いのでしょうか?
>>超超初心者さん
1.オブジェクトの『X(Y)座標を変更』アクションを使用します。数式でオブジェクトの『位置』→『X(Y)座標』を選択すると、現在の座標が取得できますので、それに+1すれば現在の座標から+1ドット移動する動作なります。
時間ですが、タイマー条件で1秒と設定してもいいのですが、ゲーム用途であればフレームカウントで計測するほうがおすすめです。
サンプルプログラムです。
https://blog.clickteam.jp/wp-content/uploads/2015/06/cf25_blog_cm_2015-06-25_move_x_pos.zip
2.動作1開始時にフラグ等をONにして、動作終了時に動作1でONにしたフラグを条件に加えれば『動作1の動作が終了した時』と規定することができるかと思います。
そこで動作2へ移行すれば『動作1実行後に動作2を実行』という処理になります。
ちょっとご質問の要旨を理解できていないかもしれませんので、お望みのものでなければ再度ご質問ください。文章だけで説明し難ければ図示等があると解りやすいです。
サンプルプログラムです。
https://blog.clickteam.jp/wp-content/uploads/2015/06/cf25_blog_cm_2015-06-25_next_movement.zip
もしもーし
上限っていうか、たくさん作れるのか、そうでも無いのか聞きたい。
会話イベたくさん用意すると、データ構造に悩むんだよ。
開発進まないから教えてく下さいお願いします。
>>新参1999さん
お返事が遅れまして申し訳ございません。
MMF2/CF2.5の様々な機能ごとの上限は、開発元によって言及されているものとそうでないものがあります。
文字列オブジェクトのパラグラフ上限について公式の発言は見つけられませんでしたが、下記のスレッドでは大体1000程度は余裕ではないかと見られております。
– Some quick questions on limits.
http://community.clickteam.com/threads/50546-Some-quick-questions-on-limits?p=374446&viewfull=1#post374446
なお、公式に発表されている上限については下記のアドレスをご参照ください。
– Nivrams MMF2 Projects(『MMF2 Tech Manual v5.1』PDF内の52ページ)
http://www.castles-of-britain.com/mmf2projects.htm
– テクニック集/MMF2の様々な上限 – Multimedia Fusion 2 Wiki*
http://wikiwiki.jp/mmf2/?%A5%C6%A5%AF%A5%CB%A5%C3%A5%AF%BD%B8%2FMMF2%A4%CE%CD%CD%A1%B9%A4%CA%BE%E5%B8%C2
なんかいっぱい作れたわ。自己解決
ではもう一個質問
新規条件→特別→条件を制限→繰り返す
ってのは、その行をループ実行するってことでいいんでしょうか?
ループ命令みたいなのがありそうなんですが、どうすればできますか。
>>新参1999さん
『繰り返す』で回数を指定すると、そのイベントはフレーム実行中その回数までしか実行されなくなります。
例えば『5回繰り返す』と設定すると、そのイベントは5回実行されると、その後は付随している条件を満たしていたとしても二度と実行されません。
ASD様
お世話になっております!葉丸です。
やっと、回転ができるようになりました!
より楽しい画面づくりができそうです!
ここにお礼を書いて良いものかわからないのですが、
とても丁寧に教えてくださったこと、本当にありがとうございました!
なるほどね。
ループじゃなくて、回数制限付きの条件ってことか。
だんだん、文字列のデータ構造も決まりかけて来たし、アリガトウございました。
Andoroidでビルドして、Android実機でプレイすると、一部の箇所でサウンドと音が鳴りません。PCでは鳴るのですが原因は何が考えられるでしょうか?ご教授ください。
補足ですがビルドは「すべて」を選択すればよろしいのでしょうか?
※他に「アプリケーション」と「インストールプログラム」がありますが違いは何でしょうか。併せて教えていただければと思います。
>>RedSさん
AndroidとWindowsでは仕様が異なりますので同じ動作をするとは限らないことにご留意ください。
考えられるとすれば、その箇所のみ外部ファイルを参照するアクション(『サウンド”ファイル”を再生』アクション)が使われていて、パスが通っていないのかもしれません(データストレージへのパスは『Androidオブジェクト』で取得することができます)。
再度ご確認ください。
ビルドオプションの『すべて』は、複数のmfaをロードしている場合にそのすべてを一度に(実際には連続で順番に)ビルドするものです。
『インストールプログラム』は、アプリケーションで必要なファイル一式を格納できるインストーラーを作成する機能です。
配布に際してインストーラーが必要でなければ、通常は『アプリケーション』を選択してください。
ASD様
非常に丁寧なご回答ありがとうございます。参考にしまして引き続き製作をしていきます。
>ASD様
回答いただき、ありがとうございました。
いただいたサンプルを元にこれから色々と試してみます。
ところで、ひとつ目のサンプルの下側について教えてください。
変数Aが、0,1,2と繰り返し、その中で変数A=1のときだけ、1ドット移動させるということだと思うのですが、これでなぜ2フレームに1ドット移動となるのかがわかりません。
初歩的な質問ばかりで申し訳ないですが、お願いします
>>超超初心者さん
イベントエディタに記述されたイベントは上から順にチェックされ、条件を満たしていればその行に記述されたアクションが実行されます。
最後までチェックし終わると、また最初からチェックを繰り返します。このループを『イベントループ』と呼びます。
イベントループは毎フレーム行われます(フレームレートが60なら1秒間に60回)。ですので最初のループでは変数=1なので1ドット移動が実行されますが、次のフレームでは変数が2になっているので1ドット移動は実行されません。
よってオブジェクトの移動は1フレーム置きになり、1秒(60フレーム)で半分の30ドットの移動になります。
ちなみに、変数は2になったと同時に0になるので、実際は1→0を繰り返しています(座標移動イベントの前に変数追加イベントがあるので最初が1になるため、1の時に移動する条件になっています)。イベントの順番により、変数が0から始まるか1から始まるかが変わったり、それにより、組み方によっては1フレーム遅延して動作してしまうといった事態にもなり得ますので、イベントの順番は結構重要な要素です。
ASD様
わかりやすい解説ありがとうございました。
やっと意味がわかりました。
これで基本的な条件分岐は作れると思います
はじめまして、よろしくお願いいたします。
リッチエディットボックスを使って、画像をドラックして貼付けたいのですが、
画像データは貼付きますが、画像が表示されません。
画像表示はムリなんでしょうか?方法があれば教えてください。
>>tyamaoさん
こちらでも試してみましたが、外部ファイルをドロップするとリンク扱いになりますね(元ファイル参照ではなくデータ自体は埋め込まれているようです)。
ただ、Wordなどで画像を埋め込んだRTFであれば、CF2.5で開いても画像が表示されました。
どうもそういう仕様のような感じがしますが・・・。開発元より発表があればまたご報告いたします。
ちなみに、リッチエディットでなくとも、単に外部画像の表示であれば、『アクティブピクチャ』等で可能です。
>>tyamaoさん
ユーザーが自由に外部画像の挿入はできませんでしたが、あらかじめ用意した画像であれば表示状態で埋め込むことができました。
1.用意したい画像を別のエディタ(ワードなど)でRTFに埋め込んだ状態で保存する。
2.それをテキストエディタ(メモ帳など)で開くとコード化された状態で表示される。
3.そのコードをコピーしてCF2.5アプリの文字列オブジェクトのパラグラフなどに持たせておく。
4.画像を埋め込みたいタイミングでそのコードをリッチエディットへ追加する。
5.表示状態でリッチエディットに表示される。
– 参照:Can the rich edit object insert & display the image file?
http://community.clickteam.com/threads/92781-Can-the-rich-edit-object-insert-amp-display-the-image-file?p=666947&viewfull=1#post666947
ASD様
早々のご回答ありがとうございました。
いつもお世話になっております。
今回は、androidの証明書についての質問をお願い致します。
生成は説明を見ながらなんとか行うことが出来ました。
ですが、リリースモードでビルドするとnot foundとなってしまいます 。。。
そこで、質問なのですが説明にあるキー名とは↓のどの部分になるのでしょうか??
keytool -genkey -v -keystore d:\great-release-key.keystore -alias great_key_name -keyalg RSA -keysize 2048 -validity 10000
いろいろ試してみたのですが、私には出来ませんでしたorz
よろしければご教授のほどよろしくお願い致します。
>>yyyyさん
keytool -genkey -v -keystore d:\great-release-key.keystore -alias great_key_name -keyalg RSA -keysize 2048 -validity 10000
上記の場合、great_key_nameがキー名となります。
そこわかりにくいですね説明変えたほうがいいと思います。
>>ASD さん
回答ありがとうございます。
無事、成功しました!
great_key_nameを指定して、ビルドを行ったと思っていたのですが、勘違いだったようです・・・。
ありがとうございました。
続けて、Admobについての質問をお願い致します。
簡潔に言いますと、広告が表示されません。
少し調べると、テストバナーが表示されるIDを見つけました。
それを試したところ、無事テスト用の広告は表示されました。
ですが、自分で設定した広告は表示されませんorz
そこで、手順の確認をしたいので間違っている箇所がありましたら、ご指摘をお願い致します。
1、Admobで広告を設定する。
2、広告ユニットIDをAdmob IDに入れる。
3、条件で広告が表示されるようにする。
繰り返しになりますが、テスト用バナーでは行けました。
自分で設定する場合は何かしないと行けないのでしょうか?
ご教授のほどよろしくお願い致します。
>>yyyyさん
AdMobオブジェクトに『最後のエラー』という数式があります。うまく動作しない場合、この数式を使ってエラーを調べることができます(文字列オブジェクト等に代入)。
例えば『Ad Code Error』と出た場合は入力したIDが間違っているか有効でない等、です。
ご自身のIDの場合にどういうエラーが出ているか一度ご確認ください。
>>ASD さん
回答ありがとうございます。
IDの消し忘れでコードエラーとなっていましたorz
無事、表示することが出来ました。
ありがとうございました!
初めて投稿します。
作成したアプリを実機で試したいのですが、うまくできません。
PCからUSB経由でスマホにダウンロードするイメージでできるものと思ってました。
使用しているPCがwindowsなのがまずいのか、SDK ManagerからAndroid SDK ToolsやSDK Platformをインストールする程度では物足りないのかよくわかりません。
ご回答よろしくお願いします。
>>wineさん
Android SDKにて『Google USB Driver』がインストールされているかご確認ください。
また、各端末メーカー毎にそれぞれのADB/USBドライバーが必要な場合があります。詳しくは各端末メーカーのサポートページをご覧ください。
Android端末はUSBデバッグモードにして『提供元不明アプリ』も許可しておいてください。
Android端末とPCをUSB接続しCF2.5の『ビルド後実行』をクリックすると実機へ転送されます。
ASDさん
アドバイス通りにビルド後実行までやってみましたが、
今度は「Java SDK(JDK) version 1.6/1.7」のインストールが必要であるというメッセージが表示され、正しく転送されませんでした。
調べてもそれらしいのがなかったので、Java SDK SE 1.7.0.30でダウンロードしてみましたが、改善されませんでした。
他に問題があるのでしょうか。
>>wineさん
こちらのページにてAndroidアプリビルドの手順を説明しておりますので一度ご覧ください。
– Android 簡単ビルドの手順|Clickteam 公式サイト
http://www.clickteam.jp/tutorials/android-build-steps
アドバイスありがとうございます。
ただ使用しているPCが64GBのタブレットのため、容量不足が指摘されました。
ファイルを圧縮したりいろいろ手を打ちましたが、おそらく完全に転送に至ることは難しそうです。
新しく質問をお願い致します。
今回は、タップの感度についてです。
大きいオブジェクトはタップをすると反応するのですが、小さめのオブジェクトは反応が悪いです。
何か設定などで変えることはできないのでしょうか??
ご教授のほどよろしくお願い致します。
>>yyyyさん
実際のオブジェクトより1~2回り大きい非表示のオブジェクトをタッチの判定用として位置を同期させ、判定をタッチすると動作するように組むのはどうでしょうか?
>>ASD さん
返信が遅れてしまい申し訳ありません。
回答ありがとうございます。
いいですね!
その案を使わせていただきますm(__)m
ASDさん。
2つの質問をお願い致します。
1、オブジェクトをX、Yで指定した場所へ向かって移動するようにしたいのですが、何か方法はないでしょうか??
条件で、1秒ごとに移動するようにすればカクカク動いて、不自然になってしまいます。
2、AがBの一定の距離に入った時に、Bが攻撃をするようにしたいのですが良い方法はないでしょうか??
ご教授のほどよろしくお願い致します。
>>yyyyさん
オブジェクトを指定座標へ移動させるのは『MoveItオブジェクト』が簡単です。マネージャからダウンロードできます。
オブジェクトと指定座標までの距離は『位置』→『指定座標間との距離』数式を使用します。
サンプルプログラムです。
https://blog.clickteam.jp/wp-content/uploads/2015/07/cf25_blog_2015-07-05_moveit_obj_distance.zip
>>ASDさん
お礼が遅れてしまい申し訳ありません。
回答ありがとうございます。
移動させるのはオブジェクトがあったんですね。
サンプルプログラム、非常にありがたいです。
ありがとうございます!
また何かありましたらよろしくお願い致しますm(__)m
はじめまして。いつも記事を楽しみにさせて頂いております。
MoveItオブジェクトのサンプルを拝見しまして、
簡単な戦略シュミレーションゲームを
作ってみたくなり、挑戦中です。
ですが、初心者なので、なんとかここまで作ったところで躓いております。
文面では説明が難しいのでお手数ですが、ファイルを見て頂けないでしょうか?
http://ux.getuploader.com/mmf/download/895/%E6%88%A6%E7%95%A5%E3%82%B7%E3%83%A5%E3%83%9F%E3%83%AC%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3%E3%82%B2%E3%83%BC%E3%83%A0%E9%96%8B%E7%99%BA%E4%B8%AD.mfa
敵味方の「行動範囲」を示すオブジェクトがたくさん配置されているのが
ご覧いただけると思いますが、問題がありまして
現状、初期位置から動かすことが出来ません。
ですので1ターン目は問題ないのですが、2ターン目以降、
ゲームが進行しません。
この「行動範囲」オブジェクトを各ユニットの位置と相対関係を維持したまま
追従、移動させたいのです。
ひとつやふたつならなんとかなりますが、
なにしろ数が多くて困ってます。
当然ユニットが増えれば更に倍増しますし、
他に索敵範囲なども作成し、追随させる必要があるので、
ひとつひとつのオブジェクトに命令するのは煩雑になり過ぎてしまい、
現実的ではありません。
手っ取り早く、「同じ種類のオブジェクト」を「複数ごっそりまとめて」
追随させる方法は無いものでしょうか?
どうかご教示よろしくお願いいたします。
>>もくずさん
はじめまして。どうもありがとうございます。記事の更新がほとんどなく申し訳ありません。
ご質問についてですが、提示頂いたファイルを改変してみましたのでご覧下さい。
– サンプル
https://blog.clickteam.jp/wp-content/uploads/2015/07/cf25_blog_2015-07-12_slg_kai.zip
フレーム1では範囲オブジェクト1個ずつ位置合わせイベントを記述。フレーム2では1種類の位置合わせイベントですべてのオブジェクトを並べています。
同じオブジェクトが複数登場する場合、『ForEachループ』を回します(各オブジェクトの『カウント』内にある『各オブジェクトにつき』アクション)。
ループを回した上で親オブジェクトの固定値を子オブジェクトに持たせて、それを元に結び付けるのがポイントです。
今回は味方・敵ユニットが共に1体ずつしかいないので実はループが無くても動作しますが、今後ユニットが2体以上になってくると必要になります。
ASD様
ご教示ありがとうございました。
わざわざ作っていただき本当に感謝しております。
動作はこれで完璧です。これをベースに引き続き
作っていこうと思います。
ループと通し番号はまだよくわかっていません。
概念はなんとなくわかるんですが、
使いどころがよくわからないというか…
なるほど、こういう場面で使うんですね。
いろいろと目から鱗でした。
解析に努めつつ、精進していこうと思います。
貴方は日本CF2.5界の至宝です。
私自身がそうであったように
貴方の作成された大量のコンテンツは
今後も迷い人の良き道標となることを
願ってやみません。
タイトル画面で指で上下にスクロールできるようにするにはどのように作成したらいいのでしょうか。
ストーリーボードコントロールからスクローリングがあるので、それをもとに作成するのかと思ってたのですが、よくわかりません。
ご回答よろしくお願いします。
>>wineさん
最も単純なところでは、画面全体を覆うサイズのアクティブにドラッグ&ドロップ動作を設定し、そのオブジェクトをスクロールの中心に据えるという方法です。
– サンプル
https://blog.clickteam.jp/wp-content/uploads/2015/07/cf25_blog_2015-07-12_touch_scroll.zip
もっと言うと勢い良くはじくと離してもしばらくスクロールする機能もほしいところですが、そちらはそのものズバリのスレッドが本家フォーラムにありましたので、そちらをご覧下さい(※サンプルのダウンロードにはログインが必要です)。
– Vertical scrolling swipe gesture
http://community.clickteam.com/threads/88734-Vertical-scrolling-swipe-gesture
質問をお願い致します。
よくRPGなどであるように、プレイヤーが名前を好きな名前に変えられるようにしたいのですが、何か方法はありますでしょうか??
何か方法がありましたら、ご教授のほどよろしくお願い致します。
>>yyyyさん
グローバル文字列にユーザーが設定した名前を入れて、テキストなどプレイヤー名を表示する部分にグローバル文字列を代入します。
名前を入力させる方法は、エディットボックスを置いてキーボードから入力させてもいいですし、50音を並べた画面でカーソルを動かして入力させる昔ながらの画面を構築しても良いでしょう。
yyyyさんの場合はAndroidアプリを作成中のようですので直接入力が良いのではないでしょうか。
>>ASDさん
回答ありがとうございます。
そんな方法があるんですね。
勉強になります・・・。
ASDさんの仰る通り、直接入力でやってみます。
続けてもう1つ質問をお願い致します。
Admobの、インターステンシャル広告の表示をやりたいのですが、うまく行きません。
Admobのサイトで新しい広告ユニット(動画広告)を作成して以下の事を試しました。
まず、画像をタップすると表示されるようにしてみたのですが、何も起きませんでした。
次に、画像をタップするとリクエストの作成と表示されるようにしてみたのですが、アプリがエラーで終了しました。
結果、出来ませんでしたorz
方法がありましたら、ご教授のほどよろしくお願い致します。
ASD様 複数の数値を一つのグループとして管理し、必要に応じて読みだしたり、数値を書き替えたりする適切な方法がありましたら教えてください。
配列でできるかと思い、外部で作成したCSVやテキストを読み込ませようとしましたが、うまくいかず。
ちなみにやろうとしていることは、0から99の内、ランダムで一つの数値を選択し、その数値にひもづいている5つの数値を読み出すということです。
よろしくお願いいたします
ASD様
追記です。
iniファイルを使えば可能かとは思うのですが、表のメンテナンスが楽なのでCSVの取り扱いができれば、と思っております。
また現在作ろうとしているのはiPadアプリなのですが、iniファイルの挙動がまだ分かっておらず、フレームをまたいで使えるのか、アプリ終了時にアプリ実中に変更した値をiniに保存し、次回起動後に引き継がれることなど、も疑問に思っております。
分かりづらくて申し訳ございませんが、アドバイスいただけると助かります
はじめまして。
ご質問になります。
スマホで放置ゲー(ねこあつめのような)を作りたいと思っています。
時間経過の部分で何か効率のよいやり方がないかと検討しています。
例えば、
・エサAを設置するとn時間後にキャラAが登場。
・n時間以上経過するとキャラAは登場しない。
・アプリを閉じていても時間経過は有効。
・将来的にキャラの種類の増減を見越してキャラ単位で管理したい。
というような設計は可能でしょうか?
>>mrsさん
CF2.5のアンドロイドアプリは、バックグラウンドへ移動すると終了もしくは一時停止する仕様となっておりますので、『裏で動き続けるアプリ』は作成できません。
『日付 & 時間オブジェクト』を使って常に時刻を記録し、再開したときの時刻と比較して経過時間を算出し、それまでに起きたであろうイベントを実行させるのが良いかと思います。
バックグラウンドへ移行しても終了しない(一時停止する)ようにするには、アプリケーションプロパティのAndroidオプションの『フォアグラウンドでない場合にアプリケーションを終了』のチェックを外します。
バックグラウンドからフォアグラウンドへ戻った(一時停止が解除)ことを判定するには『AndroidPlusオブジェクト』の『App Returning from Pause』条件を使います。
>ASD様
ありがとうございます。
続けての質問で恐縮ですが、
>『日付 & 時間オブジェクト』を使って常に時刻を記録し、再開したときの時刻と比較して経過時間を算出し
こちらについて、例えば18:00→21:00であればその差で経過時間を判別できると思うのですが、18:00→翌日17:00、3日後の19:00という具合に日付を跨いだ経過時間の取得はどのように行えばよろしいでしょうか?
>>mrsさん
『日付 & 時間オブジェクト』に現在までの経過時間を一発で取得できる機能があればよかったのですが、無いので以下のサンプルのように力業で計算してみました。
https://blog.clickteam.jp/wp-content/uploads/2015/07/cf25_blog_2015-07-26_get_elapsed_time.zip
ただ、これも問題がありまして、『1ヶ月の日数は毎月同じではなくバラバラ』という問題に詰まりました。このサンプルでは2592000秒(30日分)を掛けていますが、31日ある月や2月のように30日未満の月では差異が生じてしまいます。
というわけで、結局は使えないサンプルとなってしまいました。
本家にトータルの経過時間を取得する機能を追加してもらえないか要望を出してみましたが、あまり期待しないでください。
>ASD様
時間経過のサンプルありがとうございます。
頂いたものを参考に使ってみようと思います。
また別途ご質問で恐縮なのですが、板の上にオブジェクトを置いて、その板を傾けるとオブジェクトも滑り落ちていくような挙動を作りたいと思っています。物理-静止や物理-ボールなどいろいろ試しているのですが、オブジェクトが板を貫通してしまったり、板を傾けても斜面を滑ってくれなかったりします。
表現したいことは、
・板の上にオブジェクトが載っている。
・ユーザー操作で板をシーソーのように傾ける。
・板の上に置いてあるオブジェクトが傾きに合わせて移動する。
という感じになります。
お手数をおかけしますが
よろしくお願いいたします。
>>mrsさん
板オブジェクトの動作は『物理 背景』に設定し、その中の『障害物』オプションを『障害物』に設定してください。
上に乗るオブジェクトとの衝突条件は『背景と衝突』を使用します。
当然ですが、上に乗るオブジェクトも物理動作である必要があります。
– サンプルプログラム
https://blog.clickteam.jp/wp-content/uploads/2015/08/cf25_blog_2015-08-01_physics_seesaw.zip
スクロールについての回答の件ありがとうございました。
実はまだありまして、画面サイズ500×1600に設定し、その下の部分にボタンオブジェクトを設置した状態でスクロールしたいのですが、実行したらボタンが消えてしまいました。中央に設置すると現れます。
当初のボタンの設置通りのまま画面をスクロールできるにはどうしたらよいのでしょうか。
細かい質問で恐縮です。よろしくお願いします。
>>wineさん
ボタンオブジェクトのプロパティの『動作領域に固定』にチェックが入っているかご確認ください。
もし解決しない場合、ボタンオブジェクトにこだわる必要もないので、アクティブオブジェクトをボタンの代わりとして
アクティブオブジェクトをクリック(タップ)したら動作するように組めばよいかと考えます。
アクティブオブジェクトなどのプロパティで変数を新規作成して初期値として小数値を設定してもフレーム実行時に整数にされてしまいます。
プロパティ画面で少数値を設定することは出来ないのでしょうか?
>>dmさん
申し訳ありませんが、プロパティで変数の初期値に小数点以下の値を入力することはできない仕様となっております。
イベントにて変数を使用する際に必ず0.1や0.01などを掛けて使う(例:変数 A( “アクティブ” ) * 0.01)ようにすれば、
本来の値を10倍、100倍した整数をプロパティに設定することで小数点以下の部分を調整することができるという力技もございます。
インディゲームクリエイター
Clickteam Fusion 2.5 無料版をダウンロードして作っていたものです。
ある日弟が勝手にその作成ツール消してしまいました。
再ダウンロードは出来ないのでしょうか?
>>Wishさん
現状では一度登録したメールアドレスではダウンロードできないようになっておりました。ご不便をお掛けし申し訳ありません。
担当者に報告し、再ダウンロード可能なように変更いたします。
取り急ぎ、下記の本家Clickteamのページからダウンロードしてください(内容は同じです)。
– Clickteam – Clickteam Fusion 2.5 Free Edition
http://www.clickteam.com/clickteam-fusion-2-5-free-edition
ASD様
公式サイトに掲載されている以下のファイル(iOS Exporterのアップデータ)をダウンロードし、ダウンロードを試みたのですが、iOS Device Exporterの登録番号を入力しても、「次へ」がクリックできず、先に進めません。
cf25iosexpsetup_forJapanese20keys.283.5.141212.exe
ためしに本体ソフトの登録コードを入力しても同様でした。
このアップデータが必要なものなのか、そうでないのかも判断できず、エクスポータのバージョン確認方法も含めて対処法を教えてください。
また、数日前に質問させていただいた、CSVの配列への展開方法でよい方法がありましたら教えていただけると幸いです。(ちなみに今は配列は使わずiniで試して、シミュレータ上ではただしく動いているように見えていますが)
以上、よろしくお願いいたします
>>超超初心者さん
CSVファイルの内容を配列に入れる手順ですが、CSVファイル内の要素を区切り文字で分割、要素を取得して配列へ格納となります。
CSVファイルの要素の取得には『String Parser』を使用します。お持ちでなければマネージャからダウンロードしてください。
サンプルプログラムを作成しましたのでこちらをご覧ください。
– サンプルプログラム
https://blog.clickteam.jp/wp-content/uploads/2015/07/cf25_blog_2015_07-20_csv_array.zip
INIオブジェクトについて。
>フレームをまたいで使えるのか
INIはグローバルではないので、取得したデータはグローバル変数などに入れる必要があります。
>アプリ終了時にアプリ実中に変更した値をiniに保存し、次回起動後に引き継がれる
引き継がれます。
iOSエクスポーターについてのご質問ですが、お示しのインストーラーは、アップデータではなく『MMF2用iOSエクスポーター』の登録番号をお持ちの方向けのアップグレード版(新規インストール)です。
アップデートについては、本体の更新を行うと、インストールされているエクスポーターも同時に更新されます。ツール本体上部メニューの『ヘルプ』→『アップデートを確認』をクリックしてください。
ASD様
休日のところご回答いただき、ありがとうございました。
大変助かりました。おかげ様でCSVの取り込み方法がよく理解できました。
回答をいただいたばかりで恐縮なのですが、本件について質問したいことがありますので、ご回答願えますでしょうか。
1.アップしていただいたデータをそのままビルドし、xcode6.4で開きシミュレータで確認しようといたしますと「Cannot find declaration for ‘ZbarReaderDelegate’」のエラーが発生いたします(実は当方が作成したデータ全て同じでした)。fusion2.5でファイナルビルドでビルトするとそうはならないのですが、これは仕様通りの挙動なのでしょうか?
2.アップしていただいたデータをファイナルビルドでビルドし、xcode6.4で開きシミュレータで確認しますと、ボタンを押しても何も起きません(実は当方が配列ではなくiniを使って作成したアプリも同様に数値を読み込めませんでした)。まだappleへの登録が完了しておらず実機確認ができていない為確認ができないのですが、xcodeのシミュレーションではこのような動作になるものなのでしょうか?
3.いただいたデータ内に[iosの場合パスの記述方法を変更する]と記載され、絶対パスではなく相対パスで書かれていました。これはiosアプリを作成する際、csvやiniなどを外部ファイルから読み取る際、必ず相対パスで記載するということを指しているのでしょうか。
質問が多く申し訳ございませんが、よろしくお願いいたします
>>超超初心者さん
>「Cannot find declaration for ‘ZbarReaderDelegate’」のエラーが発生
CF2.5ヘルプの『作成したアプリケーションの配布』→『iOS』→『ビルド』に以下の記述があります。
> 「iOS Xcode プロジェクト」 と 「iOS final Xcode プロジェクト」 の違いは何でしょうか?違いはエクステンションにあります。開発プロジェクトには利用可能なすべてのエクステンションが含まれており
つまり『iOS Xcode プロジェクト』でビルドした場合は、アプリで使用していないオブジェクトのデータも含めてビルドするので、エラーなく実行しようとすれば、CF2.5で利用可能なすべてのオブジェクトが使用するライブラリがXcodeに導入されている必要があります。
『Zbar』はバー/QRコードを読み取るために必要なライブラリのようです(エクステンションマネージャに『QR/bar Scan Code』というオブジェクトがありました)。『Zbar SDK』をXcodeに導入すれば解消されるものと思われます。
>ボタンを押しても何も起きません
>いただいたデータ内に[iosの場合パスの記述方法を変更する]と記載され
Windows上とiOS上ではデータの格納場所が異なるため、パスを変えるよう指示いたしましたが、よく考えれば、iOSやAndroidアプリで、『外部ファイルを同梱して配布』は不可能なように思えました(『アクティブピクチャ』などバイナリデータからの自動取得に対応しているオブジェクトは別)。
『String Parser』はバイナリデータの取得に対応していないので、初期データは文字列オブジェクトなどに記述しておいて、そこから取得するようにします。
(『Set source string』アクションで文字列オブジェクトのテキストを指定。若しくはString Parserオブジェクト上で右クリック→『編集』でSource Stringに入力しても可)
ASD様
ご回答いただき、ありがとうございました。
CSVをバイナリデータとして含ませることができないこと、よく理解できました。CSVは諦めることといたします。
またご質問させていただくと思いますが、よろしくお願いいたします
質問です。CF2.5HTML5エクスポーター所有です。
HTML5で簡単なペイントソフトを作成しようとしたのですが、
画像の保存の仕方で行き詰ってしまいました。
HTML5オブジェクトの場合は、javascriptを使ってCanvasの画像をローカルダウンロードさせるのかな、と漠然と考えたのですが、javascriptの使用について、本家フォーラムのKIMERAさんのjsFusion Libraryの例を見てもちょっと理解できずにいます。
web上でユーザーが作成した画像をダウンロードして保存してもらうには、
どんな方法があるのでしょうか?
windowsアプリだったら、スクリーンキャプチャオブジェクトを使えば簡単ですが…
>>富野さん
申し訳ありません。HTML5のCanvas画像を取得して保存する方法は存じておりません。
調べてみると、”canvas.toDataURL”という機能でCanvasの内容を取得できるようなのですが、自分で試してみた限りでは動きませんでした(組み方が間違っているのか、そもそも非対応なのか)。
的確なお答えができなくてすみません。
本家フォーラムでも質問のスレッドを立ててみましたので、何か情報が入りましたらご報告させていただきます。
>>ASD様
こちらこそ、CF2.5というよりもjavascriptについての質問になってしまい、申し訳ありませんでした。
本家フォーラムでの回答も期待しておりますが、HTML5オブジェクトの使い方を把握していないので、まずはそこを重点的にいじっていこうと思います。
対応していただき、ありがとうございます。
作成したアプリをスマホに転送しようと「ビルド後実行」をクリックしたら、「アプリケーションパッケージ名に無効な文字または構文エラーがあります。」というメッセージが表示され、正しく転送できませんでした。
これは一体どのような原因があるのでしょうか。AndroidやWindowsオプションのことを指しているのか、それに有効や無効が何なのか意味がわからずにいます。
回答をよろしくお願いします。
>>wineさん
アプリケーションプロパティのAndroidオプションのパッケージ名に全角文字が使われていませんか?
必ず半角英数を使用してください。
他にも、パッケージ名は3つのセクションに分かれていますが、区切り部分の.(ドット)が抜けているか別の文字が使われていないか確認してください。
お世話になっています。
判らない所が多々あり
宜しければご教授願えればと質問させて頂けたら本当に嬉しく思います。
本当に初心者で失礼なのは承知しているのですが
フレームがアプリケーションを押しても
フレーム1からフレーム2へ、などプレビュー画面でも行けず
ノベルやアドベンチャーなどを創りたいのですが
文字の挿入などセリフを入れる場所も判りません
タイトルの作り方も選択肢の挿入方もスタッフロールも一枚絵の表示方法やセーブやロードや
プロパティの制作方法も判りません
諦めたほうがいいのでしょうか…。
宜しければノベルやアドベンチャーなどのご指南もして頂ければ幸いです。
サイトを拝読させて戴いてもやはり判らない狭き道なのですね。
せっかく購入させて頂いたのでお聞きさせていただいてしまって宜しかったのでしょうか?
>>瑠衣さん
CF2.5でアドベンチャーゲームは十分作成可能です(実際に作られた方もおられます)。
特定ジャンル専門のツールと比べると、自由度が高い分システムもほぼ1から自分で構築しなければなりません。
『アドベンチャーゲームの作り方』を1から10まで解説するとなると大変なので、
まず、『絵の表示』や『テキストの表示』など、そのゲームに必要な機能を細かくパート分けして、それぞれ単独で実現可能になったら、最終的にそれらのノウハウを総合して1本のゲームを作成するのがいいと思います。
というわけで、ご質問される際は『特定のジャンルの作り方』というような抽象的なものではなく『具体的に何がしたくてできないのか』を書いて頂ければこちらとしてもお答えしやすいです。
よろしくお願いいたします。
ASD様
度々申し訳ございませんが、また質問させてください。
今FastLoopを使ってフレーム開始時に、複数のオブジェクトを同時に発生させようとしています。Layerは二つあり、ループによるオブジェクト発生はLayer1に行っているのですが、なぜかループの最後でつくられたオブジェクトのみ、Layer2の内容を隠してしまいます。上下関係を制御するのが大変そうなので、layer分けしたのですが。このような状態になる理由がもし分かりましたら教えてください。
>>超超初心者さん
実際にその症状が発生しているファイルをご提示頂けると検証がしやすくなります。
ご協力よろしくお願いいたします。
ASD様
ご返信いただき、ありがとうございます。シンプルなサンプルでは問題なく動作する為、何かしら条件があるのだと思います。
問題が再現する最小データができましたら送らせていただきますので、よろしくお願いいたします
>ASD様
いつも対応いただき、ありがとうございます。
本件、原因がわかりましたので報告させていただきます。
FastLoopsで発生させている元オブジェクトがレイヤー2に存在していました。これを元に新規オブジェクト発生させる際にレイヤー1と指定している状態となっていました。これでなぜ最後に作られるオブジェクトのみがレイヤー2に作成され、他は指定どおりレイヤー1に作成されるのか理由は分かりませんが、ひとまず解決することができました。ありがとうございました。
>>超超初心者さん
文章を読む限りはちょっと奇妙な現象なので気にはなりますが、解決されたのでしたらなによりです。
見下ろし型のアクションゲームを作ろうとしているのですが
・敵の視線に入ると追いかけてくる
・敵がランダムに動き回る
といった設定はどのようにすればできるのでしょうか。
>>立ちくらみさん
単に画面内を動き回ればいいだけなら、『バウンスボール動作』に設定し、画面端や障害物と衝突したらバウンスするように設定すればいいでしょう。
敵本体に視界用のオブジェクトを付けて、それとプレイヤーが重なれば敵の方向をプレイヤーへ向ければ追いかけてくるようになります。
– サンプルプログラム
https://blog.clickteam.jp/wp-content/uploads/2015/08/cf25_blog_2015-08-02_line_of_sight.zip
>>ASD様
頂いたサンプルを参考にしながら、同じものを作ろうとしてみたのですが。
・敵と視界が一定の方向を向いたまま全く角度を変えずに動いてしまう。(常に視界の三角形が右を向いたままになる)
・最初に生成された敵に視界が付いていない。
という状態になってしまいました。いったいどこを間違っているのか教えていただければ幸いです。
>>立ちくらみさん
どこが間違っているのか確認のために、作成されたmfaファイルをご提示していただけますでしょうか。
>>ASD様
すみません、提示する方法がわかりません…
>>立ちくらみさん
申し訳ありませんが、当ブログにはファイル添付機能はございません。
お手数ですが他社のファイルアップロードサービスをご利用ください。
>>ASD様
すいません、オブジェクトのプロパティをいじったら自己解決しました。
またなにかあれば質問させていただきます。
ASD様。
よろしければLacewing Relay Client(このエクステション)の説明をして頂きたいのですが・・・
お願いできないでしょうか???
こちらがwebサイトになります。
http://lacewing-project.org/
英語が苦手でして何を書いているのかほとんど理解できませんorz
厚かましいお願いだとは思いますが、何卒よろしくお願い致します。。。
>>yyyyさん
Lacewingについては私もあまり深く触ったことがないのですが、本家フォーラムにてシンプルなチャットソフトを作るサンプルが上がっておりました。
– Simple Chatroom Tutorial
http://community.clickteam.com/threads/68012-Simple-Chatroom-Tutorial
これを基にゲーム的なものに改変してみたのが以下のサンプルです。
https://blog.clickteam.jp/wp-content/uploads/2015/08/cf25_blog_2015-08-02_Lacewig_multiplay.zip
サーバーに関してはノータッチですが、以下のサイトにて海外のユーザーの方がパブリックサーバーを建てて下さっているので、それを利用いたしました。
– Lacewing Relay Server List
http://dark-wire.com/relay/
ただし、海外でパブリックなだけあって速度的な問題もありアクションやシューティング等のシビアなジャンルの場合はズレに対する諸々の対策が必要であろうと思われます。
私自身完全には理解できていないのですが、このサンプルで扱った程度の本当にごく基本的なことであれば、いずれ記事で解説できればと考えております。
とりあえず今回はそれを参考にされてみて下さい。
>>ASD様
回答ありがとうございます。
サンプルありがたいですorz
少しいろいろ試してみます。
ありがとうございました!
物凄く初歩的な話ですが、ここで躓く方も多いと思いますので質問。
【現状】
・ストラテジーゲームを作りたい
・ドット絵(背景・キャラ・敵など)を既に全部用意(EDGEで制作)
・形式は軒並みGIF
ライブラリにはMFAファイルしか入れられませんが、MFAファイルを制作出来るソフトが現段階で見つかっておりません。
どうすればGIFやJPEGを変換出来るのか、まずそこから教えて頂けると助かります(´;ω;`)
アニメーションしないただの静止画であってもMFAファイルでなければならない、というのは、いささか表現の幅を狭めてしまうのではないでしょうか。
変換できない者は制作するなということになりますから……
無料版を体験して凄く良いと思ったから有料版を購入したのに……残念です。
>>afterさん
フレームエディタ内でダブルクリックまたは右クリックメニューから『オブジェクトを挿入』を選択してください。
背景画像の表示なら『背景オブジェクト』をキャラクタの表示なら『アクティブオブジェクト』を選択してフレーム内に挿入します。
そのオブジェクトをダブルクリックまたは右クリックメニューから『編集』を選択すると『ピクチャエディタ(アニメーションエディタ)』が開きます。
ここで、左上の『インポートボタン』から画像を取り込むことができます。
『ライブラリ』と言うのは、上記の手順で用意したオブジェクト群を素材集としてまとめたmfa(CF2.5のゲーム作成途中データ保存形式)を他のユーザーや他のゲーム作成時にアクセスしやすいようにしている機能というだけのものであって、
基本的にはライブラリを経由せずとも制作は可能です。
そういうものだったのですね、分かりやすくて助かりました(`・ω・´)
てっきりそこからドラッグアンドドロップしなければいけないとばかり考えていました;
ご返信ありがとうございます!
バリバリ作って参りますね~
>>ASD様
サンプルまで作っていただきありがとうございます。
参考にさせていただきます。また質問があるのですが。
・敵の視界を見えなく(透明に)する
・敵がランダムな方向に動いて、ある程度で立ち止まり、またランダムな方向に動き出す。
といった設定はどうすればできるのでしょうか。
>>立ちくらみさん
>・敵の視界を見えなく(透明に)する
最初から非表示なら、プロパティの『開始時に表示』を外します。
実行中に表示を切り替える場合はイベントの『表示/非表示』アクションを使用します。
>・敵がランダムな方向に動いて、ある程度で立ち止まり、またランダムな方向に動き出す。
サンプルプログラムをどうぞ。
変数とフラグを使います。変数で動作時間・停止時間を設定し、フラグでそれを切り替えると言う流れです。
https://blog.clickteam.jp/wp-content/uploads/2015/08/cf25_blog_2015-08-08_line_of_sight_stop.zip
>>ASD様
回答ありがとうございます!参考にさせていただきます!
通し番号つけ方についての質問です。
イベントエディタの「新規オブジェクトを作成」で10個の同一オブジェクトを作り、変数A
に通し番号を付けることで、各オブジェクトを区別できるようにしようとしています。
そこで以下のホームページ
http://prester.org/mmf2/?p=1461
等を参考に、
イベントエディタで「フレーム開始時」に「新規オブジェクトを作成」で10個の同一オブジェクトを作り、同一行内のイベントで「1から通し番号を設定:変数A」としています。
しかしながら、実行結果は、すべてのオブジェクトの変数Aが10となってしまいます。
(ちなみにイベントエディタで「新規オブジェクトを作成」を使わず、フレームエディタにて
あらかじめ10個のオブジェクトを作成しておいても、実行結果は上述したのと同様、すべてのオブジェクトの変数Aの値は10になってしまいます。
どこが間違っているのでしょうか?
大変申し訳ございません、解決いたしました。
イベントエディタの別の行に変数Aの値を変更するイベントを記述しておりました。
ASD様Lacewing Relay Clientについての質問をお願い致します。
数字をプレイヤー間で共有するにはどうすればいいでしょうか??
sendでグローバル変数をサーバーに送って、Receivedのget numberで受け取れるのかと思ったのですが、うまくいきませんでした。
そもそもget numberにはどの数字を受け取るかの指定がありませんでしたorz
よろしければ、ご教授のほどよろしくお願い致しますm(__)m
>>yyyyさん
データの区別は送信時に指定するsubchannel(0-255)で分けるようです。
ご質問の共有についてですが、件のチャットサンプルを参考にするなら、Channelへ送信してfrom channnel条件で受信すればいいでしょう(サーバーヘ送っても受信できないのはまだ理解不足でよく解りません)。送信者は受信しないので(と言うか何を送ったかは送信側は判っている)ので
送信者は送信者で、受信とは別に数値を表示するよう組む必要があります。
>>ASD様
回答ありがとうございます。
勉強になります。
ありがとうございました。
チャットのサンプルなのですが、mfaファイルが文字化けでDL出来ませんでした。
どこか別のサイトから入手できないでしょうか??
>>yyyyさん
IEだとリンクをクリックしただけでは変な画面になってダウンロードできませんね。
リンクを右クリックして『対象をファイルに保存』を選択。拡張子をmfaに直せばダウンロードすることができました。
また、IE以外のブラウザ(FirefoxやChrome)は普通にリンクをクリックしてダウンロード可能でした。
チャットサンプルを実行する場合は、イベント3行目の接続先サーバーを現在稼働中のものに書き換えてください。
例:”ledev.org” → “server1.dark-wire.com:6121”
>>ASD様
回答ありがとうございます。
無事ダウンロードでき、サンプルを試すことが出来ました。
またよろしくお願い致しますm(__)m
>ASD様
挙動について理解できました。サンプルもありがとうございました。
>>ASD様
先日は戦略シュミュレーションゲームの
ご教示頂きまして本当にありがとうございました。
あれから仕事の合間に作業を進め、なんとか5対10ほどの規模で
会戦する最低限の移動システムは出来ました。
しかし、おそらくループや通し番号への理解不足のため、
一ユニットごとの管理がどうしてもうまく行かず、
止む無く一体ごとにイベントを組んで移動させ、移動先で
「行動範囲オブジェクト」を作成するようにしました。
多少手間はかかりましたが、これなら個々の管理が確実に出来そうです。
現状、動作は上手く行っているのですが、細かい点が解決出来ず、
暗礁に乗り上げてしまったので、御手数とは思いますが、
また、作成中のファイルを見てやっては頂けないでしょうか?
本当に申し訳ありません。
http://ux.getuploader.com/mmf/download/904/%E6%88%A6%E7%95%A5%E3%82%B7%E3%83%A5%E3%83%9F%E3%83%AC%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3%E3%82%B2%E3%83%BC%E3%83%A0%28%E8%B3%AA%E5%95%8F%E7%94%A82%EF%BC%89.mfa
問題点は以下の3点です。
1、複数の敵が移動する際、ユニット同士が重なってしまう。
2、オブジェクトの接触で戦術画面に移行したいがユニットの組み合わせを
考えると作成するフレームが膨大な数になってしまう。
3、MoveItでマウスに追随するシステムを考えているが、
現状、オブジェクトの回転処理がうまく行かない。
詳細はファイルのほうをご覧頂ければと思います。
どうかご教示お願いいたします。
>>もくずさん
>1、複数の敵が移動する際、ユニット同士が重なってしまう。
移動先にオブジェクトが居ないかを衝突判定で調べ、居た場合は別の移動先を再選択させれば良いのではないでしょうか。
見た感じ、敵の重なり防止処理が記述されておりませんでしたが、味方と同じように重なり防止処理を組み、更に移動先再選択処理を追加すれば良いと思います。
>2、オブジェクトの接触で戦術画面に移行したいがユニットの組み合わせを
考えると作成するフレームが膨大な数になってしまう。
会敵時の敵味方情報をグローバル変数で引き継いで、戦闘画面開始時にそれに沿って初期化・配置を行えば1フレームで済むと思います。
もしご質問の意図と違うようでしたら再度ご質問ください。
>3、MoveItでマウスに追随するシステムを考えているが、
現状、オブジェクトの回転処理がうまく行かない。
指定方向へ向けて徐々に回転させるなら『Advanced Direction Object』の『Rotate』アクションが便利です。
『dir』が基準の角度(現在の角度)『dirtrt』が目的の角度『speed』が回転速度です。
車体の角度変更の数式を以下のように変えれば滑らかになるはずです(最後の速度はお好みで調整してください)。
Rotate( “Advanced Direction Object”, Angle( “車体” ), OAngle( “車体”, X( “マウスポインタ” ), Y( “マウスポインタ” ) ), 2 )
ご教示ありがとうございました。
お礼が遅れてしまい、申し訳ありません。
重なり後の再選択、フレーム数の増大、車体の回転、
全て解決しました。
その後、夏季休暇を使って一気に作ったので、
おかげさまで問題の多い簡単なゲームではありますが、
なんとか完成しました。
今回、主目的はCF2・5の勉強だったのですが、せっかくなので、
こちらの記事を見ながらPlicyで公開してみようと思い、
いろいろ試しましたが上手く公開出来ません。
zipファイルにしてアップロードし、コンバートするところまでは
問題なく出来ましたが、「サムネイルを撮影」の画面が
ご覧のようになってしまい、ゲームの公開が不可能な状況です。
http://www.fastpic.jp/images.php?file=4162787295.jpg
IEとfirefoxで試しました。もちろん他の作者様が公開している
ゲームは普通にプレイできますし、特にブラウザに問題があるとも
思えません。念のためこれまで適当に作った練習作品を何点かアップして
試しましたが、どれも同じようになってしまいます。
ただ、当方のHTML5エクスポーターは「機能制限版」です。
フリーエディションで作成して公開してると思しい方も
いらっしゃったのでとりあえず公開してみるだけなら
「機能制限版」でもいけるのではないかと思ったんですが、
これでは駄目なのでしょうか?
HTML5についての知識は皆無に等しく、
スタンドアローンでブラウザ起動出来ないから
機能制限版なのだろうと勝手に解釈しておりました。
サーバーを介しても動作出来ないとなると
どのあたりが機能制限なのでしょう?それとも
他に何か問題があるのでしょうか?
何度もお手数をおかけしてしまい申し訳ありません。
お心当たり等ございましたら、どうかご教示ください。
>>もくずさん
確認のために私もPlicyへアップを試みてみたのですが、私の場合画面は崩れませんでしたが、『サムネイルを送信』ボタンを押しても先に進まない状況に陥りました(IE、Firefox、Chrome共に)。
サムネイル撮影モードでのアップしたHTML5アプリの動作自体は正常に見えましたが・・・。
現在Plicy宛に問い合わせ中ですので、返答があり次第追ってご報告いたします。
>>もくずさん
先ほどPlicy運営より「CF2.5の投稿不具合を修正した」という旨の連絡を頂きました。
再度お試しください。
御手数をおかけしております。
すべてのゲームを一旦削除して、
再度アップし、慎重に手順を踏み直しましたが、
残念ながら状況は変わりません。
サムネイルを撮影モードに移行しても
先の画面のように壊れたままですし、
もちろんプレイも不可能です。
(単にオブジェクトが移動するだけのシンプルな
ファイルでも試しましたが同じ結果です)
それ以上先へ進むことも出来ず、壊れた画面を
クリックするとClickteam本家のサイトが表示されるだけです。
機能制限版について言及されておられないようですので
これは原因ではなさそうですし、ヘルプも読みましたが、
皆目原因が分かりません。
分かりませんが、ウチのPC環境特有の不具合なのかもしれませんね。
他の方は問題なくゲームを公開されていらっしゃるわけですから。
これ以上は打つ策がなさそうです。
もし、続報などありましたら気長にお待ちしますので
こちらでお知らせくださいませ。
誠実な対応に感謝します。
どうかこれからもがんばって下さい。
>>もくずさん
こちらでは画面は崩れませんでしたし、無料版および制限版HTML5でビルドしたものも登録できました。
ただ、途中で無料版および制限版のHTML5では最初のローディング画面で止まることがありましたが、
ブラウザやFlash Playerを更新するうちに解消しましたので、
ブラウザおよびFlash Playerが最新版か今一度ご確認ください。
これでも解決しない場合は、CF2.5のアップデートが正常に完了しておらず、HTML5ランタイムが壊れている疑いもありますので、再度CF2.5のアップデートを行ってみてください(284.10が最新。本家にはベータ版の285.0もありますが、こちらは制限版HTML5でビルドができないバグを確認しております)。
これ以上となりますとこちらでは対処できることは無いと思いますので、お手数ですが、Plicyの連絡フォーム(Plicyサイトのページ最下部のリンク)よりPlicy運営へ症状の報告をして頂きますようお願い申し上げます。
下記ページにてWeb View Object for Androidについて紹介されています。
http://community.clickteam.com/threads/80000-Web-View-Object-for-Android
このページから
http://www.g2f2media.com/mf2/WebView.zip
をダウンロードし、解等後、
amazon_using webview_android.mfa
を開いて、全く手を加えずにビルドすると、下記のようなエラーが出るのですが、解決方法はあるでしょうか?
「警告:[options]ソース値1.5は廃止されていて、今後のリリース・・・・」
「シンボル:クラス Javascript Interface」
場所:パッケージ android.webkit
C:Users・・・・\CRunWebView2.java:242: エラー;シンボルを見つけられません」
「可変引数呼び出しに関してはClassにキャストします。
非可変引数呼び出しに関してはClass[]にキャストしてこの警告を出さないようにします」
「注意:一部の入力ファイルは非推奨のAPIを使用またはオーバーライドしています」
などです。
アプリケーションの実行はうまくいきます。
Androidバージョンは4.0/4.0.1/4.0.2でビルドしています。ビルド時のAPIは14です。
>>JK0079さん
こちらのでは特にエラーなくビルドできました。
CF2.5、Android SDK(とインストールされているパッケージ)、JDKなどのバージョンが最新かご確認ください。JDKは、かつてはAndroidアプリを開発する場合はバージョン6を使用するように言われていましたが、現在は最新版でOKです。
– Java SE – Downloads | Oracle Technology Network | Oracle
http://www.oracle.com/technetwork/java/javase/downloads/
また、Web View Objectはエクステンションマネージャにも登録されています。マネージャに登録されているオブジェクトは、そちらの方が最新である場合が多いので、こちらもご確認ください。
>>ASD様
素早いご回答有難うございました。
>こちらのでは特にエラーなくビルドできました。
そうでしたか、ご教授いただいたように、私のJDKバージョンが最新のバージョンであるかどうかを確認してみます。
Web View Objectは確かにエクステンションマネージャからダウンロードしました。
初歩的でどっかにかいてあるかもしれませんが質問します。
現在横スクロールアクションを作ろうとしているのですが、
ジャンプの強弱の付け方が分かりません。どうすればでき
るようになるのでしょうか?
>>imaさん
サンプルプログラムを作成いたしました。
標準動作の『ジャンプとはしご』を使う方法と、エクステンションの『Platform movement object(PMO)』を使う方法の2種類を用意しました。
ファイルを開く前にエクステンションマネージャより『Platform movement object』をダウンロードしておいてください。
https://blog.clickteam.jp/wp-content/uploads/2015/08/cf25_blog_2015-08-23_holding_jump.zip
標準動作はいろいろと機能が足りていない部分が多いので、本格的にアクションゲームを作成されるのであればPMOの使い方を覚えられた方が良いと考えます。
(勿論全てイベントで自作すれば一番納得のいくものはできますが)
質問させてください。
現在、横スクロールアクションゲームを作成しています。
以下のような動きを作りました。
①プレイヤーと敵が衝突
②プレイヤーはダメージを受け、無敵になる
③一定時間経過後、無敵が解除される
上記③で、無敵が解除されたとき
プレイヤーと敵が同じ位置にいれば再びダメージを受けるようにしたいです。
しかし、実際の動作はプレイヤーと敵が
一旦離れてから接触しないと衝突したと認識されません。
条件では「衝突>別のオブジェクト」を使用していますが、
別の方法があるのでしょうか。
>>たこやきさん
『衝突』ではなく『重なっている』条件を使ってみてください。
『衝突』は衝突した瞬間のみ真になるので仰るとおり一度離れないと判定されません。
『重なっている』は重なっている間は常に真となります。無敵が解除された時に重なっていれば再度判定されます。
>ASD様
おかげさまで無事解決しました。
ありがとうございます。
はじめまして名無しと申します。
どうしても設定が上手くいかず連絡させて頂きました。
IOSデベロッパー登録を終えビルドをしたのですが、leaderboad関連の設定が上手くいきません。leaderbord自体は表示されるのですが、スコアが反映されません。
leaderbordオブジェクトに入れるバンドルIDはIOSのgamecenter側のleaderbord IDで合っているでしょうか?具体的な設定例などはありませんでしょうか?
>>名無しさん
申し訳ございませんが、筆者の手元に環境がないため実際に確認することができません。とりあえず以下の点を確認してみてください。
Leaderboardオブジェクトのプロパティに入力する識別子はLeaderboard IDで合っているかと思います。違っていればBundle IDのほう?ということになるのでしょうか(身も蓋もない答えですみません)。
Game Centerの機能を利用する場合、『Game Center Connectオブジェクト』が必要であるとヘルプでは説明されているのですが設置してありますでしょうか?
また、テスト目的の場合、アプリ上のGame Centerログインアラート画面から新規作成したテスト用アカウントが必要とのことです。
– 参考:Leader BoardとAchievementの作成 – iOS Docs
https://sites.google.com/a/gclue.jp/ios-docs/leader-boardtoachievementno-zuo-cheng#TOC-Game-Center-1
– Game Center のリーダーボード(スコアランキング)対応アプリの作り方 – Over&Out その後
http://d.hatena.ne.jp/shu223/20110131/1296408051
度々初歩的な質問申し訳ございません。トグルスイッチを作ろうとしてつまづいており、教えてください。
一つアクティブオブジェクトを作成し、アニメフレーム1, フレーム2が設定されています。これにフレーム切り替え用の変数が一つ用意してあります。
このオブジェクトをクリックするごとに、切り替え用変数が1,2,1,2と切り替わり、アニメフレームもそれに合わせて1,2,1,2と切り替えたいのですが、うまくいきません。
1->2, 2->1 のどちらか一方のアクションのみ実行すればうまくいくのですが、この二つを二行記述すると動きません。カウンターで変数の動きを見ても変化がないので、何も変わっていないか、1回のイベントループで1->2->1と戻ってしまっているものと思います。
二つのアクティブオブジェクトを使って切り替えて表示すればできそうではあるのですが、一つのオブジェクトで、フレーム切り替えでできる方法がありましたら教えてください
>>超超初心者さん
アニメフレームの変更は常に変数の値を代入するようにし、クリックでは変数のみ変更するようにすれば良いかと考えます。
– サンプルプログラム
https://blog.clickteam.jp/wp-content/uploads/2015/09/cf25_blog_2015-09-06_click_change_animeframe.zip
>ASD様
サンプルを作成いただき、ありがとうございました。
この方法で試してみたいと思います。
今後も、またよろしくお願いいたします
また質問させてください。
以下のように同じ種類のパラメータを持ち、
性能の異なるキャラクターを複数作成しようと考えています。
【キャラクターA】
HP:10
攻撃力:5
防御力:1
【キャラクターB】
HP:15
攻撃力:2
防御力:3
上記を2つのアクティブオブジェクトを用意し、
変数にパラメータを設定すると楽なのですが
当たり判定などの処理をキャラクターの数だけ設定する手間がかかります。
1つのアクティブオブジェクトに配列+構造体のような形で
パラメータを用意することはできるのでしょうか。
他にも良い方法があれば教えてください。
>>たこやきさん
オブジェクト作成時のイベントにて、異なる変数を設定すれば、別の敵として分けることができます。
https://blog.clickteam.jp/wp-content/uploads/2015/09/cf25_blog_2015-09-06_create_multitype_objects.zip
注意点としましては、1行に同じオブジェクトの作成アクションを2つ以上設定し、それぞれに変数をセットさせても、最後に作成されるオブジェクトの内容しか変わらない、ということです。

同じオブジェクトを同時に作成する場合でも、行を分けてください。
同じオブジェクトが複数居て、それぞれ個別に動かす場合はForEachループによる制御が必要となります。
過去のコメント返信でアップしたサンプルがありますので参考にしてみてください。
https://blog.clickteam.jp/%E8%B3%AA%E5%95%8F%E7%AE%B1/#comment-2161
ありがとうございます。
サンプルまで作成していただき大変参考になりました。
お世話になります。
別件で、また質問させてください。
30フレームごとに1回、敵を出現させたいのですが、
以下のような条件では上手く動きませんでした。
経過時間( “アクティブ” ) mod 30 = 0
※「経過時間( “アクティブ” )」は毎フレーム1ずつ増加する変数
mod(余剰)の使い方が正しくないようなのですが、
よろしければ教えてください。
>>たこやきさん
数式はそれで合っています。
変数を出現させる敵本体のものを使用していませんか?敵とは別の第三のオブジェクトの変数で行えば上手く行くはずです。
https://blog.clickteam.jp/wp-content/uploads/2015/09/cf25_blog_2015-09-06_mod_every_30_frames.zip
それにしても『何フレーム毎~』という条件にmodを使うことは思いつきませんでした。良いアイディアだと思います。
ありがとうございます。
できなかった箇所の再現ができず理由は特定できませんでしたが、
計算式が正しいことが判りましたので安心しました。
お世話になります。
Windows EXEアプリケーションでアバターが設定できるゲームを作っています。
開発フォルダ内に衣装画像(.PNG)が大量にあり、それらをゲーム内からパスで参照しているのですが、
これですとビルド後にユーザからフォルダ内のデータが丸見えになってしまう状態です…。
フォルダごと内部データに含めてビルドすることは可能でしょうか?
バイナリデータやオブジェクト内に全画像を格納すれば良いのですが
ファイル数がとても多く、管理も困難になりそうで困っております。
解決策をご教示いただけますと幸いです。
宜しくお願い致します。
>>爪星さん
フォルダごと指定してバイナリデータへ登録することはできないと思われます。CtrlもしくはShiftキーを押しながら選択すると複数選択することができますので、それで対応して頂きますようお願い申し上げます。
こんにちわ新たに疑問が出てきたので質問させてください。
RPGの隊列歩行のように条件を満たすと後ろに人がついてくる、というようなシステムを組みたいのですが中々うまく動きません。先頭の主人公が曲がった一歩後にPTメンバーが同じような方向を向き、その後ろのPTメンバーも次に同じ地点に来たときに同じような処理をN回繰り返す…というような感じなのですが
>>青二才さん
その様な動作はシューティングゲームでよくある自機の動きに追従するオプションの応用で作ることができます(それの間隔が密着しているバージョン)。
サンプルプログラムをどうぞ。
https://blog.clickteam.jp/wp-content/uploads/2015/09/cf25_blog_2015-09-07_trace_option_list_ver.zip
お世話になります。
また質問させてください。
複数のステージを効率よく、修正しやすく作る方法を検討しています。
まず「新規フレーム」を用意し、1ステージ作成します。
【フレーム名:ステージ1】
・プレイヤーキャラ1
・敵キャラクターA,B
・マップa
このフレームをコピーし、
敵やマップ構成だけ異なるステージ2を作成しました。
【フレーム名:ステージ2】
・プレイヤーキャラ1
・敵キャラクターC,D
・マップb
ここまでは手間がかからず楽なのですが、
不具合でフレーム「ステージ1」の処理を編集すると、
再度ステージ1をステージ2へコピーし、敵とマップ構成の作り直しが発生します。
ステージ数が増えるほど時間がかかるようになってしまいました。
プレイヤーやゲームのシステムを共通化する方法や
他に良い案があれば教えて下さい。
>>たこやきさん
『グローバルイベント』と『グローバルオブジェクト』をご活用ください。
『グローバルイベント』は、そこに記述したイベントは全てのフレームで有効になります(フレームプロパティで適用したくないフレームも設定可能)。
『グローバルオブジェクト』はオプジェクト(アクティブ・背景など)のプロパティから設定可能で、グローバル化すると、そのオブジェクトを別のフレームにも挿入した場合、それらは共通化され、
どこか1つのフレームでオブジェクトを編集すると、他のフレームに挿入されている同オブジェクトにも変更が適用されます。
グローバル化したオブジェクトに記述した『オブジェクトイベント』も同様に共通化されます。
各ステージで共通のオブジェクトをグローバルに設定し、同じイベントはグローバルイベントやグローバルオブジェクトのオブジェクトイベントに記述するようにすれば、編集の効率化・手間の短縮をすることができます。
ただし、グローバルイベント・オブジェクトイベントはフレームイベントより後に実行される仕様ですのでご注意ください。
– 参考:イベントの種類と実行順について | インディゲームクリエイター
https://blog.clickteam.jp/2015/08/%e3%82%a4%e3%83%99%e3%83%b3%e3%83%88%e3%81%ae%e7%a8%ae%e9%a1%9e%e3%81%a8%e5%ae%9f%e8%a1%8c%e9%a0%86%e3%81%ab%e3%81%a4%e3%81%84%e3%81%a6/
ありがとうございます。まさに求めていた機能です。
とても参考になりました。
ヘルプのチュートリアルのチョコブレイクですが
プレーヤーのライフと得点の関連付けができず
ライフと得点が動きません
プレーヤー1の項目にスコアとかライフとか表示がありません
もちろんスコアとライフは入れてありますし
プレーヤー1ということも確認済みです
プレーヤーの番号を変えて戻したりもしましたがダメでした
何か操作を間違っているのでしょうか?
前回は回答ありがとうございました。
また問題が発生したので質問させて下さい。
androidのビルドが上手くいきません。
過去ログも遡ったのですがAPI14というのがSDKマネージャーでインストール出き無い状態なのが上手くいかない原因なのでしょうか。アンドロイドのビルド専用ページも見て試行錯誤を重ねているのですがどうしてもビルド時にエラーが出て困っています。
どうか宜しくお願いします。
>>青二才さん
ビルド時に表示されたエラーを教えてください。
その内容を見れば原因が判る場合もあります。
この前のチュートリアルのチョコブレイク解決しました。
プレーヤーとプレーヤー1があるのがわからなかったです。
動画で探して解決しました。
これからは高度な質問ができるように努力します。
>>初心者さん
解決したようでなによりです。
チュートリアルで解説しているゲームのデータは、CF2.5をインストールした先のTutorialsフォルダ内にございますので、そちらもご参照して頂ければ幸いです。
BUILD FAILED
C:\Users個人名\AppData\Local\Android\sdk\tools\ant\build.xml:597: The following error occurred while executing this line:
C:\Users\個人名\AppData\Local\Android\sdk\tools\ant\build.xml:538: Unable to resolve project target ‘android-10’
このようなエラーが発生してしまいます。API10が原因なのかとAPI10も入れてみたのですがどうにも上手くいきません。何か分かれば…宜しくお願いします。
>>青二才さん
API10だけでなく、ビルドに必要なAPIはインストールされていますか?
現在のCF2.5ではAPI22が推奨されてるようです。API22はインストールしてみてください。
その上で、CF2.5のAndroidプロパティにて『APIをビルド』を22に変更してください。
ちなみに、API14はSDK Managerの『Obsolate』にチェックを入れるとインストールできますが、通常は不要なはずです。
– Android 簡単ビルドの手順|Clickteam 公式サイト
http://www.clickteam.jp/tutorials/android-build-steps
また、こちらは関係があるか判りませんが、OSのユーザー名が全角文字で、SDKのインストール先がユーザーフォルダ以下の場所であった場合、パスに日本語が含まれることとなり、問題が発生するかもしれません。
一度SDKをアンインストールし、『C:\android-sdk』のような全て半角英数の場所に再インストールすることも検討してみてください。
環境設定のビルドパスが間違っていたようです。
参考URLを見ていて気付きました。簡単ビルドの手順の方に気付きませんで、アンドロイドビルドとプロパティのチュートリアルの方を参考にしていました。無事ビルド出来ました。ありがとうございます。
また質問があります。
2つ以上のオブジェクトが重なっているときに、画面下にある方を優先して表示させるにはどうすればいいでしょうか?
>>立ちくらみさん
イベントエディタにて、オブジェクトのアクションの『順序』コテゴリ内に特定のオブジェクトより前面・背面へ表示順位を変更するアクションがあります。
>>ASD様
回答ありがとうございます。それぞれが違うオブジェクトならできるようになったのですが。同じオブジェクトが複数かさなった場合で、y座標が低いほうが上に表示するようにするにはどうすればようでしょうか。
>>立ちくらみさん
エクステンションの『Select Object』を使用すれば、同じオブジェクトの中から特定の変数の値が最低/最高なオブジェクトを選択することができますので、変数にY座標を入れておいて、重なった時にSelect Objectで変数の値が最低(Y座標が一番低い)オブジェクトを選択させ、表示順位を最前面へ変更すれば良いでしょう。
– サンプルプログラム
https://blog.clickteam.jp/wp-content/uploads/2015/09/cf25_blog2015-09-20_display_order_of_same_objects.zip
『Select Object』はエクステンションマネージャには登録されていませんので、以下のリンクから『Select Object v0.11 beta.zip』をダウンロードし、解凍してできた『Data』『Extensions』『Help』フォルダをCF2.5インストール先へ上書きしてください。
http://www.dynamicarcade.co.uk/downloads/extensions2/Select/
>>ASD様
回答ありがとうございます。
またなにかあれば質問させていただきます。
すいませんサンプルプログラムを見てみたのですが。y座標が上の位置にあるオブジェクトが上に表示されてしまいます。なにか間違っているのではないでしょうか。
>>立ちくらみさん
申し訳ありません。逆になっていました。
Select Objectの条件を『lowest value』から『highest value』に変更していただくと逆の結果になります。
– サンプルプログラム
https://blog.clickteam.jp/wp-content/uploads/2015/10/cf25_blog2015-10-11_display_order_of_same_objects2.zip
>>ASD様
そういうことでしたか、修正ありがとうございます。こちらも勉強します。
こんにちは。
前回は大変お世話になりました。
数日間調べてみて、自己解決できなかったため、質問させてください。
*Xcode7.1で、iOSの自機テストをしたいです。
・CF2.5で制作したゲームで、
Xcodeのシミュレーターが起動しない事に困っています。
*エラーウィンドウが出ることはないのですが、
・画面左のエリアに、赤や黄色のエラーマークが出ています。
(▲再生マークを押しても、「Build Filed」の黒い表示が出るのみでした。)
・Xcodeで新規に作ったものを、自機に入れることは何とかできました。
・何か気をつける部分や、
CF2.5ならではの、設定の仕方などを教えていただけないでしょうか?
データを見ての回答がいただけるのであれば、
Googleドライブにアップいたします。
どうか、よろしくお願いします。
お騒がせしております、葉丸です。
*CF2.5を最新にしたところ、自機テストが出来る様になりました。
既にお手数おかけしてしまいましたら、すみませんでした。
次、何かおかしい事がありましたら、
アップデートもきちんと確認してから、お尋ねしようと思います。
すいません、前の答えもまだですがまた質問があります。
ホットスポットとアクションポイントがどのようなものかよくわからないのですが、それらをいじって「敵」というオブジェクトの「攻撃」というアニメーションで、7,8,9フレームの時に「敵」を移動するようにしてみました。そうすると「攻撃」が終わったあとに「歩く」のアニメーションが始まるのですが、「攻撃」の最後のフレームと「歩く」のフレームでホットスポットとアクションポイントが違うので攻撃をした後に瞬間移動してしまいます。これを「攻撃」の最後の位置から「歩く」ようにするにはどうすればよいでしょうか。もしくはフレームを指定してそのフレームの時だけ速度を変更するようなことはできるでしょうか。
>>立ちくらみさん
『ホットスポット』はアニメーションのフレーム1つ1つにおける中心位置を指定するもので、オブジェクトの位置座標もこの点を基準に計算されます。各フレームでホットスポットの位置がバラバラだと、アニメーションを再生した時に上手く繋がりません。
対して『アクションポイント』は、こちらはアニメーションやオブジェクトの座標とは関係はありません。イベントで『オブジェクトを発射』アクションを指定すると、オブジェクトはアクションポイントの位置から発射されます。
また、ホットスポット以外にアクションポイントの位置も取得できるので、『オブジェクトを作成』や『オブジェクトの位置を選択』『X/Y座標を変更』等でアクションポイントの位置を基準にすることができます。
ホットスポットにつきましては、CF2.5ヘルプの『オブジェクト』→『共通のプロパティ』→『動作』→『物理』→『ホットスポット』もご参照ください。
>ASD様
回答ありがとうございます。
またなにかあれば質問させていただきます。
お世話になります。
また質問させていただきます。
カウンター(数字グラフィック)の一括変更についてです。
以下の手順でカウンターの数字を自作グラフィックに変更しています。
(読み込む画像は0~9が書かれた1枚の画像です。)
1.カウンタをダブルクリック
2.インポート(Ctrl+O)で自作の数字グラフィックを選択
3.「スプライトシート」にチェックを入れ、ブロックサイズを指定
アクティブオブジェクトなら手順3に加えて
「アニメーションとしてインポート」にチェックを入れることで
数字グラフィックを0~9を一度に変更できます。
しかしカウンタの場合、「アニメーションとしてインポート」がチェックできず
数字をひとつずつ変更しているため時間がかかっています。
正しい方法 または より良い方法があれば教えて下さい。
>>たこやきさん
申し訳ありませんが、カウンタオブジェクトの数字画像を一気に登録することはできません。
将来のアップデートで可能になる可能性もありますが、現状では1つずつ登録してください。
>ASD様
回答ありがとうございました。
アップデートに期待します。
たびたび申し訳ありません。
リッチエディットオブジェクトでいわゆるギャルゲー会話のようなウィンドウを作りたいのですが中々上手くいきません。一つのテキストオブジェクトで話しかけた相手によって会話内容がそれぞれ違うようにしたいのですが、ファイルのロード方法が違うのか上手くいきません。またスクロールさせて最後の行を表示させた後にボタンを押したらとじるようにしたいのですが、テキストによって行数が変わるためそちらの条件付けも難しい状況です。
出来ればスキップ、オートなども実装したいです。
サンプルプロジェクトのようなものを組んで頂ければ幸いです。
>>青二才さん
遅くなりましたがサンプルができましたのでご覧ください。
https://blog.clickteam.jp/wp-content/uploads/2015/10/cf25_blog_2015-10-12_richedit_adv_text.zip
リッチエディットを使ってというご指定でしたのでこのようにしてみましたが、もし違う点があれば詳しい仕様をお知らせください。
お世話になっております。また質問させていただきます。
敵や自機等の動くオブジェクトが侵入できない壁を作りたいのですが。どのように設定するのがよいでしょうか。
あと、側面と全面と角の絵を用意したのですが、それらを連結させるにはどうすればよいでしょうか。
>>立ちくらみさん
基本的には本体の四辺に判定オブジェクトを付け、それらと障害物が重なれば、移動量(ドット数)と同じだけ押し出す、という処理になります。
移動処理をイベントで座標変更を使い自作している場合なら問題ないのですが、標準動作(バウンスボール等)の場合は、移動量が不明なので移動量を取得する処理が必要なのと、
移動量が一定ではないため、完全にめり込みを防ぐのは困難です(バウンスボールであれば衝突したらバウンスさせる方が無難でしょう)。
サンプルプログラムをご覧ください。
番外として『Platform movement object』でキャラを制御する場合の処理も収録しました。
本来は横スクロールアクション用ですが、Gravityの値を0にすれば、トップビュー型のゲームにも応用することができます。
– サンプルプログラム
https://blog.clickteam.jp/wp-content/uploads/2015/10/cf25_blog_2015-10-04_wall_stop.zip
>>ASD様
回答ありがとうございます。また何かあれば質問させていただきます。
お世話になります。
また質問させてください。
物理エンジンのロープを使用したアクションゲームを作っています。
ロープにつかまり、隣のロープへジャンプしていく
ターザンのようなアクションを考えています。
現在、ロープの先端に当たり判定オブジェクトをつけ、
プレイヤーが当たり判定に触れたらロープ先端と関連付けることで
ロープに掴まる動作ができました。
ここからボタン操作でロープを振り子のように揺らしたいのですが、
ロープの先端に力を加える方法が分かりません。
良い方法があれば教えて頂けないでしょうか。
>>たこやきさん
ロープの先端に付けている当たり判定オブジェクトを物理動作(『物理 – 静止』など)に設定し、イベントでそのオブジェクトの『動作』→『物理』→『力積を適用』を設定すると、揺らすことができます。
揺らした時にロープがグチャグチャになる場合はプロパティの『密度』の設定値を増やしてください。
– サンプルプログラム
https://blog.clickteam.jp/wp-content/uploads/2015/10/cf25_blog_2015-10-03_physics_rope.zip
>ASDさん
サンプルとても参考になりました。
ありがとうございます。
はじめまして、どうしてもわからないことがあったので質問させていただきます。
アクティブオブジェクトでいくつかアニメーションを作っているのですが、イベントでアニメーションを変更するとアニメが切り替わった瞬間の最初1フレーム目が一瞬しか表示されなかったり普通に表示されたりで表示されてる時間にずれを感じます。
どこかで設定が間違っているのか、仕様なのか、また解決方法があったらお教えていただけないでしょうか。
>>kさん
ご指摘の症状は以前から確認されておりましたが、現在開発元のClickteamにて公開されているベータ版にて修正点の1つとして挙がっているようです。
次のアップデータがリリースされましたら、改めてご確認して頂きますようお願い申し上げます。
質問させてください。
以前のバージョンの、MMF2を使用している者です。
ダウンロード販売で、自分のゲームを配布する際の、
ロゴ・クレジット表記の件なのですが、
MMF2アップローダーに、現状の画像をあげました。
このような形で、よろしいのでしょうか?
何か他にぬけている点か、間違っている点があれば。。。
よろしくお願いします。
>>こまさん
画像を確認いたしました。特に問題はないと思いますが、表紙での配置につきましては、ロゴがご自身の製品の一部であるかのような、または、製品がClickteamが作成したものであるかのように誤認されないようご注意ください。
前回の質問にまだ回答されていないようですが他の質問が出てきたので質問です。
https://blog.clickteam.jp/2014/11/ini%E3%82%AA%E3%83%96%E3%82%B8%E3%82%A7%E3%82%AF%E3%83%88%E3%81%A7%E3%82%BB%E3%83%BC%E3%83%96%E3%83%87%E3%83%BC%E3%82%BF%E3%82%92%E4%BF%9D%E5%AD%98%E3%81%99%E3%82%8B/
こちらのページを参考にセーブデータを作成しているのですが
現在グローバル変数を取得する方法で進行状況のセーブデータを作成しようと考えているのですが、ゲーム中に複数のグローバル変数を扱っているため、設定がうまくいきません。一括で現在のグローバル変数を取得する方法などはあるのでしょうか?またiniファイルをグローバル変数分用意しなくてはいけないのでしょうか?
もしくは単純に進行状況を保存したい場合別のうまいやり方があるのであればそちらを教えていただければと思います。
>>青二才さん
『現在のグループを変更』や『現在の項目を変更』アクションは名前を変えて続けて実行していけば、どんどんiniに追記されていきますので、複数ファイルを用意する必要はありません(勿論ゲームの都合上で複数ファイルに分けるのもアリです)。
グローバル変数の内容を最初から順に書き出せば良いということでしたら、高速ループを使用し、グローバル変数の指定は番号(インデックス)によって行い、そこにループインデックスを代入することで、
一気に書き出すことができます。
– サンプルプログラム
https://blog.clickteam.jp/wp-content/uploads/2015/10/cf25_blog_2015-10-04_save_ini_fastloop.zip
ASD様、回答ありがとうございます。
なるほどです。
では、表紙の右下辺りの、天面・低面ではない位置の方に、控えめに配置する方が、無難なのかもですね。
前の質問がまだ回答されていませんが、新しい質問があります。
しゃがむ、しゃがんだ状態で震える、ジャンプする、という3つのアニメーションを用意したのですが。zを押すとしゃがみ、押し続けると震えて、zを離すとジャンプするようにしたいのですがどうすればよいでしょうか。
あとzを押した長さでジャンプの距離を上下させたいのですがどうすればよいでしょうか。
すいません、自己解決しました。
リッチテキストオブジェクトを使用しているのですが、ある一定の行数を表示するとそれ以降の文が文字化けして表示されてしまいます。
これはツールの限界によるものなのか、それとも何らかの設定ミスなのでしょうか?
文字数の限界など具体的にありましたら教えていただければと思います。
>>青二才さん
– Nivrams MMF2 Projects
http://www.castles-of-britain.com/mmf2projects.htm
こちらの『MMF2 Tech Manual v5.1』によれば、リッチエディットの上限は4GBとされております。MMF2時代のドキュメントですが、CF2.5でも基本的な部分は同じであろうと思われます。
私自身では上限に達したことがありませんので、実際どうなるのかは確認しておりません。
もしよろしければそのデータを確認させて頂けると幸いです。
以前のご質問につきましても、サンプル等が用意でき次第回答させて頂ますので、今しばらくお待ちください。
前々回のリッチテキストの件サンプルプロジェクト作成中との事で安心しました。前回の一括セーブについての回答と合わせてありがとうございます。
書き込みは無事出来たのですが一括でそのデータ読み込む方法がわからず困っています。たびたびで申し訳ありませんが回答いただければ幸いです。
>>青二才さん
ロードの処理を入れていませんでした。基本的にはセーブ時の逆パターンです。
– サンプルプログラム
https://blog.clickteam.jp/wp-content/uploads/2015/10/cf25_blog_2015-10-05_save_ini_fastloop2.zip
2つ質問があります。
① 日付&時間オブジェクトを使って、60→59→58・・・とカウントダウンをして0になったら
終了できるよう表示したいのですが、カウントダウンの表示を作成するにはどうしたら
いいのでしょうか。
② スコアと共にハイスコアも表示して保存できるようにするにはどうしたらいいのでしょ
うか。ハイスコアオブジェクトを表示するところまでしかできていません 。
>>wineさん
『日付&時間オブジェクト』のプロパティから時計モードを『カウントダウン』に設定します。
プロパティおよびイベントにてカウントダウンの初期値を設定し『カウントダウンを開始』を実行するとスタートします。
カウントダウンの終了を判定するには『カウントダウンと比較』条件で『秒を1』に設定し、比較を『より小さい』にするか、0秒もカウントに含めたい場合は、『2つの一般値を比較』条件(特別オブジェクト内)で上の式に『カウントダウンの時間を取得』を、下の式に『0』と入れ、比較方法を『等しい』にします。
ハイスコアオブジェクトの保存は、プロパティの『使用するINIファイル』にファイル名を入れてください。Windows以外のプラットフォーム(Flash,HTML5,iOS,Android)ではパスは不要です。
イベントの『現在のファイルを変更』アクションを使用してファイルを指定する場合は、プロパティの『開始時にチェック』を外し、ファイル指定アクション実行後に『プレイヤー名を確認』アクションを実行します。
– サンプルプログラム
https://blog.clickteam.jp/wp-content/uploads/2015/10/cf25_blog_2015-10-12_countdown_and_hiscore.zip
また質問ができました。
・今まで動作を8方向に設定していたオブジェクトを、イベントで座標変更させることで 移動するようにしたら、移動などのアニメーションがうまく再生されなくなりました。ど
のように設定すればうまくアニメーションが再生されるでしょうか。
・ブロック状の壁の絵を用意したので、それをぴったりとくっつけて配置したいのですが どのようにすればよいでしょうか。
あと、イベントで座標変更させることで移動するようにした場合、動作の8方向の時にできた加速と減速のような設定はどのようにすればできるでしょうか。
>>立ちくらみさん
座標変更アクションに直接小数点以下の値を入れても動かないので、座標を変数で管理します。
アニメーションは方向キー入力時に変更し、移動量が0(停止)の時に戻します。
– サンプルプログラム
https://blog.clickteam.jp/wp-content/uploads/2015/10/cf25_blog_2015-10-12_wall_stop2.zip
オブジェクトの配置は、フレームエディタ上であれば選択状態で方向キーを押せば微調整ができますし、上部メニューアイコンの『グリッドの設定』から『グリッドにスナップ』を有効にすると、設定したグリッドに沿って配置することができます。
>>ASD様
回答ありがとうございます。大変参考になりました。また質問させていただきます。
お世話になります。
また質問させていただきます。
アクティブオブジェクトの最大設置数はいくつでしょうか。
フレームプロパティにある「オブジェクトの数」によると1000のようですが、
1000以上置いても問題ないように見えました。
アクティブオブジェクトをRPGのマップチップのように使用したい為、
3000~5000くらいオブジェクトをするには設定値を増やせば良いのでしょうか。
>>たこやきさん
フレームプロパティの『オブジェクトの数』は、『実行中に、一度にフレーム内に存在できるオブジェクトの数』を制限する項目です。
このオブジェクトの数は、背景オブジェクト以外の全てのオブジェクト(カウンターや文字列、その他のエクステンション等)が含まれます。
フレームエディタ上では1000個以上置けても、実際に実行すると1000個以上のオブジェクトは表示されません。
設定値を増やせばそれだけ表示可能になりますが、オブジェクト数が増えると処理も重くなりますので、不要になったオブジェクトはきっちり破壊するようにして削減に努めてください。
>ASDさま
回答ありがとうございました。
なるべく設定値の範囲内でおさまるよう工夫してみます。
宜しくお願いします。
各オブジェクトのユーザー定義アニメーションがかなり増えてしまいました。
ジャンプ上昇、ジャンプ停滞、ジャンプ下降の様にアニメーションを管理しているのですが、
新規作成した順番にバラバラに名前が並んでいます。
(例)ジャンプ上昇、二段ジャンプ上昇、ジャンプ停滞、ジャンプ攻撃、ジャンプ下降)
アニメーションを探すのが大変な為、並べ替えたいと思っています。
ユーザー定義アニメーションはコピー&ペーストが出来ない(無反応)事、
また、位置を変えたいユーザー定義アニメーションの名前を変更すると
イベントやアクションで指定した名前部分も変更した名前に修正される為、そういった並べ替え方はできないことを確認しました。
アニメーションを並べ替える、或いは効率の良い管理方法は無いでしょうか?
>>q-taroさん
いわゆる、ドラッグしてのアニメーションシーケンスの順番を変えることはできません。
コピー&ペーストはアニメーションエディタ左下のアニメーションリスト上で右クリックするとメニューが出てきますが、それとは違うのでしょうか?
ただしコピペで入れ替えた場合、変わるのは中身だけですので、イベントでの指定は修正する必要があります。
アニメーションシーケンスはインデックス(番号)でも指定できるので、変数にアニメーションシーケンスの項目を設けて、そこにインデックスを入れておき、アニメーションの指定はその変数から引っ張ってくるというのはどうでしょうか?
オブジェクト内のアニメーションの順番をコピペで変えた場合でも、変数のインデックスを修正するだけで、イベントはいじらなくても済みます。
ASDさま、ご回答ありがとう御座います。
>>コピー&ペーストはアニメーションエディタ左下の~
①新規アニメーションシーケンスを作成する
②現在のアニメーションを指定してコピー
③新規アニメーションシーケンスをクリックして張り付ける
以上の動作でシーケンスが複製できることを確認しました。
新規シーケンスを作る必要があったようです。windowのファイル操作のように、ペーストすればそのまま複製される仕様と思っていました。
GIFから再読み込みさせずに済むのはあり難いですが、やはりイベントの大掛りな入れ替えになりそうです・・・。
>>アニメーションシーケンスはインデックス(番号)でも~
アクション、イベント、プロパティ等の選択肢を確認しましたがそれらしい機能を見つけることが出来ませんでした。
私の勘違いかもしれませんが、一つのアニメーションシーケンスでフレーム(開始位置x枚目)の数値を変数で指定して表示させるという意味でしょうか?
>>q-taroさん

アニメーションシーケンス変更アクションにて『計算を使う』を押すとインデックスで指定ができます。
ユーザーアニメのデフォルト名が『ユーザーアニメーション 12』となっていることから判るように、ユーザーアニメーションを指定する場合は12番以降を入力します(デフォルトのアニメシーケンスは0~11)。
変数にユーザーアニメーションのインデックスを入れておき、この変数を使って指定することで、後々アニメーションの順番を入れ替えてインデックスが変化した場合でも、変数の初期値を変えるだけで済む、ということだったのですが…。
イベントを修正するのとどちらが判り易いかは人それぞれでしょう。
– サンプルプログラム
https://blog.clickteam.jp/wp-content/uploads/2015/10/cf25_blog_2015-10-13_change_anime_seq_by_index.zip
>>ASD様
サンプルを作成頂きありがとう御座いました。
フラグに名前をつけるテクニックのように
アニメーションにも変数で別名を定義できるという事でしたか。
何とか今、一通りのアニメーションの整理が完了しました。
また宜しくお願いいたします。
サンプル作成ありがとうございました。
テキストなのですがフォルダに分けて格納したいのですが
ロードの指定はその場合どのように行えばいいのでしょうか?デフォルトでどこを参照しているのかわからず表示することができません。ビルド前でも設定可能なのでしょうか?
また.\○○.txtのような形の○○に入る部分は日本語でも構わないのでしょうか?
>>青二才さん
例えば、exeと同じ場所の『TEXT』フォルダに入っている場合は『”.\TEXT\text1.txt”』のように指定します。
ファイル名が日本語でも動くとは思いますが、不具合を避けるために半角英数にすることを推奨します。
質問ができました。
オブジェクトの編集画面でアニメーションを再生させたときと、実際のアニメーションの再生スピードが違うのですが、どうしてでしょうか。
>>立ちくらみさん
申し訳ありませんが仕様です。
以前はもっと異なっていたのですが、ここ最近のアップデートでかなり近くはなっています。
ただし、アプリケーションのフレームレートを変更している場合は合いませんのでご注意ください。
>>ASD様
わかりました。なんとか別の方法で確認します。
パス名を要求される「バイナリファイルを抽出」等のコマンドで、パス名に変数や文字変数等を編集した相対パスを使用することは可能ですか?
又、現在アクティブピクチャを使っているのですが、アクティブピクチャの新しいピクチャのコマンドで連番の画像等に対して同様に使用できますか?
>>パスガス爆発さん
ファイルパスの指定に変数や可変文字列を組み合わせたものは使用可能です。
アクティブピクチャにおいても、例えば『”ファイル名” + 変数 + “.jpg”』のようなパスは使用可能です。
質問があります。
なぜかイベントエディタの一番上の欄にストーリーボードコントロールがありません。どうやったら表示させることができるでしょうか。
>>立ちくらみさん
イベントエディタでは特定のオブジェクトを非表示にして作業することができます。
非表示にする手順はいくつかありまして、
・アイコン上で右クリックして、『非表示にする』を選択する。
・上部メニューアイコンから『○○○オブジェクトを表示/非表示』を選択する。
・最上部メニューの『イベント』内の『オブジェクトフィルタ』を選択する。
などです。
意図せずに非表示になっている場合、いずれかの手順を誤操作したと考えられます。以下のいずれかの手順で再表示できます。
・アイコン上で右クリックして『非表示オブジェクトを挿入』を選択。
なお、オブジェクトが隠されている場合左上に『非表示のオブジェクトがあります』と表示されます。
・上部メニューアイコンで、選択済みになっている物をクリックして解除する。
・最上部メニューの『イベント』内の『すべて表示』を選択する。
>>ASD様
ありがとうございます。なんとかできました!
http://www.clickteam.jp/tutorials/parent-child
こちらのページを参考にHPバーつきの敵を作りHPが0以下になった場合
バーを破壊するようにしたのですが、時折体力が0ではないの敵のバーまで一緒に破壊されてしまいます。発生条件もあやふやでまったく起きない時もあるので困っています。
>>青二才
敵のライフが0になった時の条件にカウンタの値が0の時の条件も加えてみてください。敵本体のライフ条件だけでは、一緒に破壊すべきカウンタがどれなのか選択されません。
もっと確実な方法ではForEachループと固定値を使ってペアリングする方法もあります。敵の破壊可能部位など、敵本体より先に破壊される可能性があるパーツを付ける場合は後者の方が有効です。
– サンプルプログラム
https://blog.clickteam.jp/wp-content/uploads/2015/10/cf25_blog_2015-10-18_enemy_lifecounter_pairing.zip
質問させていただきます。
現在Androidエクスポータを購入し、Androidの実機端末で動作テストを
行っています。
動作テスト中にクラッシュが頻発したため、原因を調べていたのですが、
どうも高速ループを実行中、そのイベント内でインデックス変数の変更
などの操作を行っている箇所でフリーズしているようです。
Androidアプリケーションではインデックス変数などはあまり使用しないほうがいいのでしょうか?
もしくはこういったフリーズ状態になってしまうのはこちら側の環境が原因なのでしょうか。。
申し訳ありません、先ほど掲載した質問ですが、エクスポータのアップデートをかけたら解消しました。
以前の質問です。
> 日付&時間オブジェクトを使って、60→59→58・・・とカウントダウンをして0になったら
終了できるよう表示したいのですが、カウントダウンの表示を作成するにはどうしたら
いいのでしょうか。
これについて回答通り作成しましたが、肝心の時刻が表示されませんでした。
画像の上からとなると難しいのでしょうか。
>>wineさん
アクティブオブジェクトの上に表示したい、といことでしたら、
『日付&時間オブジェクト』のプロパティの『表示オプション』内の『背景として表示』を外してください。
これで、アクティブより上に表示することができます。ただし、それに伴い少しばかり処理が重くなりますので、特に必要がある場合のみ外すようにしてください。
お世話になります。
また質問させてください。
以下の様な処理を行いたいと考えています。
条件1:5×5のマスに1~25の数字をランダムに表示する
条件2:1度使用した数字は他のマスに存在しない
条件1だけであれば範囲指定乱数で可能ですが、
条件2が加わると思うようにいきません。
何か良い方法があれば教えて下さい。
よろしくお願いします。
>>たこやきさん
エクステンションの『Random Pool』もしくは『Random Multipool』を使用すると、重複しない乱数を生成することができます。
両方ともマネージャではWindowsのみ対応とされていますが、Random PoolはFlash版がこちらにあります。ただし色々と動作しない機能が多いので、十分ご理解のうえご使用ください。
http://www.triplezap.com/extensions/
– サンプルプログラム
https://blog.clickteam.jp/wp-content/uploads/2015/10/cf25_blog_2015-10-31_no_overlap_rand_value.zip
>ASD様
ありがとうございます。
イメージ通りの機能でした。
活用させていただきます。
お世話になります。 また質問させてください。
zキーを押すと、自機が攻撃をするアニメーションに変更され、1秒たつと元のアニメーション戻るというのはどのように設定すればできるでしょうか。
>>立ちくらみさん
変数で再生時間を管理することで可能です。
再生中は変数を増加させ、一定値以上になれば元のアニメに戻します。
– サンプルプログラム
https://blog.clickteam.jp/wp-content/uploads/2015/10/cf25_blog_2015-10-31_play_anime_during_n_seconds.zip
>>ASD様
回答ありがとうございました。やってみます。
もうひとつ質問ができました。
常に自機が画面の中心に来るようにするにはどうすればよいでしょうか。
>>立ちくらみさん
『ストーリーボードコントロール』の『スクローリング』で、表示中心を自機オブジェクトに設定することで、自機が画面中央に来るようになります。
>>ASD様
すいません、『ストーリーボードコントロール』で「自機から(0,0)を画面の中央に表示」というイベントを常に実行するようにしてみたのですがうまくいきません。何がいけないのでしょうか。
>>立ちくらみさん
上手くいっていないデータを提示して頂けますでしょうか。よろしくお願いいたします。
>>ASD様
これです。
http://fast-uploader.com/file/7002027439006/
>>立ちくらみさん
スクロール機能を利用するためには、『フレームの幅・高さ』または『仮想の幅・高さ』を『表示領域(プロパティで設定したウィンドウサイズ)』より広く設定しなければいけません。
『フレームサイズ(動作領域)』はフレームエディタ内で点線で表示されている領域です。『仮想フレームサイズ』は、実際のフレームサイズはそのままでスクロールを可能にする機能です(メニュー画面の背景など無限に近いスクロールをする場合に有効)。通常は実フレームサイズを広げれば問題ありません。実フレームサイズを広げた場合、仮想フレームサイズも連動して広がります。
– サンプルプログラム
https://blog.clickteam.jp/wp-content/uploads/2015/11/cf25_blog_2015-11-03_free_scroll.zip
>>ASD様
すいません、仮想の幅と高さを変更することでスクロールさせることができました。ただ、スタートした画面より左上にスクロールさせることができません。どうしたらよいでしょうか。
お世話になります。
もう一点、質問があります。
以下のように、
メッセージ中に変数を表示したいと考えています。
設定:変数A + “に” + 変数B + “のダメージを与えた”
結果:スライムに10のダメージを与えた
文字列オブジェクトのパラグラフに予め設定できると管理しやすいのですが、
上記のような方法があれば教えて下さい。
>>たこやきさん
数式に使用する関数のには『数値型』と『文字列型』の2種類があります。
文字列のパラグラフに『変数 A(アクティブ)』と入力しても、それは単に『変数 A(アクティブ)』というテキストとして扱われるため、これを使って変数Aの値を取得することはできません。
要するに、たこやきさんがお望みのような管理方法はできないということです。ご了承ください。
>ASD様
回答ありがとうございます。
RPGでよくある表現だったので、可能だと思っていました。
別な方法を検討してみます。
お世話になっております。
重力に関しましての質問です。
落下動作で床へのめり込み防止のために
イベント「背景に本体が重なっているときにアクションY座標をY(“本体”)”-1」×10回程度コピー
と言うやり方がありますが、落下時点でかかる重力Yが20を越えたあたりで
僅かに床に沈み始め、50を超えたあたりから32×32ドットの3ブロックを貫通します。
理想としましては高速(重力で言えば80程度)で落下し、床に接触した瞬間に完全にY座標の動きをストップしたいのですが、Platform Movement objectを使わずに処理する場合、どのような手段がありますでしょうか?
>>q-taroさん
1ドットずつ移動するイベントを高速ループで80回繰り返せば、見た目には80ドット移動しているように見えても、内部では1ドットずつの移動なので、障害物との衝突もピッタリと止める事ができます。
– サンプルプログラム
https://blog.clickteam.jp/wp-content/uploads/2015/10/cf25_blog_2015-10-31_fastloop_collision.zip
>ASD様
サンプルを作っていただき、ありがとう御座いました。
色々と試してみたのですが、下方向へ向かう加算の力が-20程度になった時点でやはり床に沈んでから上昇します。
ループ50回でy方向+1のイベントを5回コピペすることで沈むことはなくなりましたが、下方向へ向かう力が-30以下になると床を貫通してしまいます。
ループをさらにコピペすることで対策可能な気がしますが、これはPC側の処理の大きな負担になるでしょうか?
>>q-taroさん
先のサンプルの肝は、「オブジェクト自体の移動は1ドットずつである」という点です。
オブジェクトの座標変更は必ず1ドットずつにし、移動量はループ回数で指定してください。
障害物との衝突で止める際は、衝突イベントに落下で使用しているループ条件を加え、かつその時にループを停止させます。
仰るとおり、高速ループは通常のイベントループの1回の中で更に速くイベントを複数回実行するものなので、多用すればそれだけ負担となります。
もし解決しないようでしたらデータファイルをご提示頂ければこちらでも検証いたします。
>ASD様
お世話になっております。
やはり落下より上昇する力が弱い様で沈んでしまいます。
提出用に編集したものをアップロードしました。
お手数ですが、ご確認を宜しくお願いいたします。
http://fast-uploader.com/file/7002509882514/
pass:mmf
>>q-taroさん
ほぼ作り直しに近いですが、改修してみました。ご参照ください。
高速ループは、めり込み防止イベントだけでなくキャラの動作イベントにも必要です(と言うより、障害物に当たった時にはループを止めているだけ)。
あと、キャラに付けている判定オブジェクトの位置合わせイベントの条件にも動作で使っている高速ループ条件が必要でした。これが無いとループ中に起きる衝突イベントが正確に発動しません(非ループイベントとして位置合わせしていると、高速ループより少し遅れて合わせられる為。見た目には判りませんが・・・)。
– サンプルプログラム
https://blog.clickteam.jp/wp-content/uploads/2015/11/cf25_blog_2015-11-08_fastloop_obstacle_detection.zip
>ASD様
サンプルを頂きありがとう御座いました。
製作物への組み込みが終わりようやく自然な移動動作が設定できました。
また宜しくお願いいたします。
>>ASD様
お世話になっております。
先日修正いただきましたサンプルのループを使った移動を利用した時にてジャンプ時の軌道を固定して、(超魔界村のように)方向転換させるにはというすればよいでしょうか?
以前私が提出したものは、方向キーを押した方向へ移動するx座標の力を無入力時に0にしていた為に、左右の移動があった状態でジャンプさせればジャンプ時の起動が固定することが出来ました。
ループを使った場合は移動にキー入力がリアルタイムで反映されている為、キーを話すと移動が止まったり、逆方向に入力するとその方向へ移動したりといった症状が出てしまいます。
>>q-taroさん
以前のサンプルを改修してみましたのでご確認ください。
変更点としましては、「左右入力すると、地面に着くまでは左右移動が続く」ようになっています。
つまり、普通に地面を歩く時は足元の判定は地面に付いているので入力を止めると即止まりますが、ジャンプ・落下中は着地するまで左右移動が続きます。
あとは、ジャンプ・落下フラグが無効の時の条件を左右移動イベントの条件に加えて、ジャンプ・落下中は、新たな左右移動イベントが発動しないようにして動作を固定しています。
– サンプルプログラム
https://blog.clickteam.jp/wp-content/uploads/2015/11/cf25_blog_2015-11-22_fastloop_obstacle_detection2.zip
>>ASD様
サンプルありがとうございました。何とか丸一日かけて組み込むことが出来ました。本来目的していた動作としては完璧なのですが、真上に飛んだ場合が想定以上に不便でした。
垂直ジャンプ中に←→のボタンを押すことで、一度だけ押した方向を向いて僅かに前進させるようにしたいのですが、今回作っていただいたサンプルで前進していた方向への制限をかけてしまっている為、その時向いている方向と逆方向へ移動させることができません。通常の前進ジャンプに影響してしまいます。
垂直ジャンプ自体を定義が出来れば通常移動のイベントを代用できそうですが、”空中フラグ=有効”&”x軸移動量=0″の様なものでは、変数でテストしてみる限り条件が無視されているようでイベントが反応しませんでした。
真上にジャンプという行動を条件とする場合、どのような設定が適切でしょうか?
>>q-taroさん
13,14行目の『(影)が背景に重なっている』条件を削除してください。
『(影)が背景に重なっている』があると、着地した状態でないと左右移動できませんが、削除すれば空中でも左右移動できます。
>>ASD様
自分のデーターへの組み込みまで成功し
かなり融通の利く出来の良いジャンプになりました。
的確なアドバイスをありがとう御座いました。
また宜しくお願いいたします。
ASDさんお久しぶりです。
早速ですが、1つ質問をお願いしますm(__)m
ロックしたオブジェクトのロック解除の方法を教えて頂きたいです。
よろしくお願いします。
>>yyyyさん
ロックしたオブジェクト上にカーソルを置き、『Shift+Ctrl+左クリック』で解除することができます。
上部メニューの『配置』→『ロックを解除』で全てのオブジェクトのロックを1度に解除することもできます。
ありがとうございます。
助かりました。
ついでにもう1つお願いしますm(__)m
1度読み込んだサウンドを一覧から消去したいです。
なにか方法がありましたらご教授のほどよろしくお願いします。
>>yyyyさん
イベントで消去したいサウンドを使用している条件・アクションを全て削除してください。
その後ファイルを保存して開き直すと消去されます。
ありがとうございました。
ただイベントを消去すればよかったんですね・・・
またよろしくお願いしますm(__)m
お世話になっております。ブログの方拝見させていただいております。
質問です。
CF2.5より実装されているHWAモードは、様々なエフェクトを使用できてとても魅力的な機能なのですが、Direct9に変更してアプリケーションを実行し「フレームAからスタート→フレームBに移動→フレームAに戻る」というフレームの移動を行うと最初はフレームAでのメモリ使用量が最初は500MBだったのに戻ってきた際には550MBと微妙にメモリが増え続ける現象が見られました。(フレームの移動をさらに繰り返すと、フレームAでの使用メモリが550→600→650と増え続けます) 標準モードではこの現象は見受けられないので、HWAモードが原因かと思っています。
この現象の対策などはあるのでしょうか…。
>>BuleSeaさん
基本的にはHWAモードは標準モードよりメモリ使用量は増えると認識しておりますが、自分自身はそれほど大量のメモリを消費するゲームは作成したことがなかったため問題にしていませんでした。
最新版では使用しなくなった画像はビデオメモリから削除されるようになりましたので、勿論最新版をご使用だとは思いますが、改めてご確認ください。
その際は、不使用になったオブジェクトはきっちり破壊して、不使用であることをシステムへ伝えてください。
あとは基本的なメモリ使用量削減テクニック、
・画像の色数を減らす
・余白をトリミングする
・アルファチャンネルが不要であれば削除する
・BGMのような大きなサウンドファイルは『ディスクから再生』オプションを指定する(データエレメンツで設定可能)
を実施してメモリ使用量を下げてください。
先述の通り、こちらの手元にそれほど巨大なデータがありませんのでバグなのか仕様なのか検証できません。可能であればそのデータを確認させて頂けるとありがたいです(有効であれば開発元への報告にも使用させて頂きます)。
作られているゲームの内容にも寄るでしょうから無理にとは申しませんが、よろしくお願いいたします。
>ASD様
ご返答ありがとうございます。
最新版での仕様は知らなかったので参考になりました。
それらを念頭におきながらシステム等を再検証してみます。
本来であればデータをお渡しして検証いただくのが最善なのですが、
諸事情によりお渡しはできません。すみません。
はじめまして。ブログの記事には普段からお世話になっております。
アプリケーションの互換性について質問があります。
MMF2で作成したアプリケーションはwindows8以外のOS(MacOSX.winXp.7など)で起動することは可能でしょうか。またその場合、Direct3D9モードのエフェクトも正しく表示されるのでしょうか。
apple製PCを所持していないため、確認が取れず困っております。
回答よろしくお願いします。
>>YMDさん
CF2.5(MMF2)で作成したアプリケーション(『Windows EXEアプリケーション』タイプ)はXP以降のWindowsで動作します。Direct3D 9のエフェクトが表示されるかどうかはPCのグラフィックボードがDirectX 9およびピクセルシェーダー(PS)2.0以降をサポートしているかどうかに寄ります。
『Windows EXEアプリケーション』としてビルドしたアプリケーションはMac OSでは動作しません。エミュレーションなどで「Mac上でWindows用アプリケーションが動く」と謳われているソフトウェアを利用すれば動作するかもしれませんがサポート外となります。
現在開発元のClickteamではMac OS用ネイティブアプリとしてビルド可能になる『MacOSエクスポーター』が開発中ですが、現在発売済みの他のエクスポーターと同様に、Windowsと全く同一ではなく少なからず差異・制限が存在すると言われております。
こんにちわ前回はありがとうございました。
おかげでHPバーのずれは無くなりました。
またあらたに問題が出たので質問です。
前回までは特定ボタンを押したときに敵を生成するようにしていたのですがゲームなのでステージに最初から敵を置きたいので、敵を生成する際に出現ポイント(仮)をアクティブオブジェクトで作り大量複製したものを置きフレームの開始時といったアクションで一括で生成後出現オブジェクトの破壊で省力化を行おうと試みました。
HPバーが最後の一体にしかつかず他の個体には体力が反映されていないのか無敵状態になってしまいます。うまくオブジェクトの生成とHPバーを連動させられる方法がありましたら教えてください。
>>青二才さん
ライフカウンタの作成位置を敵本体から出現ポイントへ変更してください。
作成位置を敵本体のままで行く場合は、出現ポイントでForEachループを回して、そのループ内で作成すれば上手く行きます。
– サンプルプログラム
https://blog.clickteam.jp/wp-content/uploads/2015/11/cf25_blog_2015-11-03_enemy_lifecounter_pairing_with_create_point.zip
>>管理人さん
回答ありがとうございます。助かりました。
iosエクスポーターの発売ですか、、、楽しみに待ってます。
また質問があります。
フレームの編集画面で自由に拡大縮小することはできないでしょうか。左上の%をいじるものだと拡大した時に、中心から一定距離はなれたところを見ることができません。
>>立ちくらみさん
上部メニュー『ウィンドウ』内の『分割』をお試しください。
フレームエディタを最大4分割してそれぞれ別の場所を表示することができます。
境界線部分をクリックすると分割が戻ります。
>ASD様
回答ありがとうございます。やってみます。
すみませんやってみたのですが、やはり端を拡大した状態で見ることができませんでした。他に方法はないでしょうか。
申し訳ありません、フレームのサイズを調節したら自己解決いたしました。
前回の質問無事解決しました。ありがとうございます。
また新たに質問が出来ました。
敵オブジェクトを増やしていくと衝突判定が無くなってしまうようなのです。
大体オブジェクトが全体で150~200以上になるとこの症状が出てくるのですが
何か解決法は無いでしょうか?
>>青二才さん
衝突判定の消失は、衝突イベントの条件に高速ループ(またはForEachループ)を使用していると、それが同時に大量に実行された場合等に陥りやすいです。
フレームプロパティの『オブジェクトの数』を増やすと改善する場合があります。
また、スクロールゲームを作成していて、フレームのはるか先にまでオブジェクトを配置しているような場合、オブジェクトプロパティの『表示領域から離れすぎている場合にオブジェクト無効』を『いいえ』に変更してみてください。
シューティングゲームを作っています。
キャラクターを左右に指でなぞってタッチで弾を出したいのですが、タッチする度に1発ずつ出すようにするにはどう作成すればいいのでしょうか。
また、発射された弾で障害物を撃ち落としたいのですが、ピンポイントで撃ち落とせるように作成するにはどうすればいいのでしょうか。
>>wineさん
サンプルを作成いたしました。サンプルではY軸にも移動可能になっていますのでX方向のみ必要でしたらその部分は削除してください。
弾の発射とブロックの破壊も組みましたが、「ピンポイントで撃ち落とせるように」というのがよく解らなかったので、足りなければ再度詳しくご質問ください。
– サンプルプログラム
https://blog.clickteam.jp/wp-content/uploads/2015/11/cf25_blog_2015-11-07_swipe_move_touch_shoot.zip
回答ありがとうございました。
実は発射しても障害物がすり抜けたりするなど、いろいろ作成してもめちゃくちゃだったのでこのような質問に至りました。
ひとまずこれで参考にできそうです。質問内容が一部不備だったことをお詫びします。
いつも参考にさせていただいております。
アンドロイド用のライブ壁紙を作りたいのですが、バックグラウンドで常駐させて
動かすには、どうすればよいでしょうか?
ご指導よろしくお願いいたします。
>>tyamaoさん
以前別の方のご質問にもお答えしましたが、CF2.5製Androidアプリは、バックグラウンドへ移行すると強制的に一時停止する仕様となっております。
バックグラウンドでも常に動作し続けるアプリの作成は不可能となっております。ご了承ください。
ご回答ありがとうございました。
はじめまして、エイセイと申します。
Clickteam Fusion 2.5の無料版を触らせていただき、有償版に興味を持ったのですが、
無料版から参照できるヘルプファイルなどの情報には見当たらなかったので質問をさせてください。
Clickteam Fusion 2.5有償版ではピクチャエディタの「エクスポート」機能を使用して画像を出力できるとのことですが、
出力ファイル形式はどういったものが選択可能でしょうか?
また、アルファチャンネル画像の出力も可能でしょうか?
>>エイセイさん
ピクチャエディタからエクスポートできる形式は、『PNG』『JPEG』『BMP』の3種類となっております。
オブジェクトに登録されている画像がアルファチャンネル付きの場合、PNG形式で保存すればアルファチャンネルも付きます。
なお、JPEGで保存する際の画質の指定等のオプションはございません。
回答ありがとうございました。
ASD様。
8月にも1度質問したのですが、Lacewingを使ってプレイヤー間で数字を共有するのが上手くいきません。
マルチプレイのサンプルを頂いて色々試してみたのですが・・・
結局できませんでしたorz
そこで、どこがダメなのか少しずつさかのぼって考えてみました。
その結果、サブチャンネル8に数字が送られたときに、グローバル変数Dを1に変更するというとこで失敗してしまいました。
↓一応ファイルをUPしてみました。
https://free.filesend.to/filedn_infoindex?rp=b45ebcfba4564d18ef4156234fba283o
1、ボタンを押したら変数Aに1ずつプラスされる
2、その数字をサーバーに送って変数Bで受け取る
のような、サンプルを作って頂けると非常に助かります。
ぜひお願い致しますm(__)m
>>yyyyさん
データを拝見いたしました。以前の回答時に添付したサンプルプログラムを使われているようですが、チャンネル作成からログインまでの処理がごっそり無くなっていますね。
大前提といたしまして、「全てのユーザーは同じサーバーに接続し、最初のユーザーが開設したのと同じチャンネルに参加する」ことで初めてデータのやり取りが可能となります。
チャンネル開設と参加処理がなければ、送信対象のチャンネルも対象ユーザーも不明なので失敗してしまうのも当然、という訳です。
下記のサンプルをご参照ください。EXEにビルドして2つ以上起動し、それぞれログインさせれば1台のPC上でも確認が取れます。
追記:実際に運用する段階では、チャンネル名の一覧を取得して、被らない名前に制限するような処理が必要ではないかと考えます(サンプル追加)。
– サンプルプログラム
https://blog.clickteam.jp/wp-content/uploads/2015/11/cf25_blog_2015-11-12_Lacewig_share_number.zip
https://blog.clickteam.jp/wp-content/uploads/2015/11/cf25_blog_2015-11-13_Lacewig_multiplay_get_channel_list.zip
ASD様。
初歩的なミスすいませんでした。
サンプルありがとうございます!
そういうことだったんですね・・・
まだ理解できていない所がありますので、これからじっくり勉強したいと思います。
大変勉強になりました。
ありがとうございましたm(__)m
お世話になっております、また質問があります。
・ゲームをプレイしている時に表示される枠(黒い点線)を拡大縮小。
・ゲーム画面のウィンドウを拡大縮小すると、それに合わせてゲーム画面も拡大縮小される。
といったことはどうすればできるでしょうか?
>>立ちくらみさん
表示領域(実行した時にウィンドウ内に表示されている画面)を拡大縮小(引き伸ばし)するには、『アプリケーションプロパティ』の『ウィンドウ』にある『ウィンドウサイズ全体に表示』にチェックを入れます。
ただしこれは、ウィンドウの形に合わせて画面が引き伸ばされるので、16:9のモニタ上で4:3のゲーム画面のウィンドウを最大化した場合に横に伸びたようになってしまいます(逆も然り)。
次回のアップデートで比率を保って引き伸ばすオプションが追加される予定です。
回答ありがとうございます。
逆も然りということはゲーム画面を16:9にすることが可能なのでしょうか?
>>立ちくらみさん
4:3のゲーム画面が16:9のモニタ一杯に引き伸ばされると横に伸びた画面になりますし、逆に16:9の画面が4:3のモニタ内で引き伸ばされると、横方向が圧縮されたような画面になる、という意味です。
そういうことでしたか、わかりました。
ブログ楽しみに拝見しています。
特定のサウンドの音量を調節するイベントですが、Android端末やAndroidエミュレータでうまく動きません。
音量のカウンタ表示もされず、音量調整しようとするとサウンドが聞こえなくなります。(実際は停止しているわけではなく、聞こえなくなるだけのようです)
何が間違っているのでしょうか。
お忙しいところ恐縮ですが、お願いいたします。
soundtest.mfa
http://fast-uploader.com/file/7003036019550/
soundtest.apk
http://fast-uploader.com/file/7003036069761/
>>新宿さん
確認しました。確かに『サウンドの音量を変更』は動作しませんね。
また『主音量の変更』も、全ての音が消えてからでなければ変わらないようになってしまっています。
バグかもしれませんので開発元へ報告を行いました。お知らせ頂きありがとうございました。
現状『チャンネルの音量を変更』ならば動作しますので、音量を変更したい音はチャンネルで鳴らすようお願い申し上げます。
ASD様
ご返信ありがとうございました。確認できました。
音量調整の必要があるサウンドはチャンネルを使うようにします。
なお検証を続けていたところ、チャンネルを使用していても、そのチャンネルをロックしてしまうと同様の現象が起こってしまうようです。
サウンドが消えてしまう不具合の対処のためにチャンネルのロック機能を使用していたため、音量調整や停止させる際に都度ロックを解除することで対応しました。
ご参考までに。
ASD様。
おかげさまで順調にゲーム作りを楽しめています。
ですが、Lacewing についてお聞きしたいことが出来ましたので、質問をお願い致します。
簡単に言いますと、peerIDを自分で指定した数字に変えたいです。
複数人で数字を共有するときに、それぞれのIDを別々の物にしてサブチャンネルを変えないといけないことがわかりました。
なので、プレイヤー別に数字を割り当てて、iniで保存して変更されないように固定したいと考えています。
何か良い方法がありましたら、ぜひよろしくお願い致しますm(__)m
>>yyyyさん
peer IDは参加順に割り当てられるので変更はできないと思われます。
peerに対して送信する際に対象を選択する方法にはID以外に名前でも指定できますので、名前を固定にしてはいかがでしょうか?
参加者全員へ送信する場合はチャンネルへ送信すればいいですが、一部の複数人へ送信する場合はそれだけの送信処理が必要だと思います。
ASD様。
助かりました。
ありがとうございます!
名前を固定しようと思います。
それから、チャンネルに送ったら複数人で共有できるんですね・・・
気づかなかった自分が恥ずかしいですorz
また何かありましたらよろしくお願いしますm(__)m
また質問があります。
ゲーム画面を縦長にすることは可能ですか?
>>立ちくらみさん
それは所謂『縦画面モード』のことでしょうか?(アーケードの縦スクロールシューティングが家庭用に移植された際に画面を90度回転させてモニタを縦向きに使うモード)
画面回転は『Rotation Shader』で実現可能です。
– Squeeze & Rotation Shaders
http://community.clickteam.com/threads/58282-Squeeze-amp-Rotation-Shaders
こちらのスレッド下部のリンクから『5045.zip』をダウンロードし、解凍したフォルダをCF2.5の『Effects』フォルダに入れます。
プロパティのエフェクト選択画面に『Rotate』が追加されますのでそれを選択し、『Angle(fAngle)』パラメータに回転させたい角度を入力してください。
画面全体を回転させる場合はフレームプロパティのエフェクトに設定します。
回答ありがとうございましたやってみます。
ASD様
物理-ジャンプ台オブジェクトを使っているのですが、まれに設定値よりはるかに大きくジャンプしてしまうことがあります。
この現象を回避する方法があればご教示いただけませんでしょうか。
※以下にアップしたサンプルでは、クリックした位置にオブジェクトが出現し、地面(ジャンプ台)に落下、設置するとジャンプします。
クリック連打していただければわかると思いますが、何回かに1回、画面外に出えるほどのジャンプが起こることがあります。これが仕様というわけではないと思うのですが…
jumptest.mfa
http://fast-uploader.com/file/7003467258242/
>>新宿さん
確認しましたところ、複数のオブジェクトの衝突が同時に発生すると飛び出してしまうようです。イベントをコピーして2個同時に出現するようにすると確実に発生します。
開発元へバグ報告を行いましたので回答があるまで今しばらくお待ちください。
ありがとうございます。お待ちしております。
また質問が出てきました。
キーボード操作にすると通常の動作音以外にエラー音のようなものが混じるのですがどうにかなりませんでしょうか?
>>青二才さん
キーボードのエラー音はキーを複数同時押しした時に鳴ることがあります。
これはCF2.5ではなくWindows側もしくはPC本体側が出しているものでCF2.5側では対応のしようがありません。
『キーボード 同時押し 音』などで検索していただくと、色々と対処法が出てきますのでそれらをご参照ください。
恐らくリッチテキストを読み取り専用にしている時に
書きこみエラー音のようです。リッチテキストが表示されている時にこれらの音を出なくさせるにはどうしたらよいのでしょうか?
>>青二才さん
リッチエディットやエディットボックスなどは、Windowsのフォーム コントロール機能によって表示されているものなので、Windowsの仕様がそのまま反映されます。
どうしてもリッチエディットでなければいけない、というわけではないのでしたら、エディットボックスなら音が鳴らないようですので、そちらに変更されるか、
所謂RPGやアドベンチャーゲームの会話表示は通常の文字列オブジェクトでも可能ですのでそちらで組んでも良いでしょう(リッチエディットのように文字のフォントや色がバラエティに富んだような文書は表示できませんが、パラグラフごとに色やサイズは変更可能です。)。
開始時にリッチエディットが表示されている場合には
特にこういった現象が起きない事が確認されました。
イベントエディタでリッチエディットの表示コマンドを使うと
リッチエディットの枠内にカーソルが入りそれがエラー音の原因となっているようなのですがそれを取り除く事も出来ないのでしょうか?
たびたび申し訳ありません。
>>青二才さん
表示前に自動フォーカスを無効にしておくとカーソルが入らないことを確認しました。お試しください。
ASD様。
質問をお願い致します。
おかげさまで、オンラインのやり方はほぼわかりました。
ですが、問題が起きてしまいました。
PC同士だとうまく行くのですが・・・
PCからandroidに数字を送ると、高確率でアプリ(android側)が強制的に閉じてしまいます。
ですが、1フレームで完結させた場合(この前頂いたサンプル)は落ちません。
2フレーム以上(ログイン→メイン)だと何故か落ちてしまいます。
原因がわかりましたら教えていただきたいです。
ぜひよろしくお願いしますm(__)m
↓こちらがファイルになります。
https://free.filesend.to/filedn_infoindex?rp=e15c534a3bb063a664552357e5f28bfo
>>yyyyさん
確認しました。PC→Androidだけでなく、Android→Androidでもクラッシュしました。
本家(開発元)フォーラムのLacewingカテゴリにてバグ報告の書き込みをしましたので、回答があるまで今しばらくお待ちください。
ASD様。
回答ありがとうございます。
了解しました。
お待ちしておりますm(__)m
ASD様。
あまりせかしたくはないのですが・・・
何か回答などはありませんでしょうか??
>>yyyyさん
開発者より提供されたテスト版にて、PC-Android間では動作することを確認しましたが、まだAndroid-Android間ではクラッシュします。
アップデート版のリリースはもうしばらく掛かりそうです。どうかお待ちください。
ASD様。教えて下さい。
Androidビルドの際にエラーが出ます。
以下の内容です。
パッケージorg.apache.http、org.apache.http、org.apache.http.client.entity、org.apache.http.client.methods、org.apache.http.impl.clientは存在しません
の5項目。JAVAのインストール等に何か失敗しているのでしょうか。
Java SE Development Kit 8u66をインストールしています。
あと、シンボルを見つけられません、とはどういうエラーでしょうか。
すみませんが、ご教授お願い申し上げます。
>>超初心者さん
プロパティで指定したAPIのパッケージがインストールされているかSDK Managerで確認してください。
また、特定のAPIでビルドできない場合は違うAPIに変更してみてください。例えば、こちらの環境ではAPI23ではエラーが出ますが、22では出ませんでした(ビルドできないのはSDK側のバグの可能性もあります)。
ASD様。ご返信くださいまして誠に有難うございます。今一度Android SDKを見直し、http://www.clickteam.jp/tutorials/android-build-stepsのサイトも見て、APIのパッケージも見ましたが、やはり同じエラーが出てきます。
シンボルを見つけられません、というエラーもいつか出てきまして、先述の質問を読み、JAVAの更新確認もしましたが、ダメでした。
JAVA形式でのビルドはできたのですが、私にはどうやら難問のようで、諦めます。どうも有難う御座いました。
リッチテキストの問題のエラー音は解決したのですが、新しく質問が出てきました。
リッチテキストで会話文を三行表示をしているのですが、プレイヤーの方によっては四行に表示されたりしてしまうようなのです。以前に作成していただいた最終行に到達した場合に閉じるという方式を採用しているので表示行数がずれるのは問題があります。
何故四行表示されてしまうのか?
三行表示を固定化したい場合はどうすればよいのでしょうか?
回答いただければ幸いです。
>>青二才さん
・設定されているフォントが、その方のPCにはインストールされていない為、違うフォントが使用され文字サイズが異なっている。
・リッチエディットはWindiwsコントロールであるため、使用するWindowsで設定されているテーマがオブジェクトの外観にも影響します。その関係でオブジェクトの領域が広がる・狭まる、ということも考えられます。
アプリケーションプロパティの『ビジュアルテーマを有効に』を外すと、多少は影響を小さくすることができます。
等の要因が想像されます。どのような文書を表示されようとしているのか、ご自身の環境と、表示が異なっている方の環境との差異を今一度ご確認ください(使用しているテーマや、文字・項目のサイズ(DPI)の設定値など)
回答ありがとうございます。
言われた方法を試してみます。
ただ不特定多数のユーザー様になるので、いちいち環境を比べるというわけにもいきません。
イベントエディタなどで表示行数を固定化する方法など対応出来る場合そちらの方法も教えていただければ幸いです。
>>青二才さん
表示行数は、オブジェクトのサイズと、フォントの種類や文字サイズによって決まります。イベントで固定化することはできないようです。
もし解決しなければ、実際のデータと、正常とされるご自身の環境での画面と、異なっているユーザーの画面のスクリーンショットをご提示いただければ、こちらでも調査できることがあるかもしれません。
はじめまして。
質問なんですが、HTML5エクスポーターで
プロパティ、オフラインを許可がチェック出来ません。
HPの説明もいまいちよくわからないので、オフラインでの起動方法を教えてください。
>>ABCさん
「オフラインを許可」は、開発元によりますと、問題が発生したため無効化しているとのことです。再度使用可能になるかどうかは現在のところ未定です。
– Allow offline option disable. How enable this option?
http://community.clickteam.com/threads/91241-Allow-offline-option-disable-How-enable-this-option
ASD様、ご返事ありがとうございます。
多少期待していた機能だったので少し残念です。
それともう一つ質問なのですが、HTML5エクスポーターでのジャバスクリプトの動作確認はビルド後、実行でしか確認できないのでしょうか?
ビルドして実行だと確認出来るまでにそれなりの時間がかかるので、アプリケーションを実行かフレームを実行で確認する(ジャバスクリプトを動作させる)方法はありませんでしょうか?
いい方法があれば教えてください。
>>ABCさん
エディタから実行すると、Windows EXEと同様のランタイムで動作するため、Windows EXE以外のビルドタイプを選択した場合は、ビルドしなければ実際の動作確認はできません。
『HTML5ファイナルプロジェクト』に比べてビルドに掛かる時間が短いので、開発中は文字通り『HTML5開発中』を選択してビルドしてください。
お世話になっております、また宜しくお願いいたします。
悪魔城ドラキュラの様な階段のシステムをを作りたいと思っています。
仕組みは足元に作った判定(3×5ドット)に階段(斜め45度のライン判定)のアクティブオブジェクトが接触+↑ボタンを押したときにフラグを切り替え、フラグと共に有効な足場を切り替える・・・
以上のような仕組みを考えていましたがどうも上手くいきません。
判定に接触しても、浮遊状態でしかフラグ切り替わらず、フラグが切り替わっても空中に浮遊した状態になり、操作が出来なくなる場合もあります。
アクティブオブジェクト(階段)に障害物設定ができないので、足場として機能していないのでないかと思うのですが、なにか良い解決策は御座いますでしょうか?
>>q-taroさん
今回も前回のサンプルに追加で作成してみました。上下ではなく斜め入力で昇降します。
基本的な考え方はq-taroさんの仰っている内容で合っていると思います(他にも方法はあるかもしれませんが)。
– サンプルプログラム
https://blog.clickteam.jp/wp-content/uploads/2015/12/cf25_blog_2015-12-06_fastloop_obstacle_detection_kaidan.zip
>>ASD様
サンプルを作っていただきありがとう御座います。
おおよその再現に成功しました。
また宜しくお願いいたします。
はじめまして。
ASD様。今日、Staemで、バーゲンをやっていたたので、ようやく、通常版を購入して使い始めました。念願のAndroidのビルドをやりたかったので、早速手順通りにJDK、SDKの場所を指定してビルド開始。すると、エラーが出て、どうにもうまくいきません。色々試したのですが、すべて同じエラー。
最終的にアクティブを1つ置いただけでのビルドで出たエラーが以下のページに載せてあります。
http://caz60780.jimdo.com/新規ページ/
あまりに長いので、敢てアップロードしたURLを載せました。
何がいけないのでしょうか。宜しくお願い申し上げます。
>>くまおさん

プロパティの『APIをビルド』の設定を変更してみてください。
Android SDK Managerにて使用するAPIのパッケージがインストールされているか確認してください。
例えば、筆者の環境では、API23ではエラーが出ましたが、22では出ませんでした。
CF2.5DevとAndroidエクスポーターにてアプリを作っています。
AdMobオブジェクトを使い、バナー広告、及びインタースティシャル広告を表示するところまでいきました。
こちらで質問された方及びASD様には横からではございますが感謝しています。
さて、上のほうの質問のご回答にありました、Admobオブジェクトのデバイスのテスト項目、デバイスリストに「*」をいれればデバイスが自動認識されるということでしたが、当方の環境ではアスタリスクのみを入れたのですが実際にAndroid上で起動するとテスト広告ではなく、正規の広告が表示されました。
またAdMobのダッシュボードには正規の広告が表示された回数が、表示させた分カウントされていました。
ClickteamのForumも英語には不精ながら検索をかけてみたのですが、いまいち理解できず…
現在は広告表示を想定した場所に仮絵を置いて作業していますが、テストデバイスの設定方法の他にするべきことがあるのか、もしよければご教示頂ければと思います。
>>TTさん
開発元に問い合わせた所、アスタリスクではなくフル文字列のデバイスIDを入力するようにと回答がありました。
下記のアプリケーションでお使いのデバイスのIDを調べることができます。
– Device ID Finder for AdMob – Google Play の Android アプリ
https://play.google.com/store/apps/details?id=pe.go_com.admobdeviceidfinder
こちらでも、*に代わりデバイスIDを入力したところ、正規バナーではなくテストバナーが表示されたことを確認いたしました。
ASD様。有難う御座います!!
無事ビルドできました。スマホに入れてインストール、プレイも問題なくできました。
感謝感謝です!!
いつもお世話になります。
画像のインポートと品質について質問させてください。
透明色付きPNG画像をインポートし、画面上に配置すると
絵の輪郭をなぞるような、意図しない薄い線が出てしまいます。
絵の部分と、透明部分の境界に半透明の領域ができており
それが意図しない色の線になっているようにも見えます。
この線を出さないようにする方法がありましたらご教授いただきたいです。
輪郭がくっきりしたドット絵ならこの線は出ないのですが、その場合も
スケール変更で拡大・縮小した際に下記の問題があり悩んでおります。
・品質0(最高速度)にすると薄い線は出ないが、ドットが荒れる
・品質1(最高品質)にするとドットは荒れないが、絵の輪郭に薄い線が出る
お忙しい中恐縮ですが、よろしくお願い致します。
お世話になります。
上記の質問ですが、ドット絵の工夫で自己解決となりました。
理想の画質には至らないものの、
品質0で半透明領域のないドット絵を使うことにしました。
失礼致しました。
いつも我々ユーザーの疑問にご回答くださって感謝しております。
また何かありましたら質問させていただくかもしれません。
その時は何卒よろしくお願い致します。
>>Clowさん
>品質1(最高品質)にするとドットは荒れないが、絵の輪郭に薄い線が出る
アプリケーションの表示モードが『Direct3D』になっている場合、そのようなアンチエイリアスの掛かり方になるようです。
『標準』に変更すれば、輪郭部分には補間は掛かりませんが、グラフィックボードによる画像処理支援は無いため処理は重くなります。
>透明色付きPNG画像をインポートし、画面上に配置すると

>絵の輪郭をなぞるような、意図しない薄い線が出てしまいます。
こちらは拡大・縮小をしていなくてもそうなるのでしょうか?
PNG画像に透明色ではなくアルファチャンネルが設定されていて、輪郭部分がぼやけるような形で設定されてしまっている、ということはありませんでしょうか?
画像にアルファチャンネルが設定されているかどうかは、ピクチャエディタの『透過』ボタンを押すと確認することができます。
アルファチャンネルが原因ではない場合、アプリケーションの表示モードを『Direct3D』から『標準』に変更してみてください。
それで解消したら、グラフィックボードの特性や設定によるもの、と推測できます。
グラフィックボードの設定で、『アンチエイリアス』や『テクスチャフィルタリング』に関係する項目があれば、それらを変更してみてください。
>>ASD様
拙い質問に的確なご回答をしていただき感謝致します。
ご指摘の通り、アプリケーションの表示モードを『Direct3D』から『標準』に設定した所、動作はもったりしますが意図しないアンチエイリアス線が消えました!
また、アルファチャンネルの確認方法も教えていただき助かります。
当方の問題はアプリケーションの表示モードの変更によって解消されましたが
やはり動作が重くなるので、検討しつつ制作を続けたいと思います。
丁寧なご回答誠にありがとうございました!
はじめまして
HTML5エクスポータについて2点質問をさせてください
1.「ビルドR284.10」にてHTML5エクスポータを使用し
「ウィンドウサイズ全体に表示」にて出力を行うと
出力したゲーム画面が右端によってしまいます
(「ビルドR283.5」の場合は出力しても画面中央に表示されていました)
2.iOS9以降の不具合ですが、HTML5エクスポータを使用し出力しても
サウンドが出なくなっています。
ogg、wav、aif形式を試してみましたがサウンドが出ません。
御手数ですが、ご確認お願いします
>>DBOYさん
>1について
こちらでも確認いたしました。現在開発元でテスト中のBuild 285.1 Betaでは発生していませんので、次回のアップデートをお待ちください。
>2について
iOS端末を所有していないため確認はできませんが、どうもiOS9にてバグと言うのか仕様変更というのか解りませんが、手が加わったためにそのような状況に陥っているようです。
– iOS 9 Safari WebAudio::AudioBufferSourceNode does not play on first touchstart event. – Qiita
http://qiita.com/uupaa/items/e5856e3cb2a9fc8c5507
今後のiOSのアップデートで元に戻るかもしれません。開発元のフォーラムでも回避策について色々と議論されておりますので、CF2.5側のアップデートでそれが適用されて鳴るようになるかもしれません。
ASD様
ご回答ありがとうございます!
①につきましてはアップデート心待ちにしております
②につきましては、iOSのアップデートにて解消されました
お騒がせいたしました
AdMobについて。
オブジェクトに『最後のエラー』という数式までは先述の内容を見まして、そこまで辿り着いたのですが、数式の意味が全く分かりません。色々調べても見たのですが、数式とはどういうものを入れたら良いのかこのソフトに関しては有効な解決策が見当たらず、ご教授をお願いいたします。
>>くまおさん
『最後のエラー』関数を使うと、オブジェクトが正しく動作しなかった場合に返されるエラーの内容を表示することができます。
文字列関数なので、文字列オブジェクトなどのテキストを表示可能なオブジェクトに入れます。
例:AdMobオブジェクトの場合
条件:(AdMob):エラー発生時 アクション:(文字列オブジェクト):可変文字列を LastError$( “AdMob” ) に変更
はじめまして。ClickTeam 公式ストアから、こちらで質問するように指示されました。よろしくお願いします。
ネットで、1日でスマホゲームアプリ作ってみた Vol.1~5という素晴らしい教材を拝見してインディゲームクリエーター2.5を購入(ビルドR284.10)、iOS用エスクポータもインストールしました。しかし、ソフトが正確に動きません。
アンインストールしてPCを再起動。CDから再インストールし、iOS用エスクポータまで再インストールしても状況は同じ。合計二度、インストールしているので質問したほうがいいと判断しました。
お忙しいところ申し訳ありませんが、ご指導よろしくお願いします。
ちなみに私はゲーム初心者どころかPCもくわしくない高齢者です。
Win7。32ビット。モジラ。
//////以下、問題点//////
ビルドの種類を「iOS Xcodeプロジェクト」にして、640×960に設定。
問題点①
一度、アプリケーションを実行や、フレームを実行を行うと、プロパティもレイヤーツールバーも選択できなくなる。CF2.5をクローズして再び立ち上げると、プロパティもレイヤーツールバーも選択できるようになる。しかし、同じ現象が起こる。
問題点②
アプリケーションを実行や、フレームを実行を行うと、640×960に比例した形ではなく、やや正方形に近い形になって、フレームの上下が切れてしまう。
以上です。よろしくお願いします。
>>むーさん

・問題点①について
『アプリケーションを実行』『フレームを実行』で起動したアプリケーションが存在している間は基本的には編集不可となっております。作業される場合は実行中のアプリケーションを終了させてください。
閉じた後でも選択不可である場合、タスクマネージャを開いて『edrt.exe』というプロセスが残っていないかご確認ください。残っていた場合、それを終了させれば選択可能になるはずです。
この現象については、昔、プロパティの『V-Sync』をオンにしていると発生していました。これについては既に修正されたはずなのですが、こちらも一度設定をご確認ください。
・問題点②
そのような現象はこちらでは確認しておりません。スクリーンショットや実際のファイル(プロパティで設定されているオプションがないかの確認)をご提示頂けると助かります。
よろしくお願い申し上げます。
ご親切なアドバイスありがとうございました。
問題点①については、解決(妥協)しました。
アプリケーションを閉じた後でも選択不可のままですが、不便ながら「アプリケーションを実行」や、「フレームを実行」を行う回数を少なくして対処していくことにしました。
なお、アドバイスいただいた件ですが、
タスクマネージャに『edrt.exe』は残っていませんでした。
プロパティの『V-Sync』の空白も確認しています。
問題点②については、スクリーンのjpgの添付方法がわからず、私のショッピングストアの表紙に置いてみました。
http://store.shopping.yahoo.co.jp/lhegkusv6m4hjkailrouxqhc7e/ntx11rzsgs.html
「背景」に、赤い二等辺三角形に1から9の数字をふった画像です。
「アプリケーションを実行」を行うと、図右のように上下の数字が切れてしまいます。
プロパティで設定されているオプションはありませんでした。
おそらく私のPCの初歩的な設定ミスだと思うのですが自力での解決は難しそうです。ちなみに横置きiosの縦960横640では、何の問題もありません。
もう一度だけアドバイスをいただいてダメなら、もうあきらめます。
よろしくお願いします。
>>むーさん
スクリーンショットを拝見する限り、画面の縦解像度が狭いために実行したウィンドウが収まりきらずに画面が切れているものと思われます。
解像度の設定をご確認頂き、縦サイズが、「960+ウィンドウ枠」が全て表示できる余裕のある解像度へ可能なら変更してください。
ギリギリの場合は、タスクバーを左右に配置すれば少しは縦サイズを稼ぐことができます。
スクリーンショットやファイルを提示してほしいとお願いしているのに、アップロード場所がないのは不便でした。良い場所があるか確認いたします。
解決できました!!
ノートPC使用のため画面解像度は縦最大768でしたが、別モニターをつないでそれをメインに作業していくことにしました。初歩的な質問で申し訳なかったですが、解決できてとても嬉しいです。私の自作ゲームはネタ的にいい感じでいけそうなので、来春までには売れるアプリを完成させたいと、PC音痴ながら強気で妄想しています。
ありがとうございました。m(_ _)m
問題点①もうまく動くようになりました。
アプリケーションを実行した後も選択できるようになりました。
すべての原因は画質解像度不足だったようです。
ご報告まで。
大変困っております、
先日androidアプリを作ろうとandroidエクスポーターを購入し、導入、JDK、androidSDK、を上記の質問にあったとうり導入したのですが、ビルドする際に、
エラーが発生しました、出力先を表示しますか?
とでてきます、どうしたらいいでしょうか?
JDKの出力先C:\Program Files (x86)\Java\jdk1.8.0_65
androidSDKの出力先C:\Users\USER\AppData\Local\Android\android-sdk
>>nanoさん
CF2.5の環境設定にて、JDKとSDKのパスが正しく設定されているかご確認ください。
設定が正しいにも関わらずエラーが出る場合は『アップデートを確認』を実行してCF2.5に再度アップデートを掛けてみてください。
エクスポーターインストール以後にアップデートしていない場合、エクスポーター部分だけ古いまま、という状態になってしまっています。
Android表示について
Android固有のプロパティにおいて、「表示」項目を「内側に合わせる (黒帯を表示)」にしてビルドしたのですが、端末で見てみると該当部分は白いままです。
そのほかに設定しなければならない項目があるなどするのでしょうか?それとも端末固有の問題なのでしょうか。
ちなみに日本公式のチュートリアルの説明文ですが、「内側に合わせる (黒帯を表示)」の説明文が「ウィンドウ サイズを調整」と同様の説明文になっていました。
こちらに報告するのは適当ではないかもしれませんが、一応ご報告いたします。
http://www.clickteam.jp/tutorials/android-starter#chapter4
>>新宿さん

『黒帯を表示』とされていますが、実際はプロパティの『境界線の色』にて指定した色が表示されるようになっております。
こちらの設定を変更して頂ければ、お好みの色で表示することが可能です。
チュートリアルのご指摘ありがとうございます。担当者へ連絡いたします。
境界線の色が帯に反映されることが確認できました。
ご返信ありがとうございました。
mmf2guidebook_stg.mfaを参考にシューティングゲームを作っていたのですが、自分が作成すると、自機破壊→無敵を表す点滅→復活の流れができません。
また、敵破壊→ライフが1減少→無敵を表す点滅→復活という流れの作成方法も合わせて教えてください。
すみません。続けて質問なのですが、Androidの加速度センサーのオブジェクトについてなのですが、ズリズリと加速度センサーに応じて動くシステムが色々試したのですが、うまくいきません。
加速度センサーの使い方について教えて頂きたいです。
超初心者ですみません!!
文字列オブジェクトで、任意の場所で改行させたいと考えています。
改行コードの指定方法について教えてください。
よろしくお願いいたします
>>超超初心者さん

改行は『NewLine$』で行えます。
例えば『”あああ” + NewLine$ + “いいい”』という式にした場合は、
あああ
いいい
と表示されます。
ちなみに、数式内では『Ctrl+Enter』で改行することができますが、ダブルクォーテーションで囲われた単一の文字列内で改行を行った場合でも改行として認識されます。
例:
“あああ
いいい”
ASD様
ご回答いただき、ありがとうございました。
文字列に対する変更指示に色々なバリエーションがあることを知りませんでした。
色々と試してみますので、また質問が出ましたらよろしくお願いします
初めまして、どうしてもわからないことがあったので質問させてください。
zキーを押して攻撃アニメーションを再生するように作っているのですが、
連打をすると攻撃アニメーションの最後のフレームで静止する時があります。
また移動なりジャンプなりすれば戻るのですが何とか直したいです。
現在はzキーを押してからアニメ終了までは攻撃アニメのフラグが有効になり、
終了してから攻撃アニメのフラグを無効にするという方法をとっています。
攻撃アニメフラグが有効の間は他の停止や移動アニメは再生しないよう設定しているのですが、なぜこうなってしまうのかわかりません。
なお移動や待機、ジャンプなどにはPlatform Movement objectを使っております。
他にも色々問題があるのですがとりあえずこれだけでもお願いいたします。
続けてすみません、現在の状況を知ってほしくてイベントエディタのスクリーンショットを取って送りたいのですが送り方がよく分かりません。
コメントにファイルを添付機能を追加とあるのですが具体的にはどのようにやれば良いのでしょう。
どうぞよろしくお願いいたします。
>>くちじろさん
申し訳ありません。担当者に機能追加してもらいましたが、ログインしなければ使えない仕様でありました。
現在別の手段を検討中ですのでそれまでは別のアップロードサイト等をご利用いただきますようお願い申し上げます。
ASD様ありがとうございます
アップロードサイトのリンクを貼ればよいという事ですね。
あとフラグの件については解決したのですが、ボタン連打で最後のフレームで静止したままになるというのはまだ直っていません。
はじめまして。
ゲーム開発初心者です。
android用アプリを作成したく購入させていただきましたが、序盤でつまづいてしまいましたので
3点質問させていただきます。
初心者で稚拙な質問かもしれませんがよろしくおねがいします。
・Clickteam Fusion 2.5(ダウンロード版)
・Android エクスポータ for Clickteam Fusion 2.5
を2015/12/14に購入させていただき、
Android-build-guide.pdfの通りに進めてみています。
——————————————————–
【質問1 デジタル証明書の発行について】
pdf内の 「5. デジタル証明書の発行」の項です。
『
Java Development Kit のフォルダーにディレクトリーを変更します。
cd “\Program Files (x86)\Java\jre1.8.0_45\bin”
』
を参考に
「C:\Program Files (x86)\Java\jre1.8.0_65\bin」
と入力したところ
「内部コマンドまたは外部コマンド、
操作可能なプログラムまたはバッチファイルとして認識されていません。」
という表記がでました。
これはこちらのパソコンの設定や保存場所等の問題でしょうか?
——————————————————–
【質問2 マニュアルについて】
上記のpdf以外に、Androidアプリ公開までの流れが明確に表記されている最新記事やマニュアルはありますか?
検索能力不足で申し訳ありません。
もしサイト上などに既存のものがあれば教えて頂きたいです。
——————————————————–
【質問3 ビルドについて】
pdf内の 「5. デジタル証明書の発行」が分からず飛ばして
Clickteam Fusion 2.5でゲーム作成練習をしています。
実際にandroia端末とUSBで繋げてテストしてみようと
ファイル>ビルド>アプリケーション>保存
をしてみましたが、
「パッケージorg.apache.httpは存在しません」
「シンボルを見つけられません」
等16個エラーが出てできませんでした。
これはデジタル証明書の発行という手順を飛ばしている事に関係しますか?
エラーログの文章を張り付けて大丈夫か判断できなかったので、もし必要でしたら添付させていただきます。
——————————————————–
初歩的な質問でお手数おかけしますが
よろしくお願いいたします。
>>kakiuchiさん
>質問1 デジタル証明書の発行について
コマンドプロンプトでディレクトリの場所を変更するには『cd』コマンドを使用します。『cd C:\Program Files (x86)\Java\jre1.8.0_65\bin』と入力して下さい。
>質問2 マニュアルについて
開発元の本家クリックチームのフォーラムにチュートリアルがあります。動画付きですが、海外なので英語です。
– SETUP Android SDK/ JAVA JDK – How to export to android – Tutorial
http://community.clickteam.com/threads/94526-SETUP-Android-SDK-JAVA-JDK-How-to-export-to-android-Tutorial
解らない部分があれば、ここで質問して頂ければお答えいたします。
>質問3 ビルドについて

過去にも同様の質問がありましたが、プロパティにて使用するAPIを変更してみてください。
ASD様
たくさんの質問の中初歩的な内容でお手数おかけしました。
質問1 デジタル証明書の発行について
『cd C:\Program Files (x86)\Java\jre1.8.0_65\bin』
入力してみましたが違うエラー文が表示されました。
自分で調べて解決できなければまた質問させていただきます。
質問2 マニュアルについて
URLありがとうございました。
英語表記のチュートリアルサイトを検索して作業してみます。
質問3 ビルドについて
22に変更しましたらビルドできました!
あとはデジタル証明書が解決できれば問題なくゲーム作りを開始できそうです。
ありがとうございました。
>>kakiuchiさん
「ファイル名、ディレクトリ名、またはボリュームラベルの構文が間違っています」というエラーが表示されたのでしたら、パスの末尾、binの後に\を追加してください。
『cd C:\Program Files (x86)\Java\jre1.8.0_65\bin\』
もしくは公式サイトのチュートリアルのようにパスを””で囲ってください。
『cd “C:\Program Files (x86)\Java\jre1.8.0_65\bin”』
これで通るはずです。これは、binフォルダの中に更にフォルダがあるためで、binフォルダまでの指定で止める場合は上記のような書き方が必要です。
いつもお世話になっております。
iOSアプリを書き出す際のフォントについて教えてください。
iOSに標準的に搭載されているフォントを直接指定することはできますか?
可能な場合、指定可能なフォントリストもいただけると助かります
よろしくお願いします
>>超超初心者さん
ヘルプの『作成したアプリケーションの配布』→『iOS』→『相違点』には「PC のフォントはアプリケーションを実行するデバイスで iOS の同等のフォントに置き換えられます。(中略)iOS では Helvetica というフォントがシステムフォントに設定されています。システムフォントを使用したい場合は、 PC で Helvetica を選択してください。」とあります。
MacおよびiOSデバイスを所有していないため、実際の確認はできませんが、下記のサイトを参考に、文字列オブジェクトのフォントを指定してみてはどうでしょうか。
プロパティのフォントセレクタではPCにインストールされていないフォントは指定できないようですので、イベントの文字列オブジェクトの『フォント名を変更』アクションを使用してみてください。
不可能でありましたら申し訳ありません。
– iOS 7:フォントリスト – Apple サポート
https://support.apple.com/ja-jp/HT202771
– iOS Fonts
http://iosfonts.com/
回答ありがとうございました。
新たに質問なのですが全画面にしても余白が増えるだけなのですが
ビルドしたゲームを全画面にする方法はありますか?
>>青二才さん
どのような内容のアプリケーションを全画面にしたいのでしょうか?
データを提示していただけると助かります。
ASD様。
お世話になっております。で。沢山の質問に色々お答えされているのは凄く大変だと思います。ですが、許容範囲外の質問について、Clickteam Fusion 2.5についての日本語でサポートをしてもらえるところってありますか?
知りたいことは山ほどあるのですが、なかなか詳しい解説サイトが見つからないので、使い方にも不便さを感じています。
販売サイトでもこちらの質問箱のみしか対応がないようで、詳細に詳しい担当とかはございませんか?
買って使っていくうちにやはりどんどん奥に行くに従って、当然分からないことが出てくるのは当然の事です。どうか、宜しくお願い申し上げます。
>>くまおさん
現状、『インディゲームクリエイター Clickteam Fusion 2.5』について公式に日本語でのサポートを行っているのは販売元のデジカ(当サイト)のみとなっております。
ただ、お陰様で現在では日本国内でもCF2.5のユーザーも増えてきておりますので、個人ユーザーでも詳しい方がいらっしゃいます。
この場でご紹介することは控えさせて頂きますが、個人的にコンタクトをお取り下さいます様お願い申し上げます。
質問場所についてはもっと見やすい・過去の回答を探しやすい方法があるか模索中です。
>質問場所についてはもっと見やすい・過去の回答を探しやすい方法があるか模索中です。
wordpressを使われているようなのでプラグインでよくあるスレッド式のBBSだと便利そうですね。
ログは最初からになりそうですが・・・
>>横からさん
お返事が遅くなりまして申し訳ございません。
ご助言ありがとうございます。私自身は記事やコメントの管理の権限しか与えられておらず、ブログそのもののはデジカが運営しております。
担当者に連絡し、フォーラム機能は追加して頂いたのですが、トピックの作成やリプライ時に添付ファイルを付けることができないか引き続き調べてもらっているところです。
実現すれば、移行したいと考えております。
新たに質問です、ゲーム中画面の拡大や縮小はできるでしょうか?
ウィンドウサイズを変えるとかではなく引いたり近づいたり虫眼鏡のような効果です。
どうぞよろしくお願いいたします。
>>くちじろさん
サードパーティー製の『Lensエフェクト』で可能です。
下記の開発元のユーザーフォーラムよりzipをダウンロードし、解凍したフォルダをCF2.5インストール先の『Effects』フォルダへ置いてください。
エフェクト選択画面に『Lens』が追加されます。
これをアクティブオブジェクトに設定するとそのオブジェクトがレンズになり、その下の画像を拡大表示することができます。
レンズの画像は単色(白)にすると単純に平面的な拡大をします。グラデーション画像を設定すれば、グラデーションに合わせて湾曲したような拡大のされ方になります。
– Lens shader
http://community.clickteam.com/threads/56288-Lens-shader
– サンプルプログラム
https://blog.clickteam.jp/wp-content/uploads/2015/12/cf25_blog2015-12-28_lens_effect_example.zip
ASD様
助かりました。
サンプルのおかげで手早く実装することができました。
また行き詰まった時にお願いします。
どうもありがとうございました。
いつも参考にさせて頂いております。
『Lensエフェクト』について質問なんですが、指示通りに解凍したフォルダを『Effects』フォルダへ置いてもエフェクト選択画面に『Lens』が追加されません。
更新ボタンを押してもダメでした。バージョンはR284.10です。
原因は何だと思われますか?
添付
お世話になっております。
今年もよろしくお願いいたします。
仮にですが、次のようなイベントがあったとします。
・右、右下、左下に入力可能
・下入力は受け付けない
・オブジェクトAに接触したときに開始
通常、MMF2.5では次のようなイベント指定しかできないと思います。
—————————————————————
右入力/(条件反転)下入力/オブジェクトAに接触したときに開始
OR(論理)
右下入力/(条件反転)下入力/オブジェクトAに接触したときに開始
OR(論理)
左下入力/(条件反転)下入力/オブジェクトAに接触したときに開始
—————————————————————
条件が増えるたびに修正が大変でとても効率が悪いです。
キー入力を変数に置き換えることにより以下のように纏められそうな気がします。
(フラグは32種類までしか利用できないとのことなので利用を避けたいです。)
—————————————————————
(右入力OR右下入力OR左下入力)※変数で纏めておく/(条件反転)下入力/オブジェクトAに接触したときに開始
—————————————————————
いろいろ試してみたのですが自分のやり方が間違っているようでキー入力自体が反映できませんでした。
質問させていただきたいのは次の二点になります。
①キー入力を変数に置き換えることは可能でしょうか?
②OR条件を纏めるのに効率のよい方法はありますでしょうか?
よろしくお願いします。
>>Q-taroさん

どのようなシチュエーションでその処理が必要なのか、が解ればもう少し説明しやすいかと思いますが、以下のように組んでみてはいかがでしょうか。
入力条件の正・反転で、変数を1と0に切り替えるイベントを組みます。これで、入力中は1に、入力無し時は0になるので、
その変数の条件とオブジェクトA・Bの衝突条件、の2つで済ませる事ができます。
下入力の拒否は組み入れなくとも、「右、右下、左下」の時だけ1になるように組んであるので、不要かと思います。
>>ASD様
>>どのようなシチュエーションでその処理が必要なのか、が解れば~
「・キャラクターがオブジェクトAに接触したとき」と記載するべきでした。
先月相談させていただきました階段動作の応用で、
床と重なった階段を下りる動作を設定する上で、しゃがみアクションとの重複を防ぐために下の動作のみを反応させないようにする必要がありました。
テストに成功しましたので明日本番環境に組み込んでみます。
ありがとうございました。
お世話になります
フレームをコピーして目的の物以外を選択して削除しようとしたらこの画像のような事が起こりました。
キャラクターが発射する弾だけが残り、削除できない状態です。
画像の通り別レイヤーに移せばそのレイヤーを削除できるのですが、このオブジェクトは消せません、しかしイベントエディタなどからはちゃんと消えています。
一回状態を保存してまた開くと弾のオブジェクトは消えています、原因がいまいちよく分からないので質問させていただきました。どうぞよろしくお願いいたします。
添付
すみません、続けて質問で申し訳ないのですが現在wikiに乗っているポーズ画面のサンプルを参考にメニュー画面を作っていたのですが、一つ疑問がうまれました。
グローバル変数以外はフレームを越えて変数を増減、変更などはできないのでしょうか?
プレイヤーが持つステータス(変数)をメニュー画面に反映させたいのですが、現在フレームをステージとメニューに分けてサブアプリケーションでメニュー画面を呼び寄せるように作ったのですが、私が知っている知識だけではステージの変数をフレームを越えてメニュー画面の変数に反映させる方法はグローバル変数以外に思い浮かびません。
しかしグローバル変数を多用すると変数名を付けたとしても膨大な量になって自分でも管理がし辛くなるのではないかと思い質問させていただきました。
イメージとしてはキャラクターが成長した能力値を次のステージ(フレーム)に持ち越すRPG的な作り方をしたいのです、正直上質問は疑問にこそ思ったものの現状問題なく進んでいるのでできればこちらの回答を優先していただけると助かります。
どうぞよろしくお願いいたします。
>>くちじろさん
アクティブオブジェクトやカウンタオブジェクトを『グローバルオブジェクト』に設定すると、フレームを越えて変数・フラグが引き継がれます。
ただし、オブジェクトが最初からフレームに存在している場合のみです(プロパティの『開始時に作成』がオンで、フレーム上にオブジェクトが配置されている状態)。
あと、当然ですが、破壊して新たに作成したオブジェクトでは変数・フラグはリセットされます。
しかし、ご質問を読むと恐らく『サブアプリケーション』を使用されていると推測されますが、グローバルオブジェクトの内容はサブアプリを介しては共有されません。
サブアプリのプロパティの項目にあるように、サブアプリ介して親子アプリ(フレーム)間で共有できるのは『グローバル変数・文字列、ライフ、スコア』に限られますので、これらをお使いいただきますようお願い申し上げます。
変数の順番の入れ替え等はできませんので、最初から管理がし易いように考えて追加していくしかありませんが、私個人がしている方法として、『変数名の最初に通し番号を付ける』ということをしています。
例えば、グローバル変数ならGV(Global Value)+数字として、
GV1_ライフ
GV2_スコア
GV3_パワーアップ状態
という感じで名前を付けています。グローバル文字列ならGS(Global String)+数字です。
番号を付けることで、数が増えても番号である程度当りが付けられるので探しやすくなります。ご参考まで。
>>くちじろさん
アンドゥキャッシュが残る関係か、一旦閉じなければ削除が反映されない場合がございます。例えば、サウンドの削除もイベントを削除した後、一旦閉じなければリストから消えません。
ASD様具体的にいろいろと教えて頂きありがとうございます。
そうなるとグローバル変数で管理するかフレーム毎にコピーしていくかのどちらかになりそうです。
また壁に当たった時お願いいたします。
>>ASD様
ワープに関します質問になります。
よろしくお願いいたします。
アクティブオブジェクト”横棒”(横64ドット、縦1ドット)がアクティブオブジェクト”縦棒”(横1ドット、縦64ドット)に接触した状態で
下キーを押すと横棒と横棒がアクションポイントで交わるように次のようなイベントを設定しています。
—————————————
・アクティブオブジェクト”横棒”がアクティブオブジェクト”縦棒”に重なっている
・方向下を押す間繰り返す
-位置を”縦棒”から(0,0)(位置)に変更
—————————————
横棒が縦棒に僅かでも接触していれば下入力することでアクションポイントで交わるように移動(ワープ)できるのですが、
下キーを離した瞬間に下入力以前の座標に戻ってしまいます。
※フラグ切り替えでそのまま座標にとどまることに成功する場合もあるのですが、半分程度は失敗します。失敗する時はフラグを切り替えた時点でほかのアクションに移っていない場合に元の座標に戻されているように見えます。
下キーを離しても確実にワープしたままにするにはどのような設定が必要でしょうか?
>>Q-taroさん
申し訳ありませんが、動作画面がいまいちイメージできませんので、イメージ図、もしくはご自身が試作されたデータを提示していただけますでしょうか?
よろしくお願いいたします。
>>ASD様
上の質問内容の目的は床と重なる階段を下りるときに起点を確定させるための処理です。
ワープが戻ることを明確にする為、2種類の現象を試作してみました。
お手を煩わせてしまい恐縮ですが、ご確認よろしくお願いいたします。
添付 提出用ワープ失敗例.zip
>>Q-taroさん
そのプログラムではプレイヤーキャラの座標は、変数E、Fに格納した値に合わせるように設定されています(イベント80、81行目)
変数に変化がないと、オブジェクトのX、Y座標を直接変更しても次に動作した時にその値の座標へ戻ってしまいます。
座標変更時に、その座標を変数へ格納するようにすれば防ぐことができます。
– サンプルプログラム
https://blog.clickteam.jp/wp-content/uploads/2016/01/cf25_blog_2016-01-05_platform_warp.zip
(27、29、30行目を修正)
>>ASD様
サンプル修正いただきありがとうございます。
本番側の修正も成功しました。
またよろしくお願いいたします。
mmf2guidebook_stg.zipを参考にシューティングゲームを作っていたのですが、自分が作成すると自機破壊→無敵を表す点滅→復活の流れができません。改めて作成方法を教えて下さい。
また、敵破壊→ライフが1減少→無敵を表す点滅→復活という流れの作成方法もできれば合わせて教えて下さい。
>>wineさん
どこが違うのか確認するために、ご自身が作成されたデータを提示していただけますでしょうか?
PDF中で解らない部分がありましたらご指摘いただければ補足説明いたします。
お世話になります。
画像読み込みに関して質問があります。
ユーザが任意の画像を読み込ませ、
ゲーム内に表示させる方法があれば教えて下さい。
用途としては2つあります。
●用途1.カスタマイズ性の高いゲーム
ユーザが自作した画像を読み込ませることができるゲーム。
読み込ませた画像は顔グラフィックや装備、アイテムのアイコンに反映される。
●用途2.動きのあるイラスト
プログラムで雪を降らせる処理を作成し、
背景にユーザが自作した画像を読み込ませて表示する
前者はアクティブオブジェクト、
後者は背景グラフィックとして読み込むイメージです。
よろしくお願いします。
ASD様大変失礼しました。
現段階で作成したものをお送りします。
いずれも一発で破壊すると、そこで終わってしまい先へ進めないため困ってます。
添付 wine-stg.zip
>>wineさん


拝見いたしました。アクションの順番に問題があります。
オブジェクトを作成よりも前にアクションを設定してもその後に作成したオブジェクトには適用されません。
イベントエディタのアクションを設定するボックスをダブルクリックするか、イベントリストエディタでアクションの順序をドラッグして入れ替えることができますので、下記のように修正してください。
また、敵破壊イベントに関しても、同様にアクションの順序を変更していただき、作成する爆風オブジェクトが間違っているようですので、こちらも修正すれば動作いたします。
Admobの広告を作成したアプリに組み込む手順を教えて下さい。
Admobへの登録はしてあります。
>>RedSさん
・広告を表示したいフレームに『AdMobオブジェクト』を挿入します。
・プロパティの『AdMob ID』及び『インターステンシャルID』の欄に、AdMobダッシュボードで作成した『広告ユニットID(ca-app-pub-)』をそれぞれ入力します。
・その下の項目で広告の表示位置を設定します(イベントからも変更可能です)。
・イベントで『広告バナーを表示』『インターステンシャルを表示』を任意のタイミングで実行します。
注意:正式リリース前の段階での動作テストではプロパティの『デバイスのテスト』の『デバイスリスト』に使用する端末のデバイスIDを入力してテストバナーを表示させる必要があります。
下記のアプリケーションでお使いのデバイスのIDを調べることができます。
– Device ID Finder for AdMob – Google Play の Android アプリ
https://play.google.com/store/apps/details?id=pe.go_com.admobdeviceidfinder
ASD様
ありがとうございます。
もうひとつ質問ですが、
左右に十字キーとボタン2つをファミコンみたいにタッチコントローラーみたいなものをつけたいのですが、どうすればよろしいのでしょうか?
その際左右コントローラーの背景は、ゲーム画面とは別の黒色等にしたいです。
>>RedSさん
標準で用意されているタッチジョイスティック機能を使用する場合は、フレームプロパティの『ジョイスティック』のデバイスを『タッチジョイスティック』に設定します。
ジョイスティックやボタンに使用する画像は、アプリケーションプロパティのAndroidのタブから変更することができます。
これは標準動作(8方向やジャンプとはしご等)やイベントのプレイヤー1(ジョイスティックアイコン)の方向やボタンの入力イベントに対応します。
『ジョイスティックコントロールオブジェクト』を使用すると、表示位置等を細かく指定することができます。
自前で作成する場合は、アクティブオブジェクトにボタン画像を設定し、イベントで、それらをクリック(タップ)したときに移動や弾の発射等のイベントが発動するように組めばよいでしょう。
ASD様
ご回答ありがとうございます。
上記ご回答と同じようにジョイスティックの設定をしましたが、プレビュー(テストプレイ)画面及び設定したときに反映されていませんが、どのようにしたら反映されるのでしょうか?
玲にとってもう少し詳しくお教えいただければ幸いです。
あともうひとつ別の質問ですが、今ブロック崩しを作成していますが、
ボールがブロックに衝突して破壊される設定をしていますが、
ブロックの壊れ方とボールの挙動がおかしいときがあります。
(例えば破壊されたブロックの上下左右ブロックが一緒に破壊されたり、貫通をしたりバウンドの方向が一定していないときがあったり)
・ボールがブロックに衝突したら破壊されてバウンスにしています。
・ボールの「乱数」を0に、「調整」を100にしています。
あと、自機とボールが衝突したときに、たまに自機の角に当たったとき、真下にボールが落ちてしまうときもあります。
ご教授よろしくお願いします。
>>RedSさん
標準のタッチジョイスティックはAndroid上で実行しなければ表示されません。Androidデバイス実機もしくはエミュレータ上で実行してください。
>破壊されたブロックの上下左右ブロックが一緒に破壊されたり
複数同時に衝突すればそれらは同時に破壊されます。確認してみてください。
>貫通をしたりバウンドの方向が一定していないときがあったり
>自機とボールが衝突したときに、たまに自機の角に当たったとき、真下にボールが落ちてしまうときもあります。
移動速度が速いと一度に移動するドット数が多くなるため、ワープしたようになり、衝突せず飛び越えてしまうことがります。オブジェクトのサイズや速度を調整してみてください。
また、フレームプロパティの『タイマーベース動作』がONの場合、処理堕ちした際に移動量が増えてしまいますので、OFFにして作成されることを推奨いたします。
バウンス方向は乱数によって決定されるため、同じ方向からぶつかっても毎回同じ方向へバウンスするとは限りません。
方向を固定したいのであれば、イベントで『オブジェクトが衝突』と『オブジェクトの方向を比較』条件と『オブジェクトの方向を選択』アクションを使って「この方向からぶつかった時はこの方向へ向かせる」と、ガチガチに指定してしまうのもありかもしれません。これにより、自機にぶつかった際にも自機より下方へは向かない(上方を向く)ようにできるでしょう。
ASD様
ご回答ありがとうございます。いまいちどうして良いか
感覚がつかめませんので、
仮想コントローラーを実装したサンプルプログラムを、
いただければ助かります。
よろしくお願いします。
>>Redsさん
サンプルプログラムをどうぞ。1、2フレームでは標準機能のの仮想コントローラーを、フレーム3では自作の仮想コントローラーを組み込んでいます。
とりあえず、そのままapkにビルドして実機で実行していただくだけでも確認可能です。
ボタン1で弾の発射、ボタン2で次のフレームへ移ります。
– サンプルプログラム
https://blog.clickteam.jp/wp-content/uploads/2016/01/cf25_blog_2016-01-30_virtual_contoller.zip