mirror of
https://git.huckle.dev/Huckles-Minecraft-Archive/jpexs-decompiler.git
synced 2026-09-26 09:31:45 +00:00
Added: AS1/2 Debugging - _global variable accessible
Added: AS Debugging - Variables with flag DontEnumerate are hidden by default (can be changed in Advanced Settings)
This commit is contained in:
@@ -34,6 +34,7 @@ import com.jpexs.debugger.flash.messages.in.InErrorException;
|
||||
import com.jpexs.debugger.flash.messages.in.InFrame;
|
||||
import com.jpexs.debugger.flash.messages.in.InGetVariable;
|
||||
import com.jpexs.debugger.flash.messages.in.InNumScript;
|
||||
import com.jpexs.debugger.flash.messages.in.InPlaceObject;
|
||||
import com.jpexs.debugger.flash.messages.in.InProcessTag;
|
||||
import com.jpexs.debugger.flash.messages.in.InScript;
|
||||
import com.jpexs.debugger.flash.messages.in.InSetBreakpoint;
|
||||
@@ -45,6 +46,7 @@ import com.jpexs.debugger.flash.messages.out.OutGetBreakReason;
|
||||
import com.jpexs.debugger.flash.messages.out.OutPlay;
|
||||
import com.jpexs.debugger.flash.messages.out.OutProcessedTag;
|
||||
import com.jpexs.debugger.flash.messages.out.OutRewind;
|
||||
import com.jpexs.debugger.flash.messages.out.OutStopDebug;
|
||||
import com.jpexs.debugger.flash.messages.out.OutSwfInfo;
|
||||
import com.jpexs.decompiler.flash.SWF;
|
||||
import com.jpexs.decompiler.flash.configuration.Configuration;
|
||||
@@ -53,6 +55,7 @@ import java.io.IOException;
|
||||
import java.util.ArrayList;
|
||||
import java.util.HashMap;
|
||||
import java.util.HashSet;
|
||||
import java.util.LinkedHashMap;
|
||||
import java.util.LinkedHashSet;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
@@ -111,6 +114,8 @@ public class DebuggerHandler implements DebugConnectionListener {
|
||||
private List<Integer> stackLines = new ArrayList<>();
|
||||
|
||||
private List<SWF> debuggedSwfs = new ArrayList<>();
|
||||
|
||||
private Map<String, Long> placedObjects = new LinkedHashMap<>();
|
||||
|
||||
public static class ActionScriptException extends Exception {
|
||||
|
||||
@@ -723,6 +728,8 @@ public class DebuggerHandler implements DebugConnectionListener {
|
||||
moduleToTraitIndex.clear();
|
||||
moduleToMethodIndex.clear();
|
||||
moduleToSwfIndex.clear();
|
||||
|
||||
placedObjects.clear();
|
||||
|
||||
con.addMessageListener(new DebugMessageListener<InScript>() {
|
||||
@Override
|
||||
@@ -835,6 +842,14 @@ public class DebuggerHandler implements DebugConnectionListener {
|
||||
con.dropMessage(t);
|
||||
}
|
||||
});
|
||||
|
||||
con.addMessageListener(new DebugMessageListener<InPlaceObject>() {
|
||||
@Override
|
||||
public void message(InPlaceObject t) {
|
||||
placedObjects.put(t.path, t.objId);
|
||||
con.dropMessage(t);
|
||||
}
|
||||
});
|
||||
|
||||
InSetBreakpoint isb = con.getMessage(InSetBreakpoint.class);
|
||||
synchronized (this) {
|
||||
@@ -1156,4 +1171,8 @@ public class DebuggerHandler implements DebugConnectionListener {
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
public Map<String, Long> getPlacedObjects() {
|
||||
return new LinkedHashMap<>(placedObjects);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user