2010-01-01から1年間の記事一覧
Androidで動くどうぶつしょうぎv0.29を公開しました。プログラムはLuarida上で実行されるスクリプトで書かれています。動作環境としてLuarida Ver1.41Beta以上が必要で、少なくとも一回はLuaridaを実行していないと、どうぶつしょうぎは起動しません。 直接…
先週から、正月に子供と遊びたいなぁと思って、Luarida用スクリプトとして組み始めた動物将棋プログラムですが、一応、遊べるものができて、せっかく作ったんだからAndroidマーケットにも公開しようと公開していましたが、著作権的に公開してはいけなそうな…
動物将棋にコンピュータとの対戦プログラムを追加したので、メニュも追加しました。紹介します。 対戦メニュ 人対人 先手が人、後手がコンピュータ 先手がコンピュータ、後手が人 コンピュータ対コンピュータ の対戦が選べます。コンピュータ対コンピュータ…
そろそろ、終わりにしようと思いつつ、いろいろと触ってしまっています。もう、これで、一区切りにしたいと思います。 公開してから、やっぱり1人対戦もしたいなということで、コンピュータと対戦できるようにしました。 コンピュータと対戦させるためには、…
どうぶつしょうぎv0.18をAndroidマーケットに公開しました。動作環境としてLuarida Ver1.41Beta以上が必要です。直接ダウンロードはここから(DoubutsuSyogi.apk)。 v0.29を公開しました。 luaスクリプトは、sdcard/luarida/dobutsusyogi/フォルダに保存され…
ひと区切りがついたと思っていた動物将棋ですが、正月には早いですが休みに子供と遊んでみました。それで、修正点がみつかったので書きたいと思います。 「待った」が2手戻るのは、やりにくく、1手だけ戻るように変更しました。また、遊んでいる途中で電話が…
千日手の判断ですが、王手を連続しての千日手は詰めろになっていないときに成立してしまうので、プログラムとしては実装したのですが、コメントアウトして使わないことにしました。下記のコメントアウトの部分が、王手のチェック部分です。chkOute()は下記に…
棋譜の書き方が違うというコメントを頂いたので、調べてみたら、A1、A2というような表記になっていました。棋譜の表記は下記のように配列に入れて書いていただけなので、マス目の座標は従来のままとして、表記だけを変更しました。 ------------------------…
どうぶつしょうぎv0.15をAndroidマーケットに公開しました。動作環境としてLuarida Ver1.41Beta以上が必要です。直接ダウンロードはここから(DoubutsuSyogi.apk)。v0.29を公開しました。 絵を差し替えたい場合 どうぶつの絵が可愛くないと思ったときは、dbsg…
棋譜を記録するプログラムを作ったので、後回しにしてきた引き分けの判断と、待った、投了のルーチンを作りたいと思います。 千日手による引き分け 動物将棋では、同じ局面に3回なった時点で引き分けとなります。ということは、将棋開始から全ての局面を覚え…
いよいよ、駒を打った手順を覚えるルーチンを作ろうと思います。それと同時に、手順を表示するプログラムも作りたいと思います。 とりあえず、先に画面の紹介です。 棋譜を記録する 棋譜を記録する配列を作りました。単純にKifu[]という配列に、元位置と移動…
駒の操作が一段落したので、勝ち負けの判断ルーチンを作りたいと思います。 動物将棋の勝敗 動物将棋は下記の条件により勝ち負けが決定します。 相手のライオンを取る ライオンが入玉する(相手の陣地に入る)。相手の陣地とは、一番相手側のマスです。もう一…
ブログを始めて一年が過ぎました。ページビューが41167です。これを365で割ると、平均112人/日になりますね。一日100人が多いのか少ないのか良くわかりませんが、100人もの人に見にきて頂けるので、これからも頑張って、好きなことを好きに書いていこうと思…
駒が進める場所の評価を見直しました。駒が移動できる場所は、駒ごとにデータとして持っておかないと、後々面倒なことになるだろうというという判断です。 駒の移動範囲の指定 先手、後手の駒は、別々の駒と考えることにしました。下記のようなマトリックス…
持ち駒の処理について書きたいと思います。持ち駒は、先手、後手をそれぞれMochi[1]とMochi[2]の配列に入れることとしています。そこで、グローバル変数として下記の宣言をしています。 --グローバル変数宣言---------------------- Mochi = {} Mochi[1] = {…
駒を進める処理を書きたいと思います。 盤上の駒を動かした 盤上の駒を動かした場合の処理です。盤上の元位置はBan[hx][hy]であり、動かす位置はBan[hx1][hy1]です。chkMove()を用いて動かせるかチェックします。チェックOK(=1)であれば、駒を動かし、駒があ…
タッチ処理で駒を操作するときのやり方を変更しました。駒を指で動かすときに元画像をワークに退避させていたのですが、それはやめて、移動駒を選んだときに、全体画像をワークにキャッシュして、それを描き戻すやり方に代えました。 グローバル変数の変更 …
動物将棋(1)を後で読み返すと、いろいろとおかしいので、またまた修正しました。プログラムは特におかしくは無いのですが、「ぞう」は[1一]から[1二]に行けないし。最初に後手を動かしているし・・・。 ということで、訂正です。ついでに将棋盤を描く関数…
子供向けの動物将棋というものがあります。子供と遊んでみたいなと思っていたのですが、購入するに至らずに今まで来てしまっていました。(どうぶつしょうぎ.ねっと) 正月にでも、子供と対局してみたいので、Androidで遊べる将棋盤をLuaridaで、ちまちま作っ…
動物将棋のプログラムがさらに進んだので書いておきます。 動物将棋(4)にて、大幅に見直していますので、そちらをご覧下さい。 タッチしたところの駒番号を返す タッチしたところにある駒の番号を返す関数を作りました。ただし、駒が無いときは0を返します。…
Luaridaで時間を扱うサンプルです。ダウンロードはここから(timesample.apk)。 年月日と時分秒 Luaridaで年月日と時分秒を取得するコマンドは、os.date()です。これはLuaが持つ標準命令です。参照:http://sugarpot.sakura.ne.jp/yuno/html/lua51_manual_ja.h…
Lurida 1.41Betaをリリースしました。Luaではos.dateを使っても秒単位の時間しか取得できないので、もっと細かな時刻を取得できるコマンドを追加しました。 ダウンロードはこちらから(Luarida141Beta.apk)。 Luarida v1.42Betaをリリースしました。詳しくは…
Luaridaにセンサ関連命令を追加したので、以前紹介したセンササンプルが動作不可になりました。そこで、修正したので、報告しておきます。 加速度サンプルの修正 加速度センサからデータを取得するには、sensor.setdevAccel(1)として、センサ使用可にする必…
Luaaridaにセンサ関連命令を追加したので、方位磁石サンプルを作ってみました。ダウンロードはこちらから(CompassSample.apk)。 参考動画です 使用コマンド センサコマンドとして使用しているのは、sensor.setdevOrient()とsensor.getOrient()です。 sensor.…
Luarida 1.40 Betaをリリースしました。今回のバージョンアップでは、Sensorコマンドを本格サポートしました。センサの動作起動と終了の設定を追加したので、今までのサンプルは動作しません。 また、文字表示とグラフィック表示について、putflushに対応し…
まだ会社勤めをしていたころ、激しい動作を行っても安定して回転角度を検出するセンサの特許を書いたことがありました。当時権利化した記憶があるので、放棄していなければまだ有効ですね。今、特許庁のホームページで調べたら、平成18年に権利化していまし…
昨日、すまべん関西#12で「Androidでどこでも誰でも簡単プログラミング スクリプト言語 Luaridaを作ってみた」という発表をして来ました。 発表のスライドをPDFにしたものを置いておきます(LuaridaSumaben.pdf)。 目 次 発表目次だけ書いておきます。 発…
秋葉原でe-Padを買ってきたのですが、どういうわけか、Airplaneモードが切れなくなってしまいました。普通はアンテナには×マークが付いているのですが、ずっと、飛行機マークが付いています。 このマークを外す方法を防備録として書いておきます。 adb shell…
ドロイド君が回転するサンプルを作りました。Androidマーケットでも公開しています。とりあえず、動画から。 加速度センサのX,Yの値を使って、重力の方向を計算してドロイド君がまっすぐ向くように表示するサンプルです。せっかくのセンサなので、取得データ…
Luarida v1.34BetaをAndroidマーケットに公開しました。直接ダウンロードはここからできます。(Luarida v1.34Beta.apk) 今回の変更点は、画像や文字を回転させる命令を追加したところです。また、画像を扱うときの矩形範囲の指定方法を統一しました。 (Luari…