引数の箇所には「No Function」「MonoScript」「stringname」となっており、「PurchasePackPanel.cs」にエラーは出ておらず、以下のようになっています。
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
using TMPro;
public class PurchasePackPanel : MonoBehaviour
{
[SerializeField] Transform packImageTrans;
[SerializeField] TextMeshProUGUI purchasePackCountText;//パックの購入数のテキスト
public int purchasePackCount=0;//パック購入数
//パネルをセットする
public void SetPanel(int packId)
{
//パックのイメージ画像を破壊する
foreach(Transform packImage in packImageTrans)
{
Destroy(packImage.gameObject);
}
ある日唐突にカードゲーム作りたい欲が湧き出てたどり着きました。プログラミング未経験で右も左もわかりませんが、気が付いたらここまできてしまってました(笑)。それくらいこの記事は初心者にもわかりやすく、感覚的なサポートと少し踏み込んだ解説が両立していて見事でした。まだ第四章に入ったところですが、既に満足度の高い記事であることを実感したのでコメントさせて頂きます!
ちなみに、第四章等でたまに見かけるのですが、「OKButtom」という書き方には何か意味があるのでしょうか?それとも単なるスペルミスでしょうか?
何にせよ、非常に有力な教材になりました。ありがとうございます!
素敵なコメントありがとうございます!!
えすさんの「カードゲーム作りたい欲」の助けになれてよかったです( ´∀`)
ゲーム作りは難しいことも多いですが、
その何倍も楽しいので、一緒に楽しみながらやっていきましょう!
>ちなみに、第四章等でたまに見かけるのですが、「OKButtom」という書き方には何か意味があるのでしょうか?それとも単なるスペルミスでしょうか?
失礼しました、、これは完全にスペルミスです。
元の記事の方は一通り修正したので、もし他にも不明点あればまた教えてください!
最後まで終わりました。
とても参考になりました。
ありがとうございました!
この記事で学んだことを今後のゲーム作りに活かしていきたいと思います。
ユミヅキさん、コメントありがとうございます。
参考になったようでよかったです!
自分のペースで、これからも楽しみながらゲーム作りしていきましょうね( ´∀`)
ユミヅキさんの今後のゲーム開発を応援しております!!
みじんこさん こんにちは
第三章「OKを押したら、Packシーンに変更させる」の「OKButton」に「PushOKButton」メソッドをアタッチするという箇所で引数に「PushOKButton」ありません。
「OKButton」の「OnClick」に「PurchasePackPanel.cs」を選択した後引数を指定する箇所で「PushOKButton」が出てこないという風になります。
引数の箇所には「No Function」「MonoScript」「stringname」となっており、「PurchasePackPanel.cs」にエラーは出ておらず、以下のようになっています。
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
using TMPro;
public class PurchasePackPanel : MonoBehaviour
{
[SerializeField] Transform packImageTrans;
[SerializeField] TextMeshProUGUI purchasePackCountText;//パックの購入数のテキスト
public int purchasePackCount=0;//パック購入数
//パネルをセットする
public void SetPanel(int packId)
{
//パックのイメージ画像を破壊する
foreach(Transform packImage in packImageTrans)
{
Destroy(packImage.gameObject);
}
//パックのイメージ画像を出す
ShopManager shopManager=GameObject.Find(“ShopPanel”).GetComponent();
shopManager.CreateSelectPackButton(packId,packImageTrans);
//変数の初期化後、購入するパックの数を表示させる
purchasePackCount=0;
SetPurchasePackCountText();
}
//パック購入数のテキストに購入数を反映させる
void SetPurchasePackCountText()
{
purchasePackCountText.text=purchasePackCount.ToString();
}
//パック購入数の変更ボタンを押したときの処理
public void PushChangePurchasePackCountButton(int changeCount)
{
purchasePackCount+=changeCount;
if(purchasePackCount=10)purchasePackCount=10;
SetPurchasePackCountText();
}
public void PushOKButton()
{
if(purchasePackCount==0) return;
//Packシーンに切り替える
SceneTransitionManager.instance.Load(“Pack”);
}
}
あー、何となく原因は分かったのですが、
恐らくここまで進めてこられたJunoさんなら、この問題は自己解決出来ると思います!!
割と初歩的なミスなので、今までの「OnClick処理の設定の仕方」を見返して、
今の設定の仕方でミスってるところを見つけて見てください。
でもしばらく悩んで、どうしても分からなそうならまたコメントください!(`・ω・´)
解決しました。
パネルをアタッチし、引数を指定した後にアイコンがスクリプトの「#」のアイコンに変わるんですね。
記事内でスクリプトの「#」のアイコンだったので「PurchasePackPanel.cs」をアタッチしていました。
またわからない箇所があったら質問させてください。
返信ありがとうございました。
みじんこさん。
解説ありがとうございます。
非常に参考になっております。
私は今年の7月から好きなボードゲームのアプリが、
サービス終了していることに気がつき、自分でアプリを作ることにチャレンジしているものです。
既に解説済みかも知れませんが、作成したデッキリストとゲーム内のデッキリストの連携、
そのデッキリストのシャッフルやドロー、デッキに戻すといった方法についての講座を見てみたく思います。
みじんこさんのようにプログラミングできるよう日々挫折しながら頑張ります。