https://github.com/takishita2nd/FarmGame/tree/develop
クラフトウィンドウで決定を押すと、このようなダイアログを表示させました。
今回は作物から種を作成する処理ですが、次は小麦粉のレシピを追加して小麦粉作成まで作っていこうと思います。
https://github.com/takishita2nd/FarmGame/tree/develop
クラフトウィンドウで決定を押すと、このようなダイアログを表示させました。
今回は作物から種を作成する処理ですが、次は小麦粉のレシピを追加して小麦粉作成まで作っていこうと思います。
https://github.com/takishita2nd/FarmGame/tree/develop
クラフトウィンドウに文字を入れました。
クラフトウィンドウには、必要となるアイテムの名前、個数、現在持っているアイテムの個数を表示させています。
さて、次は実際にクラフトする処理を実装していきます。
https://github.com/takishita2nd/FarmGame/tree/develop
クラフトウィンドウクラスを作成し、クラフトできるアイテムをクリックすると、ウィンドウが表示されるようにしました。
今後は、このウィンドウに必要な文言を表示し、決定ボタンを押すとクラフトを行う処理を実装していこうと思います。
https://github.com/takishita2nd/FarmGame/tree/develop
画面の一部は農場シーンの種を選択する画像を使用しました。
なので、この画像を使用しているクラスの共通部分を基底クラスで定義して、コードを共有させようと思います。
で、この画面には、今後、使用するアイテムの名前と個数が表示されるイメージです。
このイメージでこの画面を作成するクラスを作っていこうと思います。
https://github.com/takishita2nd/FarmGame/tree/develop
まずはレシピデータの作成。
これは今はコードの中に書いてありますが、後々外部データに書き換わります。
これはJsonになるかな。
今回作成したのは、作物から種を作成するレシピ。
農場で小麦を栽培して、収穫した小麦が、工房では小麦の種を作成可能、という状態になっています。
次は実際のアイテム作成画面を作成していきます。
https://github.com/takishita2nd/FarmGame/tree/develop
前回作成した画面を元に、
アイテムの蘭をクラス化して、アイテムと個数を表示させました。
ページネーションも表示アイテム数に合わせて表示を変えています。
ページ切り替えの処理は後で実装します。
アイテム作成できるかどうかの判定処理は次回実装します。
(レシピデータを作成しないといかん)
https://github.com/takishita2nd/FarmGame/tree/develop
とりあえず、画面に部品を配置してみました。
前回の絵では5×2で書いていましたが、結構スペースが余ったので、7×2にしました。
これなら問題はなさそうです。
これで行きましょう。
https://github.com/takishita2nd/FarmGame/tree/develop
一画面に2×5のボタンを配置する。
画像には作成できるボタンだけクリックできるようにすると書いてあるけど、
クリックは全ボタン押下可能で、作成可能なボタンだけ色を変えるようにしたい。
作成できないボタンはクリックすると、必要な材料が表示される感じ。
クリックすると、必要な材料と消費パワーを消磁して、作成をクリックすると作成を行う。
こんな感じで行こうと思います。
https://github.com/takishita2nd/FarmGame/tree/develop
これまでは種データやアイテムデータをコードに直に書いていました。
でもこのままでは、アイテム追加をするときにプログラム本体を更新しなければならず、
何かとめんどくさいので、
外部ファイルで入力するようにしました。
データ構造は複雑なものではないので、jsonではなく、csvにしました。
これでToDoリスト一個完了。
https://github.com/takishita2nd/FarmGame/tree/develop
ちょっと表示を修正しました。
まず、収穫時に獲得できるアイテムの数を2~5にしました。
あと、改行を入れることによって、3行まで表示できるようにしました。
あ、縦幅足りないや。
あとで修正します。
そして、収穫したアイテム数を保持するようにしました。
次回以降は、このアイテムを種化する部分。
工房画面で実行するようにします。
あと、アイテムデータを外部データ化しないと、そろそろきつい。