Back to Index Page generated: Nov 12, 2024, 11:02:04 PM

Expansion Audible docking clearance

Content

Warnings

  1. http://wiki.alioth.net/index.php/Audible%20docking%20clearance -> 404 Not Found
  2. Low hanging fuit: Information URL exists...

Manifest

from Expansion Manager's OXP list from Expansion Manifest
Description Plays notification sounds for docking events, so you'll not miss the clearance messages. You'll need to have the Docking Clearance Protocol enabled from Game Options. Plays notification sounds for docking events, so you'll not miss the clearance messages. You'll need to have the Docking Clearance Protocol enabled from Game Options.
Identifier oolite.oxp.spara.audible_docking_clearance oolite.oxp.spara.audible_docking_clearance
Title Audible docking clearance Audible docking clearance
Category Equipment Equipment
Author spara spara
Version 1.3.1 1.3.1
Tags
Required Oolite Version
Maximum Oolite Version
Required Expansions
Optional Expansions
Conflict Expansions
Information URL http://wiki.alioth.net/index.php/Audible_Docking_Clearance n/a
Download URL https://wiki.alioth.net/img_auth.php/7/77/Audible_Docking_Clearance_1.3.1.oxz n/a
License CC-BY-NC-SA 4.0 CC-BY-NC-SA 4.0
File Size n/a
Upload date 1610873341

Documentation

Audible_docking_clearance_readme_&_license.txt

Audible docking clearance OXP ver 1.3.1 (3.5.2015)

Author: spara (Mika Spåra)

_Description_

This oxp plays a notification sound for these docking events:

* Docking_authorized
* Hold_for_clearance
* Clearance_extended
* Clearance_denied
* Clearance_cancelled
* Clearance_expiring
* Clearance_not_required

Sounds used are default game sounds.

_Install__

Install the OXP by copying Audible_docking_clearance.oxp to your AddOns-folder.

------

This work is licensed under the Creative Commons Attribution-Noncommercial-Share Alike 4.0 Unported License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/

Equipment

This expansion declares no equipment. This may be related to warnings.

Ships

This expansion declares no ships. This may be related to warnings.

Models

This expansion declares no models. This may be related to warnings.

Scripts

Path
Config/script.js
"use strict";

this.name               = "audible_docking_clearance";

this.playerRequestedDockingClearance = function(message)
{
	var notifySound = new SoundSource;
	if (message == "DOCKING_CLEARANCE_NOT_REQUIRED") {
		notifySound.sound = "[clearance_not_required]";
		notifySound.play();
	}
	else if (message == "DOCKING_CLEARANCE_DENIED_SHIP_FUGITIVE") {
		notifySound.sound = "[clearance_denied]";
		notifySound.play();	
	}	
	else if (message == "DOCKING_CLEARANCE_EXTENDED") {
		notifySound.sound = "[clearance_extended]";
		notifySound.play();			
	}
	else if (message == "DOCKING_CLEARANCE_GRANTED" || message == "DOCKING_CLEARANCE_DENIED_TRAFFIC_INBOUND" || message == "DOCKING_CLEARANCE_DENIED_TRAFFIC_OUTBOUND") {
		this.$status = "";
		this.$clearanceFrameCallback = addFrameCallback(this.$clearanceMonitor.bind(this));
	}
}

this.$clearanceMonitor = function(delta) {
	if (this.$status != player.dockingClearanceStatus) {
		if (player.dockingClearanceStatus == "DOCKING_CLEARANCE_STATUS_GRANTED") {
			if (this.$status != "DOCKING_CLEARANCE_STATUS_TIMING_OUT") {
				var notifySound = new SoundSource;
				notifySound.sound = "[docking_authorized]";
				notifySound.play();
			}
		}
		else if (player.dockingClearanceStatus == "DOCKING_CLEARANCE_STATUS_REQUESTED") {
			var notifySound = new SoundSource;
			notifySound.sound = "[hold_for_clearance]";
			notifySound.play();
		}
		else if (player.dockingClearanceStatus == "DOCKING_CLEARANCE_STATUS_TIMING_OUT" ) {
			var notifySound = new SoundSource;
			notifySound.sound = "[clearance_expiring]";
			notifySound.play();
		}
		else if (player.dockingClearanceStatus == "DOCKING_CLEARANCE_STATUS_NONE") {
			var notifySound = new SoundSource;
			notifySound.sound = "[clearance_cancelled]";
			notifySound.play();
			removeFrameCallback(this.$clearanceFrameCallback);
			delete this.$clearanceFrameCallback;
			return;
		}
	}
	else if (player.ship.status == "STATUS_EXITING_WITCHSPACE" || player.ship.docked) { 
		removeFrameCallback(this.$clearanceFrameCallback);
		delete this.$clearanceFrameCallback;
		return;		
	}
	this.$status = player.dockingClearanceStatus;
}