2009年01月23日

マーフィーの法則

あいかわらず「タイミングが悪い」スキルが発動中。

scriptを組み始めると(もちろん仕事です)、かならず後ろのシマで世間話や、もめてる話がはじまる(延々と)。

わしゃうるさいと考えがまとまらんのじゃー
おめーら黙って仕事しれ。
posted by t2c at 23:00| Comment(0) | TrackBack(0) | Flash

2009年01月20日

地獄にひきずりこんでやるわ

春から夏にかけて、Flashアプリ開発(2つ同時進行)が始まりそうな予感…

あの悪夢がふたたび(´Д`;)


続きを読む
posted by t2c at 23:00| Comment(3) | TrackBack(0) | Flash

2008年11月25日

マウスオペレーションのRPGをつくる

やほ。
こんどのお仕事で、お手軽RPGを提案しようと思っているにょ。
キャラクターをマウスで動かして、いろんなところにぺしぺし当たるとイベント発生、先にすすむとゆーよーなのを考えてます。
ハイドライドっぽい感じデス(例えが古いな…)。

2008_1125_01.gif
さしあたり自分の移動ルーチンを考える。
こんな感じにカーソルを追いかけたい。
そーすると、まず角度を計算しなきゃならない。

2008_1125_03.gif
自分の位置(cx,cy)とカーソルの位置(x,y)から、角度を算出する。

r = Math.atan2(cy-y,cx-x);
_root.angle =Math.floor(r/(Math.PI/180));

_root.angleは0〜180、0〜-180の範囲の数値として取得できる。

キャラクターを移動する方向に向くようにしたいが、めんどくさいので最低限の数を用意する。角度で4つに場合分けして、それぞれの方向を向くようにしてやる。

次に、移動距離と角度から、移動先の座標を取得する。
2008_1125_02.gif
移動距離d、角度θのとき、xの増分はd*cosθ、yの増分はd*sinθ。
絵では角度aになってますがθに換算してください。
flashの仕様で、θの単位はラジアンなので注意。

さらに、原点が左上にくるので、それぞれ増分に-をつけます。これでどの方向にどのくらい移動するかの値を取得できます。

詳しくは、ググるともっと親切に説明しているサイトがいっぱいあるのでそちらを参考のこと(笑)

三角関数を使ったのなんて高校以来かもしれんのう…

下はサンプルだにょ。





カーソルの方を、灰色マンが追っかけていきます。
障害物をマスクとしておいて、それと衝突判定を行っているので画面外にはいかないにょ。
上下に画面切り替えするにょ。
posted by t2c at 23:00| Comment(3) | TrackBack(0) | Flash

2008年10月25日

ドットイートゲーム

画面内に散らばったエサを、モンスターをよけながら取っていくゲームを作ってます。
いわゆるドットイートタイプ。パックマンっぽい感じ。

画面内にいる自キャラがマウスカーソルをおいかけて、うまく誘導してエサを取っていくようにした。

現在、自キャラの移動ルーチンとエサ取りルーチンが完成したところ。

次に取り掛かるのは、敵の移動制御ルーチン。
(1)とまってきょろきょろする
(2)横に反復移動
(3)たてに反復移動
(4)自キャラをおいかける
(5)ランダムな方向に突き進む
といった挙動を設定することにして、作り倒している最中です。

最終的には敵の数と行動をMC毎に制御、タイミングは制御用mc内のタイムラインでとるようにしたい予定。

たったこんだけのゲーム作るのにどんだけ時間かかるんだよー(´Α`;)

関係ないけど、
先月作ったパズルゲームはこちら。PCから遊んでみてね
http://kids.nifty.com/game/educate/pepes/index.htm
posted by t2c at 00:00| Comment(0) | TrackBack(0) | Flash

2008年09月01日

パズルゲーム改造(2)

パズルゲームのつづき。残念ながら途中画面を掲載できない。
グチだけ聞けヽ(`Д´)ノ

【その後】
キャラクターがうごいているさいちゅうに違うキーを押すと、グラフィックだけワープして表示される現象が(´Д`;)

なおしたヽ(`Д´)ノ

今回のゲームは、ブロックを押して穴に入れて埋めるのだが、
もとにしたゲームにはそんな動作はないので、全ブロックの座標をしらべて照らし合わせるルーチンを作らなきゃならない(ノД`)

つくったヽ(`Д´)ノ
しかし今度はキャンセル処理がうまくいっていないらしく、押し続けたら穴をすりぬける(ノД`)
ウボアー

続きを読む
posted by t2c at 20:00| Comment(0) | TrackBack(0) | Flash

2008年08月27日

ぱずるげーむかいせき

flashで倉庫番っぽいゲームをつくってる。

画面は最大12x8キャラクタ。とりあえず全5面のよてい。
面データが巨大すぎてflashの動作が重たくなっちゃったので、asファイルを作ってインクルードにした。(<基本だろそれ)

んで、

移動ルーチン移植。
押すルーチン移植。
チェックルーチン移植。<自力開発しないで、ありものを解析してるわけだ
ヽ(`Д´)ノ

その後、
移動ルーチンをひとつにまとめたら、うまくいかんくなった(´Д`;)
デバグ中。
なおらないぞこんちくしょーヽ(`Д´)ノ

そこで、現実逃避してマップデータをいじるヽ(`Д´)ノ
つづきはまた明日。
posted by t2c at 23:00| Comment(2) | TrackBack(0) | Flash

2008年07月16日

RPG開発日記(4)NPC移動その2

ふぬっふ。腕が相変わらず痛いので、先週つくったのをいまさら公開するよ。

前回のカベにめり込む事件ですが、やっと、原因としてhittestの挙動がおかしいことが判明したっす。

続きを読む
posted by t2c at 23:00| Comment(0) | TrackBack(0) | Flash

2008年07月04日

RPG開発日記(3)NPC移動

いつのまにか町の外に出たりするルーチンをしこんでいたりしております。
次は、前回は断念した町の人の動きを実装したい。

苦労の末、うろうろと動くようにはなったが、もしゃっと壁にめりこむるぅ!
進行方向が壁だよーと判定したときに、キャラを動かすルーチンをキャンセルせずに移動しちゃうっぽい。
当然自キャラにもずっぽりめり込みます。
ああん。

(サンプル)




移動:カーソルキー
ウインドウ出現:エンターキー
ウインドウ解除:スペースキー
いったん画面内をクリックしてね。

イベントは実装してないから、町人が自分にぶつかったり壁にめりこんだりしたらストップするよ。ページをリロードしてみてね。
posted by t2c at 23:00| Comment(0) | TrackBack(0) | Flash

2008年06月30日

RPG開発日記(2)

おそろしく間隔が開いてしまっておりますが、懲りずにちまちまとつくりつづける。
脱出ゲー作ってたり、教育用のムービーを作ってたりと、他の作業で忙殺されていたのよ。

さて、今回は悩みっぱなしだったフリーズ問題を解決すべく四苦八苦してみたよ。
プログラムの流れを検証した結果、指定していないフレームにgotoAndPlayしていたり、ソース上ありえない動作をしていた。なんでやねん…
そりゃフリーズもするわな。

ということで、定石どおりフレームでのキー判定に加えてスクリプトのみでキー判定を加えてみた。
2008_0630_01.gif



続きを読む
posted by t2c at 23:00| Comment(2) | TrackBack(0) | Flash

2008年06月24日

flash liteおぼえがき(外部ファイル編)

Flash Lite1.xにおいては、外部ファイルを参照するためにユーザ側でなんらかのキーアクションを実行する必要がある(2.xは調べてないのでわからん)。
勝手に外部とデータをやりとりできると、セキュリティ上問題があるので、これはいたしかたない。

しーかーしー
そのおかげ(かどうかは知らんが)、#includeコマンドが使えないのでひじょーにめんどくさーーい(※使用アプリはFlash 8デス)。

AS2.0以降の#includeは、その名のとおり外部ファイルを読み込んで実行するコマンドだが、
Flash lite1.1(1.0は調べてないので知らん)における#includeは、ASにおけるcallの代替機能として位置づけられているのだ(しかも、使用回数分が重複してソースに追加されるので、事実上サブルーチンとしての意味を果たしていない)。

Flashの#includeは、静的にswf書き出すときだけ使うんだから、Liteで制限しなくてもいいじゃん(ノД`)
テキストエディタで編集させろヽ(`Д´)ノ
posted by t2c at 09:55| Comment(0) | TrackBack(0) | Flash

2008年06月04日

ブレンドアニメーションおぼえがき

線を引くアニメーションを作らなくてはならないのだが、なんとかラクしようとしていろいろ調べる。
2008_0604_01.jpg
Illustratorでこのよーなブレンドを作成する。オブジェクトはシンボル化しておく(<重要)。よってバージョンはcs以降を使用すること。
それを「書き出し」でswf形式で出力する。その際には「ブレンドをアニメーション化」にチェックをつけておく。

2008_0604_02.jpg
出力したswfをFlashのライブラリに読み込むと、こーなる。
ブレンドの始点から終点まで線を引くアニメーションが出来る。
モコモコしているのが気になる場合は、マスクをかければいい。

シンボル化しないオブジェクトでブレンドした場合、flash側にシンボルがステップ数だけどばーーーっと勝手に作られるので、そこだけ注意っす。
posted by t2c at 00:00| Comment(0) | TrackBack(0) | Flash

2008年05月28日

FLVのよびだし

をすることになった。
ソレ何?食べ物?
とゆー状態のあたしでしたが、ちょこちょこ調べて徐々にわかってきたダスよ。

flashファイル内で動画を再生させるしくみはこいつだったのか…
flash7から搭載された機能なのね。

あと、某国語の書き順お勉強flashも作ることになった。エンジンを開発しなきゃいかんわー。
6月は他にもflashゲームを作らなきゃいかんので、仕事が詰まるわー(ノД`)
posted by t2c at 23:00| Comment(2) | TrackBack(0) | Flash

2008年05月15日

2008年05月09日

RPG開発日記(1)

以前作ったPRGが、処理オチしたり動作が止まったりして非難轟々だった(<誇張しすぎ)のが悔しいので密かに改良ルーチンを作ってみる。

2008_0509_01.jpg
移動ルーチンは流用。
1マップについてのイベント数を制限して、処理オチを防ぐことにした。
とりあえず16個までにしてみたよー

さしあたり、イベント発生時に何かキーをおすと復帰するようにした。
青い四角がイベント対象物。これにぶつかるとメッセージが表示されるにょ。

イベントは発生すると十把一絡にラベル名evにとばして、そこから普通の会話、王様、店、クリアイベントなどに分岐するようにしたい。

サンプル

あー、なんだよ、IE7だとセキュリティかかってswf直リンクは表示できないのかー。どーすればいいんだ?コレ。
posted by t2c at 00:00| Comment(1) | TrackBack(0) | Flash

2008年05月08日

flashアプリをつくっているよ

前回つくったクリスマスカード用・年賀状作成のflashアプリを改良中だよ。
文字入力ができるようにするよ!

しかしここで問題発生。
Flashのテキストフィールドは、ダイナミックテキストにするとマスク内では表示されない。どーゆー仕様よ。

そしてもうひとつ、テキストフィールドの角度を変えると、やっぱり表示されない。
コレを回避するためにはフォントを埋め込まなきゃならない。
MSゴシックを埋め込むと、ファイルサイズがやたらと大きくなった…。
その後、保存データが呼び出せないなど悪戦苦闘をしつつ、なんとかサンプルプログラムが完成した。

さー、これでテストプレイにまわそう。あとはよろしくー
さて、プログラムはすんだから、今度は素材を描かないとなー
posted by t2c at 10:34| Comment(2) | TrackBack(0) | Flash