Difference between revisions of "Snoopers Doc"

From Elite Wiki
m (cleanup)
m (added .Direct and .Anim)
Line 31: Line 31:
 
{{CodeEx|codeex=this.insertNews = function(obj)}}
 
{{CodeEx|codeex=this.insertNews = function(obj)}}
 
{{CodeExTime|native=0.000081|extension=0.000017|js=0.000337}}
 
{{CodeExTime|native=0.000081|extension=0.000017|js=0.000337}}
Handles incoming message from other OXPs and stores it if all checks are passed. Snoopers stores up to 10 messages and 20 CRCs.
+
Handles incoming messages from other OXPs. Snoopers stores up to 10 messages and 20 CRCs if .Direct is not used and all checks are passed.
   
 
'''Parameters'''
 
'''Parameters'''
Line 41: Line 41:
   
 
The passed object can hold a couple of properties:
 
The passed object can hold a couple of properties:
:;ID:String. Required. Name of the calling worldScript. Snoopers stores a checksum (CRC) to scatter the messages on every start and inbetween.
+
:;ID:String. Required. Name of the calling worldScript. Snoopers stores a checksum (CRC) to scatter the messages on every start and inbetween if .Direct is not used.
 
 
:;Message:String/Key. Required. Message can be a string or keynames (descriptions.plist or missiontext.plist), mixtures allowed, max 700 chars, min 10 chars.
 
:;Message:String/Key. Required. Message can be a string or keynames (descriptions.plist or missiontext.plist), mixtures allowed, max 700 chars, min 10 chars.
:;Agency:Number. Defines 1-GNN, 2-Rooters, 3-Snoopers. If used Snoopers disables custom pics and models.
+
:;Agency:Number. Defines 1-GNN, 2-Rooters, 3-Snoopers. If used Snoopers disables custom pics and models and uses internal ones.
:;Priority:Number. 1 highest (and bypasses CRC check and storing), used to sort the inserted news on next docking. Default 3.
+
:;Priority:Number. 1 highest (and bypasses CRC check), used to sort the inserted news on next docking. Default 3.
 
:;Pic:String. Overlay image, use tranparent areas if model should be used. Fileextension is required. If Agency and Pic not declared default setting choosen.
 
:;Pic:String. Overlay image, use tranparent areas if model should be used. Fileextension is required. If Agency and Pic not declared default setting choosen.
 
:;Music:String. Music for Newsflash. Fileextension is required. If not declared, default setting choosen.
 
:;Music:String. Music for Newsflash. Fileextension is required. If not declared, default setting choosen.
:;Model:String. Role for Model, if used Pos must be passed to, else disabled. shipdata.plist must use the same name and roles must contain snoopers_model(0).
 
  +
:;Model:String. Role for Model. Starting with v2.3 it can be any NPC role.
:;Pos:Array. 3 valid numbers, ignored if Model not declared.
+
:;Pos:Array. 3 valid numbers. Adjusted on screen aspect ratios. If not defined Snoopers bases it on entity.position.z.
 
:;Ori:Number. Defines the orientation of Model. 1-[1,0,0,0], 2-[1,0,0,1], 4-[0,0,1,0], 8-[1,1,0,0]. Default 8.
 
:;Ori:Number. Defines the orientation of Model. 1-[1,0,0,0], 2-[1,0,0,1], 4-[0,0,1,0], 8-[1,1,0,0]. Default 8.
 
:;Recall:Boolean. Resend callback in case other OXPs have overridden Snoopers screen and Replay got activated.
 
:;Recall:Boolean. Resend callback in case other OXPs have overridden Snoopers screen and Replay got activated.
  +
:;Direct:Boolean. Display message directly without storing, CRC or other buffer checks. Requires the player to be docked.
  +
:;Anim:Array. Uses [[Cabal_Common_Library_Doc_Briefing#startBriefing()|Cabal_Common_Briefing]] capture option. The array must contain only the .briefing part. Ignored if .Direct is not used.
   
   
Line 64: Line 66:
   
 
== shipdata.plist ==
 
== shipdata.plist ==
Snoopers usually doesn't do anything on other stations than the main station and stations with NPC traffic. A script_info key can change this behaviour.
+
Snoopers usually doesn't do anything on other stations than the main station and stations with NPC traffic (except with .Direct messages). A script_info key can change this behaviour.
   
 
'''Key:'''
 
'''Key:'''

Revision as of 21:28, 11 June 2012

Overview

snoopers.js is the script for the galactic news network. OXPs (worldScripts) can insert own messages by passing a object to Snoopers.

worldScripts.snoopers.insertNews(obj);

After displaying this message Snoopers tries to callback and passes the first 20 chars of the message.

Callback
worldScripts[obj.ID].newsDisplayed(obj.Message.substr(0,20));


Properties

logging

Boolean. Switches extended logging on/off and can be configured via OXPConfig2. Default is false.

audio

Boolean. Switches audio for internal news on/off and can be configured via OXPConfig2. Default is true.

extraA

Boolean. Switches full mode for internal news on/off and can be configured via OXPConfig2. Default is true.

sliderA

Integer. Chance for newsflashes and can be configured via OXPConfig2. Default is 0x3 (#3).

sliderB

Integer. Max days between newsflashes and can be configured via OXPConfig2. Default is 0x19 (#25).

sliderC

Integer. Brightness for displayed model and can be configured via OXPConfig2. Default is 0x4 (#4). This will only affect shadered models which support it. Uses the fuel property.


Functions

insertNews()

this.insertNews = function(obj)
Profiler
Native 0.000081s
Extension 0.000017s
JS 0.000337s

Handles incoming messages from other OXPs. Snoopers stores up to 10 messages and 20 CRCs if .Direct is not used and all checks are passed.

Parameters

obj
Object.

Returns

n
Number. Errorcode.


The passed object can hold a couple of properties:

ID
String. Required. Name of the calling worldScript. Snoopers stores a checksum (CRC) to scatter the messages on every start and inbetween if .Direct is not used.
Message
String/Key. Required. Message can be a string or keynames (descriptions.plist or missiontext.plist), mixtures allowed, max 700 chars, min 10 chars.
Agency
Number. Defines 1-GNN, 2-Rooters, 3-Snoopers. If used Snoopers disables custom pics and models and uses internal ones.
Priority
Number. 1 highest (and bypasses CRC check), used to sort the inserted news on next docking. Default 3.
Pic
String. Overlay image, use tranparent areas if model should be used. Fileextension is required. If Agency and Pic not declared default setting choosen.
Music
String. Music for Newsflash. Fileextension is required. If not declared, default setting choosen.
Model
String. Role for Model. Starting with v2.3 it can be any NPC role.
Pos
Array. 3 valid numbers. Adjusted on screen aspect ratios. If not defined Snoopers bases it on entity.position.z.
Ori
Number. Defines the orientation of Model. 1-[1,0,0,0], 2-[1,0,0,1], 4-[0,0,1,0], 8-[1,1,0,0]. Default 8.
Recall
Boolean. Resend callback in case other OXPs have overridden Snoopers screen and Replay got activated.
Direct
Boolean. Display message directly without storing, CRC or other buffer checks. Requires the player to be docked.
Anim
Array. Uses Cabal_Common_Briefing capture option. The array must contain only the .briefing part. Ignored if .Direct is not used.


Errorcodes:
Snoopers will check all incoming requests and returns a value to the calling function (always) and logs errors (if necessary or logging enabled)... Usually (with this.logging = false) it will only log real errors, by enabling this switch all returned values are logged.

negative
Snoopers buffers are full, OXP already placed a newsflash or CRC is still stored.
zero
Success.
positive
Error occured, details logged to Latest.log.


A simple example

worldScripts.snoopers.insertNews({ ID: this.name , Message: "Hello world!" });

shipdata.plist

Snoopers usually doesn't do anything on other stations than the main station and stations with NPC traffic (except with .Direct messages). A script_info key can change this behaviour.

Key:

snoopersNews
Boolean. Enables Snoopers for this station.
script_info = { "snoopersNews" = true; };