【Unityゲーム制作2】トランプ13枚をシャッフルして並べる話

ゲーム制作

unityを使ってゲーム制作をしていくpart2。
念のため言っとくと私はゲーム制作初めてのど素人です。
なんとなくゲームを作ってみたくて手探りでやり始めました。
調べて、真似て、動かしてみて、ゲームを作る感じなので、
コーディングのセオリーみたいなのはよくわからずやってます。

今回やったこと。

  • カード(トランプ)13枚をリストで保持する
  • カードをランダムにシャッフル
  • 対応した領域にカードオブジェクト生成
  • 数字に対応した画像を表示する

仕様
1~13の数字のトランプ13枚が初期手札。
前領域に3枚、後領域に10枚をランダムに初期配置。
前領域の3枚の内最低でも1枚はHighカード(7~13)。

13枚のカードをシャッフルしてリストデータに保持する
参考にしたのは下記のサイト。
【Unity】Randomクラスを使ってトランプをシャッフルするサンプル
UnityのRandomクラスを使って、トランプをシャッフルするサンプルを作ります。Unityのマニュアルには『ランダムなゲームプレイ要素の追加』として乱数を使ったランダム要素の扱いが載っているので、これを出発点にすると取っ掛かりやすいかも。
Cardスクリプトの作成
カードのデータを保持するクラス
数字、マーク、ジョーカー判定の3項目を持つ。
必要な情報が増えたら適宜足していく予定。
OnePokerManagerスクリプトの作成
ゲームの進行を管理するクラス
Start関数で初期の手札を配るInitializeCardListメソッドを呼び出す
数字に対応した画像を表示する
参考にしたサイトは以下2つ。
【Unity入門】Instantiateを使いこなそう!使い方・使用例まとめ! | 侍エンジニア塾ブログ(Samurai Blog) - プログラミング入門者向けサイト
みなさんUnityを使っていますか? こちらの記事を閲覧している人の多くはUnityをすでに使い始めている人だと思います。今回はそんなはUnityを使い始めた人が初期につまずきやすいInstantiateについて、わかりやすく1からまとめました! この記事で解説する内容は、 Instantiate関数で何が出来るのか?...
【Unity】プレハブでSpriteAtlasを扱う - gracetory’s blog
皆さんこんにちは。 GWは連日外出でクタクタのgmatsuです。 娘を連れて動物園、公園に行ったり、友達とBBQやったり色々充実したGWとなりました。 気温は温かい…というより暑過ぎたくらいでしたね。 なんとか熱中症にはならずに済みました笑 そういえば最近の休日は、娘を練習台にカメラの練習をしています。 娘が産まれたタ...
InstantiateでカードPrefabの生成して、親を配置したい領域に変更。
画像表示はスプライトアトラスというのを使ってみることにした。
PrefabがuGUIのimageだったので、getComponent<Image>を使ったら
エラーがでた。UnityEngine.UIを呼び込んでいなかったためだった。
Start関数でInstantiateCardメソッドを呼び出して、オブジェクトを生成させる。
とりあえず、実行結果がこんな感じになった。

コメント