public MissionTowerData Clone() { MissionTowerData newData = CreateInstance <MissionTowerData>(); this.CopyTo(newData); return(newData); }
public void Initialize(MissionTowerData data) { m_Priority = data.Priority; m_Type = data.Type; m_Reward = data.Reward; m_Data = ScriptableObject.CreateInstance <MissionTowerData>(); data.CopyTo(m_Data); m_Data.PhaseDatas.Sort(); m_Codes = GenerateCode(); }
public void CopyTo(MissionTowerData other) { other.m_Id = this.m_Id; other.m_InteractRadius = this.m_InteractRadius; other.m_ActivateRadius = this.m_ActivateRadius; other.m_MinRadius = this.m_MinRadius; other.m_MaxRadius = this.m_MaxRadius; other.m_ActivatingTime = this.m_ActivatingTime; other.m_CodeLenghtMin = this.m_CodeLenghtMin; other.m_CodeLenghtMax = this.m_CodeLenghtMax; other.m_PhaseDatas = this.m_PhaseDatas; }
public Mission CreateMission(eMissionType type, Transform pos = null, uint level = 0) { Mission mission = null; switch (type) { case eMissionType.Tower: GameObject tower = new GameObject("MissionTower"); MissionTower missionTower = tower.AddComponent <MissionTower>(); string towerDataFileName = string.Format("MissionTowerSetting_{0}", level); MissionTowerData data = ResourceManager.m_Instance.LoadData(typeof(MissionTowerData), "Mission/Settings", towerDataFileName) as MissionTowerData; missionTower.Initialize(data); mission = missionTower; if (pos != null) { tower.transform.SetParent(pos); tower.transform.position = pos.position; } UIInGameMain.Instance.AddMissionInfo(mission); UIInGameMain.Instance.AddDynamicMissionMsg(missionTower); UIInGameMain.Instance.AddMapPoint(tower, eMapPointType.MISSIONTOWER); break; case eMissionType.KillMob: GameObject killMob = new GameObject("MissionKillMob"); MissionKillMob missionKill = killMob.AddComponent <MissionKillMob>(); string killMobDataFileName = string.Format("MissionKillMobSetting_{0}", level); MissionKillMobData killData = ResourceManager.m_Instance.LoadData(typeof(MissionKillMobData), "Mission/Settings", killMobDataFileName) as MissionKillMobData; missionKill.Initialize(killData); mission = missionKill; UIInGameMain.Instance.AddMissionInfo(mission); break; } return(mission); }