helialprofile.png
Welcome to IOPWiki, Commander. You can contribute to this wiki without an account. Learn how to contribute and join our Discord server.

MediaWiki:Gadget-SkillForm.js

Welcome to IOP Wiki. This website is maintained by the Girls' Frontline community and is free to edit by anyone.
Jump to navigation Jump to search

Note: After saving, you may have to bypass your browser's cache to see the changes.

  • Firefox / Safari: Hold Shift while clicking Reload, or press either Ctrl-F5 or Ctrl-R (⌘-R on a Mac)
  • Google Chrome: Press Ctrl-Shift-R (⌘-Shift-R on a Mac)
  • Internet Explorer: Hold Ctrl while clicking Refresh, or press Ctrl-F5
  • Opera: Go to Menu → Settings (Opera → Preferences on a Mac) and then to Privacy & security → Clear browsing data → Cached images and files.
// Please refer to MediaWiki:SkillData.js to add skill data for new T-Doll pages.
$(document).ready(function() {
	$.getScript("http://gfwiki.com/index.php?title=" + mw.config.get("wgPageName") + "/skilldata&action=raw&ctype=text/javascript", function( data, textStatus, jqxhr ) {
		if (typeof get_skill_data !== 'undefined') {
			build_skill_form();
		} else {
			$.getScript( "http://gfwiki.com/index.php?title=MediaWiki:SkillData.js&action=raw&ctype=text/javascript", function( inner_data, inner_textStatus, inner_jqxhr ) {
				build_skill_form();
			});
		}
	});
});

var SkillData = {};

function build_skill_form() {
    skill_data = get_skill_data();
    if (skill_data) {
        calculator_element = document.getElementById("skill_calculator");
        calculator_element.outerHTML =
            '<div id="skill_calculator" style="position:absolute"><table cellspacing="5"><tr>' +
                '<td rowspan="2" style="background:rgba(128, 128, 128, 0);width:52px;height:52px"></td>' +
                '<td colspan="2" style="background:rgba(255, 255, 255, 0.25);min-width: 300px;">&#8199;</td>' +
            '</tr><tr>' +
                '<td style="width:60px"><select class="skill" id="skill_level" onchange="SkillData.display_data">' +
                    '<option value="0">Lv. 1</option>' +
                    '<option value="1">Lv. 2</option>' +
                    '<option value="2">Lv. 3</option>' +
                    '<option value="3">Lv. 4</option>' +
                    '<option value="4">Lv. 5</option>' +
                    '<option value="5">Lv. 6</option>' +
                    '<option value="6">Lv. 7</option>' +
                    '<option value="7">Lv. 8</option>' +
                    '<option value="8">Lv. 9</option>' +
                    '<option value="9" selected="selected">Lv. 10</option>' +
                '</select></td><td id="cooldown"></td></tr><tr></tr></table><p id="description"></p></div>';
        document.getElementById("skill_level").onchange = display_data;
        data = skill_data[mw.config.get("wgPageName")];
        if (data === null) {
        	data = skill_data;
        }
	    if (data !== null) {
	        index = document.getElementById("skill_level").value;
	        regex = /\(\$\w+\)/g;
	        formatted_text = data.text;
	        vars = data.text.match(regex);
	        for (i = 0; i < vars.length; i++) {
	            var_name = vars[i].substring(2, vars[i].length - 1);
	            formatted_text = formatted_text.replace(
	                vars[i],
	                data[var_name][index]);
	        }
	        if (data.hasOwnProperty('cooldown')) {
	        	cooldownText = '<td id="cooldown" style="color:rgba(255, 182, 0, 1)">' + data.cooldown[index] + 's cooldown';
	        	if (data.hasOwnProperty('initial')) {
	        		cooldownText += ', ' + data.initial + 's initial cooldown';
	        	}
	        	cooldownText += '</td>';
		        document.getElementById("cooldown").outerHTML = cooldownText;
	        } else if (data.hasOwnProperty('activation')) {
		        document.getElementById("cooldown").outerHTML =
		            '<td id="cooldown" style="color:rgba(255, 182, 0, 1)">' + data.activation[index] + '% chance to activate</td>';
	        } else {
	        	document.getElementById("cooldown").outerHTML =
		            '<td id="cooldown" style="color:rgba(255, 182, 0, 1)">Passive</td>';
	        }
	        document.getElementById("description").outerHTML =
	            '<p id="description">' + formatted_text + '</p>';
	    }
    }
}