私はUnityで2Dゲームを開発しています。私は、プレイヤーに異なるキャラクターを選択させるためのキャラクターパネルを作成しました。パネルには、異なる文字のサムネイルがあります。特定の文字のサムネイルをタップすると、そのキャラクタを見ることができます。サムネイルの元の縮尺は1です。プレーヤーがサムネイルをタップすると、縮尺は倍になります。これまではすべてが問題ありません。プレーヤーがサムネイルをタップするとその倍率が倍になるという問題があります。しかし、私はそれを一度だけに制限したい。スケーリングを止めるためにフラグを使用しましたが、それでも問題はあります。フラグの後にスケーリングは停止しますが、プレイヤーは複数の文字を同時にクリックできます。ここでスニペットをコピーしています。一度スケーリングするのではなく、それらをクリックしたときに私が正しくあなたの質問を理解していればクリックイベントのスケーリング問題
using UnityEngine;
using UnityEngine.UI;
using System.Collections;
public class ViewCharacter : MonoBehaviour {
[SerializeField]
private GameObject TempCharacterHolder ,TempCharacter, TempCharacterText, TempCharacterPrice;
// Use this for initialization
void Start() {
for (int i = 0; i < ShoppingManager.instance.ShoppingList.Count; i++) {
if (i == TheGameController.instance.GetSelectedCharacter()) {
PlayerPrefs.SetInt ("CharacterScaled" + i, 1);
} else {
PlayerPrefs.SetInt ("CharacterScaled" + i, 0);
}
}
}
public void ViewCharacterFunc()
{
int ClickedCharacter = int.Parse (TempCharacterText.GetComponent<Text>().text);
foreach (var characters in ShoppingManager.instance.ShoppingList) {
if (string.Equals (characters.CharacterName, TempCharacterText.GetComponent<Text>().text)) {
if (PlayerPrefs.GetInt("CharacterScaled"+characters.CharacterName)==0) {
ShoppingManager.instance.IncreaseScale (TempCharacter, TempCharacterHolder);
for (int i = 0; i < ShoppingManager.instance.ShoppingList.Count; i++) {
if (i == ClickedCharacter) {
PlayerPrefs.SetInt ("CharacterScaled" + i, 1);
} else {
PlayerPrefs.SetInt ("CharacterScaled" + i, 0);
}
}
}
} else {
Color clr = characters.Character_Holder.GetComponent<Image>().color;
clr.a = 1;
characters.Character_Holder.GetComponent<Image>().color = clr;
Vector3 TempVector = characters.CharaacterObject.GetComponent<RectTransform>().localScale;
TempVector.x = 1f;
TempVector.y = 1f;
characters.CharaacterObject.GetComponent<RectTransform>().localScale = TempVector;
}
}
}
}
あなたは状況により正確な詳細を記入してください可能性があり、使用しているコードおよび/あるいはスクリーンショットのいくつかの例問題の? –
このページを見て、スタックオーバーフローについての良い質問をすることができます:http://stackoverflow.com/help/how-to-ask – willpower2727
私はそれが英語が母国語以外の話し手から少し荒いです。問題は基本的なものですが、完全に賢明で分かりやすいものです。私はUnityタグで**の10の質問**を参照しています。これは現在、ダウンボウトのないゴミ箱です。 – Fattie