void SyncUI(UIEngineValueEntity _ui)
 {
     for (int i = 0; i < allValues.Count; i++)
     {
         //_ui.SyncEngineValue(allValues[i]);
     }
 }
Exemple #2
0
    protected virtual void SyncItemUI()
    {
        if (!Data.syncValuesToUI)
        {
            return;
        }
        if (Data.layoutMaster)
        {
            UIEngineValueEntity itemUI = null;
            if (Data.itemSyncType == LayoutSync.UISyncType.SpawnedUI)
            {
                itemUI = ui;
            }
            else if (Data.itemSyncType == LayoutSync.UISyncType.EntityRootOwnerUI)
            {
                var root = transform.root.GetComponentInChildren <EngineEntity>();
                itemUI = root.UI;
            }

            if (itemUI)
            {
                ammoClipAmountChangedUI = itemUI.GetEngineValueUI(Data.layoutMaster,
                                                                  Data.ammoClipAmountSync.syncSelection.indexValue);
                clipAmountChanged += ammoClipAmountChangedUI.SetCurValue;
                OnClipAmountChanged();

                ammoClipIndexChangedUI = itemUI.GetEngineValueUI(Data.layoutMaster,
                                                                 Data.ammoIndSync.syncSelection.indexValue);
                clipIndexChanged += ammoClipIndexChangedUI.SetCurValue;
                OnClipIndexChanged();

                ammoReloadUI = itemUI.GetEngineValueUI(Data.layoutMaster,
                                                       Data.reloadSync.syncSelection.indexValue);
                reloadingTime += ammoReloadUI.SetCurValue;
                ammoReloadUI.SetMinMaxValue(0, Data.reloadTime);
                OnReloading();
            }
        }
    }
 //override entity UI by component
 public void InitializeUI(UIEngineValueEntity _ui)
 {
     SyncUI(_ui);
 }
Exemple #4
0
 protected virtual void SpawnUI()
 {
     if (ui)
     {
         Destroy(ui.gameObject);
     }
     if (spawnUI != SpawnUIOptions.None)
     {
         if (spawnUI == SpawnUIOptions.FromData)
         {
             var root = transform.root.GetComponentInChildren <EngineEntity>();
             if (curData.spawnUI)
             {
                 ui = GameObject.Instantiate(data.UIToSpawn);
                 if (curData.childOptions == EngineEntityData.UIChildOptionsType.EntityWorldSpace)
                 {
                     ui.transform.SetParent(transform);
                 }
                 else if (curData.childOptions == EngineEntityData.UIChildOptionsType.EntityRootUI)
                 {
                     ui.transform.SetParent(root.ui.transform, false);
                 }
             }
             if (curData.syncValuesToUI)
             {
                 if (curData.entitySyncType == LayoutSync.UISyncType.SpawnedUI)
                 {
                     syncedUI = ui;
                 }
                 else if (curData.entitySyncType == LayoutSync.UISyncType.EntityRootOwnerUI)
                 {
                     syncedUI = root.UI;
                 }
                 if (syncedUI)
                 {
                     for (int i = 0; i < curData.entityLayoutSyncs.Length; i++)
                     {
                         var syncs        = curData.entityLayoutSyncs[i].syncSelections;
                         var layoutMaster = curData.entityLayoutSyncs[i].layoutMaster;
                         for (int ind = 0; ind < syncs.Length; ind++)
                         {
                             var sync   = syncs[ind];
                             var valSel = curData.engineValueSelections[sync.valueInd];
                             var masSel = sync.masterInd;
                             var engVal = engineValueContainer.GetEngineValue(valSel.valueSelection.valueData.ID);
                             if (engVal != null)
                             {
                                 syncedUI.SyncEngineValue(engVal, layoutMaster, masSel);
                             }
                         }
                     }
                 }
             }
         }
         else if (spawnUI == SpawnUIOptions.Override)
         {
             if (UIToSpawn)
             {
                 //spawn ui
                 ui = Instantiate(UIToSpawn).GetComponent <UIEngineValueEntity>();
                 if (parentUIToUnit)
                 {
                     ui.transform.position = transform.position;
                     ui.transform.rotation = transform.rotation;
                     ui.transform.SetParent(transform);
                 }
             }
         }
         //set avatar
         if (ui)
         {
             engineValueContainer.InitializeUI(ui);
             if (curData.avatarIcon)
             {
                 ui.SetAvatarIcon(curData.avatarIcon);
             }
         }
     }
 }
 public virtual void OnEnable()
 {
     source    = (UIEngineValueEntity)target;
     sourceRef = serializedObject;
     GetProperties();
 }