private bool InitMoveCameraTo2D(object data) { BattleFieldCamera cam = BattleTaskManager.GetBattleCameras().fieldCameras.get_Item(0); BattleShips battleShips = BattleTaskManager.GetBattleShips(); ProdDetectionStartCutIn pdsc = ProdDetectionStartCutIn.Instantiate(BattleTaskManager.GetPrefabFile().prefabProdDetectionStartCutIn.GetComponent <ProdDetectionStartCutIn>(), BattleTaskManager.GetBattleCameras().cutInCamera.get_transform()); ShipModel_Battle detectionPrimaryShip = ShipUtils.GetDetectionPrimaryShip(this._clsSakuteki.planes_f, true); UIBattleShip uIBattleShip = (detectionPrimaryShip == null) ? battleShips.flagShipFriend : battleShips.dicFriendBattleShips.get_Item(detectionPrimaryShip.Index); Vector3 vector = Mathe.NormalizeDirection(uIBattleShip.pointOfGaze, Vector3.get_zero()) * 30f; Vector3 fixChasingCamera = new Vector3(uIBattleShip.pointOfGaze.x, uIBattleShip.pointOfGaze.y, uIBattleShip.pointOfGaze.z + vector.z); cam.pointOfGaze = uIBattleShip.pointOfGaze; cam.ReqViewMode(CameraActor.ViewMode.FixChasing); cam.SetFixChasingCamera(fixChasingCamera); Vector3 endCamPos = new Vector3(uIBattleShip.pointOfGaze.x, 50f, uIBattleShip.pointOfGaze.z + vector.z * 6f); Transform transform = uIBattleShip.get_transform(); Vector3 position = BattleTaskManager.GetBattleShips().dicFriendBattleShips.get_Item(0).get_transform().get_position(); this._psDetectionRipple = Util.Instantiate(ParticleFile.Load(ParticleFileInfos.BattlePSDetectionRipple), null, false, false).GetComponent <ParticleSystem>(); this._psDetectionRipple.get_transform().set_parent(transform); this._psDetectionRipple.get_transform().set_position(new Vector3(position.x, position.y + 0.01f, position.z)); this._psDetectionRipple.Play(); pdsc.Play().Subscribe(delegate(bool _) { cam.get_transform().LTMove(endCamPos, 1.95f).setEase(LeanTweenType.easeInOutCubic); Mem.DelComponentSafe <ProdDetectionStartCutIn>(ref pdsc); }); return(false); }
public void Play(Action onFinished) { this._isPlaying = true; this._actOnFinished = onFinished; BattleTaskManager.GetBattleCameras().enemyFieldCamera.cullingMask = BattleTaskManager.GetBattleCameras().GetDefaultLayers(); this.TorpedoParticle = ParticleFile.Load <PSTorpedoWake>(ParticleFileInfos.PARTICLE_FILE_INFOS_ID_ST); this._clsState.AddState(new StatementMachine.StatementMachineInitialize(this._initTorpedoCutInNInjection), new StatementMachine.StatementMachineUpdate(this._updateTorpedoCutInNInjection)); }
public void TestSaveMethod() { ParticleFile particleFile = new ParticleFile(); particleFile.Load(TEST_FILE); MemoryStream savedStream = new MemoryStream(); particleFile.Save(savedStream); savedStream.Seek(0, SeekOrigin.Begin); ParticleFile savedParticleFile = new ParticleFile(); savedParticleFile.Load(savedStream); savedStream.Close(); Assert.AreEqual(particleFile.Sequences.Count, savedParticleFile.Sequences.Count, "Sequence counts do not match"); for (int i = 0; i < particleFile.Sequences.Count; i++) { Assert.AreEqual(particleFile.Sequences[i].Name, savedParticleFile.Sequences[i].Name, "Sequence name values do not match"); Assert.AreEqual(particleFile.Sequences[i].Lifetime.Minimum, savedParticleFile.Sequences[i].Lifetime.Minimum, "Sequence minimum lifetime values do not match"); Assert.AreEqual(particleFile.Sequences[i].Lifetime.Maximum, savedParticleFile.Sequences[i].Lifetime.Maximum, "Sequence maximum lifetime values do not match"); Assert.AreEqual(particleFile.Sequences[i].EmitRate.Minimum, savedParticleFile.Sequences[i].EmitRate.Minimum, "Sequence minimum emit rate values do not match"); Assert.AreEqual(particleFile.Sequences[i].EmitRate.Maximum, savedParticleFile.Sequences[i].EmitRate.Maximum, "Sequence maximum emit rate values do not match"); Assert.AreEqual(particleFile.Sequences[i].LoopCount, savedParticleFile.Sequences[i].LoopCount, "Sequence loop count values do not match"); Assert.AreEqual(particleFile.Sequences[i].SpawnDirection.Minimum, savedParticleFile.Sequences[i].SpawnDirection.Minimum, "Sequence minimum spawn direction values do not match"); Assert.AreEqual(particleFile.Sequences[i].SpawnDirection.Maximum, savedParticleFile.Sequences[i].SpawnDirection.Maximum, "Sequence maximum spawn direction values do not match"); Assert.AreEqual(particleFile.Sequences[i].EmitRadius.Minimum, savedParticleFile.Sequences[i].EmitRadius.Minimum, "Sequence minimum emit radius values do not match"); Assert.AreEqual(particleFile.Sequences[i].EmitRadius.Maximum, savedParticleFile.Sequences[i].EmitRadius.Maximum, "Sequence maximum emit radius values do not match"); Assert.AreEqual(particleFile.Sequences[i].Gravity.Minimum, savedParticleFile.Sequences[i].Gravity.Minimum, "Sequence minimum gravity values do not match"); Assert.AreEqual(particleFile.Sequences[i].Gravity.Maximum, savedParticleFile.Sequences[i].Gravity.Maximum, "Sequence maximum gravity values do not match"); Assert.AreEqual(particleFile.Sequences[i].TextureFileName, savedParticleFile.Sequences[i].TextureFileName, "Sequence texture file names do not match"); Assert.AreEqual(particleFile.Sequences[i].ParticleCount, savedParticleFile.Sequences[i].ParticleCount, "Sequence particle counts do not match"); Assert.AreEqual(particleFile.Sequences[i].Alignment, savedParticleFile.Sequences[i].Alignment, "Sequence alignment values do not match"); Assert.AreEqual(particleFile.Sequences[i].UpdateCoordinate, savedParticleFile.Sequences[i].UpdateCoordinate, "Sequence update coordinate values do not match"); Assert.AreEqual(particleFile.Sequences[i].TextureWidth, savedParticleFile.Sequences[i].TextureWidth, "Sequence texture width values do not match"); Assert.AreEqual(particleFile.Sequences[i].TextureHeight, savedParticleFile.Sequences[i].TextureHeight, "Sequence texture height values do not match"); Assert.AreEqual(particleFile.Sequences[i].Implementation, savedParticleFile.Sequences[i].Implementation, "Sequence implementation values do not match"); Assert.AreEqual(particleFile.Sequences[i].DestinationBlendMode, savedParticleFile.Sequences[i].DestinationBlendMode, "Sequence destination blend mode values do not match"); Assert.AreEqual(particleFile.Sequences[i].SourceBlendMode, savedParticleFile.Sequences[i].SourceBlendMode, "Sequence source blend mode values do not match"); Assert.AreEqual(particleFile.Sequences[i].BlendOperation, savedParticleFile.Sequences[i].BlendOperation, "Sequence blend operation values do not match"); Assert.AreEqual(particleFile.Sequences[i].Events.Count, savedParticleFile.Sequences[i].Events.Count, "Event counts do not match"); for (int j = 0; j < particleFile.Sequences[i].Events.Count; j++) { Assert.AreEqual(particleFile.Sequences[i].Events[j].Type, savedParticleFile.Sequences[i].Events[j].Type, "Event type values do not match"); Assert.AreEqual(particleFile.Sequences[i].Events[j].Fade, savedParticleFile.Sequences[i].Events[j].Fade, "Event fade values do not match"); Assert.AreEqual(particleFile.Sequences[i].Events[j].TimeRange.Minimum, savedParticleFile.Sequences[i].Events[j].TimeRange.Minimum, "Event minimum time range values do not match"); Assert.AreEqual(particleFile.Sequences[i].Events[j].TimeRange.Maximum, savedParticleFile.Sequences[i].Events[j].TimeRange.Maximum, "Event maximum time range values do not match"); } } }
public void AddInstantiates(Transform parent, Vector3 injectionVec, Vector3 targetVec, bool isFull, int attackerIndex, float time, bool isDet, bool isMiss) { if (_torpedoWake == null) { _torpedoWake = ParticleFile.Load <PSTorpedoWake>(ParticleFileInfos.PARTICLE_FILE_INFOS_ID_ST); } if (_torpedoWakeD == null) { _torpedoWakeD = ParticleFile.Load <PSTorpedoWake>(ParticleFileInfos.BattlePSTorpedowakeD); } _listTorpedoWake.Add(PSTorpedoWake.Instantiate((!isFull) ? _torpedoWake : _torpedoWakeD, parent, injectionVec, targetVec, attackerIndex, time, isDet, isMiss)); }
private bool _initSupportTorpedoPhase1(object data) { SplashPar = ParticleFile.Load <ParticleSystem>(ParticleFileInfos.BattlePSSplashTorpedo); BattleCutInEffectCamera cutInEffectCamera = BattleTaskManager.GetBattleCameras().cutInEffectCamera; cutInEffectCamera.isCulling = true; Observable.FromCoroutine((IObserver <bool> observer) => CreateTorpedo1(observer)).Subscribe(delegate { _prodSupportTorpedoP1.Play(_onSupportTorpedoPhase1Finished); }); return(false); }
private ParticleSystem Instantiate() { if ((UnityEngine.Object)_par == null) { _par = ParticleFile.Load <ParticleSystem>(ParticleFileInfos.BattlePSSplashSmoke); } ParticleSystem val = UnityEngine.Object.Instantiate <ParticleSystem>(_par); ((Component)val).transform.parent = base.transform; ((Component)val).transform.position = base.transform.position; return(val); }
protected override bool Init() { _clsRaigeki = BattleTaskManager.GetBattleManager().GetKaimakuData(); if (_clsRaigeki == null) { EndPhase(BattleUtils.NextPhase(BattlePhase.OpeningTorpedoSalvo)); } else { _clsState = new StatementMachine(); _clsState.AddState(_initTorpedoCutInInjection, _updateTorpedoCutInInjection); TorpedoParticle = ParticleFile.Load <PSTorpedoWake>(ParticleFileInfos.PARTICLE_FILE_INFOS_ID_ST); } return(true); }
protected override bool Init() { base.Init(); this._clsRaigeki = BattleTaskManager.GetBattleManager().GetRaigekiData(); if (this._clsRaigeki == null) { this.EndPhase(BattleUtils.NextPhase(BattlePhase.TorpedoSalvo)); } else { this._clsState = new StatementMachine(); BattleTaskManager.GetBattleCameras().enemyFieldCamera.cullingMask = BattleTaskManager.GetBattleCameras().GetDefaultLayers(); this.TorpedoParticle = ParticleFile.Load <PSTorpedoWake>(ParticleFileInfos.PARTICLE_FILE_INFOS_ID_ST); this._clsState.AddState(new StatementMachine.StatementMachineInitialize(this._initTorpedoCutInNInjection), new StatementMachine.StatementMachineUpdate(this._updateTorpedoCutInNInjection)); } return(true); }
public void TestLoadMethod() { Stream stream = File.OpenRead(TEST_FILE); stream.Seek(0, SeekOrigin.End); long fileSize = stream.Position; stream.Seek(0, SeekOrigin.Begin); ParticleFile particleFile = new ParticleFile(); particleFile.Load(stream); long streamPosition = stream.Position; stream.Close(); Assert.AreEqual(fileSize, streamPosition, "Not all of the file was read"); }
private void _onSupportFleetAdmissionFinished() { if (_clsShien is ShienModel_Rai) { _clsTorpedo = (ShienModel_Rai)_clsShien; TorpedoParticle = ParticleFile.Load <PSTorpedoWake>(ParticleFileInfos.BattlePSTorpedowakeD); _clsState.AddState(_initSupportTorpedoPhase1, _updateSupportTorpedoPhase1); } else if (_clsShien is ShienModel_Hou) { _clsShelling = (ShienModel_Hou)_clsShien; _clsState.AddState(_initSupportShelling, _updateSupportShelling); } else if (_clsShien is ShienModel_Air) { _clsAerial = (ShienModel_Air)_clsShien; _clsState.AddState(_initSupportAerialPhase1, _updateSupportAerialPhase1); } }
private bool InitMoveCameraTo2D(object data) { BattleFieldCamera cam = BattleTaskManager.GetBattleCameras().fieldCameras[0]; BattleShips battleShips = BattleTaskManager.GetBattleShips(); ProdDetectionStartCutIn pdsc = ProdDetectionStartCutIn.Instantiate(((Component)BattleTaskManager.GetPrefabFile().prefabProdDetectionStartCutIn).GetComponent <ProdDetectionStartCutIn>(), BattleTaskManager.GetBattleCameras().cutInCamera.transform); ShipModel_Battle detectionPrimaryShip = ShipUtils.GetDetectionPrimaryShip(_clsSakuteki.planes_f, isFriend: true); UIBattleShip uIBattleShip = (detectionPrimaryShip == null) ? battleShips.flagShipFriend : battleShips.dicFriendBattleShips[detectionPrimaryShip.Index]; Vector3 vector = Mathe.NormalizeDirection(uIBattleShip.pointOfGaze, Vector3.zero) * 30f; Vector3 pointOfGaze = uIBattleShip.pointOfGaze; float x = pointOfGaze.x; Vector3 pointOfGaze2 = uIBattleShip.pointOfGaze; float y = pointOfGaze2.y; Vector3 pointOfGaze3 = uIBattleShip.pointOfGaze; Vector3 fixChasingCamera = new Vector3(x, y, pointOfGaze3.z + vector.z); cam.pointOfGaze = uIBattleShip.pointOfGaze; cam.ReqViewMode(CameraActor.ViewMode.FixChasing); cam.SetFixChasingCamera(fixChasingCamera); Vector3 pointOfGaze4 = uIBattleShip.pointOfGaze; float x2 = pointOfGaze4.x; Vector3 pointOfGaze5 = uIBattleShip.pointOfGaze; Vector3 endCamPos = new Vector3(x2, 50f, pointOfGaze5.z + vector.z * 6f); Transform transform = uIBattleShip.transform; Vector3 position = BattleTaskManager.GetBattleShips().dicFriendBattleShips[0].transform.position; _psDetectionRipple = Util.Instantiate(ParticleFile.Load(ParticleFileInfos.BattlePSDetectionRipple)).GetComponent <ParticleSystem>(); ((Component)_psDetectionRipple).transform.parent = transform; ((Component)_psDetectionRipple).transform.position = new Vector3(position.x, position.y + 0.01f, position.z); _psDetectionRipple.Play(); pdsc.Play().Subscribe(delegate { cam.transform.LTMove(endCamPos, 1.95f).setEase(LeanTweenType.easeInOutCubic); Mem.DelComponentSafe(ref pdsc); }); return(false); }
private PSTorpedoWake _createTorpedo(bool isOnes, Vector3 injection, Vector3 target, float _time, bool isDet, bool isMiss) { return(PSTorpedoWake.Instantiate((!isOnes) ? this._torpedoWake : ParticleFile.Load <PSTorpedoWake>(ParticleFileInfos.BattlePSTorpedowakeD), BattleTaskManager.GetBattleField().get_transform(), new Vector3(injection.x, injection.y + 1f, injection.z), new Vector3(target.x, target.y + 1f, target.z), 0, _time, isDet, isMiss)); }
private void Awake() { _iTimeZone = KCV.Battle.Utils.TimeZone.DayTime; if (_traFieldCenter == null) { Util.FindParentToChild(ref _traFieldCenter, base.transform, "CenterAnchor"); } _dicFleetAnchor = new Dictionary <FleetType, Transform>(); int num = 0; foreach (Transform traFleetAnchor in _traFleetAnchorList) { _dicFleetAnchor.Add((FleetType)num, traFleetAnchor); num++; } _dicCameraAnchors = new Dictionary <CameraAnchorType, Dictionary <FleetType, Transform> >(); Dictionary <FleetType, Transform> dictionary = new Dictionary <FleetType, Transform>(); foreach (int value in Enum.GetValues(typeof(FleetType))) { if (value != 2) { dictionary.Add((FleetType)value, base.transform.FindChild($"CameraAnchors/{((FleetType)value).ToString()}OneRowAnchor").transform); } } _dicCameraAnchors.Add(CameraAnchorType.OneRowAnchor, dictionary); _dicFleetAnchorOrigine = new Dictionary <FleetType, Vector3>(); _dicFleetAnchorOrigine.Add(FleetType.Friend, _dicFleetAnchor[FleetType.Friend].transform.position); _dicFleetAnchorOrigine.Add(FleetType.Enemy, _dicFleetAnchor[FleetType.Enemy].transform.position); _dicSeaLevels = new Dictionary <FleetType, Water>(); int num2 = 0; foreach (Transform traSeaLevel in _traSeaLevelList) { _dicSeaLevels.Add((FleetType)num2, ((Component)traSeaLevel).GetComponent <Water>()); _dicSeaLevels[(FleetType)num2].m_WaterMode = Water.WaterMode.Reflective; _dicSeaLevels[(FleetType)num2].waveScale = 0.02f; _dicSeaLevels[(FleetType)num2].reflectionDistort = 1.5f; num2++; } _dicSeaLevels[FleetType.Enemy].SetLayer(Generics.Layers.SplitWater.IntLayer()); isEnemySeaLevelActive = false; _dicWaveDirs = new Dictionary <FleetType, Vector4>(); _dicWaveDirs.Add(FleetType.Friend, new Vector4(-3.58f, -22.85f, 1f, -100f)); _dicWaveDirs.Add(FleetType.Enemy, new Vector4(3.58f, 22.85f, -1f, 100f)); _dicPSClouds = new Dictionary <FleetType, ParticleSystem>(); foreach (int value2 in Enum.GetValues(typeof(FleetType))) { if (value2 != 2) { ParticleSystem val = ParticleFile.Instantiate <ParticleSystem>(ParticleFileInfos.BattleAdventFleetCloud); ((UnityEngine.Object)val).name = $"Cloud{(FleetType)value2}"; ((Component)val).transform.parent = base.transform; ((Component)val).SetRenderQueue(3500); ((Component)val).transform.localScale = Vector3.one; ((Component)val).transform.position = Vector3.zero; val.playOnAwake = false; ((Component)val).SetActive(isActive: false); _dicPSClouds.Add((FleetType)value2, val); } } }
private void Awake() { this._iTimeZone = TimeZone.DayTime; if (this._traFieldCenter == null) { Util.FindParentToChild <Transform>(ref this._traFieldCenter, base.get_transform(), "CenterAnchor"); } this._dicFleetAnchor = new Dictionary <FleetType, Transform>(); int num = 0; using (List <Transform> .Enumerator enumerator = this._traFleetAnchorList.GetEnumerator()) { while (enumerator.MoveNext()) { Transform current = enumerator.get_Current(); this._dicFleetAnchor.Add((FleetType)num, current); num++; } } this._dicCameraAnchors = new Dictionary <CameraAnchorType, Dictionary <FleetType, Transform> >(); Dictionary <FleetType, Transform> dictionary = new Dictionary <FleetType, Transform>(); using (IEnumerator enumerator2 = Enum.GetValues(typeof(FleetType)).GetEnumerator()) { while (enumerator2.MoveNext()) { FleetType fleetType = (FleetType)((int)enumerator2.get_Current()); if (fleetType != FleetType.CombinedFleet) { dictionary.Add(fleetType, base.get_transform().FindChild(string.Format("CameraAnchors/{0}OneRowAnchor", fleetType.ToString())).get_transform()); } } } this._dicCameraAnchors.Add(CameraAnchorType.OneRowAnchor, dictionary); this._dicFleetAnchorOrigine = new Dictionary <FleetType, Vector3>(); this._dicFleetAnchorOrigine.Add(FleetType.Friend, this._dicFleetAnchor.get_Item(FleetType.Friend).get_transform().get_position()); this._dicFleetAnchorOrigine.Add(FleetType.Enemy, this._dicFleetAnchor.get_Item(FleetType.Enemy).get_transform().get_position()); this._dicSeaLevels = new Dictionary <FleetType, Water>(); int num2 = 0; using (List <Transform> .Enumerator enumerator3 = this._traSeaLevelList.GetEnumerator()) { while (enumerator3.MoveNext()) { Transform current2 = enumerator3.get_Current(); this._dicSeaLevels.Add((FleetType)num2, current2.GetComponent <Water>()); this._dicSeaLevels.get_Item((FleetType)num2).m_WaterMode = 1; this._dicSeaLevels.get_Item((FleetType)num2).set_waveScale(0.02f); this._dicSeaLevels.get_Item((FleetType)num2).set_reflectionDistort(1.5f); num2++; } } this._dicSeaLevels.get_Item(FleetType.Enemy).SetLayer(Generics.Layers.SplitWater.IntLayer()); this.isEnemySeaLevelActive = false; this._dicWaveDirs = new Dictionary <FleetType, Vector4>(); this._dicWaveDirs.Add(FleetType.Friend, new Vector4(-3.58f, -22.85f, 1f, -100f)); this._dicWaveDirs.Add(FleetType.Enemy, new Vector4(3.58f, 22.85f, -1f, 100f)); this._dicPSClouds = new Dictionary <FleetType, ParticleSystem>(); using (IEnumerator enumerator4 = Enum.GetValues(typeof(FleetType)).GetEnumerator()) { while (enumerator4.MoveNext()) { FleetType fleetType2 = (FleetType)((int)enumerator4.get_Current()); if (fleetType2 != FleetType.CombinedFleet) { ParticleSystem particleSystem = ParticleFile.Instantiate <ParticleSystem>(ParticleFileInfos.BattleAdventFleetCloud); particleSystem.set_name(string.Format("Cloud{0}", fleetType2)); particleSystem.get_transform().set_parent(base.get_transform()); particleSystem.SetRenderQueue(3500); particleSystem.get_transform().set_localScale(Vector3.get_one()); particleSystem.get_transform().set_position(Vector3.get_zero()); particleSystem.set_playOnAwake(false); particleSystem.SetActive(false); this._dicPSClouds.Add(fleetType2, particleSystem); } } } }
private PSTorpedoWake _instantiateTorpedo(Vector3 injection, Vector3 target, int index, float _time, bool isDet, bool isMiss, bool isD) { return(PSTorpedoWake.Instantiate(injectionVec: new Vector3(injection.x, injection.y + 1f, injection.z), target: new Vector3(target.x, target.y + 1f, target.z), prefab: (!isD) ? _torpedoWake : ParticleFile.Load <PSTorpedoWake>(ParticleFileInfos.BattlePSTorpedowakeD), parent: BattleTaskManager.GetBattleField().transform, attacker: index, _time: _time, isDet: isDet, isMiss: isMiss)); }