This was built to track decompiler and CFG progress.
function doMaintenenceGUI()
{
lit#3 = "maintenence.nw";
lit#4 = "restart.nw";
// RegionId(1)
if (!(player.level.name in {lit#4, lit#3}))
{
// RegionId(1)
// RegionId(2)
if (iClassic_Maintenence_Stretch.visible)
{
fn_call#8 = iClassic_Maintenence_Stretch.destroy();
}
// RegionId(3)
// RegionId(4)
if (iClassic_Maintenence_AdWindow.visible)
{
fn_call#10 = iClassic_Maintenence_AdWindow.destroy();
}
lit#11 = 0;
return lit#11;
}
// RegionId(6)
else
{
lit#14 = "restart.nw";
temp.restart = player.level.name == lit#14;
lit#15 = "iClassic_Maintenence_Stretch";
gbf_new_obj#16 = lit#15;
lit#17 = "GuiStretchCtrl";
new_node#18 = new lit#17(gbf_new_obj#16);
gbf_new_obj#19 = new_node#18;
// RegionId(6)
// RegionId(7)
with (gbf_new_obj#16)
{
lit#21 = 0;
x#22 = lit#21;
lit#24 = 0;
y#25 = lit#24;
width#28 = GraalControl.width;
height#30 = GraalControl.height;
lit#32 = 600;
clientwidth#33 = lit#32;
lit#35 = 480;
clientheight#36 = lit#35;
lit#38 = false;
clipchildren#39 = lit#38;
lit#40 = "iClassic_Maintenence_BGcolor";
gbf_new_obj#41 = lit#40;
lit#42 = "GuiControl";
new_node#43 = new lit#42(gbf_new_obj#41);
gbf_new_obj#44 = new_node#43;
// RegionId(7)
// RegionId(8)
with (gbf_new_obj#41)
{
lit#46 = true;
useownprofile#47 = lit#46;
lit#50 = 255;
lit#51 = 32;
lit#52 = 32;
lit#53 = 32;
profile.fillcolor = {lit#53, lit#52, lit#51, lit#50};
lit#55 = true;
profile.opaque = lit#55;
lit#57 = 0;
profile.border = lit#57;
lit#58 = 0;
y#59 = lit#58;
x#60 = y#25;
width#61 = iClassic_Maintenence_Stretch.width;
height#62 = iClassic_Maintenence_Stretch.height;
}
fn_call#64 = addcontrol#63(phi<idx=0, regions=()>);
lit#65 = "iClassic_Maintenence_Splash";
gbf_new_obj#66 = lit#65;
lit#67 = "GuiShowImgCtrl";
new_node#68 = new lit#67(gbf_new_obj#66);
gbf_new_obj#69 = new_node#68;
// RegionId(9)
// RegionId(10)
with (gbf_new_obj#66)
{
lit#71 = "classic_maintenence_splash.png";
image#72 = lit#71;
lit#73 = 300;
width#74 = lit#73;
lit#75 = 300;
height#76 = lit#75;
lit#77 = 2;
lit#78 = 16;
x#79 = ((iClassic_Maintenence_Stretch.clientwidth - width#74) / lit#77) - lit#78;
lit#80 = 2;
lit#81 = 48;
y#82 = ((iClassic_Maintenence_Stretch.clientheight - height#76) / lit#80) - lit#81;
fn_call#84 = bringtofront#83();
}
fn_call#85 = addcontrol#63(phi<idx=0, regions=()>);
lit#86 = "iClassic_Maintenence_Text";
gbf_new_obj#87 = lit#86;
lit#88 = "GuiMLTextCtrl";
new_node#89 = new lit#88(gbf_new_obj#87);
gbf_new_obj#90 = new_node#89;
// RegionId(11)
// RegionId(12)
with (gbf_new_obj#87)
{
profile#92 = GuiBlueMLTextProfile#91;
lit#93 = true;
useownprofile#94 = lit#93;
lit#95 = 255;
lit#96 = 0;
lit#97 = 0;
lit#98 = 0;
profile.fillcolor = {lit#98, lit#97, lit#96, lit#95};
lit#99 = true;
profile.opaque = lit#99;
lit#100 = 1;
profile.border = lit#100;
width#101 = iClassic_Maintenence_Stretch.width;
lit#102 = 64;
height#103 = lit#102;
lit#104 = 2;
lit#105 = 16;
x#106 = ((iClassic_Maintenence_Stretch.clientwidth - width#101) / lit#104) - lit#105;
lit#107 = 2;
lit#108 = 128;
y#109 = ((iClassic_Maintenence_Stretch.clientheight - height#103) / lit#107) + lit#108;
// RegionId(12)
// RegionId(13)
if (temp.restart)
{
lit#111 = "Please close and re-open GraalOnline Classic.";
temp.txt = lit#111;
}
// RegionId(14)
else
{
lit#112 = "GraalOnline Classic is currently under maintenance.\nWe will return very soon.";
temp.txt = lit#112;
}
lit#114 = "<center><b><font face=tempsitc size=20>";
lit#115 = "</font></b></center>";
text#116 = (lit#114 @ temp.txt) @ lit#115;
fn_call#117 = bringtofront#83();
}
fn_call#118 = addcontrol#63(phi<idx=0, regions=()>);
}
fn_call#119 = addcontrol#63(phi<idx=0, regions=()>);
lit#120 = "Classic_MenuTextProfile";
gbf_new_obj#121 = lit#120;
lit#122 = "GuiTextProfile";
new_node#123 = new lit#122(gbf_new_obj#121);
gbf_new_obj#124 = new_node#123;
// RegionId(17)
// RegionId(18)
with (gbf_new_obj#121)
{
lit#126 = false;
autosizewidth#127 = lit#126;
lit#129 = false;
autosizeheight#130 = lit#129;
lit#132 = "tempus";
fonttype#133 = lit#132;
lit#135 = 30;
fontsize#136 = lit#135;
lit#138 = 224;
lit#139 = 255;
lit#140 = 224;
fontcolor#141 = {lit#140, lit#139, lit#138};
lit#143 = true;
textgradient#144 = lit#143;
lit#146 = 97;
lit#147 = 109;
lit#148 = 61;
gradientcolor#149 = {lit#148, lit#147, lit#146};
lit#151 = true;
textshadow#152 = lit#151;
lit#154 = 224;
lit#155 = 255;
lit#156 = 224;
shadowcolor#157 = {lit#156, lit#155, lit#154};
lit#159 = 1;
lit#160 = 0;
shadowoffset#161 = {lit#160, lit#159};
lit#163 = "center";
align#164 = lit#163;
}
fn_call#165 = addcontrol#63(phi<idx=0, regions=()>);
lit#166 = "iClassic_Maintenence_AdWindow";
gbf_new_obj#167 = lit#166;
lit#168 = "GuiStretchCtrl";
new_node#169 = new lit#168(gbf_new_obj#167);
gbf_new_obj#170 = new_node#169;
// RegionId(19)
// RegionId(20)
with (gbf_new_obj#167)
{
lit#171 = true;
useownprofile#172 = lit#171;
lit#174 = false;
profile.modal = lit#174;
lit#175 = 0;
lit#176 = 0;
fn_call#178 = resize#177(lit#176, lit#175, GraalControl.width, GraalControl.height);
lit#180 = "width";
horizSizing#181 = lit#180;
lit#183 = "height";
vertSizing#184 = lit#183;
lit#186 = 320;
lit#187 = 480;
clientextent#188 = {lit#187, lit#186};
lit#189 = false;
clipchildren#190 = lit#189;
lit#191 = "iClassic_Maintenence_StartOption3Icon";
gbf_new_obj#192 = lit#191;
lit#193 = "GuiBitmapCtrl";
new_node#194 = new lit#193(gbf_new_obj#192);
gbf_new_obj#195 = new_node#194;
// RegionId(20)
// RegionId(21)
with (gbf_new_obj#192)
{
profile#197 = Classic_BackProfile#196;
lit#198 = true;
useownprofile#199 = lit#198;
lit#200 = true;
profile.modal = lit#200;
lit#201 = 48;
lit#202 = 46;
lit#203 = 264;
lit#204 = 8;
fn_call#205 = resize#177(lit#204, lit#203, lit#202, lit#201);
lit#207 = "classiciphone_eraicon.png";
bitmap#208 = lit#207;
}
fn_call#209 = addcontrol#63(phi<idx=0, regions=()>);
lit#210 = "iClassic_Maintenence_StartOption3";
gbf_new_obj#211 = lit#210;
lit#212 = "GuiMLTextCtrl";
new_node#213 = new lit#212(gbf_new_obj#211);
gbf_new_obj#214 = new_node#213;
// RegionId(22)
// RegionId(23)
with (gbf_new_obj#211)
{
profile#216 = Classic_MenuTextProfile#215;
lit#217 = true;
useownprofile#218 = lit#217;
lit#219 = true;
profile.modal = lit#219;
lit#220 = 24;
profile.fontsize = lit#220;
lit#222 = -3;
profile.linespacing = lit#222;
lit#223 = "left";
profile.align = lit#223;
lit#225 = 50;
lit#226 = 200;
lit#227 = 265;
lit#228 = 58;
bounds#229 = {lit#228, lit#227, lit#226, lit#225};
lit#230 = "Get Graal Era!";
builtin_fn_call#231 = _(lit#230);
lit#232 = "<br><font size=21><center>Guns and Gangs!";
text#233 = builtin_fn_call#231 @ lit#232;
}
fn_call#234 = addcontrol#63(phi<idx=0, regions=()>);
lit#235 = "iClassic_Maintenence_StartOption4Icon";
gbf_new_obj#236 = lit#235;
lit#237 = "GuiBitmapCtrl";
new_node#238 = new lit#237(gbf_new_obj#236);
gbf_new_obj#239 = new_node#238;
// RegionId(24)
// RegionId(25)
with (gbf_new_obj#236)
{
profile#240 = Classic_BackProfile#196;
lit#241 = true;
useownprofile#242 = lit#241;
lit#243 = true;
profile.modal = lit#243;
lit#244 = 48;
lit#245 = 46;
lit#246 = 264;
lit#247 = 238;
fn_call#248 = resize#177(lit#247, lit#246, lit#245, lit#244);
lit#249 = "classiciphone_zoneicon.png";
bitmap#250 = lit#249;
}
fn_call#251 = addcontrol#63(phi<idx=0, regions=()>);
lit#252 = "iClassic_Maintenence_StartOption4";
gbf_new_obj#253 = lit#252;
lit#254 = "GuiMLTextCtrl";
new_node#255 = new lit#254(gbf_new_obj#253);
gbf_new_obj#256 = new_node#255;
// RegionId(26)
// RegionId(27)
with (gbf_new_obj#253)
{
profile#257 = Classic_MenuTextProfile#215;
lit#258 = true;
useownprofile#259 = lit#258;
lit#260 = true;
profile.modal = lit#260;
lit#261 = 24;
profile.fontsize = lit#261;
lit#262 = -3;
profile.linespacing = lit#262;
lit#263 = "left";
profile.align = lit#263;
lit#264 = 50;
lit#265 = 190;
lit#266 = 265;
lit#267 = 288;
bounds#268 = {lit#267, lit#266, lit#265, lit#264};
lit#269 = "Get Zone Shooter!";
builtin_fn_call#270 = _(lit#269);
lit#271 = "<br><font size=21><center>Like Star Wars!";
text#272 = builtin_fn_call#270 @ lit#271;
}
fn_call#273 = addcontrol#63(phi<idx=0, regions=()>);
}
fn_call#274 = addcontrol#63(phi<idx=0, regions=()>);
fn_call#276 = iClassic_Maintenence_AdWindow.showtop();
lit#277 = 0;
return lit#277;
}
}
Use the mouse wheel + shift to zoom in and out, and click and drag to pan.
Use the mouse wheel + shift to zoom in and out, and click and drag to pan.
Step 1 of 54