mirror of
https://github.com/loot/libloot.git
synced 2026-07-27 14:16:01 -07:00
Some fixes and optimisations.
Loading was getting a bit laggy, now back down to ~0.25s.
This commit is contained in:
@@ -170,20 +170,20 @@ function showMessageDialog(title, text) {
|
||||
|
||||
clone.id = 'modalDialog';
|
||||
|
||||
clone.children[0].className += ' warn';
|
||||
clone.getElementsByTagName('span')[0].className += ' warn';
|
||||
|
||||
clone.children[1].textContent = title;
|
||||
clone.children[2].textContent = text;
|
||||
clone.getElementsByTagName('h1')[0].textContent = title;
|
||||
clone.getElementsByTagName('p')[0].textContent = text;
|
||||
|
||||
var overlay = document.getElementById('overlay');
|
||||
overlay.removeEventListener('click', hideDialog, false);
|
||||
showElement(overlay);
|
||||
|
||||
clone.children[3].children[0].setAttribute('data-dialog', clone.id);
|
||||
clone.children[3].children[0].addEventListener('click', hideDialog, false);
|
||||
clone.getElementsByClassName('accept')[0].setAttribute('data-dialog', clone.id);
|
||||
clone.getElementsByClassName('accept')[0].addEventListener('click', hideDialog, false);
|
||||
|
||||
clone.children[3].children[1].setAttribute('data-dialog', clone.id);
|
||||
clone.children[3].children[1].addEventListener('click', hideDialog, false);
|
||||
clone.getElementsByClassName('cancel')[0].setAttribute('data-dialog', clone.id);
|
||||
clone.getElementsByClassName('cancel')[0].addEventListener('click', hideDialog, false);
|
||||
}
|
||||
function showMessageBox(type, title, text) {
|
||||
|
||||
@@ -238,12 +238,11 @@ function processButtonClick(evt) {
|
||||
} else if (action == 'redate-plugins') {
|
||||
redatePlugins();
|
||||
} else if (action == 'clear-metadata') {
|
||||
clearMetadata(evt.target.parentNode.parentNode.parentNode.parentNode.children[0].textContent);
|
||||
clearMetadata(evt.target.getAttribute('data-target'));
|
||||
} else if (action == 'wipe-userlist') {
|
||||
clearAllMetadata();
|
||||
} else if (action == 'show-editor') {
|
||||
var section = evt.target.parentElement.parentElement.parentElement.parentElement.parentElement;
|
||||
section.classList.toggle('flip');
|
||||
document.getElementById(evt.target.getAttribute('data-target')).classList.toggle('flip');
|
||||
}
|
||||
}
|
||||
function toggleInputRO(evt) {
|
||||
@@ -263,10 +262,10 @@ function addNewGameRow(evt) {
|
||||
inputs[i].removeAttribute('readonly');
|
||||
inputs[i].addEventListener('dblclick', toggleInputRO, false);
|
||||
}
|
||||
clone.querySelector('.name').placeholder = '';
|
||||
showElement(clone.querySelector('.type'));
|
||||
showElement(clone.querySelector('.fa-trash-o'));
|
||||
clone.querySelector('.fa-trash-o').addEventListener('click', removeGameRow, false);
|
||||
clone.getElementsByClassName('name')[0].placeholder = '';
|
||||
showElement(clone.getElementsByClassName('type')[0]);
|
||||
showElement(clone.getElementsByClassName('fa-trash-o')[0]);
|
||||
clone.getElementsByClassName('fa-trash-o')[0].addEventListener('click', removeGameRow, false);
|
||||
evt.currentTarget.parentElement.insertBefore(clone, evt.currentTarget);
|
||||
}
|
||||
function setupEventHandlers() {
|
||||
@@ -292,13 +291,13 @@ function setupEventHandlers() {
|
||||
elements[i].addEventListener('click', processButtonClick, false);
|
||||
}
|
||||
/* Set up handlers for game table. */
|
||||
elements = document.getElementById('gameTable').querySelectorAll('tbody > tr');
|
||||
elements = document.getElementById('gameTable').getElementsByTagName('tbody')[0].getElementsByTagName('tr');
|
||||
for (var i = 0; i < elements.length - 1; ++i) {
|
||||
var inputs = elements[i].getElementsByTagName('input');
|
||||
for (var j = 0; j < inputs.length; ++j) {
|
||||
inputs[j].addEventListener('dblclick', toggleInputRO, false);
|
||||
}
|
||||
elements[i].querySelector('.fa-trash-o').addEventListener('click', removeGameRow, false);
|
||||
elements[i].getElementsByClassName('fa-trash-o')[0].addEventListener('click', removeGameRow, false);
|
||||
}
|
||||
elements[elements.length - 1].addEventListener('dblclick', addNewGameRow, false);
|
||||
}
|
||||
@@ -345,8 +344,8 @@ function processURLParams() {
|
||||
pluginsNav.appendChild(clone);
|
||||
clone = pluginsNav.lastElementChild;
|
||||
|
||||
clone.children[3].textContent = data.plugins[i].name;
|
||||
clone.children[3].href = '#' + data.plugins[i].name.replace(/\s+/g, '');
|
||||
clone.getElementsByTagName('a')[0].textContent = data.plugins[i].name;
|
||||
clone.getElementsByTagName('a')[0].href = '#' + data.plugins[i].name.replace(/\s+/g, '');
|
||||
|
||||
if (data.plugins[i].isDummy) {
|
||||
clone.getElementsByClassName('dummyPlugin')[0].className += ' fa fa-eye-slash';
|
||||
@@ -365,10 +364,10 @@ function processURLParams() {
|
||||
content = document.getElementById('pluginSection').content;
|
||||
clone = document.importNode(content, true);
|
||||
pluginsList.appendChild(clone);
|
||||
var section = pluginsList.lastElementChild;
|
||||
clone = pluginsList.lastElementChild;
|
||||
|
||||
section.setAttribute('data-active', data.plugins[i].isActive);
|
||||
section.id = data.plugins[i].name.replace(/\s+/g, '');
|
||||
clone.setAttribute('data-active', data.plugins[i].isActive);
|
||||
clone.id = data.plugins[i].name.replace(/\s+/g, '');
|
||||
|
||||
if (data.plugins[i].isActive) {
|
||||
++activePluginNo;
|
||||
@@ -378,45 +377,48 @@ function processURLParams() {
|
||||
++dirtyPluginNo;
|
||||
}
|
||||
|
||||
section.getElementsByTagName('h1')[0].textContent = data.plugins[i].name;
|
||||
section.getElementsByTagName('h1')[1].textContent = data.plugins[i].name;
|
||||
clone.getElementsByTagName('h1')[0].textContent = data.plugins[i].name;
|
||||
clone.getElementsByTagName('h1')[1].textContent = data.plugins[i].name;
|
||||
|
||||
section.getElementsByClassName('crc')[0].textContent = 'CRC: ' + data.plugins[i].crc;
|
||||
section.getElementsByClassName('crc')[1].textContent = 'CRC: ' + data.plugins[i].crc;
|
||||
clone.getElementsByClassName('crc')[0].textContent = 'CRC: ' + data.plugins[i].crc;
|
||||
clone.getElementsByClassName('crc')[1].textContent = 'CRC: ' + data.plugins[i].crc;
|
||||
|
||||
if (data.plugins[i].isDummy) {
|
||||
showElement(section.getElementsByClassName('dummyPlugin')[0]);
|
||||
showElement(clone.getElementsByClassName('dummyPlugin')[0]);
|
||||
}
|
||||
|
||||
if (data.plugins[i].loadsBSA) {
|
||||
showElement(section.getElementsByClassName('loadsBSA')[0]);
|
||||
showElement(clone.getElementsByClassName('loadsBSA')[0]);
|
||||
}
|
||||
|
||||
if (data.plugins[i].hasUserEdits) {
|
||||
/* This won't actually be handled anything like this in the real data implementation. */
|
||||
showElement(section.getElementsByClassName('hasUserEdits')[0]);
|
||||
showElement(clone.getElementsByClassName('hasUserEdits')[0]);
|
||||
}
|
||||
|
||||
if (data.plugins[i].version) {
|
||||
section.getElementsByClassName('crc')[0].textContent = data.plugins[i].version;
|
||||
section.getElementsByClassName('crc')[1].textContent = data.plugins[i].version;
|
||||
clone.getElementsByClassName('version')[0].textContent = 'Version: ' + data.plugins[i].version;
|
||||
clone.getElementsByClassName('version')[1].textContent = 'Version: ' + data.plugins[i].version;
|
||||
} else {
|
||||
section.getElementsByClassName('version')[0].className += ' hidden';
|
||||
section.getElementsByClassName('version')[1].className += ' hidden';
|
||||
hideElement(clone.getElementsByClassName('version')[0]);
|
||||
hideElement(clone.getElementsByClassName('version')[1]);
|
||||
}
|
||||
|
||||
if (data.plugins[i].tagsAdd && data.plugins[i].tagsAdd.length != 0) {
|
||||
section.querySelector('.tag.add').textContent = data.plugins[i].tagsAdd.join(', ');
|
||||
clone.getElementsByClassName('tag add')[0].textContent = data.plugins[i].tagsAdd.join(', ');
|
||||
} else {
|
||||
section.querySelector('.tag.add').className += ' hidden';
|
||||
hideElement(clone.getElementsByClassName('tag add')[0]);
|
||||
}
|
||||
|
||||
if (data.plugins[i].tagRemove && data.plugins[i].tagRemove.length != 0) {
|
||||
section.querySelector('.tag.remove').textContent = data.plugins[i].tagsRemove.join(', ');
|
||||
clone.getElementsByClassName('tag remove')[0].textContent = data.plugins[i].tagsRemove.join(', ');
|
||||
} else {
|
||||
section.querySelector('.tag.remove').className += ' hidden';
|
||||
hideElement(clone.getElementsByClassName('tag remove')[0]);
|
||||
}
|
||||
|
||||
clone.getElementsByClassName('editMetadata')[0].setAttribute('data-target', data.plugins[i].name);
|
||||
clone.getElementsByClassName('copyMetadata')[0].setAttribute('data-target', data.plugins[i].name);
|
||||
clone.getElementsByClassName('clearMetadata')[0].setAttribute('data-target', clone.id);
|
||||
|
||||
if (data.plugins[i].messages && data.plugins[i].messages.length != 0) {
|
||||
for (var j = 0; j < data.plugins[i].messages.length; ++j) {
|
||||
@@ -424,7 +426,7 @@ function processURLParams() {
|
||||
messageLi.className = data.plugins[i].messages[j].type;
|
||||
/* innerHTML is open to abuse, but for hyperlinking it's too useful. */
|
||||
messageLi.innerHTML = data.plugins[i].messages[j].content;
|
||||
section.getElementsByTagName('ul')[0].appendChild(messageLi);
|
||||
clone.getElementsByTagName('ul')[0].appendChild(messageLi);
|
||||
|
||||
if (messageLi.className == 'warn') {
|
||||
warnMessageNo++;
|
||||
@@ -434,7 +436,7 @@ function processURLParams() {
|
||||
totalMessageNo++;
|
||||
}
|
||||
} else {
|
||||
section.getElementsByTagName('ul')[0].className += ' hidden';
|
||||
clone.getElementsByTagName('ul')[0].className += ' hidden';
|
||||
}
|
||||
}
|
||||
document.getElementById('filterTotalMessageNo').textContent = totalMessageNo;
|
||||
@@ -454,10 +456,19 @@ function processURLParams() {
|
||||
}
|
||||
}
|
||||
|
||||
/* Fill in game row template's game type options. */
|
||||
var select = document.getElementById('gameRow').content.querySelector('.name');
|
||||
for (var j = 0; j < data.gameTypes.length; ++j) {
|
||||
var option = document.createElement('option');
|
||||
option.value = data.gameTypes[j];
|
||||
option.textContent = data.gameTypes[j];
|
||||
select.appendChild(option);
|
||||
}
|
||||
|
||||
/* Now fill game lists/table. */
|
||||
var gameSelect = document.getElementById('defaultGameSelect');
|
||||
var gameMenu = document.getElementById('gameMenu');
|
||||
var gameTable = document.getElementById('gameTable');
|
||||
var gameTableBody = document.getElementById('gameTable').getElementsByTagName('tbody')[0];
|
||||
for (var i = 0; i < data.games.length; ++i) {
|
||||
var option = document.createElement('option');
|
||||
option.value = data.games[i].folder;
|
||||
@@ -471,32 +482,26 @@ function processURLParams() {
|
||||
gameMenu.appendChild(li);
|
||||
|
||||
var content = document.getElementById('gameRow').content;
|
||||
for (var j = 0; j < data.gameTypes.length; ++j) {
|
||||
var option = document.createElement('option');
|
||||
option.value = data.gameTypes[j];
|
||||
option.textContent = data.gameTypes[j];
|
||||
content.querySelector('.type').appendChild(option);
|
||||
}
|
||||
var clone = document.importNode(content, true);
|
||||
gameTable.appendChild(clone);
|
||||
clone = gameTable.lastElementChild;
|
||||
clone.querySelector('.name').value = data.games[i].name;
|
||||
clone.querySelector('.type').value = data.games[i].type;
|
||||
clone.querySelector('.folder').value = data.games[i].folder;
|
||||
clone.querySelector('.masterFile').value = data.games[i].masterFile;
|
||||
clone.querySelector('.url').value = data.games[i].url;
|
||||
clone.querySelector('.branch').value = data.games[i].branch;
|
||||
clone.querySelector('.path').value = data.games[i].path;
|
||||
clone.querySelector('.registryKey').value = data.games[i].registryKey;
|
||||
gameTableBody.appendChild(clone);
|
||||
clone = gameTableBody.lastElementChild;
|
||||
clone.getElementsByClassName('name')[0].value = data.games[i].name;
|
||||
clone.getElementsByClassName('type')[0].value = data.games[i].type;
|
||||
clone.getElementsByClassName('folder')[0].value = data.games[i].folder;
|
||||
clone.getElementsByClassName('masterFile')[0].value = data.games[i].masterFile;
|
||||
clone.getElementsByClassName('url')[0].value = data.games[i].url;
|
||||
clone.getElementsByClassName('branch')[0].value = data.games[i].branch;
|
||||
clone.getElementsByClassName('path')[0].value = data.games[i].path;
|
||||
clone.getElementsByClassName('registryKey')[0].value = data.games[i].registryKey;
|
||||
}
|
||||
/* Add row for creating new rows. */
|
||||
var content = document.getElementById('gameRow').content;
|
||||
var clone = document.importNode(content, true);
|
||||
gameTable.appendChild(clone);
|
||||
clone = gameTable.lastElementChild;
|
||||
clone.querySelector('.name').placeholder = 'Add new row...';
|
||||
hideElement(clone.querySelector('.type'));
|
||||
hideElement(clone.querySelector('.fa-trash-o'));
|
||||
gameTableBody.appendChild(clone);
|
||||
clone = gameTableBody.lastElementChild;
|
||||
clone.getElementsByClassName('name')[0].placeholder = 'Add new row...';
|
||||
hideElement(clone.getElementsByClassName('type')[0]);
|
||||
hideElement(clone.getElementsByClassName('fa-trash-o')[0]);
|
||||
|
||||
/* Now fill in language options. */
|
||||
var langSelect = document.getElementById('languageSelect');
|
||||
|
||||
@@ -66,13 +66,13 @@
|
||||
</template>
|
||||
<template id="pluginNav">
|
||||
<li>
|
||||
<span class="dummyPlugin " title="Dummy Plugin"></span>
|
||||
<span class="dummyPlugin" title="Dummy Plugin"></span>
|
||||
<span class="loadsBSA" title="Loads BSA"></span>
|
||||
<span class="hasUserEdits" title="Has User Metadata"></span>
|
||||
<a href=""></a>
|
||||
</template>
|
||||
<template id="pluginSection">
|
||||
<section>
|
||||
<section id="" data-active="">
|
||||
<div class="front">
|
||||
<h1></h1>
|
||||
<div class="crc"></div>
|
||||
@@ -86,12 +86,12 @@
|
||||
<li class="dummyPlugin fa fa-eye-slash hidden" title="Dummy Plugin">
|
||||
<li class="loadsBSA fa fa-paperclip hidden" title="Loads BSA">
|
||||
<li class="hasUserEdits fa fa-user hidden" title="Has User Metadata">
|
||||
<li class=" fa fa-ellipsis-v fa-lg pluginMenu" data-action="show-menu">
|
||||
<li class="fa fa-ellipsis-v fa-lg pluginMenu" data-action="show-menu">
|
||||
<li class="hidden">
|
||||
<ol class="menu">
|
||||
<li data-action="show-editor"><span class="fa fa-pencil fa-fw"></span> Edit Metadata
|
||||
<li data-action="copy-metadata"><span class="fa fa-copy fa-fw"></span> Copy Metadata As Text
|
||||
<li data-action="clear-metadata"><span class="fa fa-trash-o fa-fw"></span> Clear User Metadata
|
||||
<li class="editMetadata" data-action="show-editor" data-target=""><span class="fa fa-pencil fa-fw"></span> Edit Metadata
|
||||
<li class="copyMetadata" data-action="copy-metadata" data-target=""><span class="fa fa-copy fa-fw"></span> Copy Metadata As Text
|
||||
<li class="clearMetadata" data-action="clear-metadata" data-target=""><span class="fa fa-trash-o fa-fw"></span> Clear User Metadata
|
||||
</ol>
|
||||
</ol>
|
||||
</div>
|
||||
@@ -99,12 +99,12 @@
|
||||
<h1></h1>
|
||||
<div class="crc"></div>
|
||||
<div class="version"></div>
|
||||
<input type="checkbox" id="editorEnableEdits">
|
||||
<input type="checkbox" class="editorEnableEdits">
|
||||
<label for="editorEnableEdits">Enable Edits</label>
|
||||
<label for="editorPriorityValue">Priority</label>
|
||||
<input type="number" max="999999" min="-999999" step="1">
|
||||
<label for="editorGlobalPriority">Compare priority against all other plugins</label>
|
||||
<input type="checkbox" id="editorGlobalPriority">
|
||||
<input type="checkbox" class="editorGlobalPriority">
|
||||
<div class="tableTabs">
|
||||
<span class="selected" data-for="loadAfterTable">Load After</span><span data-for="reqTable">Requirements</span><span data-for="incTable">Incompatibilities</span><span data-for="messageTable">Messages</span><span data-for="tagsTable">Bash Tags</span><span data-for="dirtyTable">Dirty Info</span>
|
||||
<table class="loadAfterTable">
|
||||
@@ -145,9 +145,9 @@
|
||||
</table>
|
||||
</div>
|
||||
<label for="editorShowOnlyConflicts">Show Only Conflicts</label>
|
||||
<input type="checkbox" id="editorShowOnlyConflicts">
|
||||
<input type="checkbox" class="editorShowOnlyConflicts">
|
||||
<label for="editorSimpleView">Simple View</label>
|
||||
<input type="checkbox" id="editorSimpleView">
|
||||
<input type="checkbox" class="editorSimpleView">
|
||||
<button>Apply</button>
|
||||
<button>Cancel</button>
|
||||
</div>
|
||||
@@ -155,11 +155,12 @@
|
||||
</template>
|
||||
<template id="messageDialog">
|
||||
<div class="message dialog">
|
||||
<span class="fa fa-exclamation-circle"></span><h1></h1>
|
||||
<span class="fa fa-exclamation-circle"></span>
|
||||
<h1></h1>
|
||||
<p></p>
|
||||
<div class="buttons">
|
||||
<button>Yes</button>
|
||||
<button>Cancel</button>
|
||||
<button class="accept">Yes</button>
|
||||
<button class="cancel">Cancel</button>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
@@ -291,10 +292,10 @@ along with LOOT. If not, see <http://www.gnu.org/licenses/>.
|
||||
<option value="3">High</option>
|
||||
</select><br>
|
||||
<!-- Need to add an editable multi-column game list here. -->
|
||||
<table>
|
||||
<table id="gameTable">
|
||||
<thead>
|
||||
<tr><th>Name<th>Base Game<th>LOOT Folder<th>Master File<th>Masterlist Repository URL<th>Masterlist Repository Branch<th>Install Path<th>Install Path Registry Key<th>
|
||||
<tbody id="gameTable">
|
||||
<tbody>
|
||||
<!-- Game rows go here. -->
|
||||
</table>
|
||||
<p>Language and game changes will be applied after LOOT is restarted.
|
||||
|
||||
@@ -25,7 +25,7 @@ var data = {
|
||||
"loadsBSA": true,
|
||||
"isActive": false,
|
||||
"crc": "29D2C7DF",
|
||||
"version": "Version: 2.0.0a",
|
||||
"version": "2.0.0a",
|
||||
"tagsAdd": ["Delev",
|
||||
"Relev"]
|
||||
},
|
||||
@@ -33,7 +33,7 @@ var data = {
|
||||
"name": "Unofficial Dawnguard Patch.esp",
|
||||
"isActive": false,
|
||||
"crc": "FF134167",
|
||||
"version": "Version: 2.0.0b",
|
||||
"version": "2.0.0b",
|
||||
"tagsAdd": ["Delev",
|
||||
"Relev"], "messages": [{"type": "warn",
|
||||
"content": "Warning: This plugin requires \"Dawnguard.esm\" to be installed, but it is missing."}]
|
||||
@@ -42,7 +42,7 @@ var data = {
|
||||
"name": "Unofficial Hearthfire Patch.esp",
|
||||
"isActive": false,
|
||||
"crc": "F913F25E",
|
||||
"version": "Version: 2.0.0",
|
||||
"version": "2.0.0",
|
||||
"messages": [{"type": "warn",
|
||||
"content": "Warning: This plugin requires \"HearthFires.esm\" to be installed, but it is missing."}]
|
||||
},
|
||||
@@ -59,7 +59,7 @@ var data = {
|
||||
"loadsBSA": true,
|
||||
"isActive": true,
|
||||
"crc": "DA46F3C8",
|
||||
"version": "Version: 2.0.0",
|
||||
"version": "2.0.0",
|
||||
"tagsAdd": ["Delev"]
|
||||
},
|
||||
{
|
||||
@@ -67,7 +67,7 @@ var data = {
|
||||
"loadsBSA": true,
|
||||
"isActive": false,
|
||||
"crc": "6629BE21",
|
||||
"version": "Version: 1.10",
|
||||
"version": "1.10",
|
||||
"messages": [{"type": "warn",
|
||||
"content": "Warning: This plugin is incompatible with \"Dragonborn.esm\", but both are present."}]
|
||||
},
|
||||
@@ -75,7 +75,7 @@ var data = {
|
||||
"name": "EnchantingAwakened.esp",
|
||||
"isActive": false,
|
||||
"crc": "4E2FE0C1",
|
||||
"version": "Version: 1.60"
|
||||
"version": "1.60"
|
||||
},
|
||||
{
|
||||
"name": "SPIKE.esm",
|
||||
@@ -97,7 +97,7 @@ var data = {
|
||||
"name": "Cutting Room Floor.esp",
|
||||
"isActive": false,
|
||||
"crc": "1BA027FF",
|
||||
"version": "Version: 1.0.2",
|
||||
"version": "1.0.2",
|
||||
"messages": [{"type": "warn",
|
||||
"content": "Warning: This plugin requires \"Unofficial Skyrim Patch.esp\" to be active, but it is inactive."}]
|
||||
},
|
||||
@@ -105,13 +105,13 @@ var data = {
|
||||
"name": "Run For Your Lives.esp",
|
||||
"isActive": false,
|
||||
"crc": "1931B1F5",
|
||||
"version": "Version: 1.2.3"
|
||||
"version": "1.2.3"
|
||||
},
|
||||
{
|
||||
"name": "WATER DB.esp",
|
||||
"isActive": false,
|
||||
"crc": "1765B1A6",
|
||||
"version": "Version: 1.87"
|
||||
"version": "1.87"
|
||||
},
|
||||
{
|
||||
"name": "MorePP.esp",
|
||||
@@ -157,7 +157,7 @@ var data = {
|
||||
"name": "BFSEffects.esp",
|
||||
"isActive": false,
|
||||
"crc": "543D56D4",
|
||||
"version": "Version: 3.6",
|
||||
"version": "3.6",
|
||||
"messages": [{"type": "warn",
|
||||
"content": "Warning: This plugin requires \"Dawnguard.esm\" to be installed, but it is missing."}]
|
||||
},
|
||||
@@ -172,7 +172,7 @@ var data = {
|
||||
"name": "AMatterOftime.esp",
|
||||
"isActive": false,
|
||||
"crc": "75025A7E",
|
||||
"version": "Version: 1.00"
|
||||
"version": "1.00"
|
||||
},
|
||||
{
|
||||
"name": "STEP-part5.esp",
|
||||
@@ -287,7 +287,7 @@ var data = {
|
||||
"name": "fFastTravelSpeedMult_4.esp",
|
||||
"isActive": false,
|
||||
"crc": "CC1A0B4E",
|
||||
"version": "Version: 1.0"
|
||||
"version": "1.0"
|
||||
},
|
||||
{
|
||||
"name": "BarenziahQuestMarkers_Droppable.esp",
|
||||
@@ -345,7 +345,7 @@ var data = {
|
||||
"name": "Lightweight Potions and Poisons.esp",
|
||||
"isActive": false,
|
||||
"crc": "276314FF",
|
||||
"version": "Version: 0.1."
|
||||
"version": "0.1."
|
||||
},
|
||||
{
|
||||
"name": "No Empty Tag on Containers.esp",
|
||||
@@ -399,13 +399,13 @@ var data = {
|
||||
"name": "Ars Metallica.esp",
|
||||
"isActive": false,
|
||||
"crc": "8D03ECC0",
|
||||
"version": "Version: 1.2.1"
|
||||
"version": "1.2.1"
|
||||
},
|
||||
{
|
||||
"name": "Ars Metallica - Dawnguard.esp",
|
||||
"isActive": false,
|
||||
"crc": "FE8960A3",
|
||||
"version": "Version: 1.2.1",
|
||||
"version": "1.2.1",
|
||||
"messages": [{"type": "warn",
|
||||
"content": "Warning: This plugin requires \"Dawnguard.esm\" to be installed, but it is missing."
|
||||
},
|
||||
@@ -417,7 +417,7 @@ var data = {
|
||||
"name": "Ars Metallica - Hearthfire.esp",
|
||||
"isActive": false,
|
||||
"crc": "18A5C66B",
|
||||
"version": "Version: 1.2.1",
|
||||
"version": "1.2.1",
|
||||
"messages": [{"type": "warn",
|
||||
"content": "Warning: This plugin requires \"HearthFires.esm\" to be installed, but it is missing."
|
||||
},
|
||||
@@ -465,14 +465,14 @@ var data = {
|
||||
"name": "Reduced Distance NPC Greetings.esp",
|
||||
"isActive": false,
|
||||
"crc": "24658104",
|
||||
"version": "Version: 50"
|
||||
"version": "50"
|
||||
},
|
||||
{
|
||||
"name": "SkyUI.esp",
|
||||
"loadsBSA": true,
|
||||
"isActive": true,
|
||||
"crc": "9330CAF7",
|
||||
"version": "Version: 4.1"
|
||||
"version": "4.1"
|
||||
},
|
||||
{
|
||||
"name": "AnimeticaKobato.esp",
|
||||
@@ -490,7 +490,7 @@ var data = {
|
||||
"name": "SoS - The Wilds.esp",
|
||||
"isActive": false,
|
||||
"crc": "49F5E301",
|
||||
"version": "Version: 1.13",
|
||||
"version": "1.13",
|
||||
"messages": [{"type": "say",
|
||||
"content": "Note: Do not use the Crash Fix ESP for this mod. It is flagged as a master and is only meant as a last resort for fixing crashes."}]
|
||||
},
|
||||
@@ -517,7 +517,7 @@ var data = {
|
||||
"name": "Bring Out Your Dead.esp",
|
||||
"isActive": false,
|
||||
"crc": "3ABC3315",
|
||||
"version": "Version: 1.2.2",
|
||||
"version": "1.2.2",
|
||||
"messages": [{"type": "warn",
|
||||
"content": "Warning: This plugin requires \"Unofficial Skyrim Patch.esp\" to be active, but it is inactive."}]
|
||||
},
|
||||
@@ -554,7 +554,7 @@ var data = {
|
||||
"name": "SoS - The Dungeons.esp",
|
||||
"isActive": false,
|
||||
"crc": "79377267",
|
||||
"version": "Version: 1.23",
|
||||
"version": "1.23",
|
||||
"messages": [{"type": "say",
|
||||
"content": "Note: Do not use the Crash Fix ESP for this mod. It is flagged as a master and is only meant as a last resort for fixing crashes."}]
|
||||
},
|
||||
@@ -621,7 +621,7 @@ var data = {
|
||||
"name": "SplashofRain.esp",
|
||||
"isActive": false,
|
||||
"crc": "363772B6",
|
||||
"version": "Version: 1.04"
|
||||
"version": "1.04"
|
||||
},
|
||||
{
|
||||
"name": "Unique Grasses.esp",
|
||||
@@ -632,13 +632,13 @@ var data = {
|
||||
"name": "SPTDiverseMuscleTones.esp",
|
||||
"isActive": false,
|
||||
"crc": "2D5C68FE",
|
||||
"version": "Version: 5.1"
|
||||
"version": "5.1"
|
||||
},
|
||||
{
|
||||
"name": "SPTDiverseMuscleTonesViljaPatch.esp",
|
||||
"isActive": false,
|
||||
"crc": "117758E3",
|
||||
"version": "Version: 5.0",
|
||||
"version": "5.0",
|
||||
"messages": [{"type": "warn",
|
||||
"content": "Warning: This plugin requires \"EMCompViljaSkyrim.esp\" to be active, but it is inactive."
|
||||
},
|
||||
@@ -650,7 +650,7 @@ var data = {
|
||||
"name": "SPTDiverseMuscleTonesDawnguardDragonborn.esp",
|
||||
"isActive": false,
|
||||
"crc": "F4927D22",
|
||||
"version": "Version: 5.0",
|
||||
"version": "5.0",
|
||||
"messages": [{"type": "warn",
|
||||
"content": "Warning: This plugin requires \"Dawnguard.esm\" to be installed, but it is missing."
|
||||
},
|
||||
@@ -662,7 +662,7 @@ var data = {
|
||||
"name": "SPTDiverseMuscleTonesNPCs.esp",
|
||||
"isActive": false,
|
||||
"crc": "554F1CAB",
|
||||
"version": "Version: 5.0",
|
||||
"version": "5.0",
|
||||
"messages": [{"type": "warn",
|
||||
"content": "Warning: This plugin requires \"Unofficial Skyrim Patch.esp\" to be active, but it is inactive."
|
||||
},
|
||||
@@ -682,7 +682,7 @@ var data = {
|
||||
"name": "SPTDiverseGuardsSkyrim.esp",
|
||||
"isActive": false,
|
||||
"crc": "682A3893",
|
||||
"version": "Version: 4.6",
|
||||
"version": "4.6",
|
||||
"messages": [{"type": "warn",
|
||||
"content": "Warning: This plugin requires \"SPTDiverseMuscleTones.esp\" to be active, but it is inactive."}]
|
||||
},
|
||||
@@ -690,7 +690,7 @@ var data = {
|
||||
"name": "SPTConsistentOlderPeople.esp",
|
||||
"isActive": false,
|
||||
"crc": "CAF3C1BE",
|
||||
"version": "Version: 1.8",
|
||||
"version": "1.8",
|
||||
"messages": [{"type": "say",
|
||||
"content": "Note: If this is not newer than v1.3, update to the latest version."
|
||||
},
|
||||
@@ -706,7 +706,7 @@ var data = {
|
||||
"name": "EnchantingAwakenedAWEPatch.esp",
|
||||
"isActive": false,
|
||||
"crc": "DDDCC598",
|
||||
"version": "Version: 1.50",
|
||||
"version": "1.50",
|
||||
"messages": [{"type": "warn",
|
||||
"content": "Warning: This plugin requires \"Animated Weapon Enchants.esp\" to be installed, but it is missing."
|
||||
},
|
||||
@@ -733,7 +733,7 @@ var data = {
|
||||
"name": "Ars Metallica - Dragonborn.esp",
|
||||
"isActive": false,
|
||||
"crc": "1091DB21",
|
||||
"version": "Version: 1.2.1",
|
||||
"version": "1.2.1",
|
||||
"messages": [{"type": "warn",
|
||||
"content": "Warning: This plugin requires \"Ars Metallica.esp\" to be active, but it is inactive."}]
|
||||
},
|
||||
@@ -780,13 +780,13 @@ var data = {
|
||||
"name": "Point The Way.esp",
|
||||
"isActive": false,
|
||||
"crc": "F372CBC2",
|
||||
"version": "Version: 1.0.2"
|
||||
"version": "1.0.2"
|
||||
},
|
||||
{
|
||||
"name": "SkyrimImprovedPuddles-DG-HF-DB.esp",
|
||||
"isActive": false,
|
||||
"crc": "D0427B6",
|
||||
"version": "Version: 1.1",
|
||||
"version": "1.1",
|
||||
"messages": [{"type": "say",
|
||||
"content": "Note: Use only one SkyrimImprovedPuddles esp."
|
||||
},
|
||||
@@ -802,7 +802,7 @@ var data = {
|
||||
"name": "The Paarthurnax Dilemma.esp",
|
||||
"isActive": false,
|
||||
"crc": "9E446FBD",
|
||||
"version": "Version: 1.2.5"
|
||||
"version": "1.2.5"
|
||||
},
|
||||
{
|
||||
"name": "TheTownIsSafe.esp",
|
||||
@@ -827,26 +827,26 @@ var data = {
|
||||
"name": "Tamriel Compendium - Skill Books.esp",
|
||||
"isActive": false,
|
||||
"crc": "1F348D90",
|
||||
"version": "Version: 1.1",
|
||||
"version": "1.1",
|
||||
"tagsAdd": ["Relev"]
|
||||
},
|
||||
{
|
||||
"name": "WATER.esp",
|
||||
"isActive": false,
|
||||
"crc": "AFE4A968",
|
||||
"version": "Version: 1.87"
|
||||
"version": "1.87"
|
||||
},
|
||||
{
|
||||
"name": "WetandCold.esp",
|
||||
"isActive": false,
|
||||
"crc": "E034A81F",
|
||||
"version": "Version: 1.321"
|
||||
"version": "1.321"
|
||||
},
|
||||
{
|
||||
"name": "WetandCold - Ashes.esp",
|
||||
"isActive": false,
|
||||
"crc": "8C003085",
|
||||
"version": "Version: 1.06",
|
||||
"version": "1.06",
|
||||
"messages": [{"type": "warn",
|
||||
"content": "Warning: This plugin requires \"WetandCold.esp\" to be active, but it is inactive."}]
|
||||
},
|
||||
@@ -854,7 +854,7 @@ var data = {
|
||||
"name": "When Vampires Attack.esp",
|
||||
"isActive": false,
|
||||
"crc": "4743D674",
|
||||
"version": "Version: 1.1",
|
||||
"version": "1.1",
|
||||
"messages": [{"type": "warn",
|
||||
"content": "Warning: This plugin requires \"Dawnguard.esm\" to be installed, but it is missing."
|
||||
},
|
||||
@@ -876,13 +876,13 @@ var data = {
|
||||
"name": "Oblivion Gates in Cities.esp",
|
||||
"isActive": false,
|
||||
"crc": "E7D68506",
|
||||
"version": "Version: 1.0"
|
||||
"version": "1.0"
|
||||
},
|
||||
{
|
||||
"name": "Gildergreen Regrown.esp",
|
||||
"isActive": false,
|
||||
"crc": "7AFAAD00",
|
||||
"version": "Version: 1.2.5"
|
||||
"version": "1.2.5"
|
||||
},
|
||||
{
|
||||
"name": "TheChoiceIsYours_Dawnguard.esp",
|
||||
@@ -907,7 +907,7 @@ var data = {
|
||||
"name": "Bashed Patch, 0.esp",
|
||||
"isActive": false,
|
||||
"crc": "C2306BE5",
|
||||
"version": "Version: 2013-12-13 13:55:02",
|
||||
"version": "2013-12-13 13:55:02",
|
||||
"messages": [{"type": "warn",
|
||||
"content": "Warning: This plugin requires \"Dawnguard.esm\" to be installed, but it is missing."
|
||||
},
|
||||
|
||||
Reference in New Issue
Block a user