Legacy:DefaultPropertiesAligner - Unreal Wiki

# Legacy:DefaultPropertiesAligner

### From Unreal Wiki, The Unreal Engine Documentation Site

## About

DefaultPropertiesAligner is a WOTgreal macro that will align selected DefaultProperties.

- Selected DefaultProperties variables will be prefixed with the same number of spaces/tabs.
- Selected DefaultProperties values will start at the same position.

Older engine builds may not like this.

## Before

    defaultproperties
    {
        InventoryType=class'ShieldGun'

        PickupMessage="You got the Shield Gun."
        PickupSound=Sound'PickupSounds.ShieldGunPickup'
        PickupForce="ShieldGunPickup"  // jdf

        MaxDesireability=+0.39

        StaticMesh=StaticMesh'WeaponStaticMesh.ShieldGunPickup'
        DrawType=DT_StaticMesh
        DrawScale=0.5
    }

## After

    defaultproperties
    {
            InventoryType                   = class'ShieldGun'

            PickupMessage                   = "You got the Shield Gun."
            PickupSound                             = Sound'PickupSounds.ShieldGunPickup'
            PickupForce                             = "ShieldGunPickup"  // jdf

            MaxDesireability                = +0.39

            StaticMesh                              = StaticMesh'WeaponStaticMesh.ShieldGunPickup'
            DrawType                                = DT_StaticMesh
            DrawScale                               = 0.5
    }

## Code

    program DefaultPropertiesAligner
    begin
        // ========================================================================
        //  UnrealScript DefaultProperties Aligner
        //
        //  Copyright 2005 Roman Switch` Dzieciol, neai o2.pl
        //  http://wiki.beyondunreal.com/wiki/Switch
        // ========================================================================

        UseTabs := 1;
        TabSize := 4;
        PrependTabs := 1;
        ExtraTabs := 1;

        // ========================================================================

        BlockBeginX, BlockBeginY := BlockBegin();
        BlockEndX, BlockEndY := BlockEnd();
        AlignPos := 0;

        // Find align line
        for line:=BlockBeginY to BlockEndY step 1 do
        begin
            SetCursorXY(0,line);
            sline := CurrentLine();

            spos := Pos('=',sline);
            if (spos <> 0) then
            begin
                sleft := Copy(sline,0,spos-1);
                sleft := Trim(sleft);
                slen := Length(sleft);
                if( slen > AlignPos ) then
                    AlignPos := slen;
            end;
        end;

        // Align selection
        if (AlignPos <> 0) then
        begin
            AlignPos := AlignPos + PrependTabs*TabSize;

            for line:=BlockBeginY to BlockEndY step 1 do
            begin
                SetCursorXY(0,line);
                sline := CurrentLine();
                spos := Pos('=',sline);
                if (spos <> 0) then
                begin
                    sleft := Copy(sline,0,spos-1);
                    sleft := Trim(sleft);
                    sright := Copy(sline,spos+1,Length(sline)-spos);
                    sright := Trim(sright);
                    sres := sleft;

                    if (UseTabs = 1) then
                    begin
                        for tabpre:=1 to PrependTabs step 1 do
                        begin
                            sres :=Chr(9) + sres;
                        end;

                        tend := Trunc(AlignPos / TabSize)+1+ExtraTabs;
                        tbeg := Trunc(Length(sleft) / TabSize)+PrependTabs;
                        tnum := tend-tbeg;

                        for tabpost:=1 to tnum step 1 do
                        begin
                            sres := sres + Chr(9);
                        end;

                        sres := sres + '=' + ' ' + sright;
                    end;

                    if (UseTabs = 0) then
                    begin

                        for numtabs:=1 to PrependTabs*TabSize step 1 do
                        begin
                            sres := ' ' + sres;
                        end;

                        tbeg := PrependTabs*TabSize + Length(sleft) + 1;
                        tend := (Trunc(AlignPos / TabSize)+1) * TabSize + ExtraTabs*TabSize;

                        for numspaces:=tbeg to tend step 1 do
                        begin
                            sres := sres + ' ';
                        end;

                        sres := sres + '=' + ' ' + sright;
                    end;

                    SetCurrentLine(sres);
                end;
            end;
        end;
    end;

Category: Legacy WOTgreal Macro

##### Views

- Legacy
- Discussion
- Current revision

##### Search