- Home /
 
               Question by 
               rebelarcher · Jul 10, 2019 at 09:53 PM · 
                shadertexturevariableplayerprefsint  
              
 
              How can i save a int for multiple texture. Please Read.
Hi everyone! Firstly i'm sorry for my bad english.I have a code for changing the textures of a object. And i have a price int variable. I changed every texture and save them sucsessfully. But i can not save price each of them. How can i save them price for each one. I can use a lot of variable. But it's will not pratict.
here is my code:
public class DynamicTexture : MonoBehaviour {
 public Material[] textures;
 public GameObject go;
 public GameObject player;
 public static int index;
 public static int price;
 public TMP_Text priceText;
 public TMP_Text info;
 public int Free = 0;
 public static bool youHaveThis;
 public TMP_Text haveThis;
 public static bool buy;
 void Start()
 {
     index = PlayerPrefs.GetInt("Theme" ,index);
     if(Shopping.temaAldı == true && price == 1) 
     {
         player.GetComponent<Renderer>().material = textures[index];
     }else { PlayerPrefs.GetInt("Theme", index);
     
     }
     player.GetComponent<Renderer>().material = textures[index];
   
     
 }
  
 void Update()
 {
     #region texturesRegion
     if (textures[index] == textures[0] )
     {
         price = 200;
         info.text = "LqweqwxzcxzcEL".ToString();
      
     }
      if (textures[index] == textures[1])
     {
         price = 500;
         info.text = "LEL".ToString();
 
     }
     if (textures[index] == textures[2])
     {
         price = 300;
         info.text = "QWEQW".ToString();
        
     }
     if (textures[index] == textures[3] )
     {
         price = 400;
         info.text = "LqweqweEL".ToString();
         
     }
     if (textures[index] == textures[4] )
     {
         price = -99999;
         info.text = "LEvcbcvbcvL".ToString();
       
     
     }
     if (textures[index] == textures[5])
     {
         price = Free;
         info.text = "LEbnmbnmL".ToString();
    
     }
     priceText.text = "Price :" + price.ToString();
 #endregion texturesRegion
 }
 public void Left()
 {
    index--;
     if(index < 0)
     {
         index = textures.Length - 1;
         
     }
     
     go.GetComponent<Renderer>().material = this.textures[index];
   
     
 }
 public void Right()
 {
     index++;
     if(index > textures.Length - 1)
     {
         index = 0;
     }
 
     go.GetComponent<Renderer>().material = this.textures[index];
     
 }
 public void Buy()
 {
     Debug.Log(index);
     if (ScoreCounter.coin >= price)
     {
         player.GetComponent<Renderer>().material = this.textures[index];
         ScoreCounter.coin -= price;
         PlayerPrefs.SetInt("GOLD",PlayerPrefs.GetInt("Price", -price) -ScoreCounter.coin);
         PlayerPrefs.SetInt("Theme", index);
         if (this.textures[index])
         {
             Shopping.temaAldı = true;
         }
         else {
         Shopping.temaAldı = false;
         }
     }
     if (ScoreCounter.coin < price)  
     {
        
         Debug.Log("You Have No Money");
     }
     
 }
 
}
               Comment
              
 
               
              Your answer
 
 
             Follow this Question
Related Questions
string plus int equals the name of the variable? How? 3 Answers
Shader Texture Change 3 Answers
CustomRenderTexture (RFloat) wont initialize in the same frame it is created. 0 Answers
how to solve shader/texture problem: putting white icons on colored planes 1 Answer
Assign Texture To Material Unity 4.6 1 Answer
 koobas.hobune.stream
koobas.hobune.stream 
                       
                
                       
			     
			 
                