BIS fnc target: Difference between revisions

From Bohemia Interactive Community
Jump to navigation Jump to search
m (Text replacement - "<tt>([^= ]+)<\/tt>" to "{{hl|$1}}")
m (Some wiki formatting)
 
(4 intermediate revisions by the same user not shown)
Line 6: Line 6:
|gr1= Interaction
|gr1= Interaction


|descr= [[File:A3 BIS fnc target.jpg|300px|thumb|right|Target Board display]]
|descr= [[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 {{hl|TargetBootcampHuman_f}})
Handles the shooting targets in the Bootcamp DLC, statistics, animation, etc. (targets such as {{hl|TargetBootcampHuman_f}})


|s1= [action, parameters] call [[BIS_fnc_target]]
{{{!}} class="wikitable mw-collapsible mw-collapsed" style="min-width: 50em"
 
{{!}}+ Action/Parameter Table
|p1= action: [[String]]
! Action ([[String]])
 
! Parameters ([[Array]]) arguments
|p2= parameters: [[Array]]
 
|p3= <nowiki/>
{{{!}} class{{=}}"wikitable"
! Action [[String]] !! Parameters ([[Array]]) arguments
{{!}}-
{{!}}-
{{!}} '''initialize'''<br>Initializes the target and sets it to the "up" position  
{{!}} '''initialize'''<br>Initializes the target and sets it to the "up" position  
Line 179: Line 174:
{{!}}}
{{!}}}


|r1= See [[#Syntax|above table]]
|s1= [action, parameters] call [[BIS_fnc_target]]
 
|p1= action: [[String]]
 
|p2= parameters: [[Array]]
 
|r1= See [[#Description|above table]]


|x1= <code>{{cc|open the Score Board}}
|x1= <sqf>
["uiOpen", [myTarget]] [[call]] [[BIS_fnc_target]];</code>
// open the Score Board
["uiOpen", [myTarget]] call BIS_fnc_target;
</sqf>


|x2= <code>{{cc|open the Score Board for all players in MP}}
|x2= <sqf>
["uiOpenToAll", [myTarget]] [[call]] [[BIS_fnc_target]];</code>
// open the Score Board for all players in MP
["uiOpenToAll", [myTarget]] call BIS_fnc_target;
</sqf>


|x3= <code>{{cc|clear all data from Score Board}}
|x3= <sqf>
["resetShootersData", [myTarget]] [[call]] [[BIS_fnc_target]];</code>
// clear all data from Score Board
["resetShootersData", [myTarget]] call BIS_fnc_target;
</sqf>


|seealso= [[doTarget]]
|seealso= [[doTarget]]
}}
}}

Latest revision as of 11:27, 13 January 2023

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)

Action/Parameter Table
Action (String) Parameters (Array) arguments
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
N/A
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

Return Value: Number - 0 (up) or 1 (down) depending on current state
  • target: Object - Target object of type "TargetBootcamp_base_F"
getAnimationPhaseString

Return Value: String - "up" or "down" depending on current state
  • target: Object - Target object of type "TargetBootcamp_base_F"
getAnimatedSelection

Return Value: 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

Return Value: Number - 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

Return Value: Array - all data from Shooter Data for specific unit

Format: [["uid", ""], ["name", ""], ["shots", [[["time", 0], ["distance", 0], ["weapon", ""], ["direct", 0]]]]]

  • 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 Value: 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 Value: Number - 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 Value: 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 Value: 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 Value: 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 Value: 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 Value: Object - corresponding shooter 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
Execution:
call
Groups:
Interaction

Syntax

Syntax:
[action, parameters] call BIS_fnc_target
Parameters:
action: String
parameters: Array
Return Value:
See above table

Examples

Example 1:
// open the Score Board ["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