protected override void OnAfflict() { //On affliction end the entity's turn EntityAfflicted.SetMaxTurns(0); EntityAfflicted.SetTurnsUsed(EntityAfflicted.MaxTurns); Debug.Log($"{StatusType} set MaxTurns to 0 for {EntityAfflicted.Name}"); }
protected override void OnEnd() { EntityAfflicted.SetMaxTurns(EntityAfflicted.BaseTurns); Debug.Log($"{StatusType} set MaxTurns to {EntityAfflicted.BaseTurns} for {EntityAfflicted.Name}"); base.OnEnd(); }
protected override void OnUnsuppress(Enumerations.StatusSuppressionTypes statusSuppressionType) { if (statusSuppressionType == Enumerations.StatusSuppressionTypes.Effects) { EntityAfflicted.SetMaxTurns(EntityAfflicted.BaseTurns + AdditionalTurns); } }
protected override void OnResume() { if (PreventMovement == true) { EntityAfflicted.SetMaxTurns(0); EntityAfflicted.SetTurnsUsed(EntityAfflicted.MaxTurns); } }
protected override void OnPhaseCycleStart() { IncrementTurns(); if (IsFinished == false) { EntityAfflicted.SetMaxTurns(0); Debug.Log($"{StatusType} set MaxTurns to 0 for {EntityAfflicted.Name}"); } }
protected override void OnResume() { EntityAfflicted.SetMaxTurns(0); //Re-add the Immobile property int immobile = EntityAfflicted.EntityProperties.GetAdditionalProperty <int>(Enumerations.AdditionalProperty.Immobile) + 1; EntityAfflicted.EntityProperties.AddAdditionalProperty(Enumerations.AdditionalProperty.Immobile, immobile); }
protected override void OnPhaseCycleStart() { if (EntityAfflicted.MaxTurns > 0) { Debug.Log($"{StatusType} set MaxTurns to {EntityAfflicted.BaseTurns + AdditionalTurns} for {EntityAfflicted.Name}"); EntityAfflicted.SetMaxTurns(EntityAfflicted.BaseTurns + AdditionalTurns); } ProgressTurnCount(); }
protected override void OnSuppress(Enumerations.StatusSuppressionTypes statusSuppressionType) { if (statusSuppressionType == Enumerations.StatusSuppressionTypes.Effects) { EntityAfflicted.SetMaxTurns(EntityAfflicted.BaseTurns); //Remove the Immobile property EntityAfflicted.SubtractIntAdditionalProperty(Enumerations.AdditionalProperty.Immobile, 1); } }
protected override void OnAfflict() { //Set this on affliction as well, as the entity could have not used its turn yet if it's in the same phase //First check if the max turn count is greater than 0, as a turn count of 0 indicates the entity was not able to move this turn if (EntityAfflicted.MaxTurns > 0) { EntityAfflicted.SetMaxTurns(EntityAfflicted.BaseTurns + AdditionalTurns); Debug.Log($"{StatusType} set MaxTurns to {EntityAfflicted.BaseTurns + AdditionalTurns} for {EntityAfflicted.Name}"); } }
protected override void OnUnsuppress(Enumerations.StatusSuppressionTypes statusSuppressionType) { if (statusSuppressionType == Enumerations.StatusSuppressionTypes.Effects) { EntityAfflicted.SetMaxTurns(0); //Re-add the Immobile property EntityAfflicted.AddIntAdditionalProperty(Enumerations.AdditionalProperty.Immobile, 1); } }
protected override void OnUnsuppress(Enumerations.StatusSuppressionTypes statusSuppressionType) { if (statusSuppressionType == Enumerations.StatusSuppressionTypes.Effects) { if (PreventMovement == true) { EntityAfflicted.SetMaxTurns(0); EntityAfflicted.SetTurnsUsed(EntityAfflicted.MaxTurns); } } }
protected override void OnAfflict() { //Prevent the entity from moving on affliction and mark it as using up all of its turns EntityAfflicted.SetMaxTurns(0); EntityAfflicted.SetTurnsUsed(EntityAfflicted.MaxTurns); //Specify that this status makes the entity Immobile EntityAfflicted.AddIntAdditionalProperty(Enumerations.AdditionalProperty.Immobile, 1); Debug.Log($"{StatusType} set MaxTurns to 0 for {EntityAfflicted.Name}"); }
protected override void OnEnd() { if (EntityAfflicted.MaxTurns > 0 && EntityAfflicted.MaxTurns < EntityAfflicted.BaseTurns) { EntityAfflicted.SetMaxTurns(EntityAfflicted.BaseTurns); Debug.Log($"{StatusType} set MaxTurns to {EntityAfflicted.BaseTurns} for {EntityAfflicted.Name}"); } //Remove the Immobile property after getting its count EntityAfflicted.SubtractIntAdditionalProperty(Enumerations.AdditionalProperty.Immobile, 1); }
protected override void OnPhaseCycleStart() { ProgressTurnCount(); if (IsSuppressed(Enumerations.StatusSuppressionTypes.Effects) == false) { if (IsFinished == false) { EntityAfflicted.SetMaxTurns(0); Debug.Log($"{StatusType} set MaxTurns to 0 for {EntityAfflicted.Name}"); } } }
protected override void OnSuspend() { EntityAfflicted.SetMaxTurns(EntityAfflicted.BaseTurns); //Remove the Immobile property int immobile = EntityAfflicted.EntityProperties.GetAdditionalProperty <int>(Enumerations.AdditionalProperty.Immobile) - 1; EntityAfflicted.EntityProperties.RemoveAdditionalProperty(Enumerations.AdditionalProperty.Immobile); if (immobile > 0) { EntityAfflicted.EntityProperties.AddAdditionalProperty(Enumerations.AdditionalProperty.Immobile, immobile); } }
protected override void OnPhaseCycleStart() { IncrementTurns(); if (IsFinished == false) { //If the entity shouldn't move this turn, set its max turns to 0 if (PreventMovement == true) { EntityAfflicted.SetMaxTurns(0); Debug.Log($"{StatusType} set MaxTurns to 0 for {EntityAfflicted.Name}"); } //Flip the flag telling whether the entity can move next turn or not PreventMovement = !PreventMovement; } }
protected override void OnEnd() { if (EntityAfflicted.MaxTurns > 0 && EntityAfflicted.MaxTurns < EntityAfflicted.BaseTurns) { EntityAfflicted.SetMaxTurns(EntityAfflicted.BaseTurns); Debug.Log($"{StatusType} set MaxTurns to {EntityAfflicted.BaseTurns} for {EntityAfflicted.Name}"); } //Remove the Immobile property after getting its count int immobile = EntityAfflicted.EntityProperties.GetAdditionalProperty <int>(Enumerations.AdditionalProperty.Immobile) - 1; EntityAfflicted.EntityProperties.RemoveAdditionalProperty(Enumerations.AdditionalProperty.Immobile); if (immobile > 0) { EntityAfflicted.EntityProperties.AddAdditionalProperty(Enumerations.AdditionalProperty.Immobile, immobile); } }
protected override void OnPhaseCycleStart() { ProgressTurnCount(); if (IsSuppressed(Enumerations.StatusSuppressionTypes.Effects) == false) { if (IsFinished == false) { //If the entity shouldn't move this turn, set its max turns to 0 if (PreventMovement == true) { EntityAfflicted.SetMaxTurns(0); Debug.Log($"{StatusType} set MaxTurns to 0 for {EntityAfflicted.Name}"); } //Flip the flag telling whether the entity can move next turn or not PreventMovement = !PreventMovement; } } }
protected override void OnPhaseCycleStart() { EntityAfflicted.SetMaxTurns(EntityAfflicted.BaseTurns + AdditionalTurns); Debug.Log($"{StatusType} set MaxTurns to {EntityAfflicted.BaseTurns + AdditionalTurns} for {EntityAfflicted.Name}"); IncrementTurns(); }
protected override void OnSuspend() { EntityAfflicted.SetMaxTurns(EntityAfflicted.BaseTurns); }
protected override void OnResume() { EntityAfflicted.SetMaxTurns(EntityAfflicted.BaseTurns + AdditionalTurns); }