This was built to track decompiler and CFG progress.
function public.addRainParticles()
{
player.isinrain = player.level.name in this.rainlevels;
// RegionId(0)
// RegionId(1)
if (client.disableeffects)
{
lit#9 = "flash";
// RegionId(1)
// RegionId(2)
if (player.platform == lit#9)
{
}
}
// RegionId(4)
if (phi<idx=0, regions=()>)
{
lit#10 = 201;
fn_call#12 = hideimg#11(lit#10);
lit#13 = 0;
return lit#13;
}
// RegionId(5)
else
{
lit#17 = 16;
lit#18 = 2;
temp.screenwh = (screenwidth#16 / lit#17) / lit#18;
lit#21 = 16;
lit#22 = 2;
temp.screenhh = (screenheight#20 / lit#21) / lit#22;
lit#23 = 201;
fn_call#25 = findimg#24(lit#23);
// RegionId(5)
// RegionId(6)
with (fn_call#25)
{
lit#27 = 1;
layer#28 = lit#27;
x#30 = player.x;
y#32 = player.y;
lit#34 = true;
attachtoowner#35 = lit#34;
// RegionId(6)
// RegionId(7)
with (emitter#36)
{
// RegionId(7)
// RegionId(8)
with (particle#37)
{
lit#39 = 2.1;
lifetime#40 = lit#39;
lit#42 = "g4_particle_spark.png";
image#43 = lit#42;
lit#47 = 1;
blue#48 = lit#47;
green#49 = blue#46;
red#50 = green#45;
lit#52 = 0;
alpha#53 = lit#52;
lit#55 = 1;
mode#56 = lit#55;
lit#58 = 0.5;
zoom#59 = lit#58;
lit#61 = 0;
angle#62 = lit#61;
lit#64 = 12;
speed#65 = lit#64;
}
lit#67 = 0.1;
delaymin#68 = lit#67;
lit#70 = 0.2;
delaymax#71 = lit#70;
nrofparticles#73 = temp.screenwh;
lit#75 = 10;
maxparticles#76 = temp.screenwh * lit#75;
lit#78 = true;
checkbelowterrain#79 = lit#78;
lit#81 = true;
continueafterdestroy#82 = lit#81;
lit#84 = true;
autorotation#85 = lit#84;
lit#87 = 0;
lit#88 = -1;
lit#89 = -1;
emissionoffset#90 = {lit#89, lit#88, lit#87};
lit#92 = true;
wraptoclippingbox#93 = lit#92;
lit#95 = true;
cliptoscreen#96 = lit#95;
lit#98 = -1.570796326;
lit#99 = -0.314159265;
lit#100 = 0.314159265;
builtin_fn_call#101 = random(lit#99, lit#100);
this.wind_direction = lit#98 + builtin_fn_call#101;
lit#103 = -25;
builtin_fn_call#104 = cos(this.wind_direction);
this.wind_startx = lit#103 * builtin_fn_call#104;
lit#105 = 2;
lit#106 = 2;
lit#107 = "add";
lit#108 = "x";
lit#109 = 0;
lit#110 = 0;
lit#111 = "once";
fn_call#113 = addLocalModifier#112(lit#111, lit#110, lit#109, lit#108, lit#107, (-temp.screenwh) - lit#106, temp.screenwh + lit#105);
lit#114 = "add";
lit#115 = "y";
lit#116 = 0;
lit#117 = 0;
lit#118 = "once";
fn_call#119 = addLocalModifier#112(lit#118, lit#117, lit#116, lit#115, lit#114, -temp.screenhh, temp.screenhh);
lit#120 = 3;
lit#121 = -3;
lit#122 = "add";
lit#123 = "x";
lit#124 = 0;
lit#125 = 0;
lit#126 = "once";
fn_call#127 = addLocalModifier#112(lit#126, lit#125, lit#124, lit#123, lit#122, lit#121 + this.wind_startx, lit#120 + this.wind_startx);
lit#128 = 6;
lit#129 = "add";
lit#130 = "y";
lit#131 = 0;
lit#132 = 0;
lit#133 = "once";
fn_call#134 = addLocalModifier#112(lit#133, lit#132, lit#131, lit#130, lit#129, (-temp.screenhh) - lit#128, -temp.screenhh);
lit#135 = 1;
lit#136 = 1;
lit#137 = "add";
lit#138 = "z";
lit#139 = 0;
lit#140 = 0;
lit#141 = "once";
fn_call#142 = addLocalModifier#112(lit#141, lit#140, lit#139, lit#138, lit#137, lit#136, lit#135);
lit#143 = "replace";
lit#144 = "angle";
lit#145 = 0;
lit#146 = 0;
lit#147 = "once";
fn_call#148 = addLocalModifier#112(lit#147, lit#146, lit#145, lit#144, lit#143, this.wind_direction, this.wind_direction);
lit#149 = 0.75;
lit#150 = 0;
lit#151 = "replace";
lit#152 = "alpha";
lit#153 = 1;
lit#154 = 0;
lit#155 = "range";
fn_call#156 = addLocalModifier#112(lit#155, lit#154, lit#153, lit#152, lit#151, lit#150, lit#149);
fn_call#158 = emit#157();
// RegionId(9)
// RegionId(10)
with (dropemitter#159)
{
// RegionId(10)
// RegionId(11)
with (particle#37)
{
lit#160 = "g4_particle_ring.png";
image#161 = lit#160;
lit#162 = 0.5;
lifetime#163 = lit#162;
lit#164 = 1;
blue#165 = lit#164;
green#166 = blue#48;
red#167 = green#49;
lit#168 = 0.99;
alpha#169 = lit#168;
lit#170 = 0;
speed#171 = lit#170;
lit#172 = 0;
zoom#173 = lit#172;
lit#175 = 0.5;
stretchy#176 = lit#175;
lit#177 = 0;
layer#178 = lit#177;
lit#179 = 0;
angle#180 = lit#179;
}
lit#181 = 1;
nrofparticles#182 = lit#181;
lit#183 = 0;
lit#184 = 1;
lit#185 = 0;
emissionoffset#186 = {lit#185, lit#184, lit#183};
lit#187 = 0;
lit#188 = 0.99;
lit#189 = "replace";
lit#190 = "alpha";
lit#191 = 0.5;
lit#192 = 0;
lit#193 = "range";
fn_call#194 = addLocalModifier#112(lit#193, lit#192, lit#191, lit#190, lit#189, lit#188, lit#187);
lit#195 = 0.5;
lit#196 = 0;
lit#197 = "replace";
lit#198 = "zoom";
lit#199 = 0.5;
lit#200 = 0;
lit#201 = "range";
fn_call#202 = addLocalModifier#112(lit#201, lit#200, lit#199, lit#198, lit#197, lit#196, lit#195);
}
// RegionId(13)
// RegionId(14)
with (dropwateremitter#203)
{
// RegionId(14)
// RegionId(15)
with (particle#37)
{
lit#204 = 0.75;
lifetime#205 = lit#204;
lit#206 = "g4_particle_ring.png";
image#207 = lit#206;
lit#208 = 1;
blue#209 = lit#208;
green#210 = blue#165;
red#211 = green#166;
lit#212 = 0.99;
alpha#213 = lit#212;
lit#214 = 0;
speed#215 = lit#214;
lit#216 = 0;
zoom#217 = lit#216;
lit#218 = 0.5;
stretchy#219 = lit#218;
lit#220 = 0;
layer#221 = lit#220;
lit#222 = 0;
angle#223 = lit#222;
}
lit#224 = 1;
nrofparticles#225 = lit#224;
lit#226 = 0;
lit#227 = 1;
lit#228 = 0;
emissionoffset#229 = {lit#228, lit#227, lit#226};
lit#230 = 0;
lit#231 = 0.99;
lit#232 = "replace";
lit#233 = "alpha";
lit#234 = 0.75;
lit#235 = 0;
lit#236 = "range";
fn_call#237 = addLocalModifier#112(lit#236, lit#235, lit#234, lit#233, lit#232, lit#231, lit#230);
lit#238 = 0.75;
lit#239 = 0;
lit#240 = "replace";
lit#241 = "zoom";
lit#242 = 0.75;
lit#243 = 0;
lit#244 = "range";
fn_call#245 = addLocalModifier#112(lit#244, lit#243, lit#242, lit#241, lit#240, lit#239, lit#238);
}
}
}
lit#247 = 0;
this.thundermode = lit#247;
lit#249 = 0;
this.thunderintensity = lit#249;
lit#251 = 0;
this.thunderflashes = lit#251;
lit#252 = "";
lit#253 = "Thunder";
lit#254 = 3;
fn_call#256 = scheduleevent#255(lit#254, lit#253, lit#252);
lit#257 = 0;
return lit#257;
}
}
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 36