-
Notifications
You must be signed in to change notification settings - Fork 737
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Repair - Handle depends = "0" (#5283)
* Repair - Handle depends = "0" * quote
- Loading branch information
1 parent
5f779c4
commit f33ff4e
Showing
4 changed files
with
73 additions
and
3 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,69 @@ | ||
// PabstMirror | ||
// [] execVM "\z\ace\addons\repair\dev\draw_showRepairInfo.sqf"; | ||
|
||
#include "\z\ace\addons\repair\script_component.hpp" | ||
|
||
addMissionEventHandler ["Draw3D", { | ||
if !((cursorObject isKindOf "Car") || (cursorObject isKindOf "Tank") || (cursorObject isKindOf "Air")) exitWith {}; | ||
private _config = configFile >> "CfgVehicles" >> (typeOf cursorObject); | ||
|
||
private _hitpointPositions = getArray (_config >> QGVAR(hitpointPositions)); | ||
private _hitpointGroups = getArray (_config >> QGVAR(hitpointGroups)); | ||
|
||
(getAllHitPointsDamage cursorObject) params [["_hitPoints", []], ["_hitSelections", []]]; | ||
([cursorObject] call FUNC(getWheelHitPointsWithSelections)) params ["_wheelHitPoints", "_wheelHitSelections"]; | ||
|
||
private _output = []; | ||
|
||
{ | ||
private _selection = _x; | ||
private _hitpoint = _hitPoints select _forEachIndex; | ||
|
||
if ((_selection != "") && {_hitPoint != ""}) then { | ||
if (((toLower _hitPoint) find "glass") != -1) exitWith {}; | ||
|
||
private _info = ""; | ||
private _color = [1,0,0,1]; | ||
if (_selection in _wheelHitSelections) then { | ||
_info = _info + "[Wheel]"; | ||
_color = [0,1,0,1]; | ||
}; | ||
if (!((getText (_config>> "HitPoints" >> _hitpoint >> "depends")) in ["", "0"])) then { | ||
_info = _info + format ["[depends: %1]", getText (_config>> "HitPoints" >> _hitpoint >> "depends")]; | ||
_color = [0,0,1,1] | ||
}; | ||
|
||
private _position = cursorObject selectionPosition [_selection, "HitPoints"]; | ||
{ | ||
_x params ["_hit", "_pos"]; | ||
if (_hitpoint == _hit) exitWith { | ||
_info = _info + format ["[hitPos: %1]", _pos]; | ||
if (_pos isEqualType []) exitWith { | ||
_position = _pos; | ||
}; | ||
if (_pos isEqualType "") exitWith { | ||
_position = cursorObject selectionPosition [_pos, "HitPoints"]; | ||
}; | ||
}; | ||
} forEach _hitpointPositions; | ||
|
||
private _parentHitpoint = ""; | ||
{ | ||
private _xParent = _x select 0; | ||
{ | ||
if (_hitpoint == _x) exitWith { | ||
_info = _info + format ["[Parent: %1]", _xParent]; | ||
_parentHitpoint = _xParent; | ||
}; | ||
} forEach (_x select 1); | ||
} forEach _hitpointGroups; | ||
|
||
if (_parentHitpoint == "") then { | ||
drawIcon3D ["", _color, (cursorObject modelToWorld _position), 0.5, 0.5, 0, format ["%1 [%2]", _hitpoint, _selection], 0.5, 0.025, "TahomaB"]; | ||
}; | ||
_output pushBack format ["%1: %2[%3] = %4", _forEachIndex, _hitPoint, _selection, cursorObject getHitIndex _forEachIndex]; | ||
_output pushBack format ["- %1 -",_info]; | ||
}; | ||
} forEach _hitPoints; | ||
hintSilent (_output joinString "\n"); | ||
}]; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters