「セレクション」カテゴリーアーカイブ

過去に人気だった記事など。

スマホアプリ開発の勉強中(Monaca&PhoneGapとenchant.js)

enchant01やろうやろうと思いつつ全然やれてなかったスマホアプリ開発。そろそろ本格的に始めようかと思います。

AndroidはJava、iPhoneはObjective-Cが標準の開発言語だけど、両方やるのは学習コストが高い。なのでハイブリッド開発が出来るHTML5+JavaScriptの組み合わせでやることにしました。

選んだフレームワークはPhoneGap。今はAdobe製品になってるし、いちばん有名っぽいので。ただそのまま使うのもちょっと敷居が高かったので、PhoneGapを利用できるMonacaを開発環境に決めました。

この結論に辿り着くまで時間かかった……

Monaca(PhoneGap)

Monacaはブラウザ上で開発します。WebDAV経由でも出来そうだけど、無料版だと重すぎてダメだった。まあブラウザのエディタちゃんとしてるから、そっちで問題なく使えます。

これのいちばんのウリは実機テストが簡単にできること。AndroidとiPhoneそれぞれに専用のデバッガーアプリを入れると、エディタで保存するたびに作成中のアプリが自動インストールされ、即テスト出来ます。これは便利すぎる。

ただ、やってみてわかったのは、やっぱりAndroidとiPhoneで挙動が結構違うなあと。あと重い。これは仕方ないか。UI用にJQuery Mobileを使ってますが、Onsen UIの方が良いのかなぁ。

JavaScript久しぶりに触ったから、やり方わからず調べまくりで結構大変です。JSONでサーバとデータのやり取りする方法がわかったので、難しい処理はサーバに投げちゃおうかな。電波届かないと動かないアプリになっちゃうけど。

ビルドまでして、一通りアプリ開発の流れはつかめました。

enchant.js

フレームワークにenchant.jsが組み込めることを知り、こちらも触ってみることに。ブラウザ上で2Dアクションゲームが作れるということて、何年か前から存在は知ってたんだけどね。

とりあえずPC上のブラウザで試したんだけど、結構簡単に作れるね。ゲームに必要な機能は最初から入ってるし、スマホ用のタッチ動作なんかはプラグインで対応できるっぽい。

サンプルだと1つのjsファイルに全部突っ込んでてどうなんだろうと思ってたけど、別ファイルに分けられる事がわかったので、ある程度複雑な処理も混乱せずに使えそう。

冒頭の画像は巫女さんを十字キーで操作、アリは自動で歩き続けるだけのものです。アニメーションも簡単に導入できて素晴らしい。

ぶっちゃけ

通常のアプリはMonacaで開発しようと思います。ただ無料版だとアプリ数やプラグインの制限等があるんだよね。有料版は結構なお値段するので、いつかはMonaca止めて自前で環境構築することになるかも。

enchant.jsの方はとりあえずやってみたものの、Unity使ったほうが良いかなぁなんて思ったりw 簡単なものはenchant.js、規模の大きいのはUnityって分けていけばいいかな。

ゲーム開発しようと考えると、プログラムより絵や音楽の用意が大変なんだよね。冒頭の画像は5年以上前に描いたドット絵で、とても今使えるものじゃないから描き換えが必要だし。

先は長い……

アサシンクリードI+IIウェルカムパッククリア(ネタバレ)

assassin1-2アサシン クリード I+II ウェルカムパックという詰め合わせソフトをクリアしました。

クリア時間は1が15~20時間くらい、2が30~40時間くらいです。もっとかかってるかも。

舞台は現代。うっかり拉致されたデズモンド君がアニムスという機械でDNAの記憶を吸いだされるというお話です。で、その記憶を追体験していく事でストーリーが進んでいきます。

アサシンクリード1

12世紀末、十字軍時代のエルサレム。アサシン教団アルタイルが主人公です。優秀だけど慢心から仲間を失ってしまい、下っ端からやり直していきます。

プレイして驚いたのはマップが滅茶苦茶広い! 景色は石造りの粗末な建物ばかりだけど、ゲームでこんなに広い街の中を走り回るのは初めてですよ。結構簡単に壁によじ登れるので、屋根を伝って行くのも楽しい。

ただ広い割にやることは単調だね。新しい街に入ったら高い所に上ってマップを作成。街中で敵の噂調査。それで証拠が集まったら暗殺です。

敵は9人のテンプル騎士団です。倒すとアルタイルの腕の中で遺言残して死んじゃうんだけど、何だろうあの2人の世界はw

そしてラスボスは途中から何となくわかっていたアサシン教団長。味方のトップが実は、ってやつだね。倒して宝の地図が表示されたら、現実世界に戻ってきて終わりです。ここで終わり?! ってびっくりしたよ。続編前提とはいえ尻切れトンボすぎる……

アサシンクリード2

デズモンド君が捕まっていた所はアサシンの敵、テンプル騎士団の施設です。そこからルーシーの手引で脱出できました。まあ場所は変わっても、またアニムスでダイブするんだけどね。

15世紀、ルネッサンス期のフィレンツェ。貴族の次男エツィオが主人公です。最初はケンカしたりおつかいしたりで何だこりゃって思ったけど、父と兄弟が冤罪で殺された事でアサシンになります。実際はテンプル騎士団によって秘宝を手に入れるために殺されたんだけどね。

ルネッサンスなだけあってだいぶ街並みがカラフルになってます。そして相変わらずだだっ広い。お宝やらイベントやらが地図上に大量にあって、全部こなしてたらあと何十時間かかることやら。アサシンの墓所などはシビアなアクションと時間制限がキツくて全部はクリア出来なかったよ。

実在の建物があったり、史実通りのイベントがあったり、レオナルド・ダ・ヴィンチみたいに歴史上の人物も出てきたりで、なかなか興味深いです。ただこの時代の事は全然知らないので、そのうち調べてみようかな。どこまでが事実なのかわかってないしw

2はアクションが増えてるから戦闘や移動がより面白くなってるね。敵に見つかったらやり直しなイベントもあるので、考えながら進める必要があったり。

ラストのヴァチカンの地下にいた神らしき者は何者だったんだろうか。あとエツィオが預言者ってのはDNAの記憶をデズモンド君が見ることで預言を達成してるんだね。面白い。

2のラストも隠れ家からの脱出で終わりという尻切れトンボだったけど、もうそういうものだと理解したよw

そういえばシークエンス12と13がDLCだったらしいんだけど、知らずにクリアしてたよ。確かに急にお城を攻めたり、洗脳された人達を暗殺しに行ったりと、考えてみれば外伝っぽかったね。

まとめ

確かにゲームシステムは単調だったし、そのくせ2は20年もの時間の流れがあるから人多すぎてよくわかんない状態だったけど、街並みの綺麗さや色んな暗殺パターンがあって面白かったです。

続編が幾つか出ていて俺も既に何本か買ってあるけど、しばらくは別のゲームをプレイしようかな。かなり長時間プレイしてたからね。

JCBザ・クラス メンバーズセレクションで日本酒を貰う

jcb-class-sakeJCB THE CLASSカードを持っていると、メンバーズセレクションといって年に1回カタログギフトの商品が貰えます。

今回はギリギリまで悩んで日本酒飲み比べセットにしました。720mlの6本入りです。写真は貰ったお酒の箱を並べたものです。

左から
・川鶴 純米大吟醸 雄町
・白笹つづみ 大吟醸
・るみ子の酒 純米大吟醸
・腰古井 大吟醸
・あさ開 純米大吟醸 旭扇
・吉乃川 純米大吟醸・秘蔵酒

なんと白笹つづみは木の箱、吉乃川は布の箱です。凄いなあ。調べたら、どれも個人で買うのにはちょっと躊躇するお値段でした。こんな機会でも無ければ入手できないものだね。

でも日本酒は開封後の劣化が早いから、飲み始めたらすぐに空けちゃわないとね。なかなか贅沢な感じです。

逆転裁判5クリア(ネタバレ)

gyakuten5逆転裁判5をクリアしました。クリア時間は30時間です。

年末にiPadで逆転裁判123HDをクリアしたところだったので、その勢いで一気にクリアしました。年末年始はずっとプレイしてたよ。

以下思ったことをテキトーに箇条書き。

5はグラフィックが3Dになったけど、全然違和感なくて素晴らしいです。あと途中で挟まるアニメの出来の良さに驚いた。

ナルホドくんとユガミ検事が有罪になったせいで法の暗黒時代になったらしいけど、確かにあの世界だと簡単に捏造出来そうだしなあ。

ナルホドくんのサイコ・ロック、オドロキくんの見抜く、ココネちゃんのココロスコープと、もう能力者集団だね。そういえばミヌキちゃんてナルホドくんの娘になってたんだっけ。もう4の内容覚えてないな。

時系列バラバラでちょっと分かりづらかった。そのうちプレイし直そう。

ココネちゃんの机バンするモーションが良かった。あと心理分析のスペシャリストなのに猪突猛進で自爆しちゃう可愛い。

2話 逆転の百鬼夜行

この話がギャグ寄りでいちばん面白かったかも。テンマ市長が妖怪に乗り移られたフリしたり、プロレスラーになったり。ビヨウインのキャラの濃さとかもうね。

矢絣袴っ娘のユメミちゃんはポイント高かった。麻呂っぽい顔だったけど。

3話 逆転学園

25歳の自称天才高校生ふいた。テストで100点取らせるために毎月ワイロ120万円は高過ぎだろと思った。

イチロ先生豹変してから面白かった。登場時から犯人っぽいなあと思ってたけど、突然授業始めちゃうとかね。

4話 星になった逆転

さすがにロケット発射台を動かしたってのは無理ありすぎるだろうと思った。真犯人の5mジャンプもなあ。

オドロキくんと親友のアオイはキャラ被ってる感じだけど実際はどうだったんだろ。登場時には死んでるしね。

5話 未来への逆転

ハミちゃん成長したなあ。マヨイちゃんが出なかったのは残念。イトノコ刑事も見てみたかった。

オドロキくんがココネちゃんを信じられなくなって告発するところ、一時的に味方が敵に回るってのは熱い展開だね。

バン刑事良いキャラだったのに、全部芝居な上にラスボスだったのか。ジャスティス!

最後の方はちょっとダレた。破壊された法廷でのラストバトルってのには燃えたけど、無理やり犯人を追求してる感がね…いや逃したらダメだけどさ。

続編出るかな

4で終わった、と思ったけど、これでまた続編とか出来そうだね。逆転検事の続きも見てみたい。ミツルギいつの間にか検事局長になってるし、色々と話が作れそうだ。

ダウンロードコンテンツの「逆転の帰還」が今だけ半額なんだよね、どうしようかな。あとレイトン教授VS逆転裁判もそのうちプレイしよう。

特別編 逆転の帰還

(1/11追記)半額の400円だったので買ってクリアしました。3DSでダウンロードコンテンツ買うのこれが初めてだ。

ココネちゃんが海賊ショーやるムービー見て、きんモザ最終回のカレンの海賊を思い出したよ。しかしこの話だけでムービー7本もあるのか。さすが有料版。

ガリガリだったイクヤがマッチョになってふいた。事件が二転三転するので全然予測できなかったよ。みんな良い人っぽいなあと思ってたら、ただの事故死で犯人いなかったんだね。

これは買って良かったです。800円だったら多分買わなかっただろうけど、普通に1話分のボリュームあるし、プレイしないと損なレベルのものでした。

スピーカーBOSE Companion2 IIIを買う

companion2BOSE Companion2 IIIを購入しました。

パソコン用のスピーカーは今までMS-75MAという5年くらい前に3000円台で買ったのを使ってたんだけど、急に音が気になりだして。

とは言え音響は素人なので、予算を1万円前後としてネットのレビュー等を参考に選びました。サイズは2倍大きくなり、最大出力は3.6Wから22Wと6倍パワーアップです。

実際にパソコンに繋いで聞いてみると、なんかもう全然音が違うね。前のはボリューム上げてもこもってるというか薄っぺらい感じだったのに、これは音の広がりが感じられる。

PC内のMP3だけじゃなく、YouTubeやゲームなんかも聴き比べてみたけど、迫力が段違いです。Amazon MP3で貰ったクラシックとかびっくりする程良い音になったよ。今まで聴いてたのは音楽ではなかったんだなぁ。

PCの前にいることが多いから、スピーカーはこだわる所だったね。今まで勿体なかった。

TeamViewerでリモートアクセスする

teamviewer外出先から自宅PCにリモートアクセスしたいってのは前から考えてて、マイクロソフトがリモートデスクトップアプリを提供開始というニュースを見てこれだ! と思ったんだけど、Windows側がPro版じゃないとダメなんだとか。うちじゃ使えない…

そんな訳で改めて調べたらTeamViewerが無料で良さげだったので、試してみました。接続先のPCとクライアント側のiPadにそれぞれアプリをインストール。PC側で表示されたIDパスワードをiPadに入れたら、もうそれだけで接続できたよ。簡単だ。

しかし初期設定では勝手にPC側の解像度変えられてしまい、ウィンドウサイズや位置が変わっちゃってうわーって感じだったので、設定をいじります。

接続後、クライアント側の歯車マーク(セッション設定)から変更できます。
画面解像度:変更不可
入力方法:マウスインストラクション

これで普通にPCを操作する感覚で使えるようになりました。他にはパスワードを自前で設定して、許可リストにiPadのIDしか通さないようにしました。

LANの中だけで試してるからほとんど遅延なく使えてるけど、それでも動画は厳しいね。あと二本指でスクロールだけど、すぐ誤動作で画面拡大されちゃう。ショートカットとかの設定あるのかな。

セキュリティに関しては暗号化されてるというのを信用して、あとは接続あった場合には画面にその旨表示されるので、まあ多分大丈夫でしょう。

これで寝っ転がりながらでもPC操作出来るようになりました。そのうち外から接続したり、PC-PC間で接続したり試してみよう。

PS3 デート・ア・ライブ 凜祢ユートピア クリア(超ネタバレ)

51fSIWNnWLL._SL500_AA300_デート・ア・ライブ 凜祢ユートピアをクリアしました。アニメ見てゲームにまで手を出すのは、PS2藍より青し以来8年ぶりだよ。

クリアタイムは初回が4時間半。それ以降の個別ルートでは1プレイ1時間半くらい。思ったより短いな。

アドベンチャーゲーム自体プレイするの久しぶりだけど、色々進化してるね。立ち絵が微妙にアニメーションしてるし、クイックセーブやバックログからプレイし直せるなど複数回プレイできるようシステムも使いやすくなってる。

ただ、1回ハングアップしてクイックセーブが消えてしまい、やり直すハメに…。あとイベントCGが少ないのと説明テキストが無いせいで、所々状況が分かりづらかった。

ストーリーはアニメの後の話で、いわゆるループものです。シナリオがしっかり作られていて良かったです。以下クリア順にネタバレ。

四糸乃
よしのんに頼りっきりだったのから独り立ち?するお話。この子の霊装好きなんだけど最後くらいしか出なかったね。恋人エンド。

十香
食ってばかりだったのが、士道に弁当を作るまでに成長して何とも微笑ましい。結婚エンド。

折紙
家族を失った過去のせいで笑えない折紙。色々乗り越えたっぽい最後の笑顔で救われた。しかしちょっと変態度が足りないなぁと思ったりw 妊娠エンド。

琴里
アニメではほとんど出番のなかった白が見られて良かった。まあ黒のデレには負けるか。ただあざといイベントばかりだったな。兄妹禁断エンド?

狂三
きょうぞうちゃんが幼く素直だなあと思ってたら、案の定分身体だった。猫とか好きなんだね。ラストで他の分身体呼んでたきょうぞうは本体だったんだろうか。恋人エンド。

凛祢
ゲーム発売前からどうせ精霊なんだろ、と思ってたら違っててびっくりしたw うっかり死んだ士道を助けたい、という思いから結界内をループさせていた。優しくて良い幼馴染だったね。消滅エンド。アナザーストーリーで復活したけど、あくまでおまけなんだろうな。

時系列的に真那の出番がなくて残念。次回作に期待しておこう。

アニメ2期も楽しみです。

2作目、或守インストールの感想はこちら。
3作目、凜緒リンカーネイションの感想はこちら。

東京ディズニーランドclub33に行く









東京ディズニーランドclub33に行って来ました。

ディズニーランド内にある唯一の会員制レストランです。正直、最近までその存在すら知りませんでした。

あらかじめ予約して、秘密の扉のチャイムを鳴らし入れてもらいます。中ではメイドさん達がお出迎えしてくれました。

準備ができてエレベーターで上階へ。エントランスは狭かったのに、レストランは思った以上に広かったです。休日だったので客はほぼ家族連れでしたが、スーツで来てる人達もいました。ここは接待で使われたりもするらしいね。

最初に「魚料理と肉料理がありますが、どちらがよろしいですか?」と聞かれ、俺は肉料理を選択。しばらくしたらコース料理が運ばれてきました。どれも美味しかったです。ちなみにここは、ディズニーランドで唯一お酒の飲める場所です。せっかくなのでビール飲みましたw

窓際の席でしたが、窓からシンデレラ城をはじめディズニーランドを一望できます。良い景色でした。

食べ終えてコーヒーを飲んでいる時にお土産として緑色のケースに入ったシールをいただきました。これには私の名前と今日の日付が入っています。凄いね。

実に素晴らしい時間を過ごすことが出来ました。満足です。

Linux上のPHPからSQLServerに接続する

sqlserver表題の作業をやったんですが、物凄く苦労しました。ググれば情報は出てくるんだけど、書かれた通りやっても上手くいかなかったり。

2020年版はこのページの一番下を参照

サーバの構成とかによってもやり方変わるしね。詳しい方にアドバイス貰いつつ何とか出来ました。

サーバ
Windows Server 2003 R2 SP2
SQLServer 2008 EXPRESS

クライアント
Red Hat Enterprise Linux 4
PHP5.2.14(PDOは使える状態)

SQLServerと外部接続するにはODBCを使います。PHPで使えるのを調べてみるとPDO_DBLIBです。ネット上ではこれをインストールするには

# pecl install pdo_dblib

と書かれてたけど、エラーで出来ず。仕方ないので自分でコンパイルする事に。

その前にFreeTDSが必要なのでそっちを入れます。これはyumでインストールできた。

# yum install freetds-devel-0.64-1.el4.rf

設定ファイルfreetds.confは以下のように書く。

# vi /usr/local/etc/freetds.conf
[global]
 port = 1433
 tds version = 8.0
 text size = 2147483647
 charset = sjis
 client charset = UTF-8

[mssql]
 host = (IPアドレス)
 port = 1433
 tds version = 8.0
 charset = sjis
 client charset = UTF-8

PDO_DBLIBをコンパイルしてみると…エラー出る。共有ライブラリを認識させないとダメらしい。

# vi /etc/ld.so.conf
/usr/local/lib
# ldconfig

今度こそ出来た。

# tar xvf PDO_DBLIB-1.0.tar
# cd PDO_DBLIB-1.0
# phpize
# ./configure
# make
# male install

pdo_dblib.soが作成されたので、それを/usr/local/php5/lib/php/extensions/5.2.14/にコピーしてからextensions.ini編集。

# vi /usr/local/php5/etc/extensions.ini
extension=pdo_dblib.so

そしてApache再起動。phpinfo()で確認するとdblib入ってました。これで完了かと思ったらまだダメで、unixODBClibiconvが必要だった。

# tar xvzf unixODBC-2.2.11.tar.gz
# cd unixODBC-2.2.11
# ./configure --enable-gui=no
# make
# make install

設定ファイルodbcinst.ini

# vi /usr/local/etc/odbcinst.ini
[FreeTDS]
Driver    = /usr/lib/libtdsodbc.so.0
Setup     = /usr/lib/libtdsS.so
CPTimeout =
CPReuse   =
FileUsage = 1

設定ファイルodbc.ini

# vi /usr/local/etc/odbc.ini
[ODBC Data Sources]
freetds = FreeTDS ODBC Driver

[freetds]
Driver = FreeTDS
Description = MSSQL
Trace = No
Servername = mssql
Database = (データベース名)
Port = 1433

[Default]
Driver = FreeTDS

環境変数を設定しないとちゃんと動かないので設定。

# export ODBCINI=/usr/local/etc/odbc.ini
# export ODBCSYSINI=/usr/local/etc

libiconvコンパイル

# tar xvzf libiconv-1.10.tar.gz
# gunzip libiconv-1.10-cp932.patch.gz
# patch -p0 < libiconv-1.10-cp932.patch
# cd libiconv-1.10
# ./configure
# make
# make install

ここまでやってから、ようやくSQLServerにテスト接続。

# tsql -S mssql -U (ID) -P (パスワード)

“1>”って出たら接続成功です。quitで切断し、今度は別のやり方で接続。

# isql -v mssql (ID) (パスワード)

エラーで動かない…とりあえず放置してPHPで接続を試す。

<?php
$dbh = new PDO('dblib:host=(IPアドレス):1433;dbname=(データベース名)', '(ID)', '(パスワード)');
?>

繋がった! この記述方法もネット上では書いてあることバラバラで苦労したけど、とにかく接続できました。

上記の事を手探り状態で試行錯誤しつつやっていったんで、かなり大変でした。ホントはWindows Serverが客先にあって、それの外部接続だODBCだポート開放だをやりに行ったのも大変だったんだけど、もういいや。

これでようやくシステム開発に取り掛かることが出来ます。

Centos 8.1 + PHP 7.2 + SQLServer 2008の場合

2020年時点でSQLServer 2008がサポート終了していたせいで、今回も苦労しました。dblibからsqlsrvに切り替わり、最新のODBC 17だと接続できないので13を使い、pdo_sqlsrvも5.8から5.3にダウングレードさせました。

まずODBCインストール(CentOS 8版は使わない)。

# curl https://packages.microsoft.com/config/rhel/7/prod.repo > /etc/yum.repos.d/mssql-release.repo
# yum remove unixODBC
# ACCEPT_EULA=Y yum install msodbcsql-13.0.1.0-1 mssql-tools-14.0.2.0-1

次にここからCentOS 7.2用のPHPドライバをダウンロード(こちらもCentOS 8版は使わない)。解凍して、php_sqlsrv_72_nts.so と php_pdo_sqlsrv_72_nts.soを以下にコピー。

/usr/lib64/php/modules/

いちおうパーミッション変更。

# chmod 755 /usr/lib64/php/modules/pdo_sqlsrv_72_nts.so
# chmod 755 /usr/lib64/php/modules/sqlsrv_72_nts.so

PHPの設定ファイルを作成して書き込み。

# vi /etc/php.d/20-sqlsrv.ini
extension=php_sqlsrv_72_nts.so

# vi /etc/php.d/30-pdo_sqlsrv.ini
extension=php_pdo_sqlsrv_72_nts.so

反映させる。

# systemctl restart php-fpm.service
# systemctl restart httpd.service

PHPから接続。ポート番号の前がコロンからカンマに変わっててハマった(汗)

$dbh = new PDO('sqlsrv:Server=(IPアドレス),1433;Database=(データベース名)','(ID)','(パスワード)');

こうして見ると簡単だけど、ここまでたどり着くのに1週間かかったよ… SQLServerとかもう勘弁。

ゲーム開発36:坂道の当たり判定2

当たり判定を全面的に作り直しました。

これまでは「壁に当たったらそれ以上動かない」という処理をしていました。これは簡単に計算できるのですが、移動量が大きいと壁に近づけない、壁に埋まると動けなくなるという欠点がありました。それの対策のために色々と条件式を詰め込んだら、それなりに動くようになったものの、ソースがぐちゃぐちゃになったり。まぁ俺の組み方が悪いんだろうけど。

今回は「壁に埋まったら戻す」にしました。これならとにかく壁に体当りして、埋まってしまったらその分戻すというだけなので、ややこしい計算はいりません。これならラクチンだと思ったのですが…複数の物体にぶつかった際に、どこにどれだけ戻せばいいのかわからない。

これに関してはあまり深く考えずに、複数当たっていても1個ずつ処理していく事にしました。このやり方には欠点があって、処理する順番によって結果が変わる可能性があるんだけど、今のところおかしく見えないからいいか。

…といった前提があって、ようやく坂道の処理です。上記の方法では、当たった場合にどれだけ戻せば良いかを計算する訳ですが、坂道の場合、横から当たろうが上から当たろうが、当たったら必ず上方向に戻します。

下記CheckHitSlope()ではキャラクタの右下と左下の点で坂道と当たっているかを計算し、当たっていたら戻りの大きい方を実際に使う値として返しています。slopeを変えることで上り坂も下り坂も、急な坂もなだらかな坂もこの関数で計算出来ます。ちょっと効率が悪かったり、intとLONGが混在してたりするのは気にしないw

思った以上に当たり判定作り直すのに時間かかってしまったので、スケジュール的にやばくなってきました(汗)

//—————————————————————————–
// 当たり判定(坂)
// charaRect:キャラクタの矩形
// myRect:坂道の矩形
// slope:坂道の傾き
// *ret_x:X方向に戻す値
// *ret_y:Y方向に戻す値
// 戻り値:接地したか
//—————————————————————————–
int CField::CheckHitSlope(RECT charaRect, RECT myRect, float slope, int *ret_x, int *ret_y)
{
 int  ret=FALSE, work_y=0;
 LONG top=0, left=0, right=0;

 // 左下の高さと戻す量
 if (myRect.left<=charaRect.left && charaRect.lefttop) {
   left=top-charaRect.bottom;
  }
 }
 // 右下の高さと戻す量
 if (myRect.left<=charaRect.right && charaRect.righttop) {
   right=top-charaRect.bottom;
  }
 }
 // 戻す量の大きい方を使う
 if (left>right) {
  work_y=right;
 }
 else {
  work_y=left;
 }

 // 接地している?
 if (work_y<0) {
  ret=TRUE;
 }

 *ret_x=0;
 *ret_y=work_y;

 return ret;
}