# MakeUnitsUnselectable # The script can be used from the console, or be added as a global script to a cpack. # If used as a global script, then the script must run while paused. It will only apply to units that exist at map start. $applyToFriendlyUnits:1 $applyToEnemyUnits:0 $applyToAllUnits:0 $makeUnitsSelectable:0 $makeUnitsDestroyable:0 :once GetMapSize 2 div ->midPointZ 2 div ->midPointX <-midPointX 0 <-midpointZ v3 ->pos <-applyToAllUnits <-applyToFriendlyUnits <-applyToEnemyUnits and or if 0 ->enemyState else <-applyToFriendlyUnits if 2 else <-applyToEnemyUnits endif ->enemyState endif # The position is the center of the map. The max possible range for units within the map boundaries is (512/2^2 + 128/2^2)^0.5 +1 = 265. To also catch units that have wandered just outside the map boundaries, I chose range 300. "" <-pos 300 0 0 0 <-enemyState 0 0 getunits ->unitList <-unitList 0 do <-unitList[i] <-makeUnitsSelectable SetUnitSelectable <-unitList[i] <-makeUnitsDestroyable SetUnitCanDestroy loop