class ACE_Repair { class Actions { class ReplaceWheel { displayName = CSTRING(ReplaceWheel); displayNameProgress = CSTRING(ReplacingWheel); forceDisplayName = 0; repairLocations[] = {"All"}; requiredEngineer = QGVAR(engineerSetting_Wheel); repairingTime = QGVAR(wheelChangeTime); repairingTimeSelfCoef = 1; items = QGVAR(wheelRepairRequiredItems); condition = QFUNC(canReplaceWheel); itemConsumed = 0; claimObjects[] = {{"ACE_Wheel"}}; callbackSuccess = QFUNC(doReplaceWheel); callbackFailure = ""; callbackProgress = ""; animationCaller = "Acts_carFixingWheel"; animationCallerProne = "Acts_carFixingWheel"; animationCallerSelf = "Acts_carFixingWheel"; animationCallerSelfProne = "Acts_carFixingWheel"; loopAnimation = 0; litter[] = {}; }; class RemoveWheel: ReplaceWheel { displayName = CSTRING(RemoveWheel); displayNameProgress = CSTRING(RemovingWheel); condition = QFUNC(canRemove); callbackSuccess = QFUNC(doRemoveWheel); claimObjects[] = {}; }; class PatchWheel: ReplaceWheel { displayName = CSTRING(PatchWheel); displayNameProgress = CSTRING(PatchingWheel); condition = QFUNC(canPatchWheel); repairingTime = QFUNC(getPatchWheelTime); callbackProgress = QFUNC(doPatchWheelProgress); items = QGVAR(patchWheelRequiredItems); requiredEngineer = QGVAR(engineerSetting_Wheel); callbackSuccess = ""; claimObjects[] = {}; }; class MiscRepair: ReplaceWheel { displayName = CSTRING(Repairing); // let's make empty string an auto generated string displayNameProgress = CSTRING(RepairingHitPoint); condition = QFUNC(canMiscRepair); requiredEngineer = QGVAR(engineerSetting_Repair); repairingTime = QGVAR(miscRepairTime); callbackSuccess = QFUNC(doRepair); items = QGVAR(miscRepairRequiredItems); itemConsumed = QGVAR(consumeItem_ToolKit); claimObjects[] = {}; }; class RepairTrack: MiscRepair { displayName = CSTRING(Repairing); displayNameProgress = CSTRING(RepairingHitPoint); condition = QFUNC(canRepairTrack); callbackSuccess = QFUNC(doRepairTrack); requiredEngineer = QGVAR(engineerSetting_Wheel); claimObjects[] = {{"ACE_Track"}}; itemConsumed = 0; }; class RemoveTrack: MiscRepair { displayName = CSTRING(RemoveTrack); displayNameProgress = CSTRING(RemovingTrack); condition = QFUNC(canRemove); callbackSuccess = QFUNC(doRemoveTrack); requiredEngineer = QGVAR(engineerSetting_Wheel); itemConsumed = 0; }; class ReplaceTrack: RemoveTrack { displayName = CSTRING(ReplaceTrack); displayNameProgress = CSTRING(ReplacingTrack); condition = QFUNC(canReplaceTrack); callbackSuccess = QFUNC(doReplaceTrack); requiredEngineer = QGVAR(engineerSetting_Wheel); claimObjects[] = {{"ACE_Track"}}; }; class FullRepair: MiscRepair { displayName = CSTRING(fullRepair); displayNameProgress = CSTRING(fullyRepairing); forceDisplayName = 1; loopAnimation = 1; requiredEngineer = QGVAR(engineerSetting_fullRepair); repairLocations[] = {QGVAR(fullRepairLocation)}; repairingTime = QFUNC(getFullRepairTime); condition = "((getAllHitPointsDamage _target) select 2) findIf {_x > 0} != -1"; callbackSuccess = QFUNC(doFullRepair); callbackProgress = QFUNC(fullRepairProgress); items = QGVAR(fullRepairRequiredItems); itemConsumed = QGVAR(consumeItem_ToolKit); }; }; };