Difference between revisions of "Cabal Common Library Doc Comms"
m |
m |
||
Line 18: | Line 18: | ||
{{CodeEx|codeex=addToComm = function( obj )}} | {{CodeEx|codeex=addToComm = function( obj )}} | ||
{{CodeExTime|native=0.000158|extension=0.000068|js=0.000124}} | {{CodeExTime|native=0.000158|extension=0.000068|js=0.000124}} | ||
− | Adds incoming object to the list. | + | Adds incoming object to the list. Make sure that the object is extensible and not sealed or frozen. |
'''Parameters:''' | '''Parameters:''' |
Revision as of 10:47, 29 January 2013
Overview
This is the main class for the secure comms channels with its members and part of the Cabal_Common_Library.
The script is mainly used to store and handle incoming data from shipscripts and worldScripts for a secure communication channel. Entities can place, change or remove their data fairly simple and a few parameters are handled. The equipment itself is not visible to the player and added automagically by adding a entry. Additionally entities can use script_info keys to give the player the option to open a channel. Entries are valid until the player leaves the system or in case of entities is out of scanner range based on a timer with 25 sec intervals. The range check can by bypassed.
The script checks the following shipdata.plist script_info key when the player receives a comms message from that entity.
script_info:
- ccl_secureChannel
- String. Property in the ship-script that holds the comm object.
- ccl_secureChannelPrep
- String. Function in the ship-script that initiates the object.
The scripts should keep a valid object to use removeFromComm() or changeChoicesComm().
Everything else is performed within the EQ-script.
Functions
addToComm()
addToComm = function( obj ) |
Profiler | |
---|---|
Native | 0.000158s |
Extension | 0.000068s |
JS | 0.000124s |
Adds incoming object to the list. Make sure that the object is extensible and not sealed or frozen.
Parameters:
- obj
- Object.
Returns:
- bool
- Boolean. True on success.
If the player selects a action, the script will pass the index of the action in the set. Therefor it is necessary to provide some infos when adding a entry.
Properties:
- display
- String. Used for onscreen display.
- who
- Entity/String. The entity or worldScript.
- ent
- Boolean. Must be true for entities, blank for worldScripts.
- pID
- Number/String. Must be entityPersonality for entities and this.name for worldScripts.
- callback
- String. The function that handles the actions.
- noDist
- Boolean. Optional. If true keep entity entry if out of scanner range.
- react
- Array. Holds the names of the actions.
Example for a ship:
this.myComm = {
}; |
Examle for a worldScript:
this.myComm = {
}; |
removeFromComm()
removeFromComm = function( obj ) |
Profiler | |
---|---|
Native | 0.000038s |
Extension | 0.000010s |
JS | 0.000114s |
Removes object from the list.
Parameters:
- obj
- Object. To be removed.
Returns:
- bool
- Boolean. True on success.
worldScripts.Cabal_Common_Comms.removeFromComm(this.myComm); |
changeChoicesComm()
changeChoicesComm = function( pID, newSet) |
Profiler | |
---|---|
Native | 0.000154s |
Extension | 0.000068s |
JS | 0.000124s |
Changes the stored actions for a specific entry.
Parameters:
- pID
- Number/String. Must be entityPersonality for entities and this.name for worldScripts.
- newSet
- Array. Set of new actions.
Returns:
- bool
- Boolean. True on success.
Example for a ship:
var newSet = [{display:"Hail"},{display:"Back"}];
worldScripts.Cabal_Common_Comms.changeChoicesComm(this.ship.entityPersonality,newSet); |