88 lines
		
	
	
		
			3.2 KiB
		
	
	
	
		
			C#
		
	
	
	
			
		
		
	
	
			88 lines
		
	
	
		
			3.2 KiB
		
	
	
	
		
			C#
		
	
	
	
| /***********************************************
 | |
| 				EasyTouch Controls
 | |
| 	Copyright © 2016 The Hedgehog Team
 | |
|       http://www.thehedgehogteam.com/Forum/
 | |
| 		
 | |
| 	  The.Hedgehog.Team@gmail.com
 | |
| 		
 | |
| **********************************************/
 | |
| using UnityEngine;
 | |
| using UnityEngine.UI;
 | |
| using UnityEngine.EventSystems;
 | |
| using System.Collections;
 | |
| 
 | |
| [System.Serializable]
 | |
| public class ETCArea : MonoBehaviour {
 | |
| 
 | |
| 	public enum AreaPreset { Choose, TopLeft, TopRight, BottomLeft, BottomRight};
 | |
| 
 | |
| 	public bool show;
 | |
| 
 | |
| 	#region Constructeur
 | |
| 	public ETCArea(){
 | |
| 		show = true;
 | |
| 	}
 | |
| 	#endregion
 | |
| 
 | |
| 	#region MonoBehaviour Callback
 | |
| 	public void Awake(){
 | |
| 		GetComponent<Image>().enabled = show;
 | |
| 	}
 | |
| 	#endregion
 | |
| 
 | |
| 	public void ApplyPreset(AreaPreset preset){
 | |
| 
 | |
| 		RectTransform parent = transform.parent.GetComponent<RectTransform>();
 | |
| 	
 | |
| 		switch (preset) {
 | |
| 			case AreaPreset.TopRight:
 | |
| 				this.rectTransform().anchoredPosition = new Vector2(parent.rect.width/4f,parent.rect.height/4f);
 | |
| 				this.rectTransform().SetSizeWithCurrentAnchors(RectTransform.Axis.Horizontal,parent.rect.width/2f);
 | |
| 				this.rectTransform().SetSizeWithCurrentAnchors(RectTransform.Axis.Vertical,parent.rect.height/2f);
 | |
| 
 | |
| 				this.rectTransform().anchorMin = new Vector2(1,1);
 | |
| 				this.rectTransform().anchorMax = new Vector2(1,1);
 | |
| 				this.rectTransform().anchoredPosition = new Vector2( -this.rectTransform().sizeDelta.x/2f , -this.rectTransform().sizeDelta.y/2f );
 | |
| 
 | |
| 				break;
 | |
| 
 | |
| 			case AreaPreset.TopLeft:
 | |
| 				this.rectTransform().anchoredPosition = new Vector2(-parent.rect.width/4f,parent.rect.height/4f);
 | |
| 				this.rectTransform().SetSizeWithCurrentAnchors(RectTransform.Axis.Horizontal,parent.rect.width/2f);
 | |
| 				this.rectTransform().SetSizeWithCurrentAnchors(RectTransform.Axis.Vertical,parent.rect.height/2f);
 | |
| 
 | |
| 				this.rectTransform().anchorMin = new Vector2(0,1);
 | |
| 				this.rectTransform().anchorMax = new Vector2(0,1);
 | |
| 				this.rectTransform().anchoredPosition = new Vector2( this.rectTransform().sizeDelta.x/2f, -this.rectTransform().sizeDelta.y/2f );
 | |
| 
 | |
| 				break;
 | |
| 
 | |
| 			case AreaPreset.BottomRight:
 | |
| 				this.rectTransform().anchoredPosition = new Vector2(parent.rect.width/4f,-parent.rect.height/4f);
 | |
| 				this.rectTransform().SetSizeWithCurrentAnchors(RectTransform.Axis.Horizontal,parent.rect.width/2f);
 | |
| 				this.rectTransform().SetSizeWithCurrentAnchors(RectTransform.Axis.Vertical,parent.rect.height/2f);
 | |
| 
 | |
| 				this.rectTransform().anchorMin = new Vector2(1,0);
 | |
| 				this.rectTransform().anchorMax = new Vector2(1,0);
 | |
| 				this.rectTransform().anchoredPosition = new Vector2( -this.rectTransform().sizeDelta.x/2f , this.rectTransform().sizeDelta.y/2f );
 | |
| 
 | |
| 				break;
 | |
| 				
 | |
| 			case AreaPreset.BottomLeft:
 | |
| 				this.rectTransform().anchoredPosition = new Vector2(-parent.rect.width/4f,-parent.rect.height/4f);
 | |
| 				this.rectTransform().SetSizeWithCurrentAnchors(RectTransform.Axis.Horizontal,parent.rect.width/2f);
 | |
| 				this.rectTransform().SetSizeWithCurrentAnchors(RectTransform.Axis.Vertical,parent.rect.height/2f);
 | |
| 
 | |
| 				this.rectTransform().anchorMin = new Vector2(0,0);
 | |
| 				this.rectTransform().anchorMax = new Vector2(0,0);
 | |
| 				this.rectTransform().anchoredPosition = new Vector2( this.rectTransform().sizeDelta.x/2f , this.rectTransform().sizeDelta.y/2f );
 | |
| 
 | |
| 				break;
 | |
| 		}
 | |
| 
 | |
| 		 
 | |
| 
 | |
| 	}
 | |
| }
 | |
| 
 |