Ship info

Adds beam target, crew xp and hull mass to ship screen

目前為 2015-09-08 提交的版本,檢視 最新版本

// ==UserScript==
// @name			Ship info
// @description		Adds beam target, crew xp and hull mass to ship screen
// @author			Singularity (c) 2015
// @include			http://planets.nu/home
// @include			http://planets.nu/games/*
// @include			http://*.planets.nu/*
// @include			http://planets.nu/*
// @version			0.3
// @history         0.1 displayed crew xp
// @history         0.2 added ship mass
// @history         0.3 added beam transfer targets (foreign ships/planets)
// @namespace       https://greasyfork.org/en/users/15085-singularity
// ==/UserScript==


function wrapper () { // wrapper for injection

	if (vgap.version < 3) {
		console.log("Ship Info needs Nu version 3 or above");
		return;
	}

	var plugin = {
		draw: function() {

			try {
				//Try adding Ship info to the shipscreen. Briefly throws an exception during time machine use.

				if (vgap.shipScreenOpen) {
					var ship=vgap.shipScreen.ship;

					//Add crew experience
					$('td:contains("Crew:")').text('Crew: ('+ship.experience+' xp)');


					//Add hull mass
					$('td:contains("Damage:")').text('Damage: ('+vgap.shipScreen.hull.mass+' kt)');


					//Add foreign transfer target
					if ($('#TransferInfo').length===0) //add TransferInfo html
						$('#ShipCargo').append("<br><div id='TransferInfo'></div>");


					//Update the TransferInfo
					var xferType=ship.transfertargettype;
					var xferID=ship.transfertargetid;
					var xferInProgress=CheckForXfers(ship);

					var xferText="Beam Transfer: None";

					if (xferType===1 && xferInProgress)  //beaming to foreign planet
						xferText="Beam Transfer to Planet ("+vgap.getPlanet(xferID).name+")";

					if (xferType===2 && xferInProgress) //beaming to foreign ship
						xferText="Beam Transfer to Ship ("+xferID+": "+vgap.getShip(xferID).name+")";

					$('#TransferInfo').text(xferText);

				} //if ShipScreen open
			} //try
			catch(err) {
//				console.log("exception in Ship Info draw()");
			}//catch

		}, //draw

	}; //plugin

	function CheckForXfers(ship) {
		if (ship.transferammo===0 &&
			ship.transfersupplies===0 &&
			ship.transferclans===0 &&
			ship.transferneutronium===0 &&
			ship.transferduranium===0 &&
			ship.transfertritanium===0 &&
			ship.transfermolybdenum===0) return false;

		return true;
	} //CheckForXfers


	// register your plugin with NU
	vgap.registerPlugin(plugin, "ShipInfo");


} //wrapper for injection

var script = document.createElement("script");
script.type = "application/javascript";
script.textContent = "(" + wrapper + ")();";

document.body.appendChild(script);