public static TurnCharacter Create(Combat.Piece piece) { TurnCharacter character = (TurnCharacter)template.Instance(); character.Configure(piece); return(character); }
public void Configure(Combat.Piece piece) { TrySetup(); entity = piece.entity; name.Text = piece.entity.name; piece.entity.GetAppearance().GenerateOnWithOutline(icon, piece.entity.alignment).Position = Vector2.Zero; health.SetHealth(piece.entity.health, piece.entity.maxHealth); piece.entity.Connect(nameof(CharacterEntity.health_modified), health, nameof(HealthBar.ChangeHealth)); affinity.SetAffinity(piece.entity.affinity); }
private void on_NextTurn(Combat.Piece piece) { if (piece.entity.alignment == Combat.Alignment.FRIENDLY) { SwitchState(BattleState.SKILL); skillPanel.Load(piece.entity); } else { SwitchState(BattleState.OBSERVE); new EnemyAI(piece).Play(); // TODO: Make nice async stuff } }
public static void CreateHealing(Combat.Piece piece, int healing) { Create(piece, new Vector2(0, -12), "+" + healing.ToString(), HEALING_COLOR, OUTLINE_COLOR); }
public static void CreateDamage(Combat.Piece piece, int damage) { Create(piece, new Vector2(0, -12), damage.ToString(), DAMAGE_COLOR, OUTLINE_COLOR); }