/*! * Dialogs Manager v4.9.3 * https://github.com/kobizz/dialogs-manager * * Copyright Kobi Zaltzberg * Released under the MIT license * https://github.com/kobizz/dialogs-manager/blob/master/LICENSE.txt */ (function($, global) { 'use strict'; /* * Dialog Manager */ var DialogsManager = { widgetsTypes: {}, createWidgetType: function(typeName, properties, Parent) { if (!Parent) { Parent = this.Widget; } var WidgetType = function() { Parent.apply(this, arguments); }; var prototype = WidgetType.prototype = new Parent(typeName); prototype.types = prototype.types.concat([typeName]); $.extend(prototype, properties); prototype.constructor = WidgetType; WidgetType.extend = function(typeName, properties) { return DialogsManager.createWidgetType(typeName, properties, WidgetType); }; return WidgetType; }, addWidgetType: function(typeName, properties, Parent) { if (properties && properties.prototype instanceof this.Widget) { return this.widgetsTypes[typeName] = properties; } return this.widgetsTypes[typeName] = this.createWidgetType(typeName, properties, Parent); }, getWidgetType: function(widgetType) { return this.widgetsTypes[widgetType]; } }; /* * Dialog Manager instances constructor */ DialogsManager.Instance = function() { var self = this, elements = {}, settings = {}; var initElements = function() { elements.body = $('body'); }; var initSettings = function(options) { var defaultSettings = { classPrefix: 'dialog', effects: { show: 'fadeIn', hide: 'fadeOut' } }; $.extend(settings, defaultSettings, options); }; this.createWidget = function(widgetType, properties) { var WidgetTypeConstructor = DialogsManager.getWidgetType(widgetType), widget = new WidgetTypeConstructor(widgetType); properties = properties || {}; widget.init(self, properties); return widget; }; this.getSettings = function(property) { if (property) { return settings[property]; } return Object.create(settings); }; this.init = function(settings) { initSettings(settings); initElements(); return self; }; self.init(); }; /* * Widget types constructor */ DialogsManager.Widget = function(widgetName) { var self = this, settings = {}, events = {}, elements = {}, hideTimeOut = 0, baseClosureMethods = ['refreshPosition']; var bindEvents = function() { var windows = [elements.window]; if (elements.iframe) { windows.push(jQuery(elements.iframe[0].contentWindow)); } windows.forEach(function(window) { if (settings.hide.onEscKeyPress) { window.on('keyup', onWindowKeyUp); } if (settings.hide.onOutsideClick) { window[0].addEventListener('click', hideOnOutsideClick, true); } if (settings.hide.onOutsideContextMenu) { window[0].addEventListener('contextmenu', hideOnOutsideClick, true); } if (settings.position.autoRefresh) { window.on('resize', self.refreshPosition); } }); if (settings.hide.onClick || settings.hide.onBackgroundClick) { elements.widget.on('click', hideOnClick); } }; var callEffect = function(intent, params) { var effect = settings.effects[intent], $widget = elements.widget; if ('function' === typeof effect) { effect.apply($widget, params); } else { if ($widget[effect]) { $widget[effect].apply($widget, params); } else { throw 'Reference Error: The effect ' + effect + ' not found'; } } }; var ensureClosureMethods = function() { var closureMethodsNames = baseClosureMethods.concat(self.getClosureMethods()); $.each(closureMethodsNames, function() { var methodName = this, oldMethod = self[methodName]; self[methodName] = function() { oldMethod.apply(self, arguments); }; }); }; var fixIframePosition = function(position) { if (! position.my) { return; } var horizontalOffsetRegex = /left|right/, extraOffsetRegex = /([+-]\d+)?$/, iframeOffset = elements.iframe.offset(), iframeWindow = elements.iframe[0].contentWindow, myParts = position.my.split(' '), fixedParts = []; if (myParts.length === 1) { if (horizontalOffsetRegex.test(myParts[0])) { myParts.push('center'); } else { myParts.unshift('center'); } } myParts.forEach(function(part, index) { var fixedPart = part.replace(extraOffsetRegex, function(partOffset) { partOffset = +partOffset || 0; if (! index) { partOffset += iframeOffset.left - iframeWindow.scrollX; } else { partOffset += iframeOffset.top - iframeWindow.scrollY; } if (partOffset >= 0) { partOffset = '+' + partOffset; } return partOffset; }); fixedParts.push(fixedPart); }); position.my = fixedParts.join(' '); }; var hideOnClick = function(event) { if (isContextMenuClickEvent(event)) { return; } if (settings.hide.onClick) { if ($(event.target).closest(settings.selectors.preventClose).length) { return; } } else if (event.target !== this) { return; } self.hide(); }; var isIgnoredTarget = function(event) { if (! settings.hide.ignore) { return false; } return !! $(event.target).closest(settings.hide.ignore).length; }; var hideOnOutsideClick = function(event) { if (isContextMenuClickEvent(event) || $(event.target).closest(elements.widget).length || isIgnoredTarget(event)) { return; } self.hide(); }; var initElements = function() { self.addElement('widget'); self.addElement('header'); self.addElement('message'); self.addElement('window', window); self.addElement('body', document.body); self.addElement('container', settings.container); if (settings.iframe) { self.addElement('iframe', settings.iframe); } if (settings.closeButton) { if ( settings.closeButtonClass ) { // Backwards compatibility settings.closeButtonOptions.iconClass = settings.closeButtonClass; } const $button = $('', settings.closeButtonOptions.attributes), $buttonIcon = $(settings.closeButtonOptions.iconElement).addClass(settings.closeButtonOptions.iconClass); $button.append($buttonIcon); self.addElement('closeButton', $button); } var id = self.getSettings('id'); if (id) { self.setID(id); } var classes = []; $.each(self.types, function() { classes.push(settings.classes.globalPrefix + '-type-' + this); }); classes.push(self.getSettings('className')); elements.widget .addClass(classes.join(' ')) .attr({ 'aria-modal': true, 'role': 'document', 'tabindex': 0, }); }; var initSettings = function(parent, userSettings) { var parentSettings = $.extend(true, {}, parent.getSettings()); settings = { headerMessage: '', message: '', effects: parentSettings.effects, classes: { globalPrefix: parentSettings.classPrefix, prefix: parentSettings.classPrefix + '-' + widgetName, preventScroll: parentSettings.classPrefix + '-prevent-scroll', }, selectors: { preventClose: '.' + parentSettings.classPrefix + '-prevent-close', }, container: 'body', preventScroll: false, iframe: null, closeButton: false, closeButtonOptions: { iconClass: parentSettings.classPrefix + '-close-button-icon', attributes: { role: 'button', 'tabindex': 0, 'aria-label': 'Close', href: '#', }, iconElement: '', }, position: { element: 'widget', my: 'center', at: 'center', enable: true, autoRefresh: false, }, hide: { auto: false, autoDelay: 5000, onClick: false, onOutsideClick: true, onOutsideContextMenu: false, onBackgroundClick: true, onEscKeyPress: true, ignore: '', }, }; $.extend(true, settings, self.getDefaultSettings(), userSettings); initSettingsEvents(); }; var initSettingsEvents = function() { $.each(settings, function(settingKey) { var eventName = settingKey.match(/^on([A-Z].*)/); if (!eventName) { return; } eventName = eventName[1].charAt(0).toLowerCase() + eventName[1].slice(1); self.on(eventName, this); }); }; var isContextMenuClickEvent = function(event) { // Firefox fires `click` event on every `contextmenu` event. return event.type === 'click' && event.button === 2; }; var normalizeClassName = function(name) { return name.replace(/([a-z])([A-Z])/g, function() { return arguments[1] + '-' + arguments[2].toLowerCase(); }); }; var onWindowKeyUp = function(event) { var ESC_KEY = 27, keyCode = event.which; if (ESC_KEY === keyCode) { self.hide(); } }; var unbindEvents = function() { var windows = [elements.window]; if (elements.iframe) { windows.push(jQuery(elements.iframe[0].contentWindow)); } windows.forEach(function(window) { if (settings.hide.onEscKeyPress) { window.off('keyup', onWindowKeyUp); } if (settings.hide.onOutsideClick) { window[0].removeEventListener('click', hideOnOutsideClick, true); } if (settings.hide.onOutsideContextMenu) { window[0].removeEventListener('contextmenu', hideOnOutsideClick, true); } if (settings.position.autoRefresh) { window.off('resize', self.refreshPosition); } }); if (settings.hide.onClick || settings.hide.onBackgroundClick) { elements.widget.off('click', hideOnClick); } }; this.addElement = function(name, element, classes) { var $newElement = elements[name] = $(element || '
'), normalizedName = normalizeClassName(name); classes = classes ? classes + ' ' : ''; classes += settings.classes.globalPrefix + '-' + normalizedName; classes += ' ' + settings.classes.prefix + '-' + normalizedName; $newElement.addClass(classes); return $newElement; }; this.destroy = function() { unbindEvents(); elements.widget.remove(); self.trigger('destroy'); return self; }; this.getElements = function(item) { return item ? elements[item] : elements; }; this.getSettings = function(setting) { var copy = Object.create(settings); if (setting) { return copy[setting]; } return copy; }; this.hide = function() { if (! self.isVisible()) { return; } clearTimeout(hideTimeOut); callEffect('hide', arguments); unbindEvents(); if (settings.preventScroll) { self.getElements('body').removeClass(settings.classes.preventScroll); } self.trigger('hide'); return self; }; this.init = function(parent, properties) { if (!(parent instanceof DialogsManager.Instance)) { throw 'The ' + self.widgetName + ' must to be initialized from an instance of DialogsManager.Instance'; } ensureClosureMethods(); self.trigger('init', properties); initSettings(parent, properties); initElements(); self.buildWidget(); self.attachEvents(); self.trigger('ready'); return self; }; this.isVisible = function() { return elements.widget.is(':visible'); }; this.on = function(eventName, callback) { if ('object' === typeof eventName) { $.each(eventName, function(singleEventName) { self.on(singleEventName, this); }); return self; } var eventNames = eventName.split(' '); eventNames.forEach(function(singleEventName) { if (!events[singleEventName]) { events[singleEventName] = []; } events[singleEventName].push(callback); }); return self; }; this.off = function(eventName, callback) { if (! events[ eventName ]) { return self; } if (! callback) { delete events[eventName]; return self; } var callbackIndex = events[eventName].indexOf(callback); if (-1 !== callbackIndex) { events[eventName].splice(callbackIndex, 1); } return self; }; this.refreshPosition = function() { if (! settings.position.enable) { return; } var position = $.extend({}, settings.position); if (elements[position.of]) { position.of = elements[position.of]; } if (! position.of) { position.of = window; } if (settings.iframe) { fixIframePosition(position); } elements[position.element].position(position); }; this.setID = function(id) { elements.widget.attr('id', id); return self; }; this.setHeaderMessage = function(message) { self.getElements('header').html(message); return self; }; this.setMessage = function(message) { elements.message.html(message); return self; }; this.setSettings = function(key, value) { if (jQuery.isPlainObject(value)) { $.extend(true, settings[key], value); } else { settings[key] = value; } return self; }; this.show = function() { clearTimeout(hideTimeOut); elements.widget.appendTo(elements.container).hide(); callEffect('show', arguments); self.refreshPosition(); if (settings.hide.auto) { hideTimeOut = setTimeout(self.hide, settings.hide.autoDelay); } bindEvents(); if (settings.preventScroll) { self.getElements('body').addClass(settings.classes.preventScroll); } self.trigger('show'); return self; }; this.trigger = function(eventName, params) { var methodName = 'on' + eventName[0].toUpperCase() + eventName.slice(1); if (self[methodName]) { self[methodName](params); } var callbacks = events[eventName]; if (!callbacks) { return; } $.each(callbacks, function(index, callback) { callback.call(self, params); }); return self; }; }; DialogsManager.Widget.prototype.types = []; // Inheritable widget methods DialogsManager.Widget.prototype.buildWidget = function() { var elements = this.getElements(), settings = this.getSettings(); elements.widget.append(elements.header, elements.message); this.setHeaderMessage(settings.headerMessage); this.setMessage(settings.message); if (this.getSettings('closeButton')) { elements.widget.prepend(elements.closeButton); } }; DialogsManager.Widget.prototype.attachEvents = function() { var self = this; if (self.getSettings('closeButton')) { self.getElements('closeButton').on('click', function(event) { event.preventDefault(); self.hide(); }); } }; DialogsManager.Widget.prototype.getDefaultSettings = function() { return {}; }; DialogsManager.Widget.prototype.getClosureMethods = function() { return []; }; DialogsManager.Widget.prototype.onHide = function() { }; DialogsManager.Widget.prototype.onShow = function() { }; DialogsManager.Widget.prototype.onInit = function() { }; DialogsManager.Widget.prototype.onReady = function() { }; DialogsManager.widgetsTypes.simple = DialogsManager.Widget; DialogsManager.addWidgetType('buttons', { activeKeyUp: function(event) { var TAB_KEY = 9; if (event.which === TAB_KEY) { event.preventDefault(); } if (this.hotKeys[event.which]) { this.hotKeys[event.which](this); } }, activeKeyDown: function(event) { if (!this.focusedButton) { return; } var TAB_KEY = 9; if (event.which === TAB_KEY) { event.preventDefault(); var currentButtonIndex = this.focusedButton.index(), nextButtonIndex; if (event.shiftKey) { nextButtonIndex = currentButtonIndex - 1; if (nextButtonIndex < 0) { nextButtonIndex = this.buttons.length - 1; } } else { nextButtonIndex = currentButtonIndex + 1; if (nextButtonIndex >= this.buttons.length) { nextButtonIndex = 0; } } this.focusedButton = this.buttons[nextButtonIndex].trigger('focus'); } }, addButton: function(options) { var self = this, settings = self.getSettings(), buttonSettings = jQuery.extend(settings.button, options); var classes = options.classes ? options.classes + ' ' : ''; classes += settings.classes.globalPrefix + '-button'; var $button = self.addElement(options.name, $('<' + buttonSettings.tag + '>').html(options.text), classes); self.buttons.push($button); var buttonFn = function() { if (settings.hide.onButtonClick) { self.hide(); } if ('function' === typeof options.callback) { options.callback.call(this, self); } }; $button.on('click', buttonFn); if (options.hotKey) { this.hotKeys[options.hotKey] = buttonFn; } this.getElements('buttonsWrapper').append($button); if (options.focus) { this.focusedButton = $button; } return self; }, bindHotKeys: function() { this.getElements('window').on({ keyup: this.activeKeyUp, keydown: this.activeKeyDown }); }, buildWidget: function() { DialogsManager.Widget.prototype.buildWidget.apply(this, arguments); var $buttonsWrapper = this.addElement('buttonsWrapper'); this.getElements('widget').append($buttonsWrapper); }, getClosureMethods: function() { return [ 'activeKeyUp', 'activeKeyDown' ]; }, getDefaultSettings: function() { return { hide: { onButtonClick: true }, button: { tag: 'button' } }; }, onHide: function() { this.unbindHotKeys(); }, onInit: function() { this.buttons = []; this.hotKeys = {}; this.focusedButton = null; }, onShow: function() { this.bindHotKeys(); if (!this.focusedButton) { this.focusedButton = this.buttons[0]; } if (this.focusedButton) { this.focusedButton.trigger('focus'); } }, unbindHotKeys: function() { this.getElements('window').off({ keyup: this.activeKeyUp, keydown: this.activeKeyDown }); } }); DialogsManager.addWidgetType('lightbox', DialogsManager.getWidgetType('buttons').extend('lightbox', { getDefaultSettings: function() { var settings = DialogsManager.getWidgetType('buttons').prototype.getDefaultSettings.apply(this, arguments); return $.extend(true, settings, { contentWidth: 'auto', contentHeight: 'auto', position: { element: 'widgetContent', of: 'widget', autoRefresh: true } }); }, buildWidget: function() { DialogsManager.getWidgetType('buttons').prototype.buildWidget.apply(this, arguments); var $widgetContent = this.addElement('widgetContent'), elements = this.getElements(); $widgetContent.append(elements.header, elements.message, elements.buttonsWrapper); elements.widget.html($widgetContent); if (elements.closeButton) { $widgetContent.prepend(elements.closeButton); } }, onReady: function() { var elements = this.getElements(), settings = this.getSettings(); if ('auto' !== settings.contentWidth) { elements.message.width(settings.contentWidth); } if ('auto' !== settings.contentHeight) { elements.message.height(settings.contentHeight); } } })); DialogsManager.addWidgetType('confirm', DialogsManager.getWidgetType('lightbox').extend('confirm', { onReady: function() { DialogsManager.getWidgetType('lightbox').prototype.onReady.apply(this, arguments); var strings = this.getSettings('strings'), isDefaultCancel = this.getSettings('defaultOption') === 'cancel'; this.addButton({ name: 'cancel', text: strings.cancel, callback: function(widget) { widget.trigger('cancel'); }, focus: isDefaultCancel }); this.addButton({ name: 'ok', text: strings.confirm, callback: function(widget) { widget.trigger('confirm'); }, focus: !isDefaultCancel }); }, getDefaultSettings: function() { var settings = DialogsManager.getWidgetType('lightbox').prototype.getDefaultSettings.apply(this, arguments); settings.strings = { confirm: 'OK', cancel: 'Cancel' }; settings.defaultOption = 'cancel'; return settings; } })); DialogsManager.addWidgetType('alert', DialogsManager.getWidgetType('lightbox').extend('alert', { onReady: function() { DialogsManager.getWidgetType('lightbox').prototype.onReady.apply(this, arguments); var strings = this.getSettings('strings'); this.addButton({ name: 'ok', text: strings.confirm, callback: function(widget) { widget.trigger('confirm'); } }); }, getDefaultSettings: function() { var settings = DialogsManager.getWidgetType('lightbox').prototype.getDefaultSettings.apply(this, arguments); settings.strings = { confirm: 'OK' }; return settings; } })); // Exporting the DialogsManager variable to global global.DialogsManager = DialogsManager; })( typeof jQuery !== 'undefined' ? jQuery : typeof require === 'function' && require('jquery'), (typeof module !== 'undefined' && typeof module.exports !== 'undefined') ? module.exports : window ); How Old Every House Of The Dragon Character Is

How Old Every House Of The Dragon Character Is

[ad_1]

Warning! SPOILERS for House of the Dragon


Summary

  • Characters’ ages in House of the Dragon can be calculated using source material and show exposition.
  • Some characters’ ages can best be determined by the ages of actors if changes are made from the source material.
  • As the series progresses, time jumps affect the ages of characters.


The House of the Dragon character ages have been difficult to keep track of but can be calculated using exposition from the show and background info from the books. House of the Dragon’s cast of characters is composed primarily of members of the Targaryen, Velaryon, and Hightower families, as well as surrounding members of the court in King’s Landing. Season 1 saw the build-up toward a civil war known as the Dance of the Dragons, which begins in the year 129 AC, establishing a set year for the beginning of season 2.

That said, with the House of the Dragon’s long timeline, it’s important to track the characters’ ages throughout the season’s progress. According to House of the Dragon’s source material Fire & Blood, King Jaehaerys I died in 103 AC, two years after the Great Council. Viserys has been king for nine years at the start of HOTD, meaning it is set at 112 AC. There are three subsequent time jumps, three years between episodes 2 & 3, ten years between episodes 5 & 6, and six more years between episodes 7 & 8. Ages can be figured out accordingly.



How Old Rhaenyra Targaryen Is In House Of The Dragon

Rhaenyra Is 32 At The Start Of The Dance Of The Dragons

Rhaenyra is the leader of the Black faction during the Dance of the Dragons, believed by many to be the rightful heir to the Iron Throne. In Fire & Blood, Rhaenyra’s birth year is stated to be 97 AC, making her four years old by the time of the Great Council of 101. Queen Aemma appeared to be pregnant during the Great Council of 101 scene, but House of the Dragon episode 2 confirmed that Rhaenyra in 112 AC is 15.


That means at the start of season 2 in 129 AC, the first official year of the Dance of the Dragons, Rhaenyra should be roughly 32 years old. Her teen self was played by Milly Alcock, who was 22 at the time of the show’s release. After the time jump, Alcock was replaced by Emma D’Arcy, who is 31 at the time of season 2’s release.

How Old Daemon Targaryen Is In House Of The Dragon

Daemon Is 48 At The Start Of The Dance Of The Dragons

Daemon Targaryen is Viserys’ younger brother and Rhaenyra’s uncle/husband. He’s one of the most powerful House of the Dragon characters due to his and his dragon Caraxes’ battle experience. According to Fire & Blood, Daemon was born in 81 AC, making him 31 in House of the Dragon’s first episode. By 129 AC and at the start of the Dance of the Dragons, Daemon will be 48.


Playing Daemon is 38-year-old Matt Smith, allowing for a perfect medium for him to play both the younger and older versions of himself. House of the Dragon hasn’t made any notable statements about his age. However, not many changes have been made to Daemon’s appearance between 31 and 49, so it’s unclear if the series intended for him to be slightly younger.

How Old Viserys Targaryen Is In House Of The Dragon

Viserys Died In His 50s

Viserys Targaryen was a generally amiable king who tried to avoid causing any tension. When his council urged him to quickly secure a successor for the throne after his queen and son died, Viserys chose his daughter Rhaenyra as his heir, even though Westerosi lords would disapprove of a female successor. Fire & Blood set Viserys’ birth year as 77 AC, making him four years older than his brother, Daemon.


In the case of Viserys, information from Fire & Blood might not be entirely accurate. Paddy Considine was 48 years old during the first season, and the seventeen-year age gap between him and Matt Smith could imply that Viserys is slightly older in the TV series, perhaps 7-8 years older than Daemon. It’s hard to tell due to his sickness, but it can still be implied that at the date of his death in 129 AC, House of the Dragon’s Viserys was somewhere in his 50s.

How Old Corlys Velaryon Is In House Of The Dragon

Corlys Is 76 At The Start Of The Dance Of The Dragons


House of the Dragon’s Velaryon family has been a strong ally to House Targaryen since their days in Old Valyria. Settling on the island Driftmark, which rests just southwest of Dragonstone, the Velaryons are known for their seafaring. Nicknamed the “Sea Snake,” Corlys Velaryon is a famous explorer who lived an entire life before the events of House of the Dragon, building a reputation as one of the world’s renowned travelers.

In Fire & Blood, Corlys Velaryon was born in 53 AC, making him 59 in 112 AC and 76 by the start of the Dance of the Dragons. Corlys’ actor Steve Toussaint is 57, making him slightly younger than his book counterpart. Steve Toussaint looks quite a bit younger than 76, but in this case, the character has too much known history for his age to be condensed. It’s possible that Corlys in House of the Dragon is aged down to be in his late 60s or early 70s, but it’s not clear.

How Old Rhaenys Targaryen Is In House Of The Dragon

Rhaenys Is Around 70 At The Start Of The Dance Of The Dragons


Rhaenys Targaryen was King Jaehaerys’ oldest living heir at the time of the Great Council and, therefore, had a higher claim to the throne. However, Rhaenys lost the throne to Viserys because she was a woman and had half-Baratheon parentage, compared to Viserys’ full-Targaryen blood. For this reason, Rhaenys is considered the “Queen Who Never Was.” Her being older than Viserys can help determine her age, which seems to have been adjusted for the show.

Rhaenys Targaryen was aged up in House of the Dragon to close the significant age gap between her and her husband Corlys. In Fire & Blood, Rhaenys was born in 74 AC, making her 21 years younger than Corlys. In House of the Dragon, the actress playing Rhaenys, Eve Best, was 51 during House of the Dragon’s first season. By the start of the Dance of the Dragons, Rhaenys is estimated to be 5-10 years younger than Corlys, still making her Viserys’ senior.


How Old Alicent Hightower Is In House Of The Dragon

Alicent Is Around 37 At The Start Of The Dance Of The Dragons

Another significant family in House of the Dragon is House Hightower. The Hightowers come from Oldtown, famous in Westeros for being the location of the Citadel, the headquarters for the maesters where they develop their qualifications, and the Starry Sept, which heads the Faith of the Seven. Alicent Hightower is Otto Hightower’s daughter and was Rhaenyra’s best friend in House of the Dragon before she was wed to Viserys, forming a rift between them.


In Fire & Blood, Alicent is nine years older than Rhaenyra. In House of the Dragon, it would appear the age gap is closed a bit more given that Young Alicent was played by 19-year-old Emily Carey, and adult Alicent actress Olivia Cooke was 28 at the time of season 1’s release. This wouldn’t align with her and Viserys’ children if she was younger than Rhaenyra. Alicent must still be about 4-5 years older than Rhaenyra for Aemond and Aegon’s ages to line up.

How Old Otto Hightower Is In House Of The Dragon

Otto Is Around 55 At The Start Of The Dance Of The Dragons

Otto Hightower was the Hand of the King to King Viserys in season 1 and the Hand to Aegon II afterward. In Fire & Blood, Otto Hightower was born in 76 AC, making him 36 in 112 AC at the start of the series. Given the likely increased age of Viserys, it seems possible that Otto has also been aged up slightly. Otto’s actor, Rhys Ifans, is 55 years old, meaning the character could start the series at around 38-40.


With that in mind, Otto Hightower would be around Rhys Ifans’ age at the start of the Dance of the Dragons in year 129. This would make him only a few years older than his book counterpart, which can fit cohesively into the show’s narrative without damaging any continuity. It raises questions about whether Alicent has aged down, as it means she would’ve been conceived when he was 24, which is late for a Westerosi lord.

How Old Criston Cole Is In House Of The Dragon

Criston Cole Is Around 39 At The Start Of The Dance Of The Dragons

Ser Criston Cole is a skilled fighter who rose to become the Lord Commander of the Kingsguard throughout House of the Dragon season 1. He comes from no official house and is a lowborn from Dorne. In Fire & Blood, Criston Cole is 48 at the start of the Dance of the Dragons, but the TV series seems to have aged him down by about ten years.


Criston Cole is played by actor Fabien Frankel, who was 28 at the time of House of the Dragon season 1. Given the character’s relationship with Rhaenyra in the first season, it seems the character’s age was adjusted to be about 20 at the start of the series. This would make Criston Cole roughly 39 at the start of the Dance of the Dragons, placing Frankel almost halfway between the two versions of the character.

How Old Aegon II Targaryen Is In House Of The Dragon

Aegon II Is Around 18 At The Start Of The Dance Of The Dragons


The children’s ages are when things start to get a bit more confusing. Aegon II is the eldest child of Viserys Targaryen and Alicent Hightower. After his father’s death, he inherits the throne in the year 129. In Fire & Blood, Aegon was born in the year 107, which would make him 22 at the start of the Dance of the Dragons. However, Aegon’s age was lowered in the series. The episode “Second of His Name” sees Aegon II’s second nameday, and it’s revealed that the War of the Stepstones (112 AC) has been happening for three years.

This would make Aegon only 16 at the start of the Dance, which doesn’t add up. Presumably, he’s around the age of 18, as a ten-year and six-year time jump followed this episode. The war dates Actor Tom Glynn-Carney is 29 at the start of House of the Dragon season 2, but he still has a youthful look. It’s odd, given that he’s only one year younger than Olivia Cooke who plays his mother, but the way the dynamics are established makes it believable.


How Old Aemond Targaryen Is In House Of The Dragon

Aemond Is Around 16 At The Start Of The Dance Of The Dragons

Aemond Targaryen is Aegon’s younger brother by just a small amount, which can help to determine his age. Aemond Targaryen was born in 110 AC in Fire & Blood, making the book version about 19 at the start of the Dance of the Dragons. If Aegon is around 18, Aemond has to be at least two years younger to make room for Helaena to be the middle child.

The lowest age Aemond could believably be is 16. Given Aemond’s growth spurt and more stern facial features, he could pass as being Aegon’s older brother. Actor Ewan Mitchell is 27 at the start of House of the Dragon season 2, making him notably more mature-looking than his age would imply.


How Old Helaena Targaryen Is In House Of The Dragon

Helaena Is Around 17 At The Start Of The Dance Of The Dragons

Helaena Targaryen is one of the most likable characters in House of the Dragon, as she’s the only person who doesn’t take any interest in scheming or have any desire to kill anyone. She’s the daughter of Viserys and Alicent and is Aegon II’s sister-wife. In Fire & Blood, she’s slightly younger than Aegon and older than Aemond fitting her neatly in between their ages at 17.

Like her sibling actors, actress Phia Saban is 25 years old at the start of House of the Dragon season 2. She’s the easiest of the Green faction Targaryen siblings to pass for her younger age, and it’s plausible for Helaena to have given birth to her three children already at 17.


How Old Jacaerys Velaryon Is In House Of The Dragon

Jacaerys Is Around 15-16 At The Start Of The Dance Of The Dragons

Jacaerys Velaryon is Rhaenyra Targaryen’s eldest son. His legal father is Laenor Velaryon, but it’s well-known that Harwin Strong is the biological parent. In Fire & Blood, Jace is born in the year 114, which would make him 15 at the start of the Dance of the Dragons.

Assuming Jacaerys is around 15-16 at the start of House of the Dragon season 2 seems reasonable, as actor Harry Collett is 20 at the time of the season’s premiere. He’s notably smaller than Aemond who’s only slightly older than him, but it adds up for there to be that much variation in the appearances of teenagers.


How Old Lucerys Velaryon Is In House Of The Dragon

Lucerys Velaryon Died Around The Age Of 14

Elliot Grihault as Lucerys Velaryon in House Of The Dragon's Season 1 Finale

Lucerys Velaryon is the second-born son of Rhaenyra and Laenor (Harwin Strong biologically) and was born in 115 AC in Fire & Blood. Like with his older brother, Jacaerys, Lucerys’ age remains fairly consistent with his book counterpart. The shocking House of the Dragon season 1 ending saw Lucerys murdered by Aemond Targaryen’s dragon, Vhagar. Therefore, Lucerys Velaryon perished presumably at age 14.

Ages Of Other House Of The Dragon Characters


Baela and Rhaena Targaryen: The twin sister daughters of Aemond and Laena Velaryon were both born in 116 AC in Fire & Blood. Given the older ages of their respective actresses, they seem to be slightly older, presumably in their later teen years. They could be estimated to be 16.

Laenor and Laena Velaryon: They are Rhaenys and Corlys’ children. In Fire & Blood, Laenor (Theo Nate, John Macmillan) is Rhaenyra’s first husband, having three questionably legitimate heirs with her – his age isn’t confirmed, but he’s around Rhaenyra’s age. Laenor’s sister Laena (Savannah Steyn, Nanna Blondell) is 12 in 112 AC, breaking canon and making her younger than Rhaenyra.

Mysaria: Nicknamed “Lady Misery,” Mysaria is a Lysene dancer who becomes Daemon’s paramour and unofficial mistress of whisperers. She’s played by the 36-year-old Sonoya Mizuno.

Lyonel Strong: Lord of Harrenhal, Lyonel Strong (Gavin Spokes) is King Viserys’ master of laws and briefly replaces Otto Hightower as Hand of the King. He’s around the same age as King Viserys and Otto Hightower.


Larys Strong: Larys Strong’s age isn’t clear in Fire & Blood, so the character is presumably around the age of actor Matthew Needham, who is 40 at the start of House of the Dragon season 2.

Lyman Beesbury: A relatively minor House of the Dragon supporting character from season 1, Lyman Beesbury (Bill Paterson) served King Jaehaerys and King Viserys as master of coin. He’s in his late-70s/early-80s.

[ad_2]

Source link