setHit: Difference between revisions
Jump to navigation
Jump to search
mNo edit summary |
Lou Montana (talk | contribs) m (Some wiki formatting) |
||
Line 20: | Line 20: | ||
|descr= Set damage on a part of an object. | |descr= Set damage on a part of an object. | ||
{{Feature | Informative | Some part names are in Czech; see [[Translations|translation table]]. }} | {{Feature|Informative|Some part names are in Czech; see the [[ArmA: Armed Assault: Selection Translations|translation table]].}} | ||
|s1= object [[setHit]] [part, damage, useEffects, instigator] | |s1= object [[setHit]] [part, damage, useEffects, instigator] | ||
|p1= [ | |p1= object: [[Object]] - [[local]] object | ||
|p2= | |p2= part: [[String]] - Name of the part ([[Named_Selection|selection]] name) | ||
|p3= | |p3= damage: [[Number]] - Damage value ranging 0..1, 0 being fully functional, 1 being destroyed | ||
|p4= | |p4= useEffects: [[Boolean]] - (Optional, default [[true]]) [[false]] to skip destruction effects | ||
|p4since= arma3 1.68 | |||
|p5= | |p5= instigator: [[Object]] - (Optional, default [[objNull]]) The object that caused the damage. If the damage leads to the death of the unit, the instigator will be used as the object that caused the kill. | ||
* it can be used to show "killed by player" in debriefing statistics and kill messages in the chat (if death messages are enabled). | |||
* it will alter the instigator's [[rating]] as if the instigator directly killed the unit. | |||
* | * it will be listed as {{ic|_killer}} parameter in the [[Arma 3: Event Handlers#Killed|Killed]] event handler. | ||
* | |p5since= arma3 2.08 | ||
* | |||
|r1= [[Nothing]] | |r1= [[Nothing]] | ||
Line 45: | Line 45: | ||
|x2= <code>[[vehicle]] [[player]] [[setHit]] ["mala vrtule", 0.95];</code> | |x2= <code>[[vehicle]] [[player]] [[setHit]] ["mala vrtule", 0.95];</code> | ||
|x3= <code>[[if]] ([[local]] _heli) [[then]] { | |x3= <code>[[if]] ([[local]] _heli) [[then]] | ||
{ | |||
_heli [[setHit]] ["velka vrtule", 0]; | _heli [[setHit]] ["velka vrtule", 0]; | ||
} [[else]] { | } | ||
[[else]] | |||
{ | |||
[[hint]] ("Vehicle " + [[str]] _heli + " must be local to this machine to do that!"); | [[hint]] ("Vehicle " + [[str]] _heli + " must be local to this machine to do that!"); | ||
};</code> | };</code> | ||
Line 54: | Line 57: | ||
}} | }} | ||
{{Note | |||
|user= Deadfast | |||
|timestamp= 20090824110900 | |||
|text= Damaging specific parts of the vehicle will not update its overall [[damage]] value (as of v1.03): | |||
<code>[[player]] [[setHit]] ["hands", 0.9]; | <code>[[player]] [[setHit]] ["hands", 0.9]; | ||
[[hint]] [[str]] ([[damage]] [[player]]); {{cc|will return 0}}</code> | [[hint]] [[str]] ([[damage]] [[player]]); {{cc|will return 0}}</code> | ||
|game= arma2 | |||
}} | |||
{{Note | |||
|user= DenV | |||
|timestamp= 20110329142500 | |||
|text= Direct use of the names of sections of the model is likely a bad practice, and will not work on some addons. | |||
So instead: | So instead: | ||
<code>_MH60S [[setHit]] ["elektronika", _hit];</code> | <code>_MH60S [[setHit]] ["elektronika", _hit];</code> | ||
should be used: | should be used: | ||
<code>_MH60S [[setHit]] [<nowiki/>[[getText]] ([[configFile]] >> "cfgVehicles" >> "MH60S" >> "HitPoints" >> "HitAvionics" >> "name"), _hit];</code> | <code>_MH60S [[setHit]] [<nowiki/>[[getText]] ([[configFile]] >> "cfgVehicles" >> "MH60S" >> "HitPoints" >> "HitAvionics" >> "name"), _hit];</code> | ||
}} | |||
Revision as of 15:24, 24 November 2021
Description
- Description:
- Set damage on a part of an object.
- Groups:
- Object Manipulation
Syntax
- Syntax:
- object setHit [part, damage, useEffects, instigator]
- Parameters:
- object: Object - local object
- part: String - Name of the part (selection name)
- damage: Number - Damage value ranging 0..1, 0 being fully functional, 1 being destroyed
- since 1.68
- useEffects: Boolean - (Optional, default true) false to skip destruction effects
- since 2.08
- instigator: Object - (Optional, default objNull) The object that caused the damage. If the damage leads to the death of the unit, the instigator will be used as the object that caused the kill.
- Return Value:
- Nothing
Examples
- Example 1:
vehicle player setHit ["motor", 1];
- Example 2:
vehicle player setHit ["mala vrtule", 0.95];
- Example 3:
if (local _heli) then { _heli setHit ["velka vrtule", 0]; } else { hint ("Vehicle " + str _heli + " must be local to this machine to do that!"); };
Additional Information
- See also:
- getHitgetHitPointDamagesetHitPointDamagedamagesetDamagesetFuelsetAmmogetHitIndexsetHitIndex
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
- Posted on Aug 24, 2009 - 11:09 (UTC)
-
Damaging specific parts of the vehicle will not update its overall damage value (as of v1.03):
player setHit ["hands", 0.9]; hint str (damage player); // will return 0
- Posted on Mar 29, 2011 - 14:25 (UTC)
-
Direct use of the names of sections of the model is likely a bad practice, and will not work on some addons.
So instead:
_MH60S setHit ["elektronika", _hit];
should be used:_MH60S setHit [getText (configFile >> "cfgVehicles" >> "MH60S" >> "HitPoints" >> "HitAvionics" >> "name"), _hit];