Back to Index | Page generated: Dec 20, 2024, 7:22:10 AM |
from Expansion Manager's OXP list | from Expansion Manifest | |
---|---|---|
Description | Updates the look of Seedy Space Bars, and adds an external docking port (if the External Docking System is installed) | Updates the look of Seedy Space Bars, and adds an external docking port (if the External Docking System is installed) |
Identifier | oolite.oxp.phkb.SpacebarFacelift | oolite.oxp.phkb.SpacebarFacelift |
Title | Space Bar Facelift | Space Bar Facelift |
Category | Retextures | Retextures |
Author | phkb | phkb |
Version | 1.6 | 1.6 |
Tags | ||
Required Oolite Version | ||
Maximum Oolite Version | ||
Required Expansions |
|
|
Optional Expansions | ||
Conflict Expansions | ||
Information URL | https://wiki.alioth.net/index.php/Space_Bar_Facelift | n/a |
Download URL | https://wiki.alioth.net/img_auth.php/1/1f/SpaceBarFacelift_1.6.oxz | n/a |
License | CC-BY-NC-SA 4.0 | CC-BY-NC-SA 4.0 |
File Size | n/a | |
Upload date | 1712638676 |
Also read http://wiki.alioth.net/index.php/Space%20Bar%20Facelift
Space Bar Face Lift by phkb Overview ======== This mod updates the look and feel of Griff's Space Bar's (from the Random Hits OXP). Additionally, flashers are added to the standard dock to aid with visibility, and, if the External Dock System is installed, make the external landing pad available for players to dock at. License ======= 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/ Asteroid textures from <a href="https://www.freepik.com/free-photo/concrete-wall-texture_1119956.htm#page=2&query=asteroid%20texture&position=46&from_view=keyword&track=ais&uuid=863c61d5-a1d1-4a10-94b2-388d011af0d1">Image by kues1</a> on Freepik Version History =============== 1.6 - Changed point where external docks are applied to existing Space Bars, to hopefully have them applied more reliably. 1.5 - Tweaked message sent to player when they approach, based on whether the station has docking clearance or not. - Tweaks to the process of selecting the space bar to add the external dock to. 1.4 - Corrections to shipdata-overrides and tweaks to the neon sign shader courtesy of another_commander. 1.3 - Fixed incorrect filename in shipdata-overrides.plist. 1.2 - Updated to latest EDS interface specification. 1.1 - Fixed a couple of issues with the external dock setup and operation. - Added a readme.txt file. 1.0 - Initial release
Path | |
---|---|
Config/script.js | "use strict"; this.name = "SpaceBarFaceLift"; this.author = "phkb"; this.description = "Looks after external dock for spacebar"; this.copyright = "2024 phkb"; this.license = "CC BY-NC-SA 4.0"; this._externalDockNotification = false; this._timer = null; this._setStation = null; //---------------------------------------------------------------------------------------- this.systemWillPopulate = function() { this._setStation = null; system.setPopulator("sb_facelift", { callback: function (pos) { var w = worldScripts.SpaceBarFaceLift; var sp = system.shipsWithRole("random_hits_any_spacebar"); if (sp && sp.length > 0) w.$registerExternalDocks(sp[0]); }.bind(this), location: "COORDINATES", coordinates: Vector3D(0, 0, 0), priority: 500 }); } //---------------------------------------------------------------------------------------- // registers our external docks with the eds this.$registerExternalDocks = function (station) { var eds = worldScripts.ExternalDockSystem; if (eds) { this._setStation = station; // set up the timer to let the player know about the docks this._timer = new Timer(this, this.$externalDockNotification, 2, 2); //log(this.name, "adding external doc for " + station); var dve = eds.$addExternalDock({station:station, position:[-550, 0, 22], scale:0.5, preDockCallback:this.$preDockSetup.bind(this)}); //log(this.name, "dve = " + dve); } else { // get rid of the flashers on the external dock var fa = station.flashers; var last = fa.length; while (last--) { fa[last].remove(); if (last == 10) break; } } } //---------------------------------------------------------------------------------------- this.$preDockSetup = function(station) { // docking at the external port will still get you transferred inside player.addMessageToArrivalReport(expandDescription("[spacebar_redocked]")); } //---------------------------------------------------------------------------------------- this.$externalDockNotification = function $externalDockNotification() { if (this._setStation && this._externalDockNotification == false) { if (this._setStation.position.distanceTo(player.ship) < player.ship.scannerRange * 0.85) { if (this._setStation.requiresDockingClearance) { this._setStation.commsMessage(expandDescription("[spacebar_external_dock_clearance]"), player.ship); } else { this._setStation.commsMessage(expandDescription("[spacebar_external_dock_free]"), player.ship); } this._externalDockNotification = true; } } else { this._timer.stop(); } } |