private void handleTouched ()
	{
		//print (myStorageContainerClass);
		transform.parent.GetComponent<FLStorageContainerUpgradeScreenControl>().allowed = true;
		FLUIControl.getInstance ().blockClicksForAMomentAfterUIClicked ();
		_myNotEnoughResourcesScreen.GetComponent < FL_MOMNotEoughResourcesPanelControl > ().myStorageContainerClass = myStorageContainerClass;
		GameObject.Find ("textGeneral").GetComponent<GameTextControl> ().myKey = "ui_sign_upgrade_in_progress";
		GameObject.Find ("textGeneral").GetComponent<GameTextControl> ().addText = "";
		//=====================================Daves Edit==========================================
		switch (myStorageContainerClass.type) 
		{
			case FLStorageContainerClass.STORAGE_TYPE_METAL:
			print ("1");
			//print (FLStorageContainerClass.LEVELS_STATS_METAL[myStorageContainerClass.level + 1].cost.ToString ());
			if ( ResourcesManager.getInstance ().handleMinusResources ( FLStorageContainerClass.LEVELS_STATS_METAL [myStorageContainerClass.level + 1].cost, 0, 0))
			{
				GoogleAnalytics.instance.LogScreen ( "Start upgrading METAL storage - to level " + ( myStorageContainerClass.level + 1 ).ToString ());

				SoundManager.getInstance ().playSound (SoundManager.CONFIRM_BUTTON);
				myStorageContainerClass.upgrading = true;
				myStorageContainerClass.upgradeTime = myStorageContainerClass.timeTotal = (float)FLStorageContainerClass.LEVELS_STATS_METAL [myStorageContainerClass.level + 1].buildTime;
				SaveDataManager.save (SaveDataManager.STORAGE_CONTAINER_LEVEL_UP_TIME_PREFIX + myStorageContainerClass.position [0].ToString () + "," + myStorageContainerClass.position [1].ToString (), (int)(System.DateTime.UtcNow.Ticks / 10000000));
				_mySelectedContainer = GameObject.Find( "textMetal" );
				_mySelectedContainer.GetComponent < TextMesh >().text = FLStorageContainerClass.LEVELS_STATS_METAL[myStorageContainerClass.level + 2].cost.ToString ();
			}
			else
			{
				closeBackground();
				noResources();
				_myNotEnoughResourcesScreen.GetComponent < FL_MOMNotEoughResourcesPanelControl > ().myContainerUpgradeCost = FLStorageContainerClass.LEVELS_STATS_METAL[myStorageContainerClass.level + 1].cost;
				_myNotEnoughResourcesScreen.GetComponent < FL_MOMNotEoughResourcesPanelControl > ().activeElement = 1;
				myStorageContainerClass  = GameGlobalVariables.lastStorageContainerClass;
			}
			break;

			case FLStorageContainerClass.STORAGE_TYPE_PLASTIC:
			print ("2");
			if ( ResourcesManager.getInstance ().handleMinusResources (0, FLStorageContainerClass.LEVELS_STATS_PLASTIC [myStorageContainerClass.level + 1].cost, 0))
			{
				GoogleAnalytics.instance.LogScreen ( "Start upgrading PLASTIC storage - to level " + ( myStorageContainerClass.level + 1 ).ToString ());

				SoundManager.getInstance ().playSound (SoundManager.CONFIRM_BUTTON);
				myStorageContainerClass.upgrading = true;
				myStorageContainerClass.upgradeTime = myStorageContainerClass.timeTotal = (float)FLStorageContainerClass.LEVELS_STATS_PLASTIC [myStorageContainerClass.level + 1].buildTime;
				SaveDataManager.save (SaveDataManager.STORAGE_CONTAINER_LEVEL_UP_TIME_PREFIX + myStorageContainerClass.position [0].ToString () + "," + myStorageContainerClass.position [1].ToString (), (int)(System.DateTime.UtcNow.Ticks / 10000000));
				_mySelectedContainer = GameObject.Find( "textPlastic" );
				_mySelectedContainer.GetComponent < TextMesh >().text = FLStorageContainerClass.LEVELS_STATS_PLASTIC[myStorageContainerClass.level + 2].cost.ToString ();
			}
			else
			{
				closeBackground();
				noResources();
				_myNotEnoughResourcesScreen.GetComponent < FL_MOMNotEoughResourcesPanelControl > ().myContainerUpgradeCost = FLStorageContainerClass.LEVELS_STATS_PLASTIC[myStorageContainerClass.level + 1].cost;
				_myNotEnoughResourcesScreen.GetComponent < FL_MOMNotEoughResourcesPanelControl > ().activeElement = 2;
				myStorageContainerClass  = GameGlobalVariables.lastStorageContainerClass;
			}
			break;

			case FLStorageContainerClass.STORAGE_TYPE_VINES:
			print ("3");
			if ( ResourcesManager.getInstance ().handleMinusResources (0, FLStorageContainerClass.LEVELS_STATS_VINES [myStorageContainerClass.level + 1].cost, 0))
			{
				GoogleAnalytics.instance.LogScreen ( "Start upgrading VINES storage - to level " + ( myStorageContainerClass.level + 1 ).ToString ());

				SoundManager.getInstance ().playSound (SoundManager.CONFIRM_BUTTON);
				myStorageContainerClass.upgrading = true;
				myStorageContainerClass.upgradeTime = myStorageContainerClass.timeTotal = (float)FLStorageContainerClass.LEVELS_STATS_VINES [myStorageContainerClass.level + 1].buildTime;
				SaveDataManager.save (SaveDataManager.STORAGE_CONTAINER_LEVEL_UP_TIME_PREFIX + myStorageContainerClass.position [0].ToString () + "," + myStorageContainerClass.position [1].ToString (), (int)(System.DateTime.UtcNow.Ticks / 10000000));
					
				_mySelectedContainer = GameObject.Find( "textPlastic" );
				_mySelectedContainer.GetComponent < TextMesh >().text = FLStorageContainerClass.LEVELS_STATS_VINES[myStorageContainerClass.level + 2].cost.ToString ();
			}
			else
			{
				closeBackground();
				noResources();
				_myNotEnoughResourcesScreen.GetComponent < FL_MOMNotEoughResourcesPanelControl > ().myContainerUpgradeCost = FLStorageContainerClass.LEVELS_STATS_VINES[myStorageContainerClass.level + 1].cost;
				//this 2 value was 3 before, changed to reflect the plastic cost for vine upgrade to storage.
				_myNotEnoughResourcesScreen.GetComponent < FL_MOMNotEoughResourcesPanelControl > ().activeElement = 2;
				myStorageContainerClass  = GameGlobalVariables.lastStorageContainerClass;
			}
			break;

			default:
			print ("4");
				SoundManager.getInstance ().playSound (SoundManager.CANCEL_BUTTON);
	
				FLUIControl.getInstance ().putHeigherOrLowerCurrencyPanel (true);
	
				FLUIControl.currentBlackOutUI.SendMessage ("handleTouched");
				FLUIControl.currentPopupUI.transform.position += Vector3.down * 5f;
				FLUIControl.currentPopupUI = null;
	
				FLUIControl.getInstance ().createPopup (_premiumCurrencyPrefab);
					break;
				}
		//=====================================Daves Edit==========================================
		/*if ( ResourcesManager.getInstance ().handleMinusResources ( FLStorageContainerClass.LEVELS_STATS[myStorageContainerClass.level + 1].cost ))
		{
			SoundManager.getInstance ().playSound ( SoundManager.CONFIRM_BUTTON );
			
			myStorageContainerClass.upgrading = true;
			myStorageContainerClass.upgradeTime = myStorageContainerClass.timeTotal = (float) FLStorageContainerClass.LEVELS_STATS[myStorageContainerClass.level + 1].buildTime;
			SaveDataManager.save ( SaveDataManager.STORAGE_CONTAINER_LEVEL_UP_TIME_PREFIX + myStorageContainerClass.position[0].ToString () + "," + myStorageContainerClass.position[1].ToString (), (int) ( System.DateTime.UtcNow.Ticks / 10000000 ));
		}
		else
		{
			SoundManager.getInstance ().playSound ( SoundManager.CANCEL_BUTTON );
			
			FLUIControl.getInstance ().putHeigherOrLowerCurrencyPanel ( true );
			
			FLUIControl.currentBlackOutUI.SendMessage ( "handleTouched" );
			FLUIControl.currentPopupUI.transform.position += Vector3.down * 5f;
			FLUIControl.currentPopupUI = null;
			
			FLUIControl.getInstance ().createPopup ( _premiumCurrencyPrefab );
		}*/
	}
	private void handleTouched ()
	{
		FLUIControl.getInstance ().blockClicksForAMomentAfterUIClicked ();
		if(myElementID == 64 && (GameGlobalVariables.Stats.RECHARGEOCORES_IN_CONSTRUCTION + GameGlobalVariables.Stats.RECHARGEOCORES_IN_CONTAINERS) < 3)	
		{
			if ( ResourcesManager.getInstance ().handleBuyWithPremiumCurrency ( cost ))
			{
				SoundManager.getInstance ().playSound ( SoundManager.CONFIRM_BUTTON );
				
				transform.parent.gameObject.AddComponent < HideUIElement > ();
				FLUIControl.currentBlackOutUI.AddComponent < AlphaDisapearAndDestory > ();
				Destroy ( FLUIControl.currentBlackOutUI.GetComponent < BoxCollider > ());
				
				FLGlobalVariables.POPUP_UI_SCREEN = false;
				
				int metalAdd = -( GameGlobalVariables.Stats.METAL_IN_CONTAINERS - FLElementsConstructionCosts.COSTS_VALUES[myElementID].metal );
				int plasticAdd = -( GameGlobalVariables.Stats.PLASTIC_IN_CONTAINERS - FLElementsConstructionCosts.COSTS_VALUES[myElementID].plastic );
				int vinesAdd = -( GameGlobalVariables.Stats.VINES_IN_CONTAINERS - FLElementsConstructionCosts.COSTS_VALUES[myElementID].vines );
				
				ResourcesManager.getInstance ().handleAddResources ( metalAdd > 0 ? metalAdd : 0 , plasticAdd > 0 ? plasticAdd : 0, vinesAdd > 0 ? vinesAdd : 0	);
				
				myMomClass.myMomPanelControl.startProduction ( myElementID );
				GameGlobalVariables.Stats.RECHARGEOCORES_IN_CONSTRUCTION++;
				print ("building" + GameGlobalVariables.Stats.RECHARGEOCORES_IN_CONSTRUCTION);
				print ("made" + GameGlobalVariables.Stats.RECHARGEOCORES_IN_CONTAINERS);
			}
			else
			{
				SoundManager.getInstance ().playSound ( SoundManager.CANCEL_BUTTON );
				FLUIControl.currentBlackOutUI.AddComponent < AlphaDisapearAndDestory > ();
				Destroy ( FLUIControl.currentBlackOutUI.GetComponent < BoxCollider > ());

				FLGlobalVariables.POPUP_UI_SCREEN = false;

				FLUIControl.getInstance ().putHeigherOrLowerCurrencyPanel ( true );
				FLUIControl.getInstance ().createPopup ( _premiumCurrencyPrefab, true );
			}
		}
		else if(myElementID == 65)
		{
			if ( ResourcesManager.getInstance ().handleBuyWithPremiumCurrency ( cost ))
			{
				SoundManager.getInstance ().playSound ( SoundManager.CONFIRM_BUTTON );
				
				transform.parent.gameObject.AddComponent < HideUIElement > ();
				FLUIControl.currentBlackOutUI.AddComponent < AlphaDisapearAndDestory > ();
				Destroy ( FLUIControl.currentBlackOutUI.GetComponent < BoxCollider > ());
				
				FLGlobalVariables.POPUP_UI_SCREEN = false;
				
				int metalAdd = -( GameGlobalVariables.Stats.METAL_IN_CONTAINERS - FLElementsConstructionCosts.COSTS_VALUES[myElementID].metal );
				int plasticAdd = -( GameGlobalVariables.Stats.PLASTIC_IN_CONTAINERS - FLElementsConstructionCosts.COSTS_VALUES[myElementID].plastic );
				int vinesAdd = -( GameGlobalVariables.Stats.VINES_IN_CONTAINERS - FLElementsConstructionCosts.COSTS_VALUES[myElementID].vines );
				
				ResourcesManager.getInstance ().handleAddResources ( metalAdd > 0 ? metalAdd : 0 , plasticAdd > 0 ? plasticAdd : 0, vinesAdd > 0 ? vinesAdd : 0	);
				
				myMomClass.myMomPanelControl.startProduction ( myElementID );
			}
			else
			{
				SoundManager.getInstance ().playSound ( SoundManager.CANCEL_BUTTON );
				FLUIControl.currentBlackOutUI.AddComponent < AlphaDisapearAndDestory > ();
				Destroy ( FLUIControl.currentBlackOutUI.GetComponent < BoxCollider > ());
				
				FLGlobalVariables.POPUP_UI_SCREEN = false;
				
				FLUIControl.getInstance ().putHeigherOrLowerCurrencyPanel ( true );
				FLUIControl.getInstance ().createPopup ( _premiumCurrencyPrefab, true );
			}
		}
		if(transform.parent.GetComponent < FL_MOMNotEoughResourcesPanelControl > ().fromContainer == true)
		{
			if ( ResourcesManager.getInstance ().handleBuyWithPremiumCurrency ( cost ))
			{
				SoundManager.getInstance ().playSound ( SoundManager.CONFIRM_BUTTON );
				
				transform.parent.gameObject.AddComponent < HideUIElement > ();
				FLUIControl.currentBlackOutUI.AddComponent < AlphaDisapearAndDestory > ();
				Destroy ( FLUIControl.currentBlackOutUI.GetComponent < BoxCollider > ());
				
				FLGlobalVariables.POPUP_UI_SCREEN = false;
				int activeElement = transform.parent.GetComponent < FL_MOMNotEoughResourcesPanelControl > ().activeElement;
				myStorageContainerClass = GameGlobalVariables.lastStorageContainerClass;
				switch(activeElement)
				{
					case 1:
					{
						int metalAdd = -(transform.parent.GetComponent < FL_MOMNotEoughResourcesPanelControl > ().myContainerUpgradeCost);
						int plasticAdd = 0;
						int vinesAdd = 0;
						ResourcesManager.getInstance ().handleAddResources ( metalAdd > 0 ? metalAdd : 0 , plasticAdd > 0 ? plasticAdd : 0, vinesAdd > 0 ? vinesAdd : 0	);
						GoogleAnalytics.instance.LogScreen ( "Start upgrading METAL storage - to level " + ( myStorageContainerClass.level + 1 ).ToString ());
						
						SoundManager.getInstance ().playSound (SoundManager.CONFIRM_BUTTON);
						myStorageContainerClass.upgrading = true;
						myStorageContainerClass.upgradeTime = myStorageContainerClass.timeTotal = (float)FLStorageContainerClass.LEVELS_STATS_METAL [myStorageContainerClass.level + 1].buildTime;
						SaveDataManager.save (SaveDataManager.STORAGE_CONTAINER_LEVEL_UP_TIME_PREFIX + myStorageContainerClass.position [0].ToString () + "," + myStorageContainerClass.position [1].ToString (), (int)(System.DateTime.UtcNow.Ticks / 10000000));
					}
						break;
					case 2:
					{
						int plasticAdd = -(transform.parent.GetComponent < FL_MOMNotEoughResourcesPanelControl > ().myContainerUpgradeCost);
						int metalAdd = 0;
						int vinesAdd = 0;
						ResourcesManager.getInstance ().handleAddResources ( metalAdd > 0 ? metalAdd : 0 , plasticAdd > 0 ? plasticAdd : 0, vinesAdd > 0 ? vinesAdd : 0	);
						GoogleAnalytics.instance.LogScreen ( "Start upgrading PLASTIC storage - to level " + ( myStorageContainerClass.level + 1 ).ToString ());
						
						SoundManager.getInstance ().playSound (SoundManager.CONFIRM_BUTTON);
						myStorageContainerClass.upgrading = true;
						myStorageContainerClass.upgradeTime = myStorageContainerClass.timeTotal = (float)FLStorageContainerClass.LEVELS_STATS_PLASTIC [myStorageContainerClass.level + 1].buildTime;
						SaveDataManager.save (SaveDataManager.STORAGE_CONTAINER_LEVEL_UP_TIME_PREFIX + myStorageContainerClass.position [0].ToString () + "," + myStorageContainerClass.position [1].ToString (), (int)(System.DateTime.UtcNow.Ticks / 10000000));
					}
						break;
					case 3:
					{
						int vinesAdd = -(transform.parent.GetComponent < FL_MOMNotEoughResourcesPanelControl > ().myContainerUpgradeCost);
						int plasticAdd = 0;
						int metalAdd = 0;
						ResourcesManager.getInstance ().handleAddResources ( metalAdd > 0 ? metalAdd : 0 , plasticAdd > 0 ? plasticAdd : 0, vinesAdd > 0 ? vinesAdd : 0	);
						GoogleAnalytics.instance.LogScreen ( "Start upgrading VINES storage - to level " + ( myStorageContainerClass.level + 1 ).ToString ());
						
						SoundManager.getInstance ().playSound (SoundManager.CONFIRM_BUTTON);
						myStorageContainerClass.upgrading = true;
						myStorageContainerClass.upgradeTime = myStorageContainerClass.timeTotal = (float)FLStorageContainerClass.LEVELS_STATS_VINES [myStorageContainerClass.level + 1].buildTime;
						SaveDataManager.save (SaveDataManager.STORAGE_CONTAINER_LEVEL_UP_TIME_PREFIX + myStorageContainerClass.position [0].ToString () + "," + myStorageContainerClass.position [1].ToString (), (int)(System.DateTime.UtcNow.Ticks / 10000000));
					}
						break;
				}
			}
			else
			{
				SoundManager.getInstance ().playSound ( SoundManager.CANCEL_BUTTON );
				FLUIControl.currentBlackOutUI.AddComponent < AlphaDisapearAndDestory > ();
				Destroy ( FLUIControl.currentBlackOutUI.GetComponent < BoxCollider > ());
				
				FLGlobalVariables.POPUP_UI_SCREEN = false;
				
				FLUIControl.getInstance ().putHeigherOrLowerCurrencyPanel ( true );
				FLUIControl.getInstance ().createPopup ( _premiumCurrencyPrefab, true );
			}
		}
	}