Difference between revisions of "Cabal Common Library Doc Briefing"
m |
m |
||
Line 61: | Line 61: | ||
Short overview about the actions: | Short overview about the actions: | ||
− | *'''bgzoom''' - Zooms background image in and out. | + | *'''bgzoom''' - Zooms background image in and out. See [[#fcbZoomBackground()|fcbZoomBackground()]]. |
*'''bind''' - Sticks two subents together. See [[#fcbSetBinding()|fcbSetBinding()]]. | *'''bind''' - Sticks two subents together. See [[#fcbSetBinding()|fcbSetBinding()]]. | ||
− | *'''check''' - Useful for developers to see how many framecallbacks are invoked. | + | *'''check''' - Useful for developers to see how many framecallbacks are invoked. See [[#fcbCheckAll()|fcbCheckAll()]]. |
*'''continue''' - Enables checkpoints if specific points are reached. | *'''continue''' - Enables checkpoints if specific points are reached. | ||
*'''face''' - Rotate entity to face another entity. See [[#fcbFace()|fcbFace()]]. | *'''face''' - Rotate entity to face another entity. See [[#fcbFace()|fcbFace()]]. | ||
− | *'''kill''' - Stops briefing. | + | *'''kill''' - Stops briefing and clears all fcbs. See [[#fcbRemoveAll()|fcbRemoveAll()]]. |
*'''mes''' - Add a message. | *'''mes''' - Add a message. | ||
*'''mSpeed''' - Velocity based on vectorForward. See [[#fcbModelSpeed()|fcbModelSpeed()]]. | *'''mSpeed''' - Velocity based on vectorForward. See [[#fcbModelSpeed()|fcbModelSpeed()]]. | ||
*'''mVelo''' - Velocity vectorUp, Right and Forward. See [[#fcbModelVelo()|fcbModelVelo()]]. | *'''mVelo''' - Velocity vectorUp, Right and Forward. See [[#fcbModelVelo()|fcbModelVelo()]]. | ||
− | *'''prop''' - Set property, e.g. fuel. | + | *'''prop''' - Set property, e.g. fuel. See [[#fcbSetProp()|fcbSetProp()]]. |
*'''reori''' - Set orientation. | *'''reori''' - Set orientation. | ||
*'''repos''' - Set position. | *'''repos''' - Set position. | ||
Line 77: | Line 77: | ||
*'''stopVelo''' - Stop velocity. | *'''stopVelo''' - Stop velocity. | ||
*'''turn''' - Rotate vectorUp, Right and Forward and velocity. See [[#fcbFlight()|fcbFlight()]]. | *'''turn''' - Rotate vectorUp, Right and Forward and velocity. See [[#fcbFlight()|fcbFlight()]]. | ||
− | *'''walk''' - Subtract Z-position, biased Y. | + | *'''walk''' - Subtract Z-position, biased Y. See [[#fcbWalk()|fcbWalk()]]. |
− | *'''zoom''' - Multiplied position. | + | *'''zoom''' - Multiplied position. See [[#fcbZoom()|fcbZoom()]]. |
Line 94: | Line 94: | ||
=== Methods === | === Methods === | ||
+ | ==== fcbCheckAll() ==== | ||
+ | {{CodeEx|codeex=this.helper.fcbCheckAll();}} | ||
+ | Check invoked framecallbacks. | ||
+ | |||
+ | '''Parameters:''' | ||
+ | :;none. | ||
+ | |||
+ | '''Returns:''' | ||
+ | :;nothing. | ||
+ | |||
+ | |||
==== fcbFace() ==== | ==== fcbFace() ==== | ||
{{CodeEx|codeex=this.helper.fcbFace(ent,sub,last,tar,basez,dampa,dampb,away);}} | {{CodeEx|codeex=this.helper.fcbFace(ent,sub,last,tar,basez,dampa,dampb,away);}} | ||
Line 109: | Line 120: | ||
'''Returns:''' | '''Returns:''' | ||
− | :; nothing. | + | :;nothing. |
Line 127: | Line 138: | ||
'''Returns:''' | '''Returns:''' | ||
:;nothing. | :;nothing. | ||
− | |||
Line 180: | Line 190: | ||
:;dampa:Number. Linear dampening duration for start. | :;dampa:Number. Linear dampening duration for start. | ||
:;dampb:Number. Linear dampening duration for end. | :;dampb:Number. Linear dampening duration for end. | ||
+ | |||
+ | '''Returns:''' | ||
+ | :;nothing. | ||
+ | |||
+ | |||
+ | ==== fcbRemoveAll() ==== | ||
+ | {{CodeEx|codeex=this.helper.fcbRemoveAll();}} | ||
+ | Clear all framecallbacks. | ||
+ | |||
+ | '''Parameters:''' | ||
+ | :;none. | ||
'''Returns:''' | '''Returns:''' | ||
Line 199: | Line 220: | ||
'''Returns:''' | '''Returns:''' | ||
:;nothing. | :;nothing. | ||
+ | |||
+ | |||
+ | ==== fcbSetProp() ==== | ||
+ | {{CodeEx|codeex=this.helper.fcbSetProp(ent,sub,prop,value,last,dampa,dampb);}} | ||
+ | Set property. | ||
+ | |||
+ | '''Parameters:''' | ||
+ | :;ent:Entity. If not specified mission.displayModel. | ||
+ | :;sub:SubEntity. If -1 main entity is used, otherwise ent.subEntities[sub]. | ||
+ | :;prop:String. Property name. | ||
+ | :;value:Value for the property. If last specified current value added last times. | ||
+ | :;last:Number. Duration for fcb. | ||
+ | :;dampa:Number. Linear dampening duration for start. | ||
+ | :;dampb:Number. Linear dampening duration for end. | ||
+ | |||
+ | '''Returns:''' | ||
+ | :;nothing. | ||
+ | |||
+ | |||
+ | ==== fcbWalk() ==== | ||
+ | {{CodeEx|codeex=this.helper.fcbWalk(ent,sub,last,steps,movez,friction,dampa,dampb);}} | ||
+ | Walk. | ||
+ | |||
+ | '''Parameters:''' | ||
+ | :;ent:Entity. If not specified mission.displayModel. | ||
+ | :;sub:SubEntity. If -1 main entity is used, otherwise ent.subEntities[sub]. | ||
+ | :;last:Number. Duration for fcb. | ||
+ | :;steps:Number. Divider for duration. | ||
+ | :;movez:Number. | ||
+ | :;friction:Number. Modifier for Y movement | ||
+ | :;dampa:Number. Linear dampening duration for start. | ||
+ | :;dampb:Number. Linear dampening duration for end. | ||
+ | |||
+ | '''Returns:''' | ||
+ | :;nothing. | ||
+ | |||
+ | |||
+ | ==== fcbZoom() ==== | ||
+ | {{CodeEx|codeex=this.helper.fcbZoom(ent,sub,last,amz,basez,dampa,dampb);}} | ||
+ | Zoom model. | ||
+ | |||
+ | '''Parameters:''' | ||
+ | :;ent:Entity. If not specified mission.displayModel. | ||
+ | :;sub:SubEntity. If -1 main entity is used, otherwise ent.subEntities[sub]. | ||
+ | :;last:Number. Duration for fcb. | ||
+ | :;amz:Number. Multiplier for Z. | ||
+ | :;basez:Boolean. If true Z position will be taken into account. | ||
+ | :;dampa:Number. Linear dampening duration for start. | ||
+ | :;dampb:Number. Linear dampening duration for end. | ||
+ | |||
+ | '''Returns:''' | ||
+ | :;nothing. | ||
+ | |||
+ | |||
+ | ==== fcbZoomBackground() ==== | ||
+ | {{CodeEx|codeex=this.helper.fcbZoomBackground(bg,last,w,h,factor,dampa,dampb);}} | ||
+ | Zoom background image. | ||
+ | |||
+ | '''Parameters:''' | ||
+ | :;bg:String. Filename with extension | ||
+ | :;last:Number. Duration for fcb. | ||
+ | :;w:Number. Dimension width. | ||
+ | :;h:Number. Dimension height. | ||
+ | :;factor:Number. Multiplier Z. | ||
+ | :;dampa:Number. Linear dampening duration for start. | ||
+ | :;dampb:Number. Linear dampening duration for end. | ||
+ | |||
+ | '''Returns:''' | ||
+ | :;nothing. | ||
+ | |||
Revision as of 14:53, 8 June 2011
- This article is a stub. You can help EliteWiki by expanding it.
Overview
This is the main class for the briefing with its members.
The script handles incoming data from worldScripts to make missionscreens a bit more interesting with time based animations of the displayed model. Scripts can pass the data easily and everything else is performed within the briefing script.
worldScripts.Cabal_Common_Briefing.startBriefing(obj); |
A second approach is possible by instantiating a copy of the underlaying API, e.g.
this.helper = new Cabal_Common_ScreenFCB(); |
But scripts are then responsible to remove the framecallbacks on their own with the method provided by the API!
Functions
startBriefing()
worldScripts.Cabal_Common_Briefing.startBriefing = function( obj ) |
Calling this method starts the handling. The passed obj must hold a few parameters to define the actions.
Parameters:
- obj
- Object.
Returns:
- nothing
Properties of obj:
- absolutePos
- Array. Optional. E.g. [10,12,540].
- background
- String. Optional. Filename with extension.
- briefing
- Array. Required. Action commands.
- callback
- String. Required. WorldScript identifier.
- callbackc
- String. Optional. Mission choice.
- callbackf
- String. Required. Callback function.
- capture
- Boolean. If true only a new briefing, callback and callbackf gets established.
- cornerPos
- Array. Optional. Movement to one corner. E.g. [0.33,1,1,1.3]
- music
- String. Optional. Filename with extension.
- ori
- Array. Optional. Orientation. E.g. [1,0,0,0].
- overlay
- String. Optional. Filename with extension. Defaults to "bgs-i_overlay_none.png" if BGS-A or BGS-I installed.
- role
- String.
- title
- String. Optional. Defaults to "Briefing".
Example:
var obj = {
role:"trader", |
obj.briefing
The briefing array contains the timebased actions. A entry contains at least two elements:
- Time
- Number. Based on a interval of 0.25 sec.
- Action
- String. Specifier for the action. Most actions will need additional parameter.
Short overview about the actions:
- bgzoom - Zooms background image in and out. See fcbZoomBackground().
- bind - Sticks two subents together. See fcbSetBinding().
- check - Useful for developers to see how many framecallbacks are invoked. See fcbCheckAll().
- continue - Enables checkpoints if specific points are reached.
- face - Rotate entity to face another entity. See fcbFace().
- kill - Stops briefing and clears all fcbs. See fcbRemoveAll().
- mes - Add a message.
- mSpeed - Velocity based on vectorForward. See fcbModelSpeed().
- mVelo - Velocity vectorUp, Right and Forward. See fcbModelVelo().
- prop - Set property, e.g. fuel. See fcbSetProp().
- reori - Set orientation.
- repos - Set position.
- rot - Rotate X,Y,Z. See fcbRotation().
- stopSound - Stop briefing sound.
- stopVelo - Stop velocity.
- turn - Rotate vectorUp, Right and Forward and velocity. See fcbFlight().
- walk - Subtract Z-position, biased Y. See fcbWalk().
- zoom - Multiplied position. See fcbZoom().
Cabal_Common_ScreenFCB
Scripts can instantiate a copy via
this.helper = new Cabal_Common_ScreenFCB(); |
Properties
internalVersion
Number. Property to give OXPs a chance to check the required lib min. version easily. This number will be raised with every release.
var a = this.helper.internalVersion;
a -> 6 |
Methods
fcbCheckAll()
this.helper.fcbCheckAll(); |
Check invoked framecallbacks.
Parameters:
- none.
Returns:
- nothing.
fcbFace()
this.helper.fcbFace(ent,sub,last,tar,basez,dampa,dampb,away); |
Rotate entity to face another entity.
Parameters:
- ent
- Entity. To be reoriented. If not specified mission.displayModel.
- sub
- SubEntity. If -1 main entity is used, otherwise ent.subEntities[sub].
- last
- Number. Duration for fcb.
- tar
- Entity. Target entity. If -1 player.ship is used.
- basez
- Boolean. If true Z position will be taken into account.
- dampa
- Number. Linear dampening duration for rotation start.
- dampb
- Number. Linear dampening duration for rotation end.
- away
- Number. Multiplier to head away from target. -1...1.
Returns:
- nothing.
fcbFlight()
this.helper.fcbFlight(ent,sub,last,rU,rR,rF,velo); |
Turn and accelerate model.
Parameters:
- ent
- Entity. To be reoriented and/or accelerated. If not specified mission.displayModel.
- sub
- SubEntity. If -1 main entity is used, otherwise ent.subEntities[sub].
- last
- Number. Duration for fcb.
- rU
- Number. Rotate vectorUp by rU (radians).
- rR
- Number. Rotate vectorRight by rR (radians).
- rF
- Number. Rotate vectorForward by rF (radians).
- velo
- Number. Multiply vectorForward and set velocity. If -1 no velocity set.
Returns:
- nothing.
fcbModelSpeed()
this.helper.fcbModelSpeed(ent,sub,last,velo,basez,dampa,dampb); |
Accelerate model.
Parameters:
- ent
- Entity. To be accelerated. If not specified mission.displayModel.
- sub
- SubEntity. If -1 main entity is used, otherwise ent.subEntities[sub].
- last
- Number. Duration for fcb.
- velo
- Number. Multiply vectorForward and set velocity.
- basez
- Boolean. If true Z position will be taken into account.
- dampa
- Number. Linear dampening duration for velo start.
- dampb
- Number. Linear dampening duration for velo end.
Returns:
- nothing.
fcbModelVelo()
this.helper.fcbModelVelo(ent,sub,last,mU,mR,mF,basez,dampa,dampb); |
Set Velocities.
Parameters:
- ent
- Entity. If not specified mission.displayModel.
- sub
- SubEntity. If -1 main entity is used, otherwise ent.subEntities[sub].
- last
- Number. Duration for fcb.
- mU
- Number. Multiplier vectorUp.
- mR
- Number. Multiplier vectorRight.
- mF
- Number. Multiplier vectorForward.
- basez
- Boolean. If true Z position will be taken into account.
- dampa
- Number. Linear dampening duration for start.
- dampb
- Number. Linear dampening duration for end.
Returns:
- nothing.
fcbModelRotation()
this.helper.fcbRotation(ent,sub,last,rX,rY,rZ,basez,dampa,dampb); |
Set rotations.
Parameters:
- ent
- Entity. If not specified mission.displayModel.
- sub
- SubEntity. If -1 main entity is used, otherwise ent.subEntities[sub].
- last
- Number. Duration for fcb.
- rX
- Number. Radians X.
- rY
- Number. Radians Y.
- rZ
- Number. Radians Z.
- basez
- Boolean. If true Z position will be taken into account.
- dampa
- Number. Linear dampening duration for start.
- dampb
- Number. Linear dampening duration for end.
Returns:
- nothing.
fcbRemoveAll()
this.helper.fcbRemoveAll(); |
Clear all framecallbacks.
Parameters:
- none.
Returns:
- nothing.
fcbSetBinding()
this.helper.fcbSetBinding(ent,sub,last,tar,dist,inheritFE); |
Bind subentities.
Parameters:
- ent
- Entity. To be reoriented. If not specified mission.displayModel.
- sub
- SubEntity. If -1 main entity is used, otherwise ent.subEntities[sub].
- last
- Number. Duration for fcb.
- tar
- Entity. Target subEntity.
- dist
- Boolean. Keep its distance. Currently nonsense .-)
- inheritFE
- Boolean. Bind fuel and energy too.
Returns:
- nothing.
fcbSetProp()
this.helper.fcbSetProp(ent,sub,prop,value,last,dampa,dampb); |
Set property.
Parameters:
- ent
- Entity. If not specified mission.displayModel.
- sub
- SubEntity. If -1 main entity is used, otherwise ent.subEntities[sub].
- prop
- String. Property name.
- value
- Value for the property. If last specified current value added last times.
- last
- Number. Duration for fcb.
- dampa
- Number. Linear dampening duration for start.
- dampb
- Number. Linear dampening duration for end.
Returns:
- nothing.
fcbWalk()
this.helper.fcbWalk(ent,sub,last,steps,movez,friction,dampa,dampb); |
Walk.
Parameters:
- ent
- Entity. If not specified mission.displayModel.
- sub
- SubEntity. If -1 main entity is used, otherwise ent.subEntities[sub].
- last
- Number. Duration for fcb.
- steps
- Number. Divider for duration.
- movez
- Number.
- friction
- Number. Modifier for Y movement
- dampa
- Number. Linear dampening duration for start.
- dampb
- Number. Linear dampening duration for end.
Returns:
- nothing.
fcbZoom()
this.helper.fcbZoom(ent,sub,last,amz,basez,dampa,dampb); |
Zoom model.
Parameters:
- ent
- Entity. If not specified mission.displayModel.
- sub
- SubEntity. If -1 main entity is used, otherwise ent.subEntities[sub].
- last
- Number. Duration for fcb.
- amz
- Number. Multiplier for Z.
- basez
- Boolean. If true Z position will be taken into account.
- dampa
- Number. Linear dampening duration for start.
- dampb
- Number. Linear dampening duration for end.
Returns:
- nothing.
fcbZoomBackground()
this.helper.fcbZoomBackground(bg,last,w,h,factor,dampa,dampb); |
Zoom background image.
Parameters:
- bg
- String. Filename with extension
- last
- Number. Duration for fcb.
- w
- Number. Dimension width.
- h
- Number. Dimension height.
- factor
- Number. Multiplier Z.
- dampa
- Number. Linear dampening duration for start.
- dampb
- Number. Linear dampening duration for end.
Returns:
- nothing.
...more...