protected virtual void GenerateHUDStatsText(StringBuilder s) { s.AppendLine(GetType().Name); s.AppendLine(State.ToString()); s.Append("Hitpoints: ").Append(HitPoints).Append(" / ").Append(MaxHitPoints).AppendLine(); if (MotionUnit != null) { s.Append("Weight: ").Append(MotionUnit.Weight).AppendLine(); } s.Append("MovementBlockers: ").Append(CanControlMovementBlockers).AppendLine(); s.Append("RotationBlockers: ").Append(CanControlRotationBlockers).AppendLine(); s.Append("AbilityBlockers: ").Append(CanPerformAbilitiesBlockers).AppendLine(); s.Append("IsOnGround: ").Append(IsOnGround).AppendLine(); var ea = Scene.View.Content.Peek <global::Graphics.Renderer.Renderer.EntityAnimation>(MetaEntityAnimation); //s.Append("Animation: ").Append(ea.PlayingAnimations[ea.CurrentTrack]).Append(" "). // Append(ea.Looping[ea.CurrentTrack]).Append(" "). // Append(ea.TrackDurations[ea.CurrentTrack]).AppendLine(); s.AppendLine(ea.GetInformation()); s.Append("ActionAnimation: "); if (actionAnimation != null) { s.AppendLine(actionAnimation.Animation); } else { s.AppendLine("-"); } s.Append("JumpStage: ").AppendLine(JumpAnimationStage.ToString()); foreach (var v in Abilities) { if (this is NPC) { s.Append(v.AIPriority(this, Game.Instance.Map.MainCharacter.Translation, Game.Instance.Map.MainCharacter)).Append("|"); } s.Append("Ability ").Append(v.GetType().Name); if (v.IsPerforming) { s.Append(" PERFORMING "); } if (v.CurrentCooldown > 0) { s.Append(v.CurrentCooldown); } s.AppendLine(); } foreach (var v in ActiveBuffs) { s.Append("Buff ").Append(v.GetType().Name); if (v.IsPerforming) { s.Append(" PERFORMING"); } s.AppendLine(); } }