星田オステオパシー

Racketで何か・・DD&D014 道具使用その1

 宿直でもないけどどうにも気になって続きを書いておりました。
 Big-bangは単数で、ウィンドウは普通に上書きしていく感じ・・と決めたトコロまででした。

 例によって画像表示の座標を合わせるのに一苦労。最初、適当な値を入れて調整していく感じで
 
 うーん、もうちょい

 で、こういう数値をついに見出しました。結果・・

 やったぜ!HERO構造体のCHARACTER-Itemスロットに入ってるアイテム(連想リストのリスト)の要素数に対応してバックグラウンドが描画され、そこにリストが表示されて1つ目にアクティブの赤枠。この数値が分かってしまえば、後はOn-keyに渡すキーと式を書けばエエと

 C-LISTスロットのOn-key部分でMENUが#fであればmを押した時にメニューが表示される(と、同時にU-ITEMはリセットされる)。

 MENUが#tとなり、その状態でもしもU-ITEMが#fであればMENUが表示される。ここでiを押すとU-ITEMに0が入って

 MENUが#t、更にU-ITEMが0(number?)だと

 これが同時に発動して道具一覧が表示されるのと並行して、U-ITEM内にキーマップが適用されて上下キーで赤枠が移動。
 Enter("\r")が押されると、その時点でのU-UTEMに入ってる数字を元にList-ref
で該当する番目のアイテム(連想リスト)をU-ITEMにセット

 すると今度は(cons?の条件が満たされるのでアイテムの効果が適用されC-LISTが更新されるが、同時にMENUが#fに破壊的変更をされる。するとメニューが消えて次のキャラクターに行動が移る・・と。
 この、型を使った条件分けで単一のスロットを使いまわしするというのは結構良いんじゃないか?
 今の例だと効果が自分だけなのだけど、対象が敵味方の場合にはU-ITEMに入れるデータの型をlist?にして、同じく使い回す(あくまで)予定。

 自分への道具使用は今回のHSが一番単純で、味方を選択的に・・というのであればHO、敵単体を攻撃する道具の場合はASって感じで・・
 魔法も一応、ASが単体 ACが全体攻撃って感じで?

 という訳で今回までのところでGIF。まあ、大体狙い通りの動きになってる。
 が、なんかクリティカルヒットの数値がやっぱりデカすぎる。
 それと画面の更新がキー操作をするまで行われないのがちょっと嫌かな・・On-tickに渡せるようにちょっと挑戦してみるか・・

 というところで今回はココまでナリ



  • Xでシェアする
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

最近の「プログラミング」カテゴリーもっと見る

最近の記事
バックナンバー
人気記事