When the Dragon dies, the dragonactorscript attached to the dragon sends a call to the MQKillDragonScript (attached to the Quest MQKillDragon) to begin the DeathSequence function, which instigates a series of timed visuals and sound effects that ends with the dragon soul being absorbed. It also sends a call to the WIFunctionsScript (attached to Quest WI) to execute the function that tells the game the player is currently absorbing a dragon soul, which acts to conditionalize the dialogue in the Qeust WIDragonKilled. Once the spectacle is over, another call is put out to the WIFunctionsScript to let the world know the scene is over and stop the dialogue from playing. So the sequence is:
Dragon dies -> dragonactorscript fires OnDeath -> MQKillDragonScript fires DeathSequence (timed effects) -> WIFunctionsScript fires PlayerIsCurrentlyAbsorbingPower (dragon death dialogue is made available) -> Dragon Souls is incremented -> WIFunctionsScript fires PlayerIsDoneAbsorbingPower (dragon death dialogue is disabled).