private Vector3 InitAfterCreateStage(StageEntry stageEntry, MonoBasePerpStage perpStage, Vector3 preStagePos, bool isBorn, string baseWeatherName, MonoBasePerpStage.ContinueWeatherDataSettings continueData, bool isContinued) { Vector3 zero = Vector3.zero; Vector3 vector2 = Vector3.zero; if (!string.IsNullOrEmpty(stageEntry.LocationPointName)) { perpStage.transform.position = Vector3.zero; perpStage.transform.position = -perpStage.transform.Find(stageEntry.LocationPointName).localPosition; vector2 = perpStage.transform.position - preStagePos; } if (this._activeStageEntry == null) { perpStage.Init(stageEntry, baseWeatherName); } else { float renderingTimer = 0f; float weatherTimer = 0f; ConfigWeatherData fromWeatherData = null; ConfigWeatherData toWeatherData = null; string toWeatherName = null; if (continueData != null) { renderingTimer = continueData.renderingDataContinueTimer; weatherTimer = continueData.weatherContinueTimer; fromWeatherData = continueData.currentWeatherData; toWeatherData = continueData.continueWeatherData; toWeatherName = continueData.continueWeatherName; } if (this._activeStageEntry.PerpStagePrefabPath != stageEntry.PerpStagePrefabPath) { if (isContinued) { if (renderingTimer > 0f) { if (toWeatherName != null) { perpStage.Init(stageEntry, fromWeatherData, toWeatherName, renderingTimer, weatherTimer); } else { perpStage.Init(stageEntry, fromWeatherData, toWeatherData, renderingTimer, weatherTimer); } } else if (toWeatherName != null) { perpStage.Init(stageEntry, toWeatherName); } else { perpStage.Init(stageEntry, toWeatherData); } } else { perpStage.Init(stageEntry, baseWeatherName); } } else if (isContinued) { if (renderingTimer > 0f) { perpStage.TransitWeatherData(toWeatherData, renderingTimer, weatherTimer); } else { perpStage.Reset(stageEntry, toWeatherData); } } else { perpStage.Reset(stageEntry, WeatherData.GetWeatherDataConfig(baseWeatherName)); } this.CleanForStageTransit(); } GameObject obj2 = (GameObject)UnityEngine.Object.Instantiate(Miscs.LoadResource(stageEntry.GetEnvPrefabPath(), BundleType.RESOURCE_FILE)); obj2.transform.position = Vector3.zero; obj2.transform.rotation = Quaternion.identity; MonoStageEnv component = obj2.GetComponent <MonoStageEnv>(); Vector3 vector3 = new Vector3(0f, -0.05f, 0f); Transform transform = Miscs.FindFirstChildGivenLayerAndCollider(obj2.transform, LayerMask.NameToLayer("StageCollider")); if (transform != null) { transform.position += vector3; } this.RegisterStage(stageEntry, perpStage, component); return(vector2); }