Пример #1
0
	public override void AddOverlayAsset(OverlayDataAsset overlay)
	{
		ValidateDictionary();
		var hash = UMAUtils.StringToHash(overlay.overlayName);
		if (overlayDictionary.ContainsKey(hash))
		{
			for (int i = 0; i < overlayElementList.Length; i++)
			{
				if (overlayElementList[i].overlayName == overlay.overlayName)
				{
					overlayElementList[i] = overlay;
					break;
				}
			}
		}
		else
		{
			var list = new OverlayDataAsset[overlayElementList.Length + 1];
			for (int i = 0; i < overlayElementList.Length; i++)
			{
				list[i] = overlayElementList[i];
			}
			list[list.Length - 1] = overlay;
			overlayElementList = list;
		}
		overlayDictionary[hash] = overlay;
	}
Пример #2
0
	private OverlayDataAsset[] GetOverlayDataArray()
	{
	
		int arrayCount = m_OverlayDataCount.intValue;
		OverlayDataAsset[] OverlayDataArray = new OverlayDataAsset[arrayCount];
		
		for(int i = 0; i < arrayCount; i++){
		
			OverlayDataArray[i] = m_Object.FindProperty(string.Format(kArrayData,i)).objectReferenceValue as OverlayDataAsset;
			
		}
		return OverlayDataArray;
		
	}
Пример #3
0
	/// <summary>
	/// Add an overlay asset to the library.
	/// </summary>
	/// <param name="overlay">Overlay.</param>
	public abstract void AddOverlayAsset(OverlayDataAsset overlay);
Пример #4
0
 private void SetOverlayData(int index, OverlayDataAsset overlayElement)
 {
     m_Object.FindProperty(string.Format(kArrayData,index)).objectReferenceValue = overlayElement;
     isDirty = true;
 }
Пример #5
0
 private void AddOverlayData(OverlayDataAsset overlayElement)
 {
     m_OverlayDataCount.intValue ++;
     SetOverlayData(m_OverlayDataCount.intValue - 1, overlayElement);
 }