BIS fnc target: Difference between revisions

From Bohemia Interactive Community
Jump to navigation Jump to search
m (added image)
(Fix arguments,)
Line 6: Line 6:
|version1= 1.00
|version1= 1.00


|descr= Handles the shooting targets in the Bootcamp DLC, statistics, animation, etc. (targets such as <tt>TargetBootcampHuman_f</tt>  
|descr= [[File:A3 BIS fnc target.jpg|300px|thumb|right|Target Board display]]
[[File:A3 BIS fnc target.jpg|300px|thumb|right|Target Board display]]
Handles the shooting targets in the Bootcamp DLC, statistics, animation, etc. (targets such as <tt>TargetBootcampHuman_f</tt>)
)




|s1= [target, action, parameters] call [[BIS_fnc_target]] |SYNTAX=
|s1= [action, parameters] call [[BIS_fnc_target]] |SYNTAX=


|p1= target: [[Object]]
|p1= action: [[String]] - one of:
<div style="columns: 3">
* initialize
* terminate (does nothing(?))
* animate
* getAnimationPhase
* getAnimationPhaseString
* getAnimatedSelection
* hit
* hitPart
* getShooterDataIndex
* getShooterData
* setShooterData
* getShotsData
* getShotsDataFromTargets
* getShotsDataWithFilter
* setShotsData
* getShootersData
* setShootersData
* resetShootersData (clears all data on object)
* getShooterTemplate
* getShotTemplate
* getShooterByUid
* uiOpen
* uiOnLoad (internal)
* uiFillTable (internal)
* uiFillTableRow (internal)
</div>


|p2= action: [[String]] - one of:<br>
|p2= parameters: [[Array]] - array of data, depending on ''action'':<br>
'''initialize''' - Initializes the target and sets it to the "up" position
'''initialize''' - Initializes the target and sets it to the "up" position
<syntaxhighlight lang="cpp">params ["_target"];</syntaxhighlight>
* target: [[Object]] - Target object of type "TargetBootcamp_base_F"
* target: [[Object]] - Target object of type "TargetBootcamp_base_F"


'''terminate''' - Doesn't do anything
'''terminate''' - Doesn't do anything
'''animate''' - Animate the object to the given position ("up" or "down")
'''animate''' - Animate the object to the given position ("up" or "down")
<syntaxhighlight lang="cpp">params ["_target", "_position"];</syntaxhighlight>
* target: [[Object]] - Target object of type "TargetBootcamp_base_F"
* target: [[Object]] - Target object of type "TargetBootcamp_base_F"
* position: [[String]] - "up" or "down" (default)
* position: [[String]] - "up" or "down" (default)
Line 30: Line 54:


'''getAnimationPhaseString''' - Returns (String)"up" or "down" depending on current state
'''getAnimationPhaseString''' - Returns (String)"up" or "down" depending on current state
<syntaxhighlight lang="cpp">params ["_target"];</syntaxhighlight>
* target: [[Object]] - Target object of type "TargetBootcamp_base_F"
* target: [[Object]] - Target object of type "TargetBootcamp_base_F"


'''getAnimatedSelection''' - Returns (String) the name of the "animatedSelection" from object config
'''getAnimatedSelection''' - Returns (String) the name of the "animatedSelection" from object config
<syntaxhighlight lang="cpp">params ["_target"];</syntaxhighlight>
* target: [[Object]] - Target object of type "TargetBootcamp_base_F"
* target: [[Object]] - Target object of type "TargetBootcamp_base_F"


'''hit''' - Handles the hit event to animate the target down and up again
'''hit''' - Handles the hit event to animate the target down and up again
<syntaxhighlight lang="cpp">params ["_target", "_unit", "_damage"];</syntaxhighlight>
* target: [[Object]] - Target object of type "TargetBootcamp_base_F"
* target: [[Object]] - Target object of type "TargetBootcamp_base_F"
* unit: [[Object]] - Unit which shot the target
* unit: [[Object]] - Unit which shot the target
Line 44: Line 65:


'''hitPart''' - Handles the hit event and stores the data
'''hitPart''' - Handles the hit event and stores the data
    0: Array - Contains list of all parts which got hit (see HitPart EH)
* partsList: [[Array]] - Contains list of all parts which got hit (see [[Arma 3: Event Handlers#HitPart|HitPart EH]] format) to format [target, shooter]:
        0: Object - Target object of type 'TargetBootcamp_base_F'
** target: [[Object]] - Target object of type 'TargetBootcamp_base_F'
        1: Object - Unit which shot the target
** shooter: [[Object]] - Unit which shot the target


'''getShooterDataIndex''' - Get (Integer) index from Shooter Data for specific unit
'''getShooterDataIndex''' - Get (Integer) index from Shooter Data for specific unit
Line 72: Line 93:
* target: [[Object]] - Target object of type "TargetBootcamp_base_F"
* target: [[Object]] - Target object of type "TargetBootcamp_base_F"
* uid: [[String]] - Player UID of unit who shot the target
* uid: [[String]] - Player UID of unit who shot the target
    2: String - Filter name: "time", "distance", "weapon", "direct"
* filter: [[String]] - One of "time", "distance", "weapon" or "direct"
    3: Code - Custom code to validate the shot. _this is the value of filtered data
* code: [[Code]] - Custom code to validate the shot. _this is the value of filtered data


'''setShotsData''' - Set Shots Data for specific unit
'''setShotsData''' - Set Shots Data for specific unit
Line 94: Line 115:
* uid: [[String]] - Player UID of unit who shot the target
* uid: [[String]] - Player UID of unit who shot the target


'''getShotTemplate''' - Return (Array) template for Shot Data (see HitPart EH)
'''getShotTemplate''' - Return (Array) template for Shot Data (see [[Arma 3: Event Handlers#HitPart|HitPart EH]] format)
* target: [[Object]] - Target object of type "TargetBootcamp_base_F"
* target: [[Object]] - Target object of type "TargetBootcamp_base_F"
    1: Object - Unit who shot the target
* shooter: [[Object]] - Unit who shot the target
    2: Object - ("_bullet" not used)
* projectile: [[Object]] - ("_bullet" not used)
    3: Position3D - ("_position" not used)
* position: [[Array]] format [[Position]] - ("_position" not used)
    4: Vector3D - ("_velocity" not used)
* velocity: [[Array]] - ("_velocity" not used)
    5: Array - ("_selection" not used)
* selection: [[Array]] - ("_selection" not used)
    6: Array - ("_ammo" not used)
* ammo: [[Array]] - ("_ammo" not used)
    7: Vector3D - ("_direction" not used)
* vector: [[Array]] - ("_direction" not used)
    8: Array - ("_radius" not used)
* radius: [[Array]] - ("_radius" not used)
    9: String - ("_surface" not used)
* surfaceType: [[String]] - ("_surface" not used)
    10: Boolean - True if object was directly hit, false if it was hit by indirect/splash damage.
* isDirect: [[Boolean]] - [[true]] if object was directly hit, [[false]] if it was hit by indirect/splash damage.


'''getShooterByUid''' - Return (Object) unit
'''getShooterByUid''' - Return (Object) unit
Line 128: Line 149:
* data: [[Array]] - Shooter Data
* data: [[Array]] - Shooter Data


|p3= parameters: [[Array]] - see above


|x1= <code>{{cc|open the Score Board through addAction}}
|x1= <code>{{cc|open the Score Board through addAction}}

Revision as of 18:30, 7 January 2020

Template:wip

Hover & click on the images for description

Description

Description:
Target Board display
Handles the shooting targets in the Bootcamp DLC, statistics, animation, etc. (targets such as TargetBootcampHuman_f)
Execution:
call
Groups:
Uncategorised

Syntax

Syntax:
[action, parameters] call BIS_fnc_target
Parameters:
action: String - one of:
  • initialize
  • terminate (does nothing(?))
  • animate
  • getAnimationPhase
  • getAnimationPhaseString
  • getAnimatedSelection
  • hit
  • hitPart
  • getShooterDataIndex
  • getShooterData
  • setShooterData
  • getShotsData
  • getShotsDataFromTargets
  • getShotsDataWithFilter
  • setShotsData
  • getShootersData
  • setShootersData
  • resetShootersData (clears all data on object)
  • getShooterTemplate
  • getShotTemplate
  • getShooterByUid
  • uiOpen
  • uiOnLoad (internal)
  • uiFillTable (internal)
  • uiFillTableRow (internal)
parameters: Array - array of data, depending on action:
initialize - Initializes the target and sets it to the "up" position
  • target: Object - Target object of type "TargetBootcamp_base_F"
terminate - Doesn't do anything animate - Animate the object to the given position ("up" or "down")
  • target: Object - Target object of type "TargetBootcamp_base_F"
  • position: String - "up" or "down" (default)
getAnimationPhase - Returns (Integer) 0 (up) or 1 (down) depending on current state
  • target: Object - Target object of type "TargetBootcamp_base_F"
getAnimationPhaseString - Returns (String)"up" or "down" depending on current state
  • target: Object - Target object of type "TargetBootcamp_base_F"
getAnimatedSelection - Returns (String) the name of the "animatedSelection" from object config
  • target: Object - Target object of type "TargetBootcamp_base_F"
hit - Handles the hit event to animate the target down and up again
  • target: Object - Target object of type "TargetBootcamp_base_F"
  • unit: Object - Unit which shot the target
  • damage: Number - Amount of damage done to the target
hitPart - Handles the hit event and stores the data
  • partsList: Array - Contains list of all parts which got hit (see HitPart EH format) to format [target, shooter]:
    • target: Object - Target object of type 'TargetBootcamp_base_F'
    • shooter: Object - Unit which shot the target
getShooterDataIndex - Get (Integer) index from Shooter Data for specific unit
  • target: Object - Target object of type "TargetBootcamp_base_F"
  • uid: String - Player UID of unit who shot the target
getShooterData - Get (Array) all data from Shooter Data for specific unit
  • target: Object - Target object of type "TargetBootcamp_base_F"
  • uid: String - Player UID of unit who shot the target
setShooterData - Set Shooter Data for specific unit
  • target: Object - Target object of type "TargetBootcamp_base_F"
  • uid: String - Player UID of unit who shot the target
  • data: Array - Shooter Data
getShotsData - Return (Array) Shots Data for specific unit
  • target: Object - Target object of type "TargetBootcamp_base_F"
  • uid: String - Player UID of unit who shot the target
getShotsDataFromTargets - Return (Integer) total amount of shots hit
  • targets: Array of Object - List of target objects of type "TargetBootcamp_base_F"
  • uid: String - Player UID of unit who shot the target
getShotsDataWithFilter - Return (Array) Shot Data after custom filter
  • target: Object - Target object of type "TargetBootcamp_base_F"
  • uid: String - Player UID of unit who shot the target
  • filter: String - One of "time", "distance", "weapon" or "direct"
  • code: Code - Custom code to validate the shot. _this is the value of filtered data
setShotsData - Set Shots Data for specific unit
  • target: Object - Target object of type "TargetBootcamp_base_F"
  • uid: String - Player UID of unit who shot the target
  • data: Array - Shots Data
getShootersData - Return (Array) full Shooters Data
  • target: Object - Target object of type "TargetBootcamp_base_F"
setShootersData - Set full Shooters Data
  • target: Object - Target object of type "TargetBootcamp_base_F"
  • data: Array - Shooter Data
resetShootersData - Remove all data from Shooters Data array
  • target: Object - Target object of type "TargetBootcamp_base_F"
getShooterTemplate - Return (Array) template for Shooter Data
  • target: Object - Target object of type "TargetBootcamp_base_F"
  • uid: String - Player UID of unit who shot the target
getShotTemplate - Return (Array) template for Shot Data (see HitPart EH format)
  • target: Object - Target object of type "TargetBootcamp_base_F"
  • shooter: Object - Unit who shot the target
  • projectile: Object - ("_bullet" not used)
  • position: Array format Position - ("_position" not used)
  • velocity: Array - ("_velocity" not used)
  • selection: Array - ("_selection" not used)
  • ammo: Array - ("_ammo" not used)
  • vector: Array - ("_direction" not used)
  • radius: Array - ("_radius" not used)
  • surfaceType: String - ("_surface" not used)
  • isDirect: Boolean - true if object was directly hit, false if it was hit by indirect/splash damage.
getShooterByUid - Return (Object) unit
  • uid: String - Player UID of unit who shot the target
uiOpen - Opens the Target Board display
  • target: Object - Target object of type "TargetBootcamp_base_F"
uiOpenToAll - Opens the Target Board display for all connected players
  • target: Object - Target object of type "TargetBootcamp_base_F"
uiOnLoad - Triggered when display is opened (internal) uiFillTable - Triggered when display is opened, fills UI with Shooters Data (internal)
  • target: Object - Target object of type "TargetBootcamp_base_F"
  • control: Control - "_listBox"
uiFillTableRow - Triggered when display is opened, fills UI with Shooter Data (internal)
  • target: Object - Target object of type "TargetBootcamp_base_F"
  • control: Control - "_listBox"
  • data: Array - Shooter Data
Return Value:
Return value needed

Examples

Example 1:
// open the Score Board through addAction ["uiOpen", [myTarget]] call BIS_fnc_target;
Example 2:
// open the Score Board for all players in MP ["uiOpenToAll", [myTarget]] call BIS_fnc_target;
Example 3:
// clear all data from Score Board ["resetShootersData", [myTarget]] call BIS_fnc_target;

Additional Information

See also:
doTarget

Notes

Report bugs on the Feedback Tracker and/or discuss them on the Arma Discord or on the Forums.
Only post proven facts here! Add Note

Notes

Bottom Section