script 1 (void) { int i = 1<<16; }
script 1 (void) { int i = 1.0; }
//Loads of scripts to break windows
script 3 (int id)
{
int var0;
SetLineSpecial(id,0,0,0,0,0);
thingsound(id, "glass", 127);
Setlineblocking(id,off);
setlinetexture(id, SIDE_FRONT, TEXTURE_MIDDLE, "NJWIN3A");
setlinetexture(id, SIDE_BACK, TEXTURE_MIDDLE, "NJWIN3A");
delay(const:1);
smashcount ++;
var0 = 20;
while(var0 > 0)
{
var0--;
Thing_ProjectileGravity(id, 54, random(0, 255), random(10, 40), random(5, 20));
}
}
script 3 (int local0) // addr = 2980, flags=0000
{
int local1;
int goto_block;
switch (goto_block) {
case 0:
SetLineSpecial(local0, 0, 0, 0, 0, 0, 0);
ThingSound(local0, "glass", 127);
SetLineBlocking(local0, 0);
SetLineTexture(local0, 0, 1, "NJWIN3A");
SetLineTexture(local0, 1, 1, "NJWIN3A");
Delay(const: 1);
map1++;
local1 = 20;
goto_block = 2; restart;
case 2:
if (!(local1 > 0)) {
Terminate;
}
local1--;
Thing_ProjectileGravity(local0, 54, Random(0, 255), Random(10, 40), Random(5, 20));
goto_block = 2; restart;
}
}
script 3 (int <id|local0>)
{
int <var0|local1>;
int <undefined|goto_block>; // autogenerated code, used to store information that determines jumps in code
// initial values
// int local0 has a parameter value
// int local1 starts at 0, int goto_block starts at 0
switch (goto_block) {
case 0: // this will always be executed first, as the goto_block is always 0 until otherwise assigned
SetLineSpecial(local0, 0, 0, 0, 0, 0, 0);
ThingSound(local0, "glass", 127);
SetLineBlocking(local0, 0);
SetLineTexture(local0, 0, 1, "NJWIN3A");
SetLineTexture(local0, 1, 1, "NJWIN3A");
Delay(const: 1);
map1++; // the map-level variable formerly known as smashcount
local1 = 20; // var0 = 20
goto_block = 2; // value is set to 2; if it remains 2 when this switch is subsequently triggered, that will determine the next code block
restart; // script restart. no instructions prior to the switch change any values. The goto_block is 2.
case 2:
if (! (local1 > 0)) // the while condition was: while(var0 > 0). If the while condition is false, execution continues after the conditional code-block
{
terminate; // the conditional code-block is the end of the script, so calling terminate is an effective response to the loop-condition proving false
}
// if you did reach this point, it implies that the loop condition was satisfied
// code following this line thus corresponds to the marked part in: while (var0 > 0) { /* THIS IS THE MARKED PART */ }
local1--; // var0--
Thing_ProjectileGravity(local0, 54, Random(0, 255), Random(10, 40), Random(5, 20));
goto_block = 2; // ensuring that the next jump is to the right code block
restart; // making the jump
}
}
Ral22 wrote:I seem unable to run this. I've tried both the stand-alone and the version that requires Python (After I installed Python 2.7.2). I'm running it on Windows 7, if it helps.
To summarize what happens, it opens, I see all the instructions in the programs menu for a split second, and then it quits out on it's own.
Any ideas? Or is there a different ACS decompiler I should be using?
Yeah, try not bumping 2 year old threads.cortlong50 wrote:EXACT SAME THING. any ideas?
Spoiler:
echo off
cls
set /p fname=Filename:
listacs -d %fname% -o %fname%.acs
pause
exit
Return to Editors / Asset Manipulation
Users browsing this forum: No registered users and 0 guests