Welcome to the GBF Test Portal

This was built to track decompiler and CFG progress.

Decompiler Output

function public.updateSpriteImages(forcecheck#0)
{
    // RegionId(0)
    // RegionId(1)
    if (forcecheck#0) 
    {
        player.isonsnow = player.level.name in this.snowlevels;
    }
    lit#12 = "Winter";
    // RegionId(2)
    // RegionId(3)
    if (serverr.season == lit#12) 
    {
        lit#14 = "classiciphone.gmap";
    }
    phi<idx=1, regions=()> = phi<idx=0, regions=()>;
    lit#16 = null;
    // RegionId(6)
    if (player.oldSprites != lit#16) 
    {
        fn_call#17 = setspritesimage#2(player.oldSprites);
        lit#18 = "";
        player.oldSprites = lit#18;
        lit#54 = 0;
        return lit#54;
    }
    // RegionId(7)
    else
    {
        lit#19 = "bigcity_";
        builtin_fn_call#20 = player.level.name.starts(lit#19);
        // RegionId(8)
        if (builtin_fn_call#20) 
        {
            lit#21 = "sprites_bigcity.png";
            fn_call#22 = setspritesimage#2(lit#21);
            goto RegionId(26);
        }
        // RegionId(9)
        else
        {
            lit#23 = "swamptown_outside";
            builtin_fn_call#24 = player.level.name.starts(lit#23);
            // RegionId(9)
            // RegionId(10)
            if (builtin_fn_call#24) 
            {
                fn_call#26 = gettileset#25();
                lit#27 = "winter";
                builtin_fn_call#28 = fn_call#26.pos(lit#27);
                lit#29 = 0;
                // RegionId(11)
                if (builtin_fn_call#28 < lit#29) 
                {
                    lit#30 = "sprites_new_swamp.png";
                    fn_call#31 = setspritesimage#2(lit#30);
                    goto RegionId(26);
                }
            }
            lit#32 = "easterisland_";
            builtin_fn_call#33 = player.level.name.starts(lit#32);
            // RegionId(12)
            // RegionId(13)
            if (builtin_fn_call#33) 
            {
                lit#34 = "sprites_easterisland-1b.png";
                fn_call#35 = setspritesimage#2(lit#34);
            }
            // RegionId(14)
            else
            {
                fn_call#36 = gettileset#25();
                lit#37 = "cc_nexus_retrotileset.png";
                // RegionId(14)
                // RegionId(15)
                if (fn_call#36 == lit#37) 
                {
                    lit#38 = "dc8bit_sprites_new.png";
                    fn_call#39 = setspritesimage#2(lit#38);
                }
                // RegionId(16)
                else
                {
                    lit#40 = "club_nexus_space_antigravity.nw";
                    // RegionId(16)
                    // RegionId(17)
                    if (player.level.name == lit#40) 
                    {
                        lit#41 = "dcspace_sprites.png";
                        fn_call#42 = setspritesimage#2(lit#41);
                    }
                    // RegionId(18)
                    else
                    {
                        // RegionId(18)
                        // RegionId(19)
                        if (player.isonsnow) 
                        {
                            fn_call#43 = gettileset#25();
                            lit#44 = "winter";
                            builtin_fn_call#45 = fn_call#43.pos(lit#44);
                            lit#46 = 0;
                            // RegionId(19)
                            // RegionId(20)
                            if (builtin_fn_call#45 >= lit#46) 
                            {
                            }
                        }
                        // RegionId(21)
                        // RegionId(22)
                        if (phi<idx=0, regions=()>) 
                        {
                            lit#47 = "sprites_new_winter.png";
                            fn_call#48 = setspritesimage#2(lit#47);
                        }
                        // RegionId(23)
                        else
                        {
                            lit#50 = "";
                            // RegionId(23)
                            // RegionId(24)
                            if (player.level.spritesimage != lit#50) 
                            {
                                fn_call#51 = setspritesimage#2(player.level.spritesimage);
                            }
                            // RegionId(25)
                            else
                            {
                                lit#52 = "sprites_new.png";
                                fn_call#53 = setspritesimage#2(lit#52);
                            }
                        }
                    }
                }
            }
            goto RegionId(26);
        }
    }
}