| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448 | 
							- /*
 
- Language: SQF
 
- Author: Søren Enevoldsen <senevoldsen90@gmail.com>
 
- Contributors: Marvin Saignat <contact@zgmrvn.com>, Dedmen Miller <dedmen@dedmen.de>
 
- Description: Scripting language for the Arma game series
 
- Website: https://community.bistudio.com/wiki/SQF_syntax
 
- Category: scripting
 
- */
 
- function sqf(hljs) {
 
-   // In SQF, a variable start with _
 
-   const VARIABLE = {
 
-     className: 'variable',
 
-     begin: /\b_+[a-zA-Z]\w*/
 
-   };
 
-   // In SQF, a function should fit myTag_fnc_myFunction pattern
 
-   // https://community.bistudio.com/wiki/Functions_Library_(Arma_3)#Adding_a_Function
 
-   const FUNCTION = {
 
-     className: 'title',
 
-     begin: /[a-zA-Z][a-zA-Z0-9]+_fnc_\w*/
 
-   };
 
-   // In SQF strings, quotes matching the start are escaped by adding a consecutive.
 
-   // Example of single escaped quotes: " "" " and  ' '' '.
 
-   const STRINGS = {
 
-     className: 'string',
 
-     variants: [
 
-       {
 
-         begin: '"',
 
-         end: '"',
 
-         contains: [ {
 
-           begin: '""',
 
-           relevance: 0
 
-         } ]
 
-       },
 
-       {
 
-         begin: '\'',
 
-         end: '\'',
 
-         contains: [ {
 
-           begin: '\'\'',
 
-           relevance: 0
 
-         } ]
 
-       }
 
-     ]
 
-   };
 
-   // list of keywords from:
 
-   // https://community.bistudio.com/wiki/PreProcessor_Commands
 
-   const PREPROCESSOR = {
 
-     className: 'meta',
 
-     begin: /#\s*[a-z]+\b/,
 
-     end: /$/,
 
-     keywords: {
 
-       'meta-keyword':
 
-         'define undef ifdef ifndef else endif include'
 
-     },
 
-     contains: [
 
-       {
 
-         begin: /\\\n/,
 
-         relevance: 0
 
-       },
 
-       hljs.inherit(STRINGS, {
 
-         className: 'meta-string'
 
-       }),
 
-       {
 
-         className: 'meta-string',
 
-         begin: /<[^\n>]*>/,
 
-         end: /$/,
 
-         illegal: '\\n'
 
-       },
 
-       hljs.C_LINE_COMMENT_MODE,
 
-       hljs.C_BLOCK_COMMENT_MODE
 
-     ]
 
-   };
 
-   return {
 
-     name: 'SQF',
 
-     case_insensitive: true,
 
-     keywords: {
 
-       keyword:
 
-         'case catch default do else exit exitWith for forEach from if ' +
 
-         'private switch then throw to try waitUntil while with',
 
-       built_in:
 
-         'abs accTime acos action actionIDs actionKeys actionKeysImages actionKeysNames ' +
 
-         'actionKeysNamesArray actionName actionParams activateAddons activatedAddons activateKey ' +
 
-         'add3DENConnection add3DENEventHandler add3DENLayer addAction addBackpack addBackpackCargo ' +
 
-         'addBackpackCargoGlobal addBackpackGlobal addCamShake addCuratorAddons addCuratorCameraArea ' +
 
-         'addCuratorEditableObjects addCuratorEditingArea addCuratorPoints addEditorObject addEventHandler ' +
 
-         'addForce addGoggles addGroupIcon addHandgunItem addHeadgear addItem addItemCargo ' +
 
-         'addItemCargoGlobal addItemPool addItemToBackpack addItemToUniform addItemToVest addLiveStats ' +
 
-         'addMagazine addMagazineAmmoCargo addMagazineCargo addMagazineCargoGlobal addMagazineGlobal ' +
 
-         'addMagazinePool addMagazines addMagazineTurret addMenu addMenuItem addMissionEventHandler ' +
 
-         'addMPEventHandler addMusicEventHandler addOwnedMine addPlayerScores addPrimaryWeaponItem ' +
 
-         'addPublicVariableEventHandler addRating addResources addScore addScoreSide addSecondaryWeaponItem ' +
 
-         'addSwitchableUnit addTeamMember addToRemainsCollector addTorque addUniform addVehicle addVest ' +
 
-         'addWaypoint addWeapon addWeaponCargo addWeaponCargoGlobal addWeaponGlobal addWeaponItem ' +
 
-         'addWeaponPool addWeaponTurret admin agent agents AGLToASL aimedAtTarget aimPos airDensityRTD ' +
 
-         'airplaneThrottle airportSide AISFinishHeal alive all3DENEntities allAirports allControls ' +
 
-         'allCurators allCutLayers allDead allDeadMen allDisplays allGroups allMapMarkers allMines ' +
 
-         'allMissionObjects allow3DMode allowCrewInImmobile allowCuratorLogicIgnoreAreas allowDamage ' +
 
-         'allowDammage allowFileOperations allowFleeing allowGetIn allowSprint allPlayers allSimpleObjects ' +
 
-         'allSites allTurrets allUnits allUnitsUAV allVariables ammo ammoOnPylon and animate animateBay ' +
 
-         'animateDoor animatePylon animateSource animationNames animationPhase animationSourcePhase ' +
 
-         'animationState append apply armoryPoints arrayIntersect asin ASLToAGL ASLToATL assert ' +
 
-         'assignAsCargo assignAsCargoIndex assignAsCommander assignAsDriver assignAsGunner assignAsTurret ' +
 
-         'assignCurator assignedCargo assignedCommander assignedDriver assignedGunner assignedItems ' +
 
-         'assignedTarget assignedTeam assignedVehicle assignedVehicleRole assignItem assignTeam ' +
 
-         'assignToAirport atan atan2 atg ATLToASL attachedObject attachedObjects attachedTo attachObject ' +
 
-         'attachTo attackEnabled backpack backpackCargo backpackContainer backpackItems backpackMagazines ' +
 
-         'backpackSpaceFor behaviour benchmark binocular boundingBox boundingBoxReal boundingCenter ' +
 
-         'breakOut breakTo briefingName buildingExit buildingPos buttonAction buttonSetAction cadetMode ' +
 
-         'call callExtension camCommand camCommit camCommitPrepared camCommitted camConstuctionSetParams ' +
 
-         'camCreate camDestroy cameraEffect cameraEffectEnableHUD cameraInterest cameraOn cameraView ' +
 
-         'campaignConfigFile camPreload camPreloaded camPrepareBank camPrepareDir camPrepareDive ' +
 
-         'camPrepareFocus camPrepareFov camPrepareFovRange camPreparePos camPrepareRelPos camPrepareTarget ' +
 
-         'camSetBank camSetDir camSetDive camSetFocus camSetFov camSetFovRange camSetPos camSetRelPos ' +
 
-         'camSetTarget camTarget camUseNVG canAdd canAddItemToBackpack canAddItemToUniform canAddItemToVest ' +
 
-         'cancelSimpleTaskDestination canFire canMove canSlingLoad canStand canSuspend ' +
 
-         'canTriggerDynamicSimulation canUnloadInCombat canVehicleCargo captive captiveNum cbChecked ' +
 
-         'cbSetChecked ceil channelEnabled cheatsEnabled checkAIFeature checkVisibility className ' +
 
-         'clearAllItemsFromBackpack clearBackpackCargo clearBackpackCargoGlobal clearGroupIcons ' +
 
-         'clearItemCargo clearItemCargoGlobal clearItemPool clearMagazineCargo clearMagazineCargoGlobal ' +
 
-         'clearMagazinePool clearOverlay clearRadio clearWeaponCargo clearWeaponCargoGlobal clearWeaponPool ' +
 
-         'clientOwner closeDialog closeDisplay closeOverlay collapseObjectTree collect3DENHistory ' +
 
-         'collectiveRTD combatMode commandArtilleryFire commandChat commander commandFire commandFollow ' +
 
-         'commandFSM commandGetOut commandingMenu commandMove commandRadio commandStop ' +
 
-         'commandSuppressiveFire commandTarget commandWatch comment commitOverlay compile compileFinal ' +
 
-         'completedFSM composeText configClasses configFile configHierarchy configName configProperties ' +
 
-         'configSourceAddonList configSourceMod configSourceModList confirmSensorTarget ' +
 
-         'connectTerminalToUAV controlsGroupCtrl copyFromClipboard copyToClipboard copyWaypoints cos count ' +
 
-         'countEnemy countFriendly countSide countType countUnknown create3DENComposition create3DENEntity ' +
 
-         'createAgent createCenter createDialog createDiaryLink createDiaryRecord createDiarySubject ' +
 
-         'createDisplay createGearDialog createGroup createGuardedPoint createLocation createMarker ' +
 
-         'createMarkerLocal createMenu createMine createMissionDisplay createMPCampaignDisplay ' +
 
-         'createSimpleObject createSimpleTask createSite createSoundSource createTask createTeam ' +
 
-         'createTrigger createUnit createVehicle createVehicleCrew createVehicleLocal crew ctAddHeader ' +
 
-         'ctAddRow ctClear ctCurSel ctData ctFindHeaderRows ctFindRowHeader ctHeaderControls ctHeaderCount ' +
 
-         'ctRemoveHeaders ctRemoveRows ctrlActivate ctrlAddEventHandler ctrlAngle ctrlAutoScrollDelay ' +
 
-         'ctrlAutoScrollRewind ctrlAutoScrollSpeed ctrlChecked ctrlClassName ctrlCommit ctrlCommitted ' +
 
-         'ctrlCreate ctrlDelete ctrlEnable ctrlEnabled ctrlFade ctrlHTMLLoaded ctrlIDC ctrlIDD ' +
 
-         'ctrlMapAnimAdd ctrlMapAnimClear ctrlMapAnimCommit ctrlMapAnimDone ctrlMapCursor ctrlMapMouseOver ' +
 
-         'ctrlMapScale ctrlMapScreenToWorld ctrlMapWorldToScreen ctrlModel ctrlModelDirAndUp ctrlModelScale ' +
 
-         'ctrlParent ctrlParentControlsGroup ctrlPosition ctrlRemoveAllEventHandlers ctrlRemoveEventHandler ' +
 
-         'ctrlScale ctrlSetActiveColor ctrlSetAngle ctrlSetAutoScrollDelay ctrlSetAutoScrollRewind ' +
 
-         'ctrlSetAutoScrollSpeed ctrlSetBackgroundColor ctrlSetChecked ctrlSetEventHandler ctrlSetFade ' +
 
-         'ctrlSetFocus ctrlSetFont ctrlSetFontH1 ctrlSetFontH1B ctrlSetFontH2 ctrlSetFontH2B ctrlSetFontH3 ' +
 
-         'ctrlSetFontH3B ctrlSetFontH4 ctrlSetFontH4B ctrlSetFontH5 ctrlSetFontH5B ctrlSetFontH6 ' +
 
-         'ctrlSetFontH6B ctrlSetFontHeight ctrlSetFontHeightH1 ctrlSetFontHeightH2 ctrlSetFontHeightH3 ' +
 
-         'ctrlSetFontHeightH4 ctrlSetFontHeightH5 ctrlSetFontHeightH6 ctrlSetFontHeightSecondary ' +
 
-         'ctrlSetFontP ctrlSetFontPB ctrlSetFontSecondary ctrlSetForegroundColor ctrlSetModel ' +
 
-         'ctrlSetModelDirAndUp ctrlSetModelScale ctrlSetPixelPrecision ctrlSetPosition ctrlSetScale ' +
 
-         'ctrlSetStructuredText ctrlSetText ctrlSetTextColor ctrlSetTooltip ctrlSetTooltipColorBox ' +
 
-         'ctrlSetTooltipColorShade ctrlSetTooltipColorText ctrlShow ctrlShown ctrlText ctrlTextHeight ' +
 
-         'ctrlTextWidth ctrlType ctrlVisible ctRowControls ctRowCount ctSetCurSel ctSetData ' +
 
-         'ctSetHeaderTemplate ctSetRowTemplate ctSetValue ctValue curatorAddons curatorCamera ' +
 
-         'curatorCameraArea curatorCameraAreaCeiling curatorCoef curatorEditableObjects curatorEditingArea ' +
 
-         'curatorEditingAreaType curatorMouseOver curatorPoints curatorRegisteredObjects curatorSelected ' +
 
-         'curatorWaypointCost current3DENOperation currentChannel currentCommand currentMagazine ' +
 
-         'currentMagazineDetail currentMagazineDetailTurret currentMagazineTurret currentMuzzle ' +
 
-         'currentNamespace currentTask currentTasks currentThrowable currentVisionMode currentWaypoint ' +
 
-         'currentWeapon currentWeaponMode currentWeaponTurret currentZeroing cursorObject cursorTarget ' +
 
-         'customChat customRadio cutFadeOut cutObj cutRsc cutText damage date dateToNumber daytime ' +
 
-         'deActivateKey debriefingText debugFSM debugLog deg delete3DENEntities deleteAt deleteCenter ' +
 
-         'deleteCollection deleteEditorObject deleteGroup deleteGroupWhenEmpty deleteIdentity ' +
 
-         'deleteLocation deleteMarker deleteMarkerLocal deleteRange deleteResources deleteSite deleteStatus ' +
 
-         'deleteTeam deleteVehicle deleteVehicleCrew deleteWaypoint detach detectedMines ' +
 
-         'diag_activeMissionFSMs diag_activeScripts diag_activeSQFScripts diag_activeSQSScripts ' +
 
-         'diag_captureFrame diag_captureFrameToFile diag_captureSlowFrame diag_codePerformance ' +
 
-         'diag_drawMode diag_enable diag_enabled diag_fps diag_fpsMin diag_frameNo diag_lightNewLoad ' +
 
-         'diag_list diag_log diag_logSlowFrame diag_mergeConfigFile diag_recordTurretLimits ' +
 
-         'diag_setLightNew diag_tickTime diag_toggle dialog diarySubjectExists didJIP didJIPOwner ' +
 
-         'difficulty difficultyEnabled difficultyEnabledRTD difficultyOption direction directSay disableAI ' +
 
-         'disableCollisionWith disableConversation disableDebriefingStats disableMapIndicators ' +
 
-         'disableNVGEquipment disableRemoteSensors disableSerialization disableTIEquipment ' +
 
-         'disableUAVConnectability disableUserInput displayAddEventHandler displayCtrl displayParent ' +
 
-         'displayRemoveAllEventHandlers displayRemoveEventHandler displaySetEventHandler dissolveTeam ' +
 
-         'distance distance2D distanceSqr distributionRegion do3DENAction doArtilleryFire doFire doFollow ' +
 
-         'doFSM doGetOut doMove doorPhase doStop doSuppressiveFire doTarget doWatch drawArrow drawEllipse ' +
 
-         'drawIcon drawIcon3D drawLine drawLine3D drawLink drawLocation drawPolygon drawRectangle ' +
 
-         'drawTriangle driver drop dynamicSimulationDistance dynamicSimulationDistanceCoef ' +
 
-         'dynamicSimulationEnabled dynamicSimulationSystemEnabled echo edit3DENMissionAttributes editObject ' +
 
-         'editorSetEventHandler effectiveCommander emptyPositions enableAI enableAIFeature ' +
 
-         'enableAimPrecision enableAttack enableAudioFeature enableAutoStartUpRTD enableAutoTrimRTD ' +
 
-         'enableCamShake enableCaustics enableChannel enableCollisionWith enableCopilot ' +
 
-         'enableDebriefingStats enableDiagLegend enableDynamicSimulation enableDynamicSimulationSystem ' +
 
-         'enableEndDialog enableEngineArtillery enableEnvironment enableFatigue enableGunLights ' +
 
-         'enableInfoPanelComponent enableIRLasers enableMimics enablePersonTurret enableRadio enableReload ' +
 
-         'enableRopeAttach enableSatNormalOnDetail enableSaving enableSentences enableSimulation ' +
 
-         'enableSimulationGlobal enableStamina enableTeamSwitch enableTraffic enableUAVConnectability ' +
 
-         'enableUAVWaypoints enableVehicleCargo enableVehicleSensor enableWeaponDisassembly ' +
 
-         'endLoadingScreen endMission engineOn enginesIsOnRTD enginesRpmRTD enginesTorqueRTD entities ' +
 
-         'environmentEnabled estimatedEndServerTime estimatedTimeLeft evalObjectArgument everyBackpack ' +
 
-         'everyContainer exec execEditorScript execFSM execVM exp expectedDestination exportJIPMessages ' +
 
-         'eyeDirection eyePos face faction fadeMusic fadeRadio fadeSound fadeSpeech failMission ' +
 
-         'fillWeaponsFromPool find findCover findDisplay findEditorObject findEmptyPosition ' +
 
-         'findEmptyPositionReady findIf findNearestEnemy finishMissionInit finite fire fireAtTarget ' +
 
-         'firstBackpack flag flagAnimationPhase flagOwner flagSide flagTexture fleeing floor flyInHeight ' +
 
-         'flyInHeightASL fog fogForecast fogParams forceAddUniform forcedMap forceEnd forceFlagTexture ' +
 
-         'forceFollowRoad forceMap forceRespawn forceSpeed forceWalk forceWeaponFire forceWeatherChange ' +
 
-         'forEachMember forEachMemberAgent forEachMemberTeam forgetTarget format formation ' +
 
-         'formationDirection formationLeader formationMembers formationPosition formationTask formatText ' +
 
-         'formLeader freeLook fromEditor fuel fullCrew gearIDCAmmoCount gearSlotAmmoCount gearSlotData ' +
 
-         'get3DENActionState get3DENAttribute get3DENCamera get3DENConnections get3DENEntity ' +
 
-         'get3DENEntityID get3DENGrid get3DENIconsVisible get3DENLayerEntities get3DENLinesVisible ' +
 
-         'get3DENMissionAttribute get3DENMouseOver get3DENSelected getAimingCoef getAllEnvSoundControllers ' +
 
-         'getAllHitPointsDamage getAllOwnedMines getAllSoundControllers getAmmoCargo getAnimAimPrecision ' +
 
-         'getAnimSpeedCoef getArray getArtilleryAmmo getArtilleryComputerSettings getArtilleryETA ' +
 
-         'getAssignedCuratorLogic getAssignedCuratorUnit getBackpackCargo getBleedingRemaining ' +
 
-         'getBurningValue getCameraViewDirection getCargoIndex getCenterOfMass getClientState ' +
 
-         'getClientStateNumber getCompatiblePylonMagazines getConnectedUAV getContainerMaxLoad ' +
 
-         'getCursorObjectParams getCustomAimCoef getDammage getDescription getDir getDirVisual ' +
 
-         'getDLCAssetsUsage getDLCAssetsUsageByName getDLCs getEditorCamera getEditorMode ' +
 
-         'getEditorObjectScope getElevationOffset getEnvSoundController getFatigue getForcedFlagTexture ' +
 
-         'getFriend getFSMVariable getFuelCargo getGroupIcon getGroupIconParams getGroupIcons getHideFrom ' +
 
-         'getHit getHitIndex getHitPointDamage getItemCargo getMagazineCargo getMarkerColor getMarkerPos ' +
 
-         'getMarkerSize getMarkerType getMass getMissionConfig getMissionConfigValue getMissionDLCs ' +
 
-         'getMissionLayerEntities getModelInfo getMousePosition getMusicPlayedTime getNumber ' +
 
-         'getObjectArgument getObjectChildren getObjectDLC getObjectMaterials getObjectProxy ' +
 
-         'getObjectTextures getObjectType getObjectViewDistance getOxygenRemaining getPersonUsedDLCs ' +
 
-         'getPilotCameraDirection getPilotCameraPosition getPilotCameraRotation getPilotCameraTarget ' +
 
-         'getPlateNumber getPlayerChannel getPlayerScores getPlayerUID getPos getPosASL getPosASLVisual ' +
 
-         'getPosASLW getPosATL getPosATLVisual getPosVisual getPosWorld getPylonMagazines getRelDir ' +
 
-         'getRelPos getRemoteSensorsDisabled getRepairCargo getResolution getShadowDistance getShotParents ' +
 
-         'getSlingLoad getSoundController getSoundControllerResult getSpeed getStamina getStatValue ' +
 
-         'getSuppression getTerrainGrid getTerrainHeightASL getText getTotalDLCUsageTime getUnitLoadout ' +
 
-         'getUnitTrait getUserMFDText getUserMFDvalue getVariable getVehicleCargo getWeaponCargo ' +
 
-         'getWeaponSway getWingsOrientationRTD getWingsPositionRTD getWPPos glanceAt globalChat globalRadio ' +
 
-         'goggles goto group groupChat groupFromNetId groupIconSelectable groupIconsVisible groupId ' +
 
-         'groupOwner groupRadio groupSelectedUnits groupSelectUnit gunner gusts halt handgunItems ' +
 
-         'handgunMagazine handgunWeapon handsHit hasInterface hasPilotCamera hasWeapon hcAllGroups ' +
 
-         'hcGroupParams hcLeader hcRemoveAllGroups hcRemoveGroup hcSelected hcSelectGroup hcSetGroup ' +
 
-         'hcShowBar hcShownBar headgear hideBody hideObject hideObjectGlobal hideSelection hint hintC ' +
 
-         'hintCadet hintSilent hmd hostMission htmlLoad HUDMovementLevels humidity image importAllGroups ' +
 
-         'importance in inArea inAreaArray incapacitatedState inflame inflamed infoPanel ' +
 
-         'infoPanelComponentEnabled infoPanelComponents infoPanels inGameUISetEventHandler inheritsFrom ' +
 
-         'initAmbientLife inPolygon inputAction inRangeOfArtillery insertEditorObject intersect is3DEN ' +
 
-         'is3DENMultiplayer isAbleToBreathe isAgent isArray isAutoHoverOn isAutonomous isAutotest ' +
 
-         'isBleeding isBurning isClass isCollisionLightOn isCopilotEnabled isDamageAllowed isDedicated ' +
 
-         'isDLCAvailable isEngineOn isEqualTo isEqualType isEqualTypeAll isEqualTypeAny isEqualTypeArray ' +
 
-         'isEqualTypeParams isFilePatchingEnabled isFlashlightOn isFlatEmpty isForcedWalk isFormationLeader ' +
 
-         'isGroupDeletedWhenEmpty isHidden isInRemainsCollector isInstructorFigureEnabled isIRLaserOn ' +
 
-         'isKeyActive isKindOf isLaserOn isLightOn isLocalized isManualFire isMarkedForCollection ' +
 
-         'isMultiplayer isMultiplayerSolo isNil isNull isNumber isObjectHidden isObjectRTD isOnRoad ' +
 
-         'isPipEnabled isPlayer isRealTime isRemoteExecuted isRemoteExecutedJIP isServer isShowing3DIcons ' +
 
-         'isSimpleObject isSprintAllowed isStaminaEnabled isSteamMission isStreamFriendlyUIEnabled isText ' +
 
-         'isTouchingGround isTurnedOut isTutHintsEnabled isUAVConnectable isUAVConnected isUIContext ' +
 
-         'isUniformAllowed isVehicleCargo isVehicleRadarOn isVehicleSensorEnabled isWalking ' +
 
-         'isWeaponDeployed isWeaponRested itemCargo items itemsWithMagazines join joinAs joinAsSilent ' +
 
-         'joinSilent joinString kbAddDatabase kbAddDatabaseTargets kbAddTopic kbHasTopic kbReact ' +
 
-         'kbRemoveTopic kbTell kbWasSaid keyImage keyName knowsAbout land landAt landResult language ' +
 
-         'laserTarget lbAdd lbClear lbColor lbColorRight lbCurSel lbData lbDelete lbIsSelected lbPicture ' +
 
-         'lbPictureRight lbSelection lbSetColor lbSetColorRight lbSetCurSel lbSetData lbSetPicture ' +
 
-         'lbSetPictureColor lbSetPictureColorDisabled lbSetPictureColorSelected lbSetPictureRight ' +
 
-         'lbSetPictureRightColor lbSetPictureRightColorDisabled lbSetPictureRightColorSelected ' +
 
-         'lbSetSelectColor lbSetSelectColorRight lbSetSelected lbSetText lbSetTextRight lbSetTooltip ' +
 
-         'lbSetValue lbSize lbSort lbSortByValue lbText lbTextRight lbValue leader leaderboardDeInit ' +
 
-         'leaderboardGetRows leaderboardInit leaderboardRequestRowsFriends leaderboardsRequestUploadScore ' +
 
-         'leaderboardsRequestUploadScoreKeepBest leaderboardState leaveVehicle libraryCredits ' +
 
-         'libraryDisclaimers lifeState lightAttachObject lightDetachObject lightIsOn lightnings limitSpeed ' +
 
-         'linearConversion lineIntersects lineIntersectsObjs lineIntersectsSurfaces lineIntersectsWith ' +
 
-         'linkItem list listObjects listRemoteTargets listVehicleSensors ln lnbAddArray lnbAddColumn ' +
 
-         'lnbAddRow lnbClear lnbColor lnbCurSelRow lnbData lnbDeleteColumn lnbDeleteRow ' +
 
-         'lnbGetColumnsPosition lnbPicture lnbSetColor lnbSetColumnsPos lnbSetCurSelRow lnbSetData ' +
 
-         'lnbSetPicture lnbSetText lnbSetValue lnbSize lnbSort lnbSortByValue lnbText lnbValue load loadAbs ' +
 
-         'loadBackpack loadFile loadGame loadIdentity loadMagazine loadOverlay loadStatus loadUniform ' +
 
-         'loadVest local localize locationPosition lock lockCameraTo lockCargo lockDriver locked ' +
 
-         'lockedCargo lockedDriver lockedTurret lockIdentity lockTurret lockWP log logEntities logNetwork ' +
 
-         'logNetworkTerminate lookAt lookAtPos magazineCargo magazines magazinesAllTurrets magazinesAmmo ' +
 
-         'magazinesAmmoCargo magazinesAmmoFull magazinesDetail magazinesDetailBackpack ' +
 
-         'magazinesDetailUniform magazinesDetailVest magazinesTurret magazineTurretAmmo mapAnimAdd ' +
 
-         'mapAnimClear mapAnimCommit mapAnimDone mapCenterOnCamera mapGridPosition markAsFinishedOnSteam ' +
 
-         'markerAlpha markerBrush markerColor markerDir markerPos markerShape markerSize markerText ' +
 
-         'markerType max members menuAction menuAdd menuChecked menuClear menuCollapse menuData menuDelete ' +
 
-         'menuEnable menuEnabled menuExpand menuHover menuPicture menuSetAction menuSetCheck menuSetData ' +
 
-         'menuSetPicture menuSetValue menuShortcut menuShortcutText menuSize menuSort menuText menuURL ' +
 
-         'menuValue min mineActive mineDetectedBy missionConfigFile missionDifficulty missionName ' +
 
-         'missionNamespace missionStart missionVersion mod modelToWorld modelToWorldVisual ' +
 
-         'modelToWorldVisualWorld modelToWorldWorld modParams moonIntensity moonPhase morale move ' +
 
-         'move3DENCamera moveInAny moveInCargo moveInCommander moveInDriver moveInGunner moveInTurret ' +
 
-         'moveObjectToEnd moveOut moveTime moveTo moveToCompleted moveToFailed musicVolume name nameSound ' +
 
-         'nearEntities nearestBuilding nearestLocation nearestLocations nearestLocationWithDubbing ' +
 
-         'nearestObject nearestObjects nearestTerrainObjects nearObjects nearObjectsReady nearRoads ' +
 
-         'nearSupplies nearTargets needReload netId netObjNull newOverlay nextMenuItemIndex ' +
 
-         'nextWeatherChange nMenuItems not numberOfEnginesRTD numberToDate objectCurators objectFromNetId ' +
 
-         'objectParent objStatus onBriefingGroup onBriefingNotes onBriefingPlan onBriefingTeamSwitch ' +
 
-         'onCommandModeChanged onDoubleClick onEachFrame onGroupIconClick onGroupIconOverEnter ' +
 
-         'onGroupIconOverLeave onHCGroupSelectionChanged onMapSingleClick onPlayerConnected ' +
 
-         'onPlayerDisconnected onPreloadFinished onPreloadStarted onShowNewObject onTeamSwitch ' +
 
-         'openCuratorInterface openDLCPage openMap openSteamApp openYoutubeVideo or orderGetIn overcast ' +
 
-         'overcastForecast owner param params parseNumber parseSimpleArray parseText parsingNamespace ' +
 
-         'particlesQuality pickWeaponPool pitch pixelGrid pixelGridBase pixelGridNoUIScale pixelH pixelW ' +
 
-         'playableSlotsNumber playableUnits playAction playActionNow player playerRespawnTime playerSide ' +
 
-         'playersNumber playGesture playMission playMove playMoveNow playMusic playScriptedMission ' +
 
-         'playSound playSound3D position positionCameraToWorld posScreenToWorld posWorldToScreen ' +
 
-         'ppEffectAdjust ppEffectCommit ppEffectCommitted ppEffectCreate ppEffectDestroy ppEffectEnable ' +
 
-         'ppEffectEnabled ppEffectForceInNVG precision preloadCamera preloadObject preloadSound ' +
 
-         'preloadTitleObj preloadTitleRsc preprocessFile preprocessFileLineNumbers primaryWeapon ' +
 
-         'primaryWeaponItems primaryWeaponMagazine priority processDiaryLink productVersion profileName ' +
 
-         'profileNamespace profileNameSteam progressLoadingScreen progressPosition progressSetPosition ' +
 
-         'publicVariable publicVariableClient publicVariableServer pushBack pushBackUnique putWeaponPool ' +
 
-         'queryItemsPool queryMagazinePool queryWeaponPool rad radioChannelAdd radioChannelCreate ' +
 
-         'radioChannelRemove radioChannelSetCallSign radioChannelSetLabel radioVolume rain rainbow random ' +
 
-         'rank rankId rating rectangular registeredTasks registerTask reload reloadEnabled remoteControl ' +
 
-         'remoteExec remoteExecCall remoteExecutedOwner remove3DENConnection remove3DENEventHandler ' +
 
-         'remove3DENLayer removeAction removeAll3DENEventHandlers removeAllActions removeAllAssignedItems ' +
 
-         'removeAllContainers removeAllCuratorAddons removeAllCuratorCameraAreas ' +
 
-         'removeAllCuratorEditingAreas removeAllEventHandlers removeAllHandgunItems removeAllItems ' +
 
-         'removeAllItemsWithMagazines removeAllMissionEventHandlers removeAllMPEventHandlers ' +
 
-         'removeAllMusicEventHandlers removeAllOwnedMines removeAllPrimaryWeaponItems removeAllWeapons ' +
 
-         'removeBackpack removeBackpackGlobal removeCuratorAddons removeCuratorCameraArea ' +
 
-         'removeCuratorEditableObjects removeCuratorEditingArea removeDrawIcon removeDrawLinks ' +
 
-         'removeEventHandler removeFromRemainsCollector removeGoggles removeGroupIcon removeHandgunItem ' +
 
-         'removeHeadgear removeItem removeItemFromBackpack removeItemFromUniform removeItemFromVest ' +
 
-         'removeItems removeMagazine removeMagazineGlobal removeMagazines removeMagazinesTurret ' +
 
-         'removeMagazineTurret removeMenuItem removeMissionEventHandler removeMPEventHandler ' +
 
-         'removeMusicEventHandler removeOwnedMine removePrimaryWeaponItem removeSecondaryWeaponItem ' +
 
-         'removeSimpleTask removeSwitchableUnit removeTeamMember removeUniform removeVest removeWeapon ' +
 
-         'removeWeaponAttachmentCargo removeWeaponCargo removeWeaponGlobal removeWeaponTurret ' +
 
-         'reportRemoteTarget requiredVersion resetCamShake resetSubgroupDirection resize resources ' +
 
-         'respawnVehicle restartEditorCamera reveal revealMine reverse reversedMouseY roadAt ' +
 
-         'roadsConnectedTo roleDescription ropeAttachedObjects ropeAttachedTo ropeAttachEnabled ' +
 
-         'ropeAttachTo ropeCreate ropeCut ropeDestroy ropeDetach ropeEndPosition ropeLength ropes ' +
 
-         'ropeUnwind ropeUnwound rotorsForcesRTD rotorsRpmRTD round runInitScript safeZoneH safeZoneW ' +
 
-         'safeZoneWAbs safeZoneX safeZoneXAbs safeZoneY save3DENInventory saveGame saveIdentity ' +
 
-         'saveJoysticks saveOverlay saveProfileNamespace saveStatus saveVar savingEnabled say say2D say3D ' +
 
-         'scopeName score scoreSide screenshot screenToWorld scriptDone scriptName scudState ' +
 
-         'secondaryWeapon secondaryWeaponItems secondaryWeaponMagazine select selectBestPlaces ' +
 
-         'selectDiarySubject selectedEditorObjects selectEditorObject selectionNames selectionPosition ' +
 
-         'selectLeader selectMax selectMin selectNoPlayer selectPlayer selectRandom selectRandomWeighted ' +
 
-         'selectWeapon selectWeaponTurret sendAUMessage sendSimpleCommand sendTask sendTaskResult ' +
 
-         'sendUDPMessage serverCommand serverCommandAvailable serverCommandExecutable serverName serverTime ' +
 
-         'set set3DENAttribute set3DENAttributes set3DENGrid set3DENIconsVisible set3DENLayer ' +
 
-         'set3DENLinesVisible set3DENLogicType set3DENMissionAttribute set3DENMissionAttributes ' +
 
-         'set3DENModelsVisible set3DENObjectType set3DENSelected setAccTime setActualCollectiveRTD ' +
 
-         'setAirplaneThrottle setAirportSide setAmmo setAmmoCargo setAmmoOnPylon setAnimSpeedCoef ' +
 
-         'setAperture setApertureNew setArmoryPoints setAttributes setAutonomous setBehaviour ' +
 
-         'setBleedingRemaining setBrakesRTD setCameraInterest setCamShakeDefParams setCamShakeParams ' +
 
-         'setCamUseTI setCaptive setCenterOfMass setCollisionLight setCombatMode setCompassOscillation ' +
 
-         'setConvoySeparation setCuratorCameraAreaCeiling setCuratorCoef setCuratorEditingAreaType ' +
 
-         'setCuratorWaypointCost setCurrentChannel setCurrentTask setCurrentWaypoint setCustomAimCoef ' +
 
-         'setCustomWeightRTD setDamage setDammage setDate setDebriefingText setDefaultCamera setDestination ' +
 
-         'setDetailMapBlendPars setDir setDirection setDrawIcon setDriveOnPath setDropInterval ' +
 
-         'setDynamicSimulationDistance setDynamicSimulationDistanceCoef setEditorMode setEditorObjectScope ' +
 
-         'setEffectCondition setEngineRPMRTD setFace setFaceAnimation setFatigue setFeatureType ' +
 
-         'setFlagAnimationPhase setFlagOwner setFlagSide setFlagTexture setFog setFormation ' +
 
-         'setFormationTask setFormDir setFriend setFromEditor setFSMVariable setFuel setFuelCargo ' +
 
-         'setGroupIcon setGroupIconParams setGroupIconsSelectable setGroupIconsVisible setGroupId ' +
 
-         'setGroupIdGlobal setGroupOwner setGusts setHideBehind setHit setHitIndex setHitPointDamage ' +
 
-         'setHorizonParallaxCoef setHUDMovementLevels setIdentity setImportance setInfoPanel setLeader ' +
 
-         'setLightAmbient setLightAttenuation setLightBrightness setLightColor setLightDayLight ' +
 
-         'setLightFlareMaxDistance setLightFlareSize setLightIntensity setLightnings setLightUseFlare ' +
 
-         'setLocalWindParams setMagazineTurretAmmo setMarkerAlpha setMarkerAlphaLocal setMarkerBrush ' +
 
-         'setMarkerBrushLocal setMarkerColor setMarkerColorLocal setMarkerDir setMarkerDirLocal ' +
 
-         'setMarkerPos setMarkerPosLocal setMarkerShape setMarkerShapeLocal setMarkerSize ' +
 
-         'setMarkerSizeLocal setMarkerText setMarkerTextLocal setMarkerType setMarkerTypeLocal setMass ' +
 
-         'setMimic setMousePosition setMusicEffect setMusicEventHandler setName setNameSound ' +
 
-         'setObjectArguments setObjectMaterial setObjectMaterialGlobal setObjectProxy setObjectTexture ' +
 
-         'setObjectTextureGlobal setObjectViewDistance setOvercast setOwner setOxygenRemaining ' +
 
-         'setParticleCircle setParticleClass setParticleFire setParticleParams setParticleRandom ' +
 
-         'setPilotCameraDirection setPilotCameraRotation setPilotCameraTarget setPilotLight setPiPEffect ' +
 
-         'setPitch setPlateNumber setPlayable setPlayerRespawnTime setPos setPosASL setPosASL2 setPosASLW ' +
 
-         'setPosATL setPosition setPosWorld setPylonLoadOut setPylonsPriority setRadioMsg setRain ' +
 
-         'setRainbow setRandomLip setRank setRectangular setRepairCargo setRotorBrakeRTD setShadowDistance ' +
 
-         'setShotParents setSide setSimpleTaskAlwaysVisible setSimpleTaskCustomData ' +
 
-         'setSimpleTaskDescription setSimpleTaskDestination setSimpleTaskTarget setSimpleTaskType ' +
 
-         'setSimulWeatherLayers setSize setSkill setSlingLoad setSoundEffect setSpeaker setSpeech ' +
 
-         'setSpeedMode setStamina setStaminaScheme setStatValue setSuppression setSystemOfUnits ' +
 
-         'setTargetAge setTaskMarkerOffset setTaskResult setTaskState setTerrainGrid setText ' +
 
-         'setTimeMultiplier setTitleEffect setTrafficDensity setTrafficDistance setTrafficGap ' +
 
-         'setTrafficSpeed setTriggerActivation setTriggerArea setTriggerStatements setTriggerText ' +
 
-         'setTriggerTimeout setTriggerType setType setUnconscious setUnitAbility setUnitLoadout setUnitPos ' +
 
-         'setUnitPosWeak setUnitRank setUnitRecoilCoefficient setUnitTrait setUnloadInCombat ' +
 
-         'setUserActionText setUserMFDText setUserMFDvalue setVariable setVectorDir setVectorDirAndUp ' +
 
-         'setVectorUp setVehicleAmmo setVehicleAmmoDef setVehicleArmor setVehicleCargo setVehicleId ' +
 
-         'setVehicleLock setVehiclePosition setVehicleRadar setVehicleReceiveRemoteTargets ' +
 
-         'setVehicleReportOwnPosition setVehicleReportRemoteTargets setVehicleTIPars setVehicleVarName ' +
 
-         'setVelocity setVelocityModelSpace setVelocityTransformation setViewDistance ' +
 
-         'setVisibleIfTreeCollapsed setWantedRPMRTD setWaves setWaypointBehaviour setWaypointCombatMode ' +
 
-         'setWaypointCompletionRadius setWaypointDescription setWaypointForceBehaviour setWaypointFormation ' +
 
-         'setWaypointHousePosition setWaypointLoiterRadius setWaypointLoiterType setWaypointName ' +
 
-         'setWaypointPosition setWaypointScript setWaypointSpeed setWaypointStatements setWaypointTimeout ' +
 
-         'setWaypointType setWaypointVisible setWeaponReloadingTime setWind setWindDir setWindForce ' +
 
-         'setWindStr setWingForceScaleRTD setWPPos show3DIcons showChat showCinemaBorder showCommandingMenu ' +
 
-         'showCompass showCuratorCompass showGPS showHUD showLegend showMap shownArtilleryComputer ' +
 
-         'shownChat shownCompass shownCuratorCompass showNewEditorObject shownGPS shownHUD shownMap ' +
 
-         'shownPad shownRadio shownScoretable shownUAVFeed shownWarrant shownWatch showPad showRadio ' +
 
-         'showScoretable showSubtitles showUAVFeed showWarrant showWatch showWaypoint showWaypoints side ' +
 
-         'sideChat sideEnemy sideFriendly sideRadio simpleTasks simulationEnabled simulCloudDensity ' +
 
-         'simulCloudOcclusion simulInClouds simulWeatherSync sin size sizeOf skill skillFinal skipTime ' +
 
-         'sleep sliderPosition sliderRange sliderSetPosition sliderSetRange sliderSetSpeed sliderSpeed ' +
 
-         'slingLoadAssistantShown soldierMagazines someAmmo sort soundVolume spawn speaker speed speedMode ' +
 
-         'splitString sqrt squadParams stance startLoadingScreen step stop stopEngineRTD stopped str ' +
 
-         'sunOrMoon supportInfo suppressFor surfaceIsWater surfaceNormal surfaceType swimInDepth ' +
 
-         'switchableUnits switchAction switchCamera switchGesture switchLight switchMove ' +
 
-         'synchronizedObjects synchronizedTriggers synchronizedWaypoints synchronizeObjectsAdd ' +
 
-         'synchronizeObjectsRemove synchronizeTrigger synchronizeWaypoint systemChat systemOfUnits tan ' +
 
-         'targetKnowledge targets targetsAggregate targetsQuery taskAlwaysVisible taskChildren ' +
 
-         'taskCompleted taskCustomData taskDescription taskDestination taskHint taskMarkerOffset taskParent ' +
 
-         'taskResult taskState taskType teamMember teamName teams teamSwitch teamSwitchEnabled teamType ' +
 
-         'terminate terrainIntersect terrainIntersectASL terrainIntersectAtASL text textLog textLogFormat ' +
 
-         'tg time timeMultiplier titleCut titleFadeOut titleObj titleRsc titleText toArray toFixed toLower ' +
 
-         'toString toUpper triggerActivated triggerActivation triggerArea triggerAttachedVehicle ' +
 
-         'triggerAttachObject triggerAttachVehicle triggerDynamicSimulation triggerStatements triggerText ' +
 
-         'triggerTimeout triggerTimeoutCurrent triggerType turretLocal turretOwner turretUnit tvAdd tvClear ' +
 
-         'tvCollapse tvCollapseAll tvCount tvCurSel tvData tvDelete tvExpand tvExpandAll tvPicture ' +
 
-         'tvSetColor tvSetCurSel tvSetData tvSetPicture tvSetPictureColor tvSetPictureColorDisabled ' +
 
-         'tvSetPictureColorSelected tvSetPictureRight tvSetPictureRightColor tvSetPictureRightColorDisabled ' +
 
-         'tvSetPictureRightColorSelected tvSetText tvSetTooltip tvSetValue tvSort tvSortByValue tvText ' +
 
-         'tvTooltip tvValue type typeName typeOf UAVControl uiNamespace uiSleep unassignCurator ' +
 
-         'unassignItem unassignTeam unassignVehicle underwater uniform uniformContainer uniformItems ' +
 
-         'uniformMagazines unitAddons unitAimPosition unitAimPositionVisual unitBackpack unitIsUAV unitPos ' +
 
-         'unitReady unitRecoilCoefficient units unitsBelowHeight unlinkItem unlockAchievement ' +
 
-         'unregisterTask updateDrawIcon updateMenuItem updateObjectTree useAISteeringComponent ' +
 
-         'useAudioTimeForMoves userInputDisabled vectorAdd vectorCos vectorCrossProduct vectorDiff ' +
 
-         'vectorDir vectorDirVisual vectorDistance vectorDistanceSqr vectorDotProduct vectorFromTo ' +
 
-         'vectorMagnitude vectorMagnitudeSqr vectorModelToWorld vectorModelToWorldVisual vectorMultiply ' +
 
-         'vectorNormalized vectorUp vectorUpVisual vectorWorldToModel vectorWorldToModelVisual vehicle ' +
 
-         'vehicleCargoEnabled vehicleChat vehicleRadio vehicleReceiveRemoteTargets vehicleReportOwnPosition ' +
 
-         'vehicleReportRemoteTargets vehicles vehicleVarName velocity velocityModelSpace verifySignature ' +
 
-         'vest vestContainer vestItems vestMagazines viewDistance visibleCompass visibleGPS visibleMap ' +
 
-         'visiblePosition visiblePositionASL visibleScoretable visibleWatch waves waypointAttachedObject ' +
 
-         'waypointAttachedVehicle waypointAttachObject waypointAttachVehicle waypointBehaviour ' +
 
-         'waypointCombatMode waypointCompletionRadius waypointDescription waypointForceBehaviour ' +
 
-         'waypointFormation waypointHousePosition waypointLoiterRadius waypointLoiterType waypointName ' +
 
-         'waypointPosition waypoints waypointScript waypointsEnabledUAV waypointShow waypointSpeed ' +
 
-         'waypointStatements waypointTimeout waypointTimeoutCurrent waypointType waypointVisible ' +
 
-         'weaponAccessories weaponAccessoriesCargo weaponCargo weaponDirection weaponInertia weaponLowered ' +
 
-         'weapons weaponsItems weaponsItemsCargo weaponState weaponsTurret weightRTD WFSideText wind ',
 
-       literal:
 
-         'blufor civilian configNull controlNull displayNull east endl false grpNull independent lineBreak ' +
 
-         'locationNull nil objNull opfor pi resistance scriptNull sideAmbientLife sideEmpty sideLogic ' +
 
-         'sideUnknown taskNull teamMemberNull true west'
 
-     },
 
-     contains: [
 
-       hljs.C_LINE_COMMENT_MODE,
 
-       hljs.C_BLOCK_COMMENT_MODE,
 
-       hljs.NUMBER_MODE,
 
-       VARIABLE,
 
-       FUNCTION,
 
-       STRINGS,
 
-       PREPROCESSOR
 
-     ],
 
-     illegal: /#|^\$ /
 
-   };
 
- }
 
- module.exports = sqf;
 
 
  |