Cabal Common Library Doc Comms
Overview
This is the main class for the secure comms channels with its members.
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. 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.
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); |