using System.Collections; using System.Collections.Generic; using UnityEngine; [ExecuteInEditMode] public class SpriteSyncManager : MonoBehaviour { #if UNITY_EDITOR public bool _use; public SPUM_SpriteEditManager _spriteEditor; public List _syncList = new List(); public List _syncPos = new List(); void Update() { if(!_use) { if(_syncPos.Count > 0 ) { SyncPivotInit(); } } } public void SyncPivotInit() { for(var i = 0 ; i < _syncList.Count;i++) { _syncList[i].transform.position = new Vector3(_syncPos[i].x,_syncPos[i].y,0); _syncList[i]._mySprite.sortingOrder = (int)(_syncPos[i].z); } } public void SyncPivotDataFirst() { _syncPos.Clear(); SyncFistProcess(_syncList[0],_spriteEditor._spriteObj._hairList[0]); SyncFistProcess(_syncList[1],_spriteEditor._spriteObj._hairList[3]); SyncFistProcess(_syncList[2],_spriteEditor._spriteObj._hairList[1]); SyncFistProcess(_syncList[3],_spriteEditor._spriteObj._clothList[0]); SyncFistProcess(_syncList[4],_spriteEditor._spriteObj._clothList[2]); SyncFistProcess(_syncList[5],_spriteEditor._spriteObj._clothList[1]); SyncFistProcess(_syncList[6],_spriteEditor._spriteObj._pantList[1]); SyncFistProcess(_syncList[7],_spriteEditor._spriteObj._pantList[0]); SyncFistProcess(_syncList[8],_spriteEditor._spriteObj._armorList[0]); SyncFistProcess(_syncList[9],_spriteEditor._spriteObj._armorList[2]); SyncFistProcess(_syncList[10],_spriteEditor._spriteObj._armorList[1]); SyncFistProcess(_syncList[11],_spriteEditor._spriteObj._weaponList[0]); SyncFistProcess(_syncList[12],_spriteEditor._spriteObj._weaponList[1]); SyncFistProcess(_syncList[13],_spriteEditor._spriteObj._weaponList[2]); SyncFistProcess(_syncList[14],_spriteEditor._spriteObj._weaponList[3]); SyncFistProcess(_syncList[15],_spriteEditor._spriteObj._backList[0]); } void SyncFistProcess(SpriteSync spriteSync, SpriteRenderer SP) { spriteSync.transform.position = SP.transform.position; Vector3 tV = new Vector3(SP.transform.position.x,SP.transform.position.y,SP.sortingOrder*1f); } #endif }