protected override void OnUpdate() { Entity gpm = GameProcessManager.current_entity; if (EntityManager.GetSharedComponentData <CampArray>(gpm).Value.Length > 0) { Entity e = m.entity[0]; CurrentPhase currentPhase = EntityManager.GetComponentData <CurrentPhase>(gpm); CampArray camplist = EntityManager.GetSharedComponentData <CampArray>(gpm); int index = 0; for (index = 0; index < camplist.Value.Length; index++) { if (currentPhase.value.campType == camplist.Value[index].campType) { break; } } if (index < camplist.Value.Length) { index += 1; } else { index = 0; } currentPhase.value = camplist.Value[index]; EntityManager.DestroyEntity(e); EntityManager.SetComponentData(e, currentPhase); } }
//Spawns the "shotgun", which is a load of turrets firing in an arc private void SpawnShotgun(float tX, float tY) { for (int i = 0; i < 4; i++) { //Simple simple gun turrets Turret turret1 = new Turret(_root); CurrentPhase.AddChild(turret1); Sprite turret1Sprite = new Sprite(""); turret1.AddChild(turret1Sprite); turret1.X = tX; turret1.Y = tY - 50; turret1._rotation = i * 0.25f; } for (int i = 0; i < 3; i++) { //Simple simple gun turrets Turret turret2 = new Turret(_root); CurrentPhase.AddChild(turret2); Sprite turret2Sprite = new Sprite(""); turret2.AddChild(turret2Sprite); turret2.X = tX; turret2.Y = tY - 50; turret2._rotation = i * -0.25f; } }
public void Finish(string userName) { CurrentPhase.FinishPlayerTurn(userName); if (CurrentPhase.TurnsFinished) { CurrentPhase = CurrentPhase.Next(TurnOrder); } }
// Use this for initialization void Start() { currentPhase = CurrentPhase.None; _attackPhase = new AttackPhase(); currentUnitSelected = null; Current = this; }
private void OnDoPhenology(object sender, EventArgs e) { if (PlantIsAlive) { // If this is the first time through here then setup some variables. if (Phases == null || Phases.Count == 0) { OnSimulationCommencing(null, null); } CurrentlyOnFirstDayOfPhase = ""; if (JustInitialised) { CurrentlyOnFirstDayOfPhase = Phases[0].Start; JustInitialised = false; } double FractionOfDayLeftOver = CurrentPhase.DoTimeStep(1.0); if (FractionOfDayLeftOver > 0) { // Transition to the next phase. if (CurrentPhaseIndex + 1 >= Phases.Count) { throw new Exception("Cannot transition to the next phase. No more phases exist"); } if (CurrentPhase is EmergingPhase) { Emerged = true; } CurrentPhase = Phases[CurrentPhaseIndex + 1]; if (GrowthStage != null) { GrowthStage.Invoke(); } // Tell the new phase to use the fraction of day left. FractionOfDayLeftOver = CurrentPhase.AddTT(FractionOfDayLeftOver); Stage = CurrentPhaseIndex + 1; } else { Stage = (CurrentPhaseIndex + 1) + CurrentPhase.FractionComplete; } _AccumulatedTT += CurrentPhase.TTForToday; if (Emerged && PostPhenology != null) { PostPhenology.Invoke(this, new EventArgs()); } Util.Debug("Phenology.CurrentPhaseName=%s", CurrentPhase.Name.ToLower()); Util.Debug("Phenology.CurrentStage=%f", Stage); } }
public override void Dispose() { base.Dispose(); try { CurrentPhase.Stop(); } catch { } }
void StartBuildPhase() { currentPhase = CurrentPhase.BuildWall; Wall w = Instantiate(wall); w.owner = currentPlayer.playerNumber; w.StartSetPosition(); wallsBeingMade.Add(w); }
public void EndMovePhase() { currentPhase = CurrentPhase.EndTurn; GridManager.Instance.topHL.gameObject.SetActive(false); GridManager.Instance.rightHL.gameObject.SetActive(false); GridManager.Instance.downHL.gameObject.SetActive(false); GridManager.Instance.leftHL.gameObject.SetActive(false); EndTurn(); }
public void Start(IPlayer player) { if (player == _startingPlayer) { _innFactory = new InnFactory(Players.Count); Locations.SetupInns(_innFactory); CurrentPhase.Action(); NextPhase(); } }
public override string ToString() { var result = new StringBuilder(); result.AppendLine(CurrentPhase.ToString()); foreach (var player in Players) { result.Append(player.ToString()); } return(result.ToString()); }
//The gunship platforms for phase 1 private void GunshipPlatforms() { //Gun Platforms Entity enemLeft = new Entity(); CurrentPhase.AddChild(enemLeft); Sprite enemLeftSprite = new Sprite("GFX/Tanks/tankBlue.png"); enemLeft.AddChild(enemLeftSprite); enemLeft.X = -110; Entity enemLeft2 = new Entity(); CurrentPhase.AddChild(enemLeft2); Sprite enemLeftSprite2 = new Sprite("GFX/Tanks/tankBlue.png"); enemLeft2.AddChild(enemLeftSprite2); enemLeft2.X = -180; Entity enemRight = new Entity(); CurrentPhase.AddChild(enemRight); Sprite enemRightSprite = new Sprite("GFX/Tanks/tankBlue.png"); enemRight.AddChild(enemRightSprite); enemRight.X = 110; //Turrets for the platforms for (int i = 0; i < 4; i++) { Turret turretLeft2 = new Turret(_root, "rotate"); enemLeft2.AddChild(turretLeft2); Sprite turretLeftSprite2 = new Sprite("GFX/Tanks/barrelRed.png"); turretLeft2.AddChild(turretLeftSprite2); turretLeft2.X = (i * 20) - 30; turretLeft2.Y = 20; } Turret turretLeft = new Turret(_root); enemLeft.AddChild(turretLeft); Sprite turretLeftSprite = new Sprite("GFX/Tanks/barrelRed_outline.png"); turretLeft.AddChild(turretLeftSprite); turretLeft.Y = 20; Turret turretRight = new Turret(_root, "rocket"); enemRight.AddChild(turretRight); Sprite turretRightSprite = new Sprite("GFX/Tanks/barrelBeige_outline.png"); turretRight.AddChild(turretRightSprite); turretRight.Y = 20; }
public override string ToString() { if (Phased) { return(Phases[CurrentPhase] + " [Phase " + CurrentPhase.ToString() + "/" + PhaseLength.ToString() + "]"); } else { return(Description); } }
public void UpdateText() { if (CurrentTurn == Turn.ComputerTurn) { currentText.text = "Not your turn"; } else { currentText.text = CurrentPhase.ToString(); } }
private void PhaseFour() { _spinner = new Spinner("fast"); CurrentPhase.AddChild(_spinner); SpawnRotatingTurret(-105, 0); SpawnRotatingTurret(105, 0); SpawnRotatingTurret(0, 105); SpawnRotatingTurret(0, -105); SpawnReverseGunTurret2(); }
// move-out(e) 後編追加 public void HideAllChild() { this.groupYesnoSystemMessage.SetActive(false); this.back_SystemMessage.SetActive(false); this.Filter.SetActive(false); this.currentPhase = CurrentPhase.None; this.systemMessage.text = ""; if (this.nowAutoKill && this.nowAutoKillEnd == false) { this.autoKillTimer = (200 - 1); } }
private void PlayerActions() { if (CurrentPhase.PerPlayer) { foreach (var player in Players) { CurrentPhase.Action(player); } } else { CurrentPhase.Action(); } }
public void SupersedePhase(IPhase newPhase) { Clock.Stop(); CurrentPhase.SupersededBy = newPhase; newPhase.Supersedes = CurrentPhase; CurrentPhase.Pause(); CurrentPhase = newPhase; CurrentPhase.Start(); Clock.Start(CurrentPhase.Duration); }
private void OnDoPhenology(object sender, EventArgs e) { if (PlantIsAlive) { if (thermalTime.Value() < 0) { throw new Exception("Negative Thermal Time, check the set up of the ThermalTime Function in" + this); } // Calculate progression through current phase double propOfDayToUse = 1; bool incrementPhase = CurrentPhase.DoTimeStep(ref propOfDayToUse); while (incrementPhase) { if ((CurrentPhase is EmergingPhase) || (CurrentPhase.End == structure?.LeafInitialisationStage) || (CurrentPhase is DAWSPhase)) { Emerged = true; PlantEmerged?.Invoke(this, new EventArgs()); } stagesPassedToday.Add(CurrentPhase.End); if (currentPhaseIndex + 1 >= phases.Count) { throw new Exception("Cannot transition to the next phase. No more phases exist"); } currentPhaseIndex = currentPhaseIndex + 1; PhaseChangedType PhaseChangedData = new PhaseChangedType(); PhaseChangedData.StageName = CurrentPhase.Start; PhaseChanged?.Invoke(plant, PhaseChangedData); incrementPhase = CurrentPhase.DoTimeStep(ref propOfDayToUse); } AccumulatedTT += thermalTime.Value(); if (Emerged) { AccumulatedEmergedTT += thermalTime.Value(); } Stage = (currentPhaseIndex + 1) + CurrentPhase.FractionComplete; if (plant != null && plant.IsAlive && PostPhenology != null) { PostPhenology.Invoke(this, new EventArgs()); } } }
private IEnumerator WaitOnly() { yield return(new WaitForEndOfFrame()); if (One.SaveMode) { this.currentPhase = CurrentPhase.Save; } else { this.currentPhase = CurrentPhase.Load; } yield return(null); }
public void Tick(TickContext context) { if (PhaseIndex == -1) { if (State == PhaseManagerState.LevelIntro) { _introTimer.Tick(context.DeltaTime); if (_introTimer.Completed) { State = PhaseManagerState.Starting; StartPhase(0); } return; } return; } if (State == PhaseManagerState.Starting) { _startTimer.Tick(context.DeltaTime); if (_startTimer.Completed) { CurrentPhase.Start(); _phaseTimer?.Restart(); State = PhaseManagerState.Running; } } else if (State == PhaseManagerState.Running) { CurrentPhase.Tick(context); _phaseTimer?.Tick(context.DeltaTime); if (_phaseTimer?.Completed == true || CurrentPhase.Ended) { CurrentPhase.Stop(); _endedTimer.Restart(); State = PhaseManagerState.Ended; } } else if (State == PhaseManagerState.Ended) { _endedTimer.Tick(context.DeltaTime); if (_endedTimer.Completed) { CurrentPhase.Dispose(); _startTimer.Restart(); StartPhase(PhaseIndex + 1); } } }
public void Step() { var isPhaseFinished = CurrentPhase?.Step() ?? true; FireRenderRequested(); if (isPhaseFinished) { _actionStepper.Step( () => EnterDealProgramCardsPhase(), () => EnterProgramRegistersPhase(), () => EnterAnnouncePowerDownPhase(), () => EnterCompleteRegistersPhase(), () => EnterCleanupPhase()); } }
private void ExecSaveLoad() { Debug.Log("ExecSaveLoad(S)"); // // セーブ // if (One.SaveMode) { string targetFileName = String.Empty; for (int ii = 0; ii < buttonText.Length; ii++) { if (this.txtSender.Equals(buttonText[ii])) { targetFileName = ((ii + 1) + ((this.pageNumber - 1) * buttonText.Length)).ToString("D3") + "_"; break; } } this.Filter.SetActive(true); ExecSave(this.txtSender, targetFileName, this.forceSave); this.forceSave = false; } // // ロード // else { if ((this.txtSender).text == String.Empty) { return; } string targetFileName = String.Empty; for (int ii = 0; ii < buttonText.Length; ii++) { if (this.txtSender.Equals(buttonText[ii])) { targetFileName = (ii + 1 + ((this.pageNumber - 1) * buttonText.Length)).ToString("D3") + "_"; break; } } ExecLoad(this.txtSender, targetFileName, false); // 後編移動 } this.currentPhase = CurrentPhase.Complete; }
/// <summary> /// Starts a game. and pass along scores to be used. /// </summary> /// <exception cref="NoPlayersJoinedGameException" >NoPlayersJoinedGameException thrown when a game is started without at least 1 player.</exception> public void StartGame(List <int> ballScores) { //ensure the game has players if (null != JoinedPlayers && JoinedPlayers.Count > 0) { GameTime = DateTime.UtcNow; //change the game phase to start the game. CurrentPhase.ChangePhase(); //create the score card with all frames set to defaults CreateScoreCard(); //start play automaticly Play(ballScores); } else { throw new NoPlayersJoinedGameException("No players have joined the game. A game must have at least 1 player to start."); } }
/// <summary> /// Perform our daily timestep function. Get the current phase to do its /// development for the day. If TT is leftover after Phase is progressed, /// and the timestep for the subsequent phase is calculated using leftover TT /// </summary> public void DoTimeStep() { // If this is the first time through here then setup some variables. if (Phases == null || Phases.Count == 0) { OnInitialised(); } CurrentlyOnFirstDayOfPhase = ""; if (JustInitialised) { CurrentlyOnFirstDayOfPhase = Phases[0].Start; JustInitialised = false; } double FractionOfDayLeftOver = CurrentPhase.DoTimeStep(1.0); if (FractionOfDayLeftOver > 0) { // Transition to the next phase. if (CurrentPhaseIndex + 1 >= Phases.Count) { throw new Exception("Cannot transition to the next phase. No more phases exist"); } CurrentPhase = Phases[CurrentPhaseIndex + 1]; if (GrowthStage != null) { GrowthStage.Invoke(); } // Tell the new phase to use the fraction of day left. FractionOfDayLeftOver = CurrentPhase.AddTT(FractionOfDayLeftOver); Stage = CurrentPhaseIndex + 1; } else { Stage = (CurrentPhaseIndex + 1) + CurrentPhase.FractionComplete; } _AccumulatedTT += CurrentPhase.TTForToday; Util.Debug("Phenology.CurrentPhaseName=%s", CurrentPhase.Name.ToLower()); Util.Debug("Phenology.CurrentStage=%f", Stage); }
private void PhaseSeven() { Ladder hand = new Ladder(true); CurrentPhase.AddChild(hand); Sprite handSprite = new Sprite("GFX/Angry.png"); hand.AddChild(handSprite); hand.Y = -1000; //Foot. Ladder jax = new Ladder(true); CurrentPhase.AddChild(jax); Sprite jaxSprite = new Sprite("GFX/Foot.jpg"); jax.AddChild(jaxSprite); jax.Y = -5000; }
//###PHASES### private void PhaseOne() { //Spawns the platforms and the turrets that sit upon them GunshipPlatforms(); Turret turretCenterLeft = new Turret(_root); CurrentPhase.AddChild(turretCenterLeft); Sprite turretCenterLeftSprite = new Sprite("GFX/Tanks/barrelGreen.png"); turretCenterLeft.AddChild(turretCenterLeftSprite); turretCenterLeft.X = -20; turretCenterLeft.Y = 40; Turret turretCenterRight = new Turret(_root); CurrentPhase.AddChild(turretCenterRight); Sprite turretCenterRightSprite = new Sprite("GFX/Tanks/barrelGreen.png"); turretCenterRight.AddChild(turretCenterRightSprite); turretCenterRight.X = 20; turretCenterRight.Y = 40; //Connector struts Entity bridgeLeft = new Entity(); CurrentPhase.AddChild(bridgeLeft); Sprite bridgeLeftSprite = new Sprite("GFX/Tanks/barrelBlue.png"); bridgeLeft.AddChild(bridgeLeftSprite); bridgeLeft.X = -50; bridgeLeft.Rotate(1.55f); Entity bridgeRight = new Entity(); CurrentPhase.AddChild(bridgeRight); Sprite bridgeRightSprite = new Sprite("GFX/Tanks/barrelBlue.png"); bridgeRight.AddChild(bridgeRightSprite); bridgeRight.X = 50; bridgeRight.Rotate(1.55f); }
public void OnPhaseChangedShouldPassDetailsAboutError() { // Arrange var phaseCount = _fixture.Create <int>(); var currentPhase = _fixture.Create <int>(); var phaseDescription = _fixture.Create <string>(); _module.Setup(m => m.GetPhaseCount(It.IsAny <IntPtr>())) .Returns(phaseCount); _module.Setup(m => m.GetCurrentPhase(It.IsAny <IntPtr>())) .Returns(currentPhase); _module.Setup(m => m.GetPhaseDescription(It.IsAny <IntPtr>(), It.IsAny <int>())) .Returns(phaseDescription); var result = default(PhaseChangedEventArgs?); var doc = new Mock <ISettings>().Object; var configuration = new WkHtmlToXConfiguration((int)Environment.OSVersion.Platform, runtimeIdentifier: null) { PhaseChangedAction = eventArgs => { result = eventArgs; }, }; var sut = new PdfProcessor(configuration, _module.Object) { ProcessingDocument = doc, }; // Act sut.OnPhaseChanged(new IntPtr(1)); // Assert using (new AssertionScope()) { result !.Document.Should().Be(doc); result !.PhaseCount.Should().Be(phaseCount); result !.CurrentPhase.Should().Be(currentPhase); result !.Description.Should().Be(phaseDescription); } }
public void SwitchInteractor(IPhasePageInteractor interactor) { if (interactor == CurrentPhase) { return; } if (CurrentPhase != null) { if (!CurrentPhase.LeavePage()) { return; } } CurrentPhase = interactor; workerDlgSvc.StartBackgroundWork("Entering next phase...", delegate() { interactor.PerformWork(workerDlgSvc); }); interactor.EnterPage(); }