Icon representing a recipe

Recipe: Freeze Inverter 1.0

created by Migi

Profile


Name
Freeze Inverter 1.0
ID
103385
Shared with
Public
Parent
Band Inverter 1.0
Children
None
Created on
April 09, 2020 at 16:20 PM UTC
Updated on
April 09, 2020 at 16:20 PM UTC
Description

Freezes everything that's unfrozen and unfreezes everything that's frozen.

Best for


Code


--[[ * Freeze Inverter * Original Author: Migi * Version 1.0 April 9, 2020 * freeze what's unfrozen, unfreeze what's frozen ]]-- version = '1.0' title = 'Freeze Inverter v'..version print ( title ) nSegments = structure.GetCount ( ) initiallySelectedSegments = {} bbShouldBeFrozen = {} ssShouldBeFrozen = {} for ii = 1, nSegments do table.insert(initiallySelectedSegments, selection.IsSelected( ii )) local frzback, frzside = freeze.IsFrozen ( ii ) table.insert(bbShouldBeFrozen, not frzback) table.insert(ssShouldBeFrozen, not frzside) end freeze.UnfreezeAll() selection.DeselectAll() for ii = 1, nSegments do if bbShouldBeFrozen[ii] and ssShouldBeFrozen[ii] then selection.Select( ii ) end end freeze.FreezeSelected( true, true ) selection.DeselectAll() for ii = 1, nSegments do if bbShouldBeFrozen[ii] and not ssShouldBeFrozen[ii] then selection.Select( ii ) end end freeze.FreezeSelected( true, false ) selection.DeselectAll() for ii = 1, nSegments do if not bbShouldBeFrozen[ii] and ssShouldBeFrozen[ii] then selection.Select( ii ) end end freeze.FreezeSelected( false, true ) selection.DeselectAll() for ii = 1, nSegments do if initiallySelectedSegments[ii] then selection.Select( ii ) end end print ( 'Done' )

Comments