| Back to Index | Page generated: Oct 27, 2025, 5:37:22 AM | 
 Expansion Compass target mode autoswitch
 Expansion Compass target mode autoswitch| from Expansion Manager's OXP list | from Expansion Manifest | |
|---|---|---|
| Description | Automatically switch your ASC to target mode when in red alert and a target is locked. The ASC gives a better idea of where the target is compared to the HUD indicator. In particular, it tells immediately if the target is ahead or behind. | Automatically switch your ASC to target mode when in red alert and a target is locked. The ASC gives a better idea of where the target is compared to the HUD indicator. In particular, it tells immediately if the target is ahead or behind. | 
| Identifier | oolite.oxp.astrobe.compassautoswitch | oolite.oxp.astrobe.compassautoswitch | 
| Title | Compass target mode autoswitch | Compass target mode autoswitch | 
| Category | Miscellaneous | Miscellaneous | 
| Author | Astrobe | Astrobe | 
| Version | 1.0.0 | 1.0.0 | 
| Tags | ||
| Required Oolite Version | ||
| Maximum Oolite Version | ||
| Required Expansions | ||
| Optional Expansions | ||
| Conflict Expansions | ||
| Information URL | n/a | |
| Download URL | https://wiki.alioth.net/img_auth.php/3/33/Oolite.oxp.Astrobe.compass-target-autoswitch.oxz | http://wiki.alioth.net/img_auth.php/3/33/Oolite.oxp.Astrobe.compass-target-autoswitch.oxz | 
| License | CC-BY-NC-SA 4.0 | CC-BY-NC-SA 4.0 | 
| File Size | n/a | |
| Upload date | 1610873264 | 
Also read http://wiki.alioth.net/index.php/Compass%20target%20mode%20autoswitch
| Path | |
|---|---|
| Config/script.js | "use strict";
this.name    = "compass target autoswitch";
this.version = "1.0.0"; 
this.$checkTimer = null;
this.$targetcheck = function()
{
	var my = player.ship; // :-P
	if(my.equipmentStatus("EQ_ADVANCED_COMPASS")=="EQUIPMENT_OK")
	{	
		// the compassTarget checks handles indirectly a target change by phkb's ManualWitchSpaceAlignment.
		// This is a terrible way to do it because it relies on an implementation detail of this OXZ.
		// One of those temporary hacks that will last forever... 2017-11-16.
		if(my.target && (my.compassMode!="COMPASS_MODE_TARGET") && (player.alertCondition==3)) my.compassMode="COMPASS_MODE_TARGET";
	}
	else
	{
		log(this.name, "ASC not ok, no candy for you.");
		this.$checkTimer.stop();
	}
}
this.shipLaunchedFromStation = function(station)
{
	log(this.name, "Starting.");
	if(this.$checkTimer) this.$checkTimer.start();
	else this.$checkTimer= new Timer(this, this.$targetcheck, 0, 0.250); // can't be more frequent, but 1/4 sec is good enough.
}
this.shipExitedWitchspace= this.shipLaunchedFromStation;
this.shipDockWithStation = function(station)
{
	log(this.name, "Suspended.");
	this.$checkTimer.stop();
}
 |