カードゲームをしていて、画面にカードを表示するのに問題があります。誰もがどのように私はそれらが各カードの間にギャップを持つ画面の下部に表示することができます知っていますか?アイデアはSolitaireに似たもので、カードをクリックすると、すべての統計情報が表示された他のカードの上に移動します。カードを画面に表示する方法 - Unity、C#
マイプレイヤーマネージャコード:
using UnityEngine;
using System.Collections;
using System.Collections.Generic;
using UnityEngine.UI;
using UnityEngine.EventSystems;
public class s_PlayerManager : MonoBehaviour {
public bool isAi;
public s_DeckSetUp deckManager;
public List<Card> PlayerDeck = new List<Card>();
public List<Card> PlayerHand = new List<Card>();
public List<Card> PlayerGrave = new List<Card>();
public Card selectedCard;
private int totalHandCount = 5;
public int cardCount = 0;
void Start(){
deckManager = GameObject.Find("Deck Manager").GetComponent<s_DeckSetUp>();
}
public void StartDeck(){
for(int a = 0; a < deckManager.DeckAllCards.Count; a++){
int b = Random.Range(0, deckManager.DeckAllCards.Count);
PlayerDeck.Add(deckManager.DeckAllCards[b]);
}
DrawHand();
EventSystem.current.currentSelectedGameObject.SetActive(false);
}
public void DrawHand(){
for(cardCount = 0; cardCount < totalHandCount; cardCount++){
int b = Random.Range(0, PlayerDeck.Count);
PlayerHand.Add(PlayerDeck[b]);
PlayerDeck.RemoveAt(b);
}
}
public void CardDraw(){
if(cardCount < totalHandCount){
int b = Random.Range(0, PlayerDeck.Count);
PlayerHand.Add(PlayerDeck[b]);
PlayerDeck.RemoveAt(b);
cardCount++;
}
}
}
それはプレイヤーのデッキを作成し、最初の5枚のカードを引く処理します。 UIボタンをクリックすると、CardDraw機能が起動します。誰でもカードをスクリーンに表示させる方法を教えてもらえますか?私はプロジェクトファイルにカードアートを持っています。どんな助けでも大歓迎です。 Unityフォーラムでも投稿しました: https://forum.unity3d.com/threads/making-cards-appear-on-screen.475335/
手のカードの枚数に基づいてカードの位置を決めるのに苦労していますか?スプライトを画面に表示する方法は?それとも、世界の空間でカードの正しい場所を取得するには? – Reasurria
私はそれをすべて苦労しています。私はどのように始めるのか分かりません。 –