「農場経営ゲーム」カテゴリーアーカイブ

【農場経営ゲーム】牧場のボタン処理実装

https://github.com/takishita2nd/FarmGame/tree/develop

お手入れボタン、一括お手入れボタン、ページングボタンの実装をおこないました。

ほとんどが農場シーンからコードをコピーして作成したので、短時間でできました。

動物を消す処理に躓きましたが、クリッピングのエリア(Srcプロパティ)を(x, y, width, height)=(0, 0, 0, 0)にすれば簡単に解決しました。

※これをやらないとTexture = nullにしても白いのが表示される。

次回は収穫処理を実装します。

【農場経営ゲーム】動物の表示とアニメーション

https://github.com/takishita2nd/FarmGame/tree/develop

市場で購入した動物を牧場画面に表示させました。

ついでにアニメーションもさせました。

AltseedエンジンのFPSが60だったので、

ループ回数をカウントして、

ちょうど良いタイミングで絵を差し替えると良い感じに動いているようになります。

次回はボタン処理を作成していきます。

【農場経営ゲーム】牧場画面のパーツをクラス化

https://github.com/takishita2nd/FarmGame/tree/develop

前回とは見た目は変わりませんが、

左のアイコン(ここの上に動物を表示させる予定)と、

真ん中のラベルをクラス化させました。

前回ここの部分は絵を貼り付けただけだったので。

右のボタンは既存のクラスの使い回しです。

次回はこれを5行表示させ、動物を購入したらこの画面に反映させるところまでやりましょう。

できたらページングもやる。

【農場経営ゲーム】牧場画面にパーツ配置

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に吐き出す為の対処で、データのみのクラスにしたかった。

で、本題のリクエストの更新。

リクエストを破棄したり、納品すると、一覧からリクエストが削除されます。

そして、次の日をクリックすると、新しいリクエストが追加される、という感じです。

そのために、アイテムにレベルを設定し、完全ランダムでは無く、経営レベルに応じたリクエストがランダム生成されるようにしました。

あとは経営レベリング処理の実装だな。

もう少しで肝の部分は完成しそう。