/// <summary> /// Загрузить данные о механизме /// </summary> public virtual void SetData(InterObjData _intObjData) { MovPlatformData mData = _intObjData is MovPlatformData? (MovPlatformData)_intObjData: null; if (mData != null && platformPositions.Count > 1) { transform.position = mData.position; moving = mData.activated; orientation = mData.direction; currentPosition = mData.currentPosition; int nextIndex = currentPosition + orientation; Vector2 nextPoint = Vector2.zero; if (currentPosition == 0) { nextPoint = platformPositions[1]; } else if (currentPosition == platformPositions.Count - 1) { nextPoint = platformPositions[platformPositions.Count - 2]; } else { nextPoint = platformPositions[currentPosition + orientation]; } direction = (nextPoint - platformPositions[currentPosition]).normalized; } }
/// <summary> /// Загрузить данные о двери /// </summary> public override void SetData(InterObjData _intObjData) { DoorData dData = (DoorData)_intObjData; if (dData != null) { opened = dData.opened; } }
/// <summary> /// Загрузить данные о головоломке /// </summary> public virtual void SetData(InterObjData _intObjData) { RiddleData rData = (RiddleData)_intObjData; if (rData != null) { progress = rData.progress; } }
/// <summary> /// Загрузить данные о коробке /// </summary> public void SetData(InterObjData _intObjData) { BoxData bData = (BoxData)_intObjData; if (bData != null) { health = bData.health; } }
/// <summary> /// Загрузить данные о чекпоинте /// </summary> public void SetData(InterObjData _intObjData) { MechData chData = (MechData)_intObjData; if (chData != null) { activated = chData.activated; } }
/// <summary> /// Загрузить данные о механизме /// </summary> public void SetData(InterObjData _intObjData) { MechData mData = (MechData)_intObjData; if (mData != null) { activated = mData.activated; StopAllCoroutines(); StartCoroutine(AppearProcess()); } }
/// <summary> /// Загрузить данные о двери /// </summary> public virtual void SetData(InterObjData _intObjData) { DoorData dData = (DoorData)_intObjData; if (dData != null) { if (dData.opened) { Open(); } } }
/// <summary> /// Загрузить данные о механизме /// </summary> public virtual void SetData(InterObjData _intObjData) { MechData mData = (MechData)_intObjData; if (mData != null) { activated = mData.activated; if (anim != null) { anim.Play(activated ? "Active" : "Inactive"); } } }
/// <summary> /// Настроить персонажа в соответствии с сохранёнными данными /// </summary> public void SetData(InterObjData _intObjData) { NPCData npcData = (NPCData)_intObjData; if (npcData != null) { List <Dialog> _dialogs = dialogs; dialogs = new List <Dialog>(); for (int i = 0; i < npcData.dialogs.Count; i++) { Dialog dialog = _dialogs.Find(x => (x.dialogName == npcData.dialogs[i])); if (dialog != null) { dialogs.Add(dialog); } } } #if UNITY_EDITOR UnityEditor.EditorUtility.SetDirty(this); #endif //UNITY_EDITOR }
/// <summary> /// Настроить персонажа в соответствии с сохранёнными данными /// </summary> public void SetData(InterObjData _intObjData) { }
/// <summary> /// Сохранить данные о сундуке /// </summary> public InterObjData GetData() { InterObjData cData = new InterObjData(id); return(cData); }