diff options
| author | Fuwn <[email protected]> | 2021-05-03 16:38:41 -0700 |
|---|---|---|
| committer | Fuwn <[email protected]> | 2021-05-03 16:38:41 -0700 |
| commit | e1e781bb2135ef78592226f1a3eaba4925702f1f (patch) | |
| tree | 8a5b590463ed413e1c6eabb719130e701b95ca63 /NET/worlds/console | |
| download | worlds.jar-main.tar.xz worlds.jar-main.zip | |
Diffstat (limited to 'NET/worlds/console')
194 files changed, 81924 insertions, 0 deletions
diff --git a/NET/worlds/console/AboutDialog.java b/NET/worlds/console/AboutDialog.java new file mode 100644 index 0000000..16fca48 --- /dev/null +++ b/NET/worlds/console/AboutDialog.java @@ -0,0 +1,175 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import NET.worlds.core.IniFile; +/* */ import NET.worlds.core.Std; +/* */ import NET.worlds.network.NetUpdate; +/* */ import java.awt.BorderLayout; +/* */ import java.awt.Button; +/* */ import java.awt.Color; +/* */ import java.awt.Component; +/* */ import java.awt.Event; +/* */ import java.awt.Font; +/* */ import java.awt.Frame; +/* */ import java.awt.GridBagConstraints; +/* */ import java.awt.GridBagLayout; +/* */ import java.awt.Label; +/* */ import java.awt.Panel; +/* */ import java.awt.TextArea; +/* */ import java.util.Enumeration; +/* */ import java.util.Vector; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public class AboutDialog +/* */ extends PolledDialog +/* */ { +/* */ private static final long serialVersionUID = -2810306367601133331L; +/* 63 */ Button okButton = new Button(Console.message("OK")); +/* */ +/* 65 */ private static Font font = new Font( +/* 66 */ Console.message("ConsoleFont"), 0, 12); +/* 67 */ private static Font bfont = new Font( +/* 68 */ Console.message("ButtonFont"), 0, 12); +/* */ String apptitle; +/* */ +/* */ AboutDialog(String apptitle, Frame frame) +/* */ { +/* 73 */ super(frame, null, Console.message("About") + Std.getProductName(), true); +/* 74 */ this.apptitle = apptitle; +/* 75 */ ready(); +/* */ } +/* */ +/* */ private Component setConstraints(GridBagLayout gbag, Component comp, GridBagConstraints c) +/* */ { +/* 80 */ gbag.setConstraints(comp, c); +/* 81 */ return comp; +/* */ } +/* */ +/* */ protected void build() +/* */ { +/* 86 */ setBackground(Color.white); +/* */ +/* 88 */ setLayout(new BorderLayout()); +/* 89 */ add("North", new Filler(10, 10)); +/* 90 */ add("South", new Filler(10, 10)); +/* 91 */ add("East", new Filler(10, 10)); +/* 92 */ add("West", new Filler(10, 10)); +/* */ +/* 94 */ GridBagLayout gbag = new GridBagLayout(); +/* 95 */ Panel p = new Panel(gbag); +/* 96 */ p.setFont(font); +/* */ +/* 98 */ GridBagConstraints c = new GridBagConstraints(); +/* 99 */ c.fill = 0; +/* 100 */ c.weightx = 1.0D; +/* 101 */ c.weighty = 1.0D; +/* 102 */ c.gridwidth = 0; +/* 103 */ c.gridheight = 1; +/* 104 */ String logo = IniFile.override().getIniString("AboutLogo", Console.message("wlogo.gif")); +/* 105 */ p.add(setConstraints(gbag, new ImageCanvas(logo), c)); +/* 106 */ c.weightx = 0.0D; +/* 107 */ c.weighty = 0.0D; +/* 108 */ p.add(setConstraints(gbag, new Label(this.apptitle), c)); +/* 109 */ if (Gamma.getShaper() != null) { +/* 110 */ p.add(setConstraints( +/* 111 */ gbag, +/* 112 */ new Label(Console.message("about-box-build-date") + +/* 113 */ " " + +/* 114 */ Std.getBuildInfo() + ":" + Std.getJavaVersion()), c)); +/* */ } else { +/* 116 */ p.add(setConstraints( +/* 117 */ gbag, +/* 118 */ new Label(Console.message("about-box-rev") + +/* 119 */ " " + +/* 120 */ Std.getVersion() + +/* 121 */ " : " + Std.getJavaVersion()), c)); +/* */ } +/* 123 */ Vector<String> worlds = NetUpdate.aboutWorlds(); +/* 124 */ TextArea worldList = new TextArea(10, 40); +/* 125 */ worldList.setEditable(false); +/* */ +/* 127 */ p.add(setConstraints(gbag, worldList, c)); +/* */ +/* 129 */ for (Enumeration<String> e = worlds.elements(); e.hasMoreElements();) { +/* 130 */ worldList.append((String)e.nextElement() + "\n"); +/* */ } +/* */ +/* 133 */ p.add(setConstraints(gbag, +/* 134 */ new Label(Console.message("about-box-1")), c)); +/* 135 */ p.add(setConstraints(gbag, +/* 136 */ new Label(Console.message("about-box-2")), c)); +/* */ +/* 138 */ this.okButton.setFont(bfont); +/* 139 */ p.add(setConstraints(gbag, this.okButton, c)); +/* */ +/* 141 */ add("Center", p); +/* */ } +/* */ +/* */ @Deprecated +/* */ public boolean action(Event event, Object what) +/* */ { +/* 147 */ if (event.target == this.okButton) +/* 148 */ return done(true); +/* 149 */ return false; +/* */ } +/* */ +/* */ @Deprecated +/* */ public boolean keyDown(Event event, int key) +/* */ { +/* 155 */ if ((key == 27) || (key == 10)) +/* 156 */ return done(true); +/* 157 */ return super.keyDown(event, key); +/* */ } +/* */ +/* */ +/* */ +/* */ public void setVisible(boolean visible) +/* */ { +/* 164 */ super.setVisible(visible); +/* 165 */ if (visible) { +/* 166 */ this.okButton.requestFocus(); +/* */ } +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\AboutDialog.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/ActionDialog.java b/NET/worlds/console/ActionDialog.java new file mode 100644 index 0000000..c5f418e --- /dev/null +++ b/NET/worlds/console/ActionDialog.java @@ -0,0 +1,327 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import NET.worlds.core.IniFile; +/* */ import NET.worlds.core.ServerTableManager; +/* */ import java.awt.BorderLayout; +/* */ import java.awt.Color; +/* */ import java.awt.Component; +/* */ import java.awt.Event; +/* */ import java.awt.GridLayout; +/* */ import java.awt.Panel; +/* */ import java.awt.Point; +/* */ import java.util.Vector; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ class ActionDialog +/* */ extends PolledDialog +/* */ implements ImageButtonsCallback +/* */ { +/* */ private static final long serialVersionUID = -1190930869038557992L; +/* 157 */ BorderLayout overall = new BorderLayout(); +/* */ +/* */ ActionDialog(Vector<String> inNames) { +/* 160 */ super(Console.getFrame(), null, Console.message("Actions"), false); +/* */ +/* 162 */ String[] hiddenActions = ServerTableManager.instance().getTable( +/* 163 */ "hiddenActions"); +/* */ +/* 165 */ String[] actionAliases = ServerTableManager.instance().getTable( +/* 166 */ "actionAliases"); +/* */ +/* 168 */ if (IniFile.gamma().getIniInt("HideActions", 1) == 0) { +/* 169 */ hiddenActions = null; +/* */ } +/* 171 */ this.names = new Vector(); +/* 172 */ for (int i = 0; i < inNames.size(); i++) { +/* 173 */ boolean hide = false; +/* */ +/* 175 */ if (hiddenActions != null) { +/* 176 */ String inStr = (String)inNames.elementAt(i); +/* 177 */ inStr = inStr.toLowerCase(); +/* 178 */ for (int j = 0; j < hiddenActions.length; j++) { +/* 179 */ if (inStr.equals(hiddenActions[j])) { +/* 180 */ hide = true; +/* */ } +/* */ } +/* */ } +/* 184 */ if (!hide) { +/* 185 */ String prettyName = (String)inNames.elementAt(i); +/* */ +/* 187 */ if (actionAliases != null) { +/* 188 */ String inStr = prettyName; +/* 189 */ inStr = inStr.toLowerCase(); +/* 190 */ for (int j = 0; j < actionAliases.length; j += 2) { +/* 191 */ if (inStr.equals(actionAliases[j])) { +/* 192 */ prettyName = actionAliases[(j + 1)]; +/* */ } +/* */ } +/* */ } +/* 196 */ this.names.addElement(upperFirst(prettyName)); +/* */ } +/* */ } +/* */ +/* 200 */ setResizable(false); +/* 201 */ setAlignment(2); +/* 202 */ setLayout(this.overall); +/* */ +/* 204 */ ready(); +/* */ } +/* */ +/* */ +/* 208 */ static Point lastWindowLocation = null; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ protected boolean done(boolean confirmed) +/* */ { +/* 216 */ ActionsPart.showDialog = false; +/* 217 */ lastWindowLocation = getLocation(); +/* 218 */ return super.done(confirmed); +/* */ } +/* */ +/* */ +/* */ private static String upperFirst(String text) +/* */ { +/* 224 */ String ret = text.substring(0, 1).toUpperCase(); +/* 225 */ if (text.length() > 1) { +/* 226 */ ret = ret + text.substring(1); +/* */ } +/* */ +/* 229 */ ret = ret.replace('_', ' '); +/* */ +/* 231 */ return ret; +/* */ } +/* */ +/* */ +/* 235 */ private Vector<TextImageButtons> hunks = new Vector(); +/* */ +/* 237 */ private Vector<String> names = new Vector(); +/* */ +/* */ private static final int buttonsPerHunk = 1; +/* */ +/* */ private static final int buttonWidth = 72; +/* */ +/* 243 */ private static final int[] buttonHeights = { 16 }; +/* */ +/* 245 */ private static final int[] xText = { 22 }; +/* */ +/* 247 */ private static final String topImageName = IniFile.override().getIniString( +/* 248 */ "actionsTopGif", Console.message("actt.gif")); +/* 249 */ private static final String buttonImageName = IniFile.override() +/* 250 */ .getIniString("actionsButtonGif", "actm.gif"); +/* 251 */ private static final String bottomImageName = IniFile.override() +/* 252 */ .getIniString("actionsBottomGif", "actb.gif"); +/* */ +/* */ public synchronized Object imageButtonsCallback(Component who, int which) { +/* 255 */ int whichHunk = this.hunks.indexOf(who); +/* 256 */ if (whichHunk == -1) { +/* 257 */ return null; +/* */ } +/* 259 */ Console.wake(); +/* 260 */ ActionsPart.actionToPerform = whichHunk * 1 + which; +/* 261 */ return null; +/* */ } +/* */ +/* */ protected void build() +/* */ { +/* 266 */ int numHunks = (this.names.size() + 1 - 1) / 1; +/* 267 */ int numRows = (numHunks + 1) / 2; +/* 268 */ numHunks = numRows * 2; +/* */ +/* 270 */ Panel hunky = new Panel(new GridLayout(numRows, 2)); +/* 271 */ hunky.setBackground(Color.black); +/* */ +/* 273 */ int nextNameIndex = 0; +/* 274 */ for (int i = 0; i < numHunks; i++) +/* */ { +/* 276 */ String[] strings = new String[1]; +/* 277 */ for (int s = 0; s < 1; nextNameIndex++) { +/* 278 */ if (nextNameIndex < this.names.size()) { +/* 279 */ strings[s] = ((String)this.names.elementAt(nextNameIndex)); +/* */ } +/* 277 */ s++; +/* */ } +/* */ +/* */ +/* 281 */ TextImageButtons hunk = new TextImageButtons(buttonImageName, +/* 282 */ 72, buttonHeights, xText, strings, this); +/* */ +/* 284 */ this.hunks.addElement(hunk); +/* 285 */ hunky.add(hunk); +/* */ } +/* */ +/* 288 */ add("North", new ImageCanvas(topImageName)); +/* 289 */ add("Center", hunky); +/* 290 */ add("South", new ImageCanvas(bottomImageName)); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ protected void initialSize(int width, int height) +/* */ { +/* 299 */ if (lastWindowLocation == null) { +/* 300 */ super.initialSize(width, height); +/* */ } else { +/* 302 */ setLocation(lastWindowLocation); +/* 303 */ setSize(width, height); +/* */ } +/* */ } +/* */ +/* */ +/* */ @Deprecated +/* */ public boolean handleEvent(Event event) +/* */ { +/* 311 */ if (event.id == 1004) { +/* 312 */ Console.getFrame().requestFocus(); +/* 313 */ return true; +/* */ } +/* 315 */ return super.handleEvent(event); +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\ActionDialog.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/ActionsPart.java b/NET/worlds/console/ActionsPart.java new file mode 100644 index 0000000..393b692 --- /dev/null +++ b/NET/worlds/console/ActionsPart.java @@ -0,0 +1,164 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import NET.worlds.scape.FrameEvent; +/* */ import NET.worlds.scape.InventoryAction; +/* */ import NET.worlds.scape.InventoryItem; +/* */ import NET.worlds.scape.InventoryManager; +/* */ import NET.worlds.scape.Pilot; +/* */ import java.awt.Container; +/* */ import java.awt.Event; +/* */ import java.util.Vector; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public class ActionsPart +/* */ implements FramePart +/* */ { +/* 39 */ static int actionToPerform = -1; +/* */ +/* */ private Pilot curPilot; +/* */ +/* */ private Vector<String> curAnimations; +/* */ +/* */ private int numPilotAnims; +/* */ +/* */ private static ActionsPart activePart; +/* */ private static ActionDialog dialog; +/* */ static boolean showDialog; +/* */ +/* */ public void present() +/* */ { +/* 53 */ showDialog = true; +/* 54 */ this.curPilot = null; +/* */ } +/* */ +/* */ +/* */ +/* */ public void activate(Console c, Container f, Console prev) {} +/* */ +/* */ +/* */ +/* */ public void deactivate() {} +/* */ +/* */ +/* */ @Deprecated +/* */ public boolean action(Event event, Object what) +/* */ { +/* 69 */ return false; +/* */ } +/* */ +/* */ public static boolean listEquals(Vector<String> a, Vector<String> b) { +/* 73 */ if ((a == null) || (b == null)) { +/* 74 */ return (a == null ? 1 : 0) == (b == null ? 1 : 0); +/* */ } +/* 76 */ if (a.size() != b.size()) { +/* 77 */ return false; +/* */ } +/* 79 */ int i = a.size(); +/* 80 */ do { Object ao = a.elementAt(i); +/* 81 */ Object bo = b.elementAt(i); +/* 82 */ if ((ao != null) && (bo != null)) { +/* 83 */ if (!ao.equals(bo)) +/* 84 */ return false; +/* 85 */ } else if ((ao != null) || (bo != null)) { +/* 86 */ return false; +/* */ } +/* 79 */ i--; } while (i >= 0); +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* 89 */ return true; +/* */ } +/* */ +/* */ public static void updateActionDialog() { +/* 93 */ if ((activePart != null) && (dialog != null) && (showDialog) && +/* 94 */ (dialog.isVisible())) +/* 95 */ Main.register(new MainCallback() { +/* */ public void mainCallback() { +/* 97 */ ActionsPart.activePart.regenActionDialog(); +/* 98 */ Main.unregister(this); +/* */ } +/* */ }); +/* */ } +/* */ +/* */ public void regenActionDialog() { +/* 104 */ Vector<String> newAnimations = this.curPilot.getAnimationList(); +/* 105 */ this.numPilotAnims = newAnimations.size(); +/* */ +/* */ +/* 108 */ Vector<InventoryItem> specials = InventoryManager.getInventoryManager() +/* 109 */ .getInventoryActionList(); +/* 110 */ for (int i = 0; i < specials.size(); i++) { +/* 111 */ InventoryAction act = (InventoryAction)specials.elementAt(i); +/* 112 */ newAnimations.addElement(act.getItemName()); +/* */ } +/* */ +/* 115 */ if (dialog != null) { +/* 116 */ boolean showWas = showDialog; +/* */ +/* */ +/* 119 */ if ((showWas) && (dialog.isVisible()) && +/* 120 */ (listEquals(newAnimations, this.curAnimations))) { +/* 121 */ return; +/* */ } +/* 123 */ dialog.done(true); +/* 124 */ showDialog = showWas; +/* */ } +/* */ +/* 127 */ this.curAnimations = newAnimations; +/* 128 */ if (showDialog) +/* 129 */ dialog = new ActionDialog(this.curAnimations); +/* */ } +/* */ +/* */ public synchronized boolean handle(FrameEvent f) { +/* 133 */ Pilot pilot = Pilot.getActive(); +/* 134 */ if (pilot != this.curPilot) { +/* 135 */ this.curPilot = pilot; +/* 136 */ activePart = this; +/* 137 */ regenActionDialog(); +/* 138 */ } else if ((actionToPerform != -1) && +/* 139 */ (actionToPerform < this.curAnimations.size())) { +/* 140 */ String act = (String)this.curAnimations.elementAt(actionToPerform); +/* 141 */ if (actionToPerform < this.numPilotAnims) { +/* 142 */ pilot.animate(act); +/* */ } else +/* 144 */ InventoryManager.getInventoryManager().doInventoryAction(act); +/* */ } +/* 146 */ actionToPerform = -1; +/* 147 */ return true; +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\ActionsPart.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/ActiveX.java b/NET/worlds/console/ActiveX.java new file mode 100644 index 0000000..c5a3a4b --- /dev/null +++ b/NET/worlds/console/ActiveX.java @@ -0,0 +1,220 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import NET.worlds.core.IniFile; +/* */ import java.io.IOException; +/* */ import java.io.PrintStream; +/* */ import java.util.Vector; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public class ActiveX +/* */ implements MainCallback, MainTerminalCallback +/* */ { +/* */ private static boolean disabled; +/* */ private static ActiveX _instance; +/* */ private static int _references; +/* */ private static Vector<IUnknown> _referrers; +/* */ private static int _serverLocks; +/* */ private static int _activeComponents; +/* */ private static int _debugLevel; +/* */ +/* */ static +/* */ { +/* 39 */ disabled = IniFile.gamma().getIniInt( +/* 40 */ "DISABLEACTIVEX", 0) != 0; +/* */ +/* */ +/* */ +/* 44 */ _referrers = new Vector(); +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* 53 */ _debugLevel = IniFile.gamma().getIniInt("oledebug", 0); +/* 54 */ if (_debugLevel > 0) { +/* 55 */ System.out.println("OLE DEBUGGING LEVEL = " + _debugLevel); +/* */ } +/* */ } +/* */ +/* */ public static int getDebugLevel() +/* */ { +/* 61 */ return _debugLevel; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public static ActiveX getInstance() +/* */ { +/* 72 */ if (_instance == null) +/* 73 */ _instance = new ActiveX(); +/* 74 */ return _instance; +/* */ } +/* */ +/* */ private ActiveX() +/* */ { +/* 79 */ Main.register(this); +/* */ } +/* */ +/* */ +/* */ public void mainCallback() +/* */ { +/* 85 */ winProc(); +/* */ } +/* */ +/* 88 */ public int _shutdownCounter = 0; +/* */ +/* */ public void terminalCallback() +/* */ { +/* 92 */ assert (this == _instance); +/* 93 */ if ((_serverLocks > 0) || (_activeComponents > 0)) { +/* 94 */ this._shutdownCounter += 1; +/* 95 */ if (this._shutdownCounter == 10) { +/* 96 */ this._shutdownCounter = 0; +/* 97 */ System.out.println("Shutdown ignored: _serverLocks = " + +/* 98 */ _serverLocks + ", _activeComponents = " + +/* 99 */ _activeComponents); +/* 100 */ Exception e = new Exception(); +/* 101 */ e.printStackTrace(System.out); +/* */ } +/* 103 */ return; +/* */ } +/* */ +/* */ +/* 107 */ synchronized (this) { +/* 108 */ if ((!$assertionsDisabled) && (_references != _referrers.size())) throw new AssertionError(); +/* 109 */ while (_references > 0) +/* */ { +/* */ +/* 112 */ for (int i = _referrers.size() - 1; i >= 0; i--) { +/* 113 */ IUnknown pUnk = (IUnknown)_referrers.elementAt(i); +/* */ try { +/* 115 */ pUnk.Release(); +/* */ } catch (OLEInvalidObjectException e) { +/* 117 */ e.printStackTrace(System.out); +/* 118 */ System.out +/* 119 */ .println("ActiveX: misbehaved object detected: " + +/* 120 */ pUnk); +/* 121 */ _referrers.removeElementAt(i); +/* */ } +/* */ } +/* */ +/* */ +/* 126 */ if (_referrers.size() > 0) { +/* 127 */ System.out.println("ActiveX: bad referrers found:"); +/* 128 */ for (int i = _referrers.size() - 1; i >= 0; i--) { +/* 129 */ IUnknown pUnk = (IUnknown)_referrers.elementAt(i); +/* 130 */ System.out.println("\t" + pUnk); +/* */ } +/* */ } +/* */ } +/* */ +/* 135 */ assert (_references == 0); +/* 136 */ Main.unregister(this); +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public static void init(IUnknown referrer) +/* */ throws IOException +/* */ { +/* 150 */ synchronized () { +/* 151 */ assert (!_referrers.contains(referrer)); +/* 152 */ if (_references == 0) { +/* 153 */ initActiveX(); +/* */ } +/* */ +/* */ +/* 157 */ _references += 1; +/* 158 */ _referrers.addElement(referrer); +/* */ +/* 160 */ if ((_debugLevel & 0x1) > 0) { +/* 161 */ System.out.println("ActiveX.init() - refCnt = " + +/* 162 */ _references); +/* */ } +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public static void uninit(IUnknown referrer) +/* */ { +/* 174 */ synchronized () { +/* 175 */ assert (_references > 0); +/* 176 */ assert (_referrers.contains(referrer)); +/* 177 */ _references -= 1; +/* 178 */ if (_references == 0) +/* 179 */ uninitActiveX(); +/* 180 */ _referrers.removeElement(referrer); +/* */ +/* 182 */ if ((_debugLevel & 0x1) > 0) { +/* 183 */ System.out.println("ActiveX.uninit() - refCnt = " + +/* 184 */ _references); +/* */ } +/* */ } +/* */ } +/* */ +/* */ public static synchronized void incServerLocks(int amt) { +/* 190 */ _serverLocks += amt; +/* 191 */ assert (_serverLocks >= 0); +/* */ } +/* */ +/* */ public static synchronized void incActiveComponents(int amt) { +/* 195 */ _activeComponents += amt; +/* 196 */ assert (_activeComponents >= 0); +/* */ } +/* */ +/* */ private static native void initActiveX() +/* */ throws IOException; +/* */ +/* */ private static native void uninitActiveX(); +/* */ +/* */ public static native int getClassFClsID(String paramString1, String paramString2) +/* */ throws IOException; +/* */ +/* */ public static native int getClassFProgID(String paramString1, String paramString2) +/* */ throws IOException; +/* */ +/* */ private static native int getClass(int paramInt, String paramString) +/* */ throws IOException; +/* */ +/* */ private native void winProc(); +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\ActiveX.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/AdBanner.java b/NET/worlds/console/AdBanner.java new file mode 100644 index 0000000..b4abf72 --- /dev/null +++ b/NET/worlds/console/AdBanner.java @@ -0,0 +1,55 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import NET.worlds.core.IniFile; +/* */ import java.io.PrintStream; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public class AdBanner +/* */ { +/* */ public AdBanner(int width, int height, String url) +/* */ { +/* 17 */ if (IniFile.gamma().getIniInt("NoAdBanners", 0) == 1) { +/* 18 */ return; +/* */ } +/* 20 */ Console c = Console.getActive(); +/* 21 */ if ((c != null) && ((c instanceof DefaultConsole))) { +/* 22 */ DefaultConsole dc = (DefaultConsole)c; +/* */ +/* */ try +/* */ { +/* 26 */ RenderCanvas canvas = dc.getRender(); +/* 27 */ if (canvas == null) { +/* 28 */ return; +/* */ } +/* 30 */ this.wc = new WebControl(canvas, width, height, false, true, true); +/* 31 */ this.wc.activate(); +/* 32 */ this.wc.setURL(url); +/* */ } +/* */ catch (NoWebControlException e) { +/* 35 */ System.out.println("Error creating IE control; " + e.toString()); +/* */ } +/* */ } +/* */ } +/* */ +/* */ +/* */ public void detach() +/* */ { +/* 43 */ if (this.wc != null) +/* 44 */ this.wc.detach(); +/* 45 */ this.wc = null; +/* */ } +/* */ +/* 48 */ private WebControl wc = null; +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\AdBanner.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/AdPart.java b/NET/worlds/console/AdPart.java new file mode 100644 index 0000000..612761d --- /dev/null +++ b/NET/worlds/console/AdPart.java @@ -0,0 +1,325 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import NET.worlds.core.IniFile; +/* */ import NET.worlds.core.Std; +/* */ import NET.worlds.network.URL; +/* */ import NET.worlds.scape.BGLoaded; +/* */ import NET.worlds.scape.BackgroundLoader; +/* */ import NET.worlds.scape.Camera; +/* */ import NET.worlds.scape.FrameEvent; +/* */ import NET.worlds.scape.LoadedURLSelf; +/* */ import NET.worlds.scape.Material; +/* */ import NET.worlds.scape.Pilot; +/* */ import NET.worlds.scape.Rect; +/* */ import NET.worlds.scape.Room; +/* */ import NET.worlds.scape.SendURLAction; +/* */ import NET.worlds.scape.SuperRoot; +/* */ import NET.worlds.scape.Transform; +/* */ import NET.worlds.scape.URLSelf; +/* */ import NET.worlds.scape.WObject; +/* */ import NET.worlds.scape.World; +/* */ import java.awt.Container; +/* */ import java.awt.Dimension; +/* */ import java.awt.Event; +/* */ import java.awt.Point; +/* */ import java.io.File; +/* */ import java.text.MessageFormat; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public class AdPart +/* */ extends RenderCanvas +/* */ implements LoadedURLSelf, BGLoaded +/* */ { +/* */ private static final long serialVersionUID = 4290496811864911807L; +/* */ private static World world; +/* */ private static Room room; +/* 64 */ private static Material[] faces = new Material[4]; +/* */ +/* */ private static WObject cube; +/* */ +/* */ private static Transform cubeStart; +/* */ private float angle; +/* 70 */ private int currentFace = -1; +/* 71 */ private int lastAd = -1; +/* 72 */ private boolean lastAdIsRemote = false; +/* */ private boolean initialized; +/* */ URL image0; +/* */ +/* 76 */ public AdPart(URL defaultImage) { super(new Dimension(130, 130)); +/* 77 */ this.image0 = defaultImage; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ private void init() +/* */ { +/* 85 */ if (!this.initialized) { +/* 86 */ if (world == null) { +/* 87 */ World.load(URL.make("home:ad.world"), this, true); +/* */ } else +/* 89 */ initCamera(); +/* */ } +/* */ } +/* */ +/* */ private void initCamera() { +/* 94 */ setCamera(new Camera()); +/* 95 */ room.add(getCamera()); +/* 96 */ getCamera().moveTo(room.getDefaultPosition()).spin( +/* 97 */ room.getDefaultOrientationAxis(), room.getDefaultOrientation()); +/* */ } +/* */ +/* */ +/* */ public synchronized void loadedURLSelf(URLSelf o, URL url, String err) +/* */ { +/* 103 */ if (world != null) { +/* 104 */ initCamera(); +/* 105 */ return; +/* */ } +/* */ +/* 108 */ if (o == null) { +/* 109 */ Object[] arguments = { new String(url) }; +/* 110 */ Console.println(MessageFormat.format(Console.message("Error-ad"), +/* 111 */ arguments)); +/* 112 */ return; +/* */ } +/* */ +/* 115 */ world = (World)o; +/* */ +/* */ +/* 118 */ room = world.getRoom(world.getDefaultRoomName()); +/* */ +/* 120 */ initCamera(); +/* */ +/* 122 */ cube = (WObject)SuperRoot.nameSearch(room.getContents(), "Cube"); +/* 123 */ if (cube == null) { +/* 124 */ return; +/* */ } +/* 126 */ cubeStart = cube.getTransform(); +/* */ +/* 128 */ for (int i = 0; i < 4; i++) { +/* 129 */ Rect r = (Rect)SuperRoot.nameSearch(cube.getContents(), "Rect" + ( +/* 130 */ i + 1)); +/* 131 */ if (r != null) { +/* 132 */ faces[i] = r.getMaterial(); +/* */ } +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ private String getAdBaseURL() +/* */ { +/* 145 */ World world = Pilot.getActiveWorld(); +/* 146 */ if (world == null) { +/* 147 */ return "ads/ad"; +/* */ } +/* */ +/* */ +/* 151 */ return world.getAdCubeBaseURL(); +/* */ } +/* */ +/* */ public boolean action(Event event, Object what) +/* */ { +/* 156 */ return false; +/* */ } +/* */ +/* */ public boolean mouseDown(Event e, int x, int y) +/* */ { +/* 161 */ World w = Pilot.getActiveWorld(); +/* */ +/* 163 */ if ((w != null) && (w.getHasClickableAdCube())) +/* */ { +/* */ +/* 166 */ if ((e.modifiers & 0xC) != 0) { +/* 167 */ return false; +/* */ } +/* 169 */ if ((this.nextAdNumber > 1) && (getAdBaseURL() != null)) +/* */ { +/* 171 */ new SendURLAction(getAdBaseURL() + (this.nextAdNumber - 1) + ".html").startBrowser(); +/* */ } +/* */ else { +/* 174 */ new SendURLAction(w.getDefaultAdCubeURL()).startBrowser(); +/* */ } +/* 176 */ return true; +/* */ } +/* */ +/* 179 */ return false; +/* */ } +/* */ +/* */ +/* */ +/* */ int nextAdNumber; +/* */ +/* */ int nextLoadTime; +/* */ +/* */ int lastFrame; +/* */ +/* */ public Object asyncBackgroundLoad(String localName, URL remoteURL) +/* */ { +/* 192 */ return localName; +/* */ } +/* */ +/* */ public boolean syncBackgroundLoad(Object obj, URL remoteURL) { +/* 196 */ String localName = (String)obj; +/* */ +/* 198 */ if ((remoteURL != null) != this.lastAdIsRemote) +/* 199 */ this.lastAd = -1; +/* 200 */ this.lastAdIsRemote = (remoteURL != null); +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* 218 */ if ((localName == null) || (!new File(localName).exists())) { +/* 219 */ this.lastAd = this.nextAdNumber; +/* 220 */ this.nextAdNumber = 0; +/* 221 */ remoteURL = this.image0; +/* */ } else { +/* 223 */ remoteURL = URL.make(localName); +/* */ } +/* 225 */ if (++this.currentFace > 3) { +/* 226 */ this.currentFace = 0; +/* */ } +/* */ +/* */ +/* 230 */ Material m = faces[this.currentFace]; +/* */ +/* 232 */ if (m != null) { +/* 233 */ m.loadTexture(remoteURL); +/* */ } +/* 235 */ if (++this.nextAdNumber == this.lastAd) { +/* 236 */ this.nextAdNumber = 0; +/* */ } +/* 238 */ this.nextLoadTime = (Std.getFastTime() + 10000); +/* */ +/* 240 */ return false; +/* */ } +/* */ +/* */ public Room getBackgroundLoadRoom() { +/* 244 */ return null; +/* */ } +/* */ +/* 247 */ static boolean cycleAds = IniFile.gamma().getIniInt("CYCLEADS", 1) == 1; +/* */ +/* */ public synchronized boolean handle(FrameEvent f) +/* */ { +/* 251 */ if ((getCamera() == null) || (cube == null)) { +/* 252 */ return true; +/* */ } +/* */ +/* */ +/* 256 */ int now = Std.getRealTime(); +/* */ +/* 258 */ if (now >= this.nextLoadTime) +/* */ { +/* 260 */ if (this.nextAdNumber == 0) { +/* 261 */ syncBackgroundLoad(null, null); +/* 262 */ } else if (cycleAds) +/* */ { +/* 264 */ String extension = ".cmp"; +/* 265 */ World w = Pilot.getActiveWorld(); +/* 266 */ if ((w != null) && +/* 267 */ (w.getAdCubeFormatIsGif())) { +/* 268 */ extension = ".gif"; +/* */ } +/* */ +/* 271 */ String name = getAdBaseURL() + this.nextAdNumber + extension; +/* */ +/* */ +/* */ +/* 275 */ BackgroundLoader.get(this, URL.make(name)); +/* 276 */ this.nextLoadTime = (now + 10000); +/* */ } +/* */ } +/* */ else { +/* 280 */ float targetAngle = 1.5707964F * this.currentFace; +/* 281 */ if (targetAngle != this.angle) { +/* 282 */ int duration = now - this.lastFrame; +/* */ +/* */ +/* 285 */ float rot = 0.7853982F * (duration / 1000.0F); +/* */ +/* */ +/* 288 */ if (targetAngle == 0.0F) +/* 289 */ targetAngle = 6.2831855F; +/* 290 */ float dist = targetAngle - this.angle; +/* 291 */ if (rot >= dist) { +/* 292 */ this.angle = (1.5707964F * this.currentFace); +/* */ } else { +/* 294 */ this.angle += rot; +/* */ } +/* */ +/* 297 */ cube.setTransform(cubeStart); +/* 298 */ cube.spin(0.0F, 0.0F, -1.0F, this.angle * 180.0F / 3.1415927F); +/* */ } +/* */ } +/* 301 */ this.lastFrame = now; +/* */ +/* 303 */ if (checkForWindow(false)) { +/* 304 */ Point pt = getLocationOnScreen(); +/* 305 */ Dimension dim = getSize(); +/* */ +/* 307 */ getWindow().reShape(pt.x, pt.y, dim.width, dim.height); +/* 308 */ getCamera().renderToCanvas(); +/* */ } +/* */ +/* 311 */ return true; +/* */ } +/* */ +/* */ public void activate(Console c, Container f, Console prev) +/* */ { +/* 316 */ super.activate(c, f, prev); +/* 317 */ init(); +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\AdPart.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/AddHandler.java b/NET/worlds/console/AddHandler.java new file mode 100644 index 0000000..4ecc96a --- /dev/null +++ b/NET/worlds/console/AddHandler.java @@ -0,0 +1,117 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import NET.worlds.scape.BumpEventTemp; +/* */ import NET.worlds.scape.BumpHandler; +/* */ import NET.worlds.scape.NoSuchPropertyException; +/* */ import NET.worlds.scape.Portal; +/* */ import NET.worlds.scape.Restorer; +/* */ import NET.worlds.scape.Room; +/* */ import NET.worlds.scape.Saver; +/* */ import NET.worlds.scape.SuperRoot; +/* */ import NET.worlds.scape.TooNewException; +/* */ import NET.worlds.scape.VectorProperty; +/* */ import java.io.IOException; +/* */ import java.util.Enumeration; +/* */ import java.util.Vector; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public class AddHandler +/* */ extends SuperRoot +/* */ implements BumpHandler +/* */ { +/* 39 */ private Vector<SuperRoot> handlers = new Vector(1); +/* */ +/* */ public AddHandler() {} +/* */ +/* */ public AddHandler(SuperRoot newhandler) +/* */ { +/* 45 */ this.handlers.addElement(newhandler); +/* */ } +/* */ +/* */ public boolean handle(BumpEventTemp e) { +/* 49 */ Room sc = ((Portal)e.target).farSide().getRoom(); +/* 50 */ assert (((sc instanceof Staircase)) || ((sc instanceof Stair))); +/* 51 */ Enumeration<SuperRoot> enh = this.handlers.elements(); +/* 52 */ while (enh.hasMoreElements()) { +/* 53 */ sc.addHandler((SuperRoot)enh.nextElement()); +/* */ } +/* 55 */ return true; +/* */ } +/* */ +/* 58 */ private static Object classCookie = new Object(); +/* */ +/* */ public void saveState(Saver s) throws IOException +/* */ { +/* 62 */ s.saveVersion(2, classCookie); +/* 63 */ super.saveState(s); +/* 64 */ s.saveVector(this.handlers); +/* */ } +/* */ +/* */ public void restoreState(Restorer r) throws IOException, TooNewException +/* */ { +/* 69 */ switch (r.restoreVersion(classCookie)) { +/* */ case 2: +/* 71 */ super.restoreState(r); +/* 72 */ this.handlers = r.restoreVectorSuperRoot(); +/* 73 */ break; +/* */ case 1: +/* 75 */ super.restoreState(r); +/* */ +/* */ case 0: +/* 78 */ if (r.restoreBoolean()) +/* 79 */ this.handlers.addElement((SuperRoot)r.restore()); +/* 80 */ break; +/* */ default: +/* 82 */ throw new TooNewException(); +/* */ } +/* */ +/* */ } +/* */ +/* */ +/* */ +/* */ public Object properties(int index, int offset, int mode, Object value) +/* */ throws NoSuchPropertyException +/* */ { +/* 92 */ Object ret = null; +/* */ +/* 94 */ switch (index - offset) { +/* */ case 0: +/* 96 */ if (mode == 0) { +/* 97 */ ret = new VectorProperty(this, index, "Handlers to Add"); +/* 98 */ } else if (mode == 1) { +/* 99 */ ret = this.handlers.clone(); +/* 100 */ } else if (mode == 4) { +/* 101 */ this.handlers.removeElement(value); +/* 102 */ } else if (mode == 3) +/* 103 */ this.handlers.addElement((SuperRoot)value); +/* 104 */ break; +/* */ default: +/* 106 */ ret = super.properties(index, offset + 1, mode, value); +/* */ } +/* */ +/* 109 */ return ret; +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\AddHandler.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/AddNameDialog.java b/NET/worlds/console/AddNameDialog.java new file mode 100644 index 0000000..9318e56 --- /dev/null +++ b/NET/worlds/console/AddNameDialog.java @@ -0,0 +1,312 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import java.awt.Button; +/* */ import java.awt.Event; +/* */ import java.awt.Font; +/* */ import java.awt.GridBagConstraints; +/* */ import java.awt.GridBagLayout; +/* */ import java.awt.Label; +/* */ import java.awt.Panel; +/* */ import java.awt.TextField; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ class AddNameDialog +/* */ extends PolledDialog +/* */ { +/* */ private static final long serialVersionUID = -6679739808485406091L; +/* */ private TextField nameField; +/* 216 */ private Button okButton = new Button(Console.message("OK")); +/* 217 */ private Button cancelButton = new Button(Console.message("Cancel")); +/* */ private String newName; +/* 219 */ private static Font font = new Font(Console.message("ButtonFont"), +/* 220 */ 0, 12); +/* */ +/* */ AddNameDialog(EditNamesDialog parent, String title) +/* */ { +/* 224 */ super(parent, parent, title, true); +/* 225 */ ready(); +/* */ } +/* */ +/* */ +/* */ protected void build() +/* */ { +/* 231 */ this.nameField = new TextField("", 40); +/* 232 */ this.nameField.setFont(font); +/* 233 */ GridBagLayout gbag = new GridBagLayout(); +/* 234 */ setLayout(gbag); +/* 235 */ GridBagConstraints c = new GridBagConstraints(); +/* 236 */ c.fill = 0; +/* 237 */ c.weightx = 1.0D; +/* 238 */ c.weighty = 1.0D; +/* 239 */ c.gridwidth = 2; +/* 240 */ c.gridheight = 1; +/* 241 */ add(gbag, new Label(Console.message("Name")), c); +/* 242 */ c.gridwidth = 0; +/* 243 */ c.fill = 2; +/* 244 */ add(gbag, this.nameField, c); +/* 245 */ Panel buttons = new Panel(); +/* 246 */ this.okButton.setFont(font); +/* 247 */ this.cancelButton.setFont(font); +/* 248 */ buttons.add(this.okButton); +/* 249 */ buttons.add(this.cancelButton); +/* 250 */ c.gridwidth = 0; +/* 251 */ c.fill = 0; +/* 252 */ add(gbag, buttons, c); +/* */ } +/* */ +/* */ +/* */ @Deprecated +/* */ public boolean action(Event event, Object what) +/* */ { +/* 259 */ Object target = event.target; +/* 260 */ if ((target == this.okButton) && (mayConfirm())) +/* 261 */ return done(true); +/* 262 */ if (target == this.cancelButton) +/* 263 */ return done(false); +/* 264 */ return false; +/* */ } +/* */ +/* */ +/* */ public String getName() +/* */ { +/* 270 */ return this.newName; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ private boolean mayConfirm() +/* */ { +/* 278 */ return FriendsListPart.isValidUserName(this.newName = this.nameField.getText() +/* 279 */ .trim()); +/* */ } +/* */ +/* */ +/* */ @Deprecated +/* */ public boolean keyDown(Event event, int key) +/* */ { +/* 286 */ if (key == 27) +/* 287 */ return done(false); +/* 288 */ if ((key == 10) && +/* 289 */ (mayConfirm())) { +/* 290 */ return done(true); +/* */ } +/* 292 */ return super.keyDown(event, key); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ public void setVisible(boolean visible) +/* */ { +/* 300 */ super.setVisible(visible); +/* 301 */ if (visible) { +/* 302 */ this.nameField.requestFocus(); +/* 303 */ this.nameField.selectAll(); +/* */ } +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\AddNameDialog.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/AnimationButton.java b/NET/worlds/console/AnimationButton.java new file mode 100644 index 0000000..9bce837 --- /dev/null +++ b/NET/worlds/console/AnimationButton.java @@ -0,0 +1,146 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import NET.worlds.scape.FrameEvent; +/* */ import java.awt.Container; +/* */ import java.awt.Dimension; +/* */ import java.awt.Event; +/* */ import java.awt.Graphics; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public class AnimationButton +/* */ extends ImageCanvas +/* */ implements MainCallback, FramePart, DialogDisabled +/* */ { +/* */ private static final long serialVersionUID = 5605353426438467905L; +/* */ private static final int frameInterval = 33; +/* */ private String movieName; +/* */ private int frameCount; +/* */ private int curFrame; +/* */ private int width; +/* */ private int height; +/* */ private boolean playVideoNext; +/* 29 */ private int videoHandle = -1; +/* */ private boolean isDialogDisabled; +/* */ +/* */ public AnimationButton(String imageName, int frameCount, String movieName) { +/* 33 */ super(imageName); +/* 34 */ this.frameCount = frameCount; +/* 35 */ this.movieName = movieName; +/* */ } +/* */ +/* */ public void paint(Graphics g) +/* */ { +/* 40 */ g.clipRect(0, 0, this.width, this.height); +/* 41 */ g.drawImage(this.image_, -this.width * this.curFrame, 0, null); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public Dimension getPreferredSize() +/* */ { +/* 60 */ Dimension d = super.getPreferredSize(); +/* 61 */ return new Dimension(this.width = d.width / this.frameCount, this.height = d.height); +/* */ } +/* */ +/* */ public Dimension getMinimumSize() +/* */ { +/* 66 */ return getPreferredSize(); +/* */ } +/* */ +/* */ public void mainCallback() { +/* 70 */ if (this.videoHandle == -1) { +/* 71 */ this.videoHandle = Window.playVideoClip(this, this.movieName); +/* 72 */ if (this.videoHandle == -1) { +/* 73 */ this.videoHandle = Window.playVideoClip(this, "..\\" + this.movieName); +/* 74 */ if (this.videoHandle == -1) +/* 75 */ Main.unregister(this); +/* */ } +/* 77 */ } else if (!Window.isVideoPlaying(this.videoHandle)) { +/* 78 */ Main.unregister(this); +/* 79 */ this.videoHandle = -1; +/* 80 */ repaint(); +/* */ } +/* */ } +/* */ +/* */ public boolean mouseDown(Event e, int x, int y) +/* */ { +/* 86 */ if (this.isDialogDisabled) { +/* 87 */ return false; +/* */ } +/* 89 */ if (this.playVideoNext) { +/* 90 */ Main.register(this); +/* 91 */ this.playVideoNext = false; +/* 92 */ } else if (this.videoHandle == -1) { +/* 93 */ Graphics g = getGraphics(); +/* 94 */ g.clipRect(0, 0, this.width, this.height); +/* 95 */ int nextFrameIncr = this.curFrame == 0 ? 1 : -1; +/* 96 */ long startTime = System.currentTimeMillis(); +/* 97 */ long frameTime = 0L; +/* 98 */ for (int i = 1; i < this.frameCount; i++) { +/* 99 */ this.curFrame += nextFrameIncr; +/* 100 */ g.drawImage(this.image_, -this.width * this.curFrame, 0, null); +/* 101 */ long elapsedTime = System.currentTimeMillis() - startTime; +/* 102 */ frameTime += 33L; +/* 103 */ long sleepTime = frameTime - elapsedTime; +/* 104 */ if (sleepTime > 0L) { +/* */ try { +/* 106 */ Thread.sleep(sleepTime); +/* */ } +/* */ catch (InterruptedException localInterruptedException) {} +/* */ } +/* */ } +/* 111 */ if (this.curFrame == this.frameCount - 1) +/* 112 */ this.playVideoNext = true; +/* 113 */ g.dispose(); +/* */ } +/* 115 */ return true; +/* */ } +/* */ +/* */ +/* */ +/* */ public void activate(Console c, Container f, Console prev) {} +/* */ +/* */ +/* */ public void deactivate() {} +/* */ +/* */ +/* */ public boolean action(Event event, Object what) +/* */ { +/* 128 */ return false; +/* */ } +/* */ +/* */ public boolean handle(FrameEvent f) { +/* 132 */ return false; +/* */ } +/* */ +/* */ +/* */ public void dialogDisable(boolean disable) +/* */ { +/* 138 */ this.isDialogDisabled = disable; +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\AnimationButton.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/ArmyOfZombies.java b/NET/worlds/console/ArmyOfZombies.java new file mode 100644 index 0000000..5cfaca2 --- /dev/null +++ b/NET/worlds/console/ArmyOfZombies.java @@ -0,0 +1,142 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import NET.worlds.network.URL; +/* */ import NET.worlds.scape.DeepEnumeration; +/* */ import NET.worlds.scape.Drone; +/* */ import NET.worlds.scape.Pilot; +/* */ import NET.worlds.scape.Point3Temp; +/* */ import NET.worlds.scape.Room; +/* */ import NET.worlds.scape.SuperRoot; +/* */ import NET.worlds.scape.WObject; +/* */ import NET.worlds.scape.World; +/* */ import java.util.Enumeration; +/* */ import java.util.Hashtable; +/* */ +/* */ +/* */ +/* */ class ArmyOfZombies +/* */ { +/* */ Hashtable<String, Drone> zombies; +/* 20 */ private static ArmyOfZombies instance = new ArmyOfZombies(); +/* */ +/* */ public static ArmyOfZombies instance() { +/* 23 */ return instance; +/* */ } +/* */ +/* */ protected ArmyOfZombies() { +/* 27 */ this.zombies = new Hashtable(); +/* */ } +/* */ +/* */ public void killZombies() +/* */ { +/* 32 */ Enumeration<Drone> e = this.zombies.elements(); +/* 33 */ while (e.hasMoreElements()) { +/* 34 */ Drone id = (Drone)e.nextElement(); +/* 35 */ Enumeration<WObject> en = id.getContents(); +/* 36 */ while (en.hasMoreElements()) { +/* 37 */ WObject wob = (WObject)en.nextElement(); +/* 38 */ wob.detach(); +/* */ } +/* 40 */ id.detach(); +/* 41 */ id.discard(); +/* */ } +/* 43 */ this.zombies.clear(); +/* */ } +/* */ +/* */ public void addZombie(Drone id) { +/* 47 */ String name = id.getName(); +/* 48 */ if (name.charAt(0) == '!') { +/* 49 */ name = name.substring(1); +/* */ } +/* */ +/* 52 */ this.zombies.put(name, id); +/* */ } +/* */ +/* */ public void replaceZombie(String name, Drone id) { +/* 56 */ Drone oldId = get(name); +/* 57 */ if (oldId == id) +/* 58 */ return; +/* 59 */ this.zombies.remove(name); +/* 60 */ addZombie(id); +/* 61 */ id.makeTag(true); +/* */ } +/* */ +/* */ public void killZombie(String name) { +/* 65 */ Drone id = get(name); +/* 66 */ if (id != null) { +/* 67 */ this.zombies.remove(name); +/* 68 */ id.detach(); +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public void zombify() +/* */ { +/* 78 */ if (Pilot.getActive() == null) +/* 79 */ return; +/* 80 */ if (Pilot.getActive().getRoom() == null) +/* 81 */ return; +/* 82 */ if (Pilot.getActive().getRoom().getWorld() == null) { +/* 83 */ return; +/* */ } +/* 85 */ Enumeration<Object> rooms = Pilot.getActive().getRoom().getWorld().getRooms(); +/* 86 */ while (rooms.hasMoreElements()) { +/* 87 */ Room r = (Room)rooms.nextElement(); +/* 88 */ if (r != null) +/* */ { +/* */ +/* 91 */ DeepEnumeration<Object> de = new DeepEnumeration(); +/* 92 */ r.getChildren(de); +/* */ +/* 94 */ while (de.hasMoreElements()) { +/* 95 */ Object o = de.nextElement(); +/* 96 */ if ((o instanceof Drone)) +/* */ { +/* */ +/* 99 */ Drone d = (Drone)o; +/* */ +/* 101 */ Point3Temp pos = d.getPosition(); +/* 102 */ short dir = (short)(int)(-d.getYaw() + 90.0F); +/* 103 */ dir = (short)(dir % 360); +/* 104 */ while (dir < 0) { +/* 105 */ dir = (short)(dir + 360); +/* */ } +/* */ +/* 108 */ SuperRoot wobj = d.getOwner(); +/* 109 */ if (wobj != null) +/* */ { +/* 111 */ Room rm = wobj.getRoom(); +/* 112 */ if (rm != null) +/* */ { +/* 114 */ if (d.getName() != null) +/* */ { +/* 116 */ BlackBox.getInstance().submitEvent( +/* 117 */ new BBAppearDroneCommand(r.getRoom().toString(), d +/* 118 */ .getName(), (short)(int)pos.x, (short)(int)pos.y, +/* 119 */ (short)(int)pos.z, dir)); +/* 120 */ if (d.getCurrentURL() != null) +/* */ { +/* 122 */ BlackBox.getInstance().submitEvent( +/* 123 */ new BBDroneBitmapCommand(d.getName(), d.getCurrentURL() +/* 124 */ .toString())); } +/* */ } } +/* */ } +/* */ } +/* */ } +/* */ } } } +/* */ +/* 131 */ Drone get(String name) { if (name.charAt(0) == '!') { +/* 132 */ name = name.substring(1); +/* */ } +/* 134 */ return (Drone)this.zombies.get(name); +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\ArmyOfZombies.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/AttributeList.java b/NET/worlds/console/AttributeList.java new file mode 100644 index 0000000..909108c --- /dev/null +++ b/NET/worlds/console/AttributeList.java @@ -0,0 +1,63 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import NET.worlds.core.IniFile; +/* */ import NET.worlds.scape.PropList; +/* */ import java.awt.List; +/* */ import java.util.Vector; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ class AttributeList +/* */ extends List +/* */ { +/* */ private static final long serialVersionUID = 4867320900648345562L; +/* */ +/* */ public AttributeList(int numVisibleRows) +/* */ { +/* 25 */ super(numVisibleRows); +/* */ +/* 27 */ Vector<String> sortOrder = new Vector(); +/* */ +/* 29 */ int numUserPreferences = IniFile.gamma().getIniInt( +/* 30 */ "PropertyOrderCount", -1); +/* 31 */ if (numUserPreferences >= 0) { +/* 32 */ sortOrder = new Vector(numUserPreferences); +/* 33 */ for (int i = 0; i < numUserPreferences; i++) { +/* 34 */ sortOrder.addElement(IniFile.gamma().getIniString( +/* 35 */ "PropertyOrder" + i, "")); +/* */ } +/* */ } +/* */ +/* 39 */ for (int idx = 0; idx < sortOrder.size(); idx++) { +/* 40 */ String attToAdd = (String)sortOrder.elementAt(idx); +/* 41 */ add(attToAdd); +/* */ } +/* */ } +/* */ +/* */ +/* */ public void save() +/* */ { +/* 48 */ int numProperties = getItemCount(); +/* */ +/* 50 */ PropList.setPreferences(getItems()); +/* */ +/* 52 */ IniFile.gamma().setIniInt("PropertyOrderCount", numProperties); +/* 53 */ for (int i = 0; i < numProperties; i++) { +/* 54 */ IniFile.gamma().setIniString("PropertyOrder" + i, getItem(i)); +/* */ } +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\AttributeList.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/AttributeSortPanel.java b/NET/worlds/console/AttributeSortPanel.java new file mode 100644 index 0000000..3181626 --- /dev/null +++ b/NET/worlds/console/AttributeSortPanel.java @@ -0,0 +1,197 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import java.awt.Button; +/* */ import java.awt.Color; +/* */ import java.awt.Dimension; +/* */ import java.awt.Event; +/* */ import java.awt.Frame; +/* */ import java.awt.GridBagConstraints; +/* */ import java.awt.GridBagLayout; +/* */ import java.awt.Label; +/* */ import java.awt.Point; +/* */ import java.awt.TextField; +/* */ import java.awt.Window; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public class AttributeSortPanel +/* */ extends Frame +/* */ implements MainCallback, MainTerminalCallback +/* */ { +/* */ private static final long serialVersionUID = -7230661745931320369L; +/* */ private AttributeList list; +/* 35 */ private Button addButton = new Button("Add"); +/* 36 */ private Button deleteButton = new Button("Delete"); +/* 37 */ private Button moveUpButton = new Button("MoveUp"); +/* 38 */ private Button moveDownButton = new Button("MoveDown"); +/* 39 */ private Button okButton = new Button("Ok"); +/* 40 */ private Button cancelButton = new Button("Cancel"); +/* 41 */ private Button clearButton = new Button("Clear"); +/* 42 */ private TextField attNameField = new TextField(32); +/* 43 */ private Label attNameLabel = new Label("Attribute Name: "); +/* */ +/* */ public AttributeSortPanel(Window parent) { +/* 46 */ super("Attribute Sorting"); +/* */ +/* 48 */ this.list = new AttributeList(10); +/* 49 */ GridBagLayout gbag = new GridBagLayout(); +/* 50 */ GridBagConstraints c = new GridBagConstraints(); +/* 51 */ setLayout(gbag); +/* 52 */ setBackground(Color.gray); +/* */ +/* 54 */ c.gridx = 1; +/* 55 */ c.gridy = 1; +/* 56 */ c.gridheight = 7; +/* 57 */ c.gridwidth = 3; +/* 58 */ c.anchor = 18; +/* 59 */ gbag.setConstraints(this.list, c); +/* 60 */ add(this.list); +/* */ +/* 62 */ c.gridx = 4; +/* 63 */ c.gridy = 1; +/* 64 */ c.gridwidth = 1; +/* 65 */ c.gridheight = 1; +/* 66 */ gbag.setConstraints(this.moveUpButton, c); +/* 67 */ add(this.moveUpButton); +/* */ +/* 69 */ c.gridx = 4; +/* 70 */ c.gridy = 2; +/* 71 */ c.gridwidth = 1; +/* 72 */ c.gridheight = 1; +/* 73 */ gbag.setConstraints(this.moveDownButton, c); +/* 74 */ add(this.moveDownButton); +/* */ +/* 76 */ c.gridx = 4; +/* 77 */ c.gridy = 5; +/* 78 */ c.gridheight = 1; +/* 79 */ c.gridwidth = 3; +/* 80 */ gbag.setConstraints(this.attNameLabel, c); +/* 81 */ add(this.attNameLabel); +/* */ +/* 83 */ c.gridy = 6; +/* 84 */ c.gridheight = 1; +/* 85 */ c.gridwidth = 3; +/* 86 */ gbag.setConstraints(this.attNameField, c); +/* 87 */ add(this.attNameField); +/* */ +/* 89 */ c.gridx = 7; +/* 90 */ c.gridy = 6; +/* 91 */ c.gridheight = 1; +/* 92 */ c.gridwidth = 1; +/* 93 */ gbag.setConstraints(this.addButton, c); +/* 94 */ add(this.addButton); +/* */ +/* 96 */ c.gridx = 7; +/* 97 */ c.gridy = 1; +/* 98 */ c.gridwidth = 1; +/* 99 */ c.gridheight = 1; +/* 100 */ gbag.setConstraints(this.deleteButton, c); +/* 101 */ add(this.deleteButton); +/* */ +/* 103 */ c.gridx = 7; +/* 104 */ c.gridy = 2; +/* 105 */ gbag.setConstraints(this.clearButton, c); +/* 106 */ add(this.clearButton); +/* */ +/* 108 */ c.gridx = 5; +/* 109 */ c.gridy = 8; +/* 110 */ gbag.setConstraints(this.okButton, c); +/* 111 */ add(this.okButton); +/* */ +/* 113 */ c.gridx = 7; +/* 114 */ gbag.setConstraints(this.cancelButton, c); +/* 115 */ add(this.cancelButton); +/* */ +/* */ +/* 118 */ pack(); +/* 119 */ Point loc = parent.getLocation(); +/* 120 */ Dimension size = parent.getSize(); +/* 121 */ setBounds(loc.x + (size.width - 512) / 2, +/* 122 */ loc.y + (size.height - 240) / 2, 512, 240); +/* */ +/* 124 */ setVisible(true); +/* */ +/* 126 */ Main.register(this); +/* */ } +/* */ +/* */ @Deprecated +/* */ public boolean handleEvent(Event ev) +/* */ { +/* 132 */ switch (ev.id) { +/* */ case 201: +/* 134 */ dispose(); +/* 135 */ return true; +/* */ } +/* 137 */ return super.handleEvent(ev); +/* */ } +/* */ +/* */ +/* */ @Deprecated +/* */ public boolean action(Event e, Object o) +/* */ { +/* 144 */ if (e.target == this.addButton) { +/* 145 */ String attToAdd = this.attNameField.getText(); +/* 146 */ if (attToAdd != "") +/* 147 */ this.list.add(attToAdd); +/* 148 */ this.attNameField.setText(""); +/* 149 */ return true; } +/* 150 */ if (e.target == this.deleteButton) { +/* 151 */ this.list.remove(this.list.getSelectedIndex()); +/* 152 */ return true; } +/* 153 */ if (e.target == this.moveUpButton) { +/* 154 */ int index = this.list.getSelectedIndex(); +/* 155 */ if (index > 0) { +/* 156 */ String toPutBack = this.list.getItem(index - 1); +/* 157 */ this.list.remove(index - 1); +/* 158 */ this.list.add(toPutBack, index); +/* */ } +/* 160 */ return true; } +/* 161 */ if (e.target == this.moveDownButton) { +/* 162 */ int index = this.list.getSelectedIndex(); +/* 163 */ if (index < this.list.getItemCount()) { +/* 164 */ String toPutBack = this.list.getItem(index + 1); +/* 165 */ this.list.remove(index + 1); +/* 166 */ this.list.add(toPutBack, index); +/* */ } +/* 168 */ return true; } +/* 169 */ if (e.target == this.cancelButton) { +/* 170 */ dispose(); +/* 171 */ return true; } +/* 172 */ if (e.target == this.clearButton) { +/* 173 */ this.list.removeAll(); +/* 174 */ return true; } +/* 175 */ if (e.target == this.okButton) { +/* 176 */ this.list.save(); +/* 177 */ dispose(); +/* 178 */ return true; +/* */ } +/* 180 */ return false; +/* */ } +/* */ +/* */ +/* */ public void mainCallback() {} +/* */ +/* */ +/* */ public void terminalCallback() +/* */ { +/* 189 */ Main.unregister(this); +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\AttributeSortPanel.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/AvMenu.java b/NET/worlds/console/AvMenu.java new file mode 100644 index 0000000..59f8d74 --- /dev/null +++ b/NET/worlds/console/AvMenu.java @@ -0,0 +1,1164 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import NET.worlds.network.URL; +/* */ import NET.worlds.scape.HoloDrone; +/* */ import NET.worlds.scape.InventoryAvatar; +/* */ import NET.worlds.scape.InventoryItem; +/* */ import NET.worlds.scape.InventoryManager; +/* */ import NET.worlds.scape.PosableShape; +/* */ import NET.worlds.scape.SelectAvatarAction; +/* */ import NET.worlds.scape.WearAction; +/* */ import java.awt.Event; +/* */ import java.awt.Font; +/* */ import java.awt.Menu; +/* */ import java.awt.MenuItem; +/* */ import java.io.PrintStream; +/* */ import java.net.MalformedURLException; +/* */ import java.util.Arrays; +/* */ import java.util.Enumeration; +/* */ import java.util.StringTokenizer; +/* */ import java.util.Vector; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public class AvMenu +/* */ extends Menu +/* */ implements AvatarDialogCallback +/* */ { +/* */ private static final long serialVersionUID = 333613242466644876L; +/* */ DefaultConsole defcon; +/* */ Menu articMenuAF; +/* */ Menu articMenuGO; +/* */ Menu articMenuPZ; +/* */ Menu specialGuestMenu; +/* */ public MenuItem customize; +/* */ static AvatarDialog avDialog; +/* */ private static Font font; +/* */ Vector<AvMenuItem> articulatedAvatarItemsAF; +/* */ Vector<AvMenuItem> articulatedAvatarItemsGO; +/* */ Vector<AvMenuItem> articulatedAvatarItemsPZ; +/* */ Vector<AvMenuItem> holographicAvatarItemsAL; +/* */ Vector<AvMenuItem> holographicAvatarItemsMZ; +/* */ Vector<AvMenuItem> specialGuestAvatarItems; +/* */ private static Vector<String> parts; +/* */ private static Vector<String> sizes; +/* */ private static Vector<String> colors; +/* */ private static Vector<String> faceTypes; +/* */ private static Vector<String> headTypes; +/* */ +/* */ AvMenu(DefaultConsole d, URL lastPilotRequested) +/* */ { +/* 104 */ super(Console.message("choose-av")); +/* */ +/* 106 */ this.defcon = d; +/* */ +/* */ +/* 109 */ URL url = URL.getAvatar(); +/* */ +/* */ +/* 112 */ String curAvatar = ""; +/* 113 */ if (lastPilotRequested != null) { +/* 114 */ curAvatar = lastPilotRequested.getAbsolute(); +/* 115 */ String avaStr = url.getAbsolute(); +/* 116 */ if (curAvatar.startsWith(avaStr)) { +/* 117 */ curAvatar = curAvatar.substring(avaStr.length()); +/* */ } +/* */ } +/* */ +/* 121 */ this.articMenuAF = new Menu(Console.message("Articulated-A-F")); +/* 122 */ this.articMenuGO = new Menu(Console.message("Articulated-G-O")); +/* 123 */ this.articMenuPZ = new Menu(Console.message("Articulated-P-Z")); +/* */ +/* 125 */ this.articMenuAF.setFont(font); +/* 126 */ this.articMenuGO.setFont(font); +/* 127 */ this.articMenuPZ.setFont(font); +/* */ +/* 129 */ add(this.articMenuAF); +/* 130 */ add(this.articMenuGO); +/* 131 */ add(this.articMenuPZ); +/* */ +/* 133 */ addAvatars(url, "abcdef", "bod", this.articMenuAF, curAvatar, +/* 134 */ this.articulatedAvatarItemsAF = new Vector()); +/* 135 */ addAvatars(url, "ghijklmno", "bod", this.articMenuGO, curAvatar, +/* 136 */ this.articulatedAvatarItemsGO = new Vector()); +/* 137 */ addAvatars(url, "0123456789pqrstuvwxyz", "bod", this.articMenuPZ, curAvatar, +/* 138 */ this.articulatedAvatarItemsPZ = new Vector()); +/* */ +/* */ +/* 141 */ Menu holoMenuAL = new Menu(Console.message("Holographic-A-L")); +/* 142 */ Menu holoMenuMZ = new Menu(Console.message("Holographic-M-Z")); +/* */ +/* 144 */ holoMenuAL.setFont(font); +/* 145 */ holoMenuMZ.setFont(font); +/* */ +/* 147 */ add(holoMenuAL); +/* 148 */ add(holoMenuMZ); +/* 149 */ addAvatars("abcdefghijkl", holoMenuAL, curAvatar, +/* 150 */ this.holographicAvatarItemsAL = new Vector()); +/* 151 */ addAvatars("0123456789mnopqrstuvwxyz", holoMenuMZ, curAvatar, +/* 152 */ this.holographicAvatarItemsMZ = new Vector()); +/* */ +/* */ +/* */ +/* 156 */ this.specialGuestMenu = null; +/* 157 */ this.specialGuestAvatarItems = new Vector(); +/* */ +/* 159 */ buildSpecialGuestMenu(); +/* */ +/* 161 */ this.customize = new MenuItem(Console.message("customize-av")); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ public void rebuildVIPMenu() +/* */ { +/* 169 */ this.articMenuAF.removeAll(); +/* 170 */ this.articulatedAvatarItemsAF.removeAllElements(); +/* 171 */ this.articMenuGO.removeAll(); +/* 172 */ this.articulatedAvatarItemsGO.removeAllElements(); +/* 173 */ this.articMenuPZ.removeAll(); +/* 174 */ this.articulatedAvatarItemsPZ.removeAllElements(); +/* */ +/* 176 */ URL url = URL.getAvatar(); +/* */ +/* 178 */ addAvatars(url, "abcdef", "bod", this.articMenuAF, null, +/* 179 */ this.articulatedAvatarItemsAF); +/* 180 */ addAvatars(url, "ghijklmno", "bod", this.articMenuGO, null, +/* 181 */ this.articulatedAvatarItemsGO); +/* 182 */ addAvatars(url, "0123456789pqrstuvwxyz", "bod", this.articMenuPZ, null, +/* 183 */ this.articulatedAvatarItemsPZ); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public void buildSpecialGuestMenu() +/* */ { +/* 194 */ Vector<InventoryItem> specialGuests = +/* 195 */ InventoryManager.getInventoryManager().getInventoryAvatars(); +/* */ +/* 197 */ if ((specialGuests != null) && (specialGuests.size() > 0)) { +/* 198 */ if (this.specialGuestMenu != null) { +/* 199 */ this.specialGuestMenu.removeAll(); +/* 200 */ this.specialGuestAvatarItems.removeAllElements(); +/* */ } else { +/* 202 */ this.specialGuestMenu = new Menu(Console.message("special-av")); +/* 203 */ add(this.specialGuestMenu); +/* */ } +/* */ +/* 206 */ Enumeration<InventoryItem> e = specialGuests.elements(); +/* 207 */ while (e.hasMoreElements()) { +/* 208 */ InventoryAvatar invItem = (InventoryAvatar)e.nextElement(); +/* 209 */ String fullName = invItem.getItemName(); +/* */ +/* */ +/* */ +/* */ +/* 214 */ StringTokenizer tok = new StringTokenizer(fullName); +/* 215 */ if (tok.countTokens() < 1) +/* */ { +/* 217 */ System.out.println("ERROR: Special avatar inventory item " + +/* 218 */ fullName + +/* 219 */ " does not conform to the form \"<name> avatar\""); +/* */ } +/* */ else +/* */ { +/* 223 */ String finalName = ""; +/* */ +/* 225 */ String raw = tok.nextToken(); +/* 226 */ if (raw.length() > 1) { +/* 227 */ finalName = +/* 228 */ raw.substring(0, 1).toUpperCase() + raw.substring(1); +/* 229 */ AvMenuItem item = new AvMenuItem(finalName, false); +/* 230 */ item.intAvatar = ("_vv" + raw + ".rwg"); +/* 231 */ this.specialGuestAvatarItems.addElement(item); +/* 232 */ this.specialGuestMenu.add(item); +/* */ } +/* */ } +/* */ } +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ private void addAvatars(URL url, String initChar, String ext, Menu menu, String curAvatar, Vector<AvMenuItem> menuItems) +/* */ { +/* 256 */ if (curAvatar != null) { +/* 257 */ curAvatar = SelectAvatarAction.getPrettyAvatarName(curAvatar); +/* */ } +/* 259 */ Vector<String> names = PosableShape.getPermittedNames(); +/* */ +/* 261 */ Vector<AvMenuItem> menuItemList = new Vector(); +/* */ +/* 263 */ int count = names.size(); +/* 264 */ for (int i = 0; i < count; i++) { +/* 265 */ String name = (String)names.elementAt(i); +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* 275 */ if (!name.substring(0, 1).equals("_")) +/* */ { +/* */ +/* */ +/* 279 */ String properName = SelectAvatarAction.getPrettyAvatarName(name); +/* */ +/* */ +/* 282 */ if (initChar.indexOf(properName.toLowerCase().substring(0, 1)) >= 0) +/* */ { +/* */ +/* */ +/* */ +/* */ +/* 288 */ AvMenuItem item = new AvMenuItem(properName, false); +/* 289 */ item.intAvatar = AvMenuItem.avify(name, ".rwg"); +/* 290 */ item.setFont(font); +/* */ +/* 292 */ menuItemList.addElement(item); +/* */ } +/* */ } +/* */ } +/* 296 */ try { SortMenu(menuItemList, menu, menuItems); +/* */ } +/* */ catch (NoClassDefFoundError e) { +/* 299 */ count = menuItemList.size(); +/* 300 */ for (int i = 0; i < count; i++) { +/* 301 */ AvMenuItem item = (AvMenuItem)menuItemList.elementAt(i); +/* 302 */ menuItems.addElement(item); +/* 303 */ menu.add(item); +/* */ } +/* */ } +/* */ } +/* */ +/* */ private void SortMenu(Vector<AvMenuItem> menuItemList, Menu menu, Vector<AvMenuItem> menuItems) +/* */ throws NoClassDefFoundError +/* */ { +/* 311 */ Vector<AvMenuItemSortable> sortableArray = new Vector(); +/* */ +/* 313 */ int count = menuItemList.size(); +/* 314 */ for (int i = 0; i < count; i++) { +/* 315 */ AvMenuItem item = (AvMenuItem)menuItemList.elementAt(i); +/* 316 */ sortableArray.add(new AvMenuItemSortable(item)); +/* */ } +/* */ +/* 319 */ Object[] itemList = sortableArray.toArray(); +/* 320 */ Arrays.sort(itemList); +/* 321 */ count = itemList.length; +/* */ +/* 323 */ for (int i = 0; i < count; i++) { +/* 324 */ AvMenuItem item = ((AvMenuItemSortable)itemList[i]).menuItem; +/* 325 */ menuItems.addElement(item); +/* 326 */ menu.add(item); +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ private void addAvatars(String initChar, Menu menu, String curAvatar, Vector<AvMenuItem> menuItems) +/* */ { +/* 339 */ curAvatar = SelectAvatarAction.getPrettyAvatarName(curAvatar); +/* */ +/* 341 */ String[] list = HoloDrone.getPermittedList(); +/* 342 */ Vector<AvMenuItem> menuItemList = new Vector(); +/* */ +/* 344 */ int count = list.length; +/* 345 */ for (int i = 0; i < count; i++) { +/* 346 */ String name = list[i]; +/* */ +/* 348 */ if (!name.substring(0, 1).equals("_")) +/* */ { +/* */ +/* */ +/* 352 */ String properName = SelectAvatarAction.getPrettyAvatarName(name); +/* */ +/* */ +/* 355 */ if (initChar.indexOf(properName.toLowerCase().substring(0, 1) +/* 356 */ .toLowerCase()) >= 0) +/* */ { +/* */ +/* */ +/* */ +/* 361 */ AvMenuItem item = new AvMenuItem(properName, false); +/* 362 */ item.intAvatar = AvMenuItem.avify(name, ".mov"); +/* 363 */ item.setFont(font); +/* 364 */ menuItemList.addElement(item); +/* */ } +/* */ } +/* */ } +/* 368 */ try { SortMenu(menuItemList, menu, menuItems); +/* */ } +/* */ catch (NoClassDefFoundError e) { +/* 371 */ count = menuItemList.size(); +/* 372 */ for (int i = 0; i < count; i++) { +/* 373 */ AvMenuItem item = (AvMenuItem)menuItemList.elementAt(i); +/* 374 */ menuItems.addElement(item); +/* 375 */ menu.add(item); +/* */ } +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public boolean action(Event event, Object what) +/* */ { +/* 386 */ if ((this.articulatedAvatarItemsAF != null) && ( +/* 387 */ (this.articulatedAvatarItemsAF.contains(event.target)) || +/* 388 */ (this.articulatedAvatarItemsGO.contains(event.target)) || +/* 389 */ (this.articulatedAvatarItemsPZ.contains(event.target)))) { +/* 390 */ changeAvatar((AvMenuItem)event.target, "rwg", null); +/* 391 */ } else if ((this.holographicAvatarItemsAL != null) && ( +/* 392 */ (this.holographicAvatarItemsAL.contains(event.target)) || +/* 393 */ (this.holographicAvatarItemsMZ.contains(event.target)))) { +/* 394 */ changeAvatar((AvMenuItem)event.target, "mov", null); +/* 395 */ } else if ((event.target == this.customize) && (this.customize != null)) { +/* 396 */ if (avDialog != null) +/* 397 */ avDialog.closeWin(); +/* 398 */ avDialog = new AvatarDialog(Console.getFrame(), null, +/* 399 */ Console.message("customize-av"), this); +/* 400 */ } else if ((this.specialGuestAvatarItems != null) && +/* 401 */ (this.specialGuestAvatarItems.contains(event.target))) +/* */ { +/* */ +/* 404 */ AvMenuItem item = (AvMenuItem)event.target; +/* 405 */ changeAvatar(item, "rwg", URL.make(URL.getAvatar(), "_vv" + +/* 406 */ item.getLabel().toLowerCase() + ".rwg")); +/* */ } else { +/* 408 */ return false; +/* */ } +/* 410 */ return true; +/* */ } +/* */ +/* */ public void notifyOfChange() { +/* 414 */ if (avDialog != null) { +/* 415 */ avDialog.setChangeCheck(); +/* */ } +/* */ } +/* */ +/* */ public Vector<String> getChoices(int index) { +/* 420 */ switch (index) { +/* */ case 0: +/* 422 */ return headTypes; +/* */ +/* */ case 2: +/* 425 */ return faceTypes; +/* */ +/* */ case 1: +/* 428 */ return sizes; +/* */ } +/* */ +/* 431 */ return colors; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ private static void addProperCasedEntries(Vector<String> dest, Vector<String> source) +/* */ { +/* 499 */ for (int i = 0; i < source.size(); i++) { +/* 500 */ String s = (String)source.elementAt(i); +/* 501 */ if (s.charAt(0) != '_') +/* */ { +/* 503 */ dest.addElement(s.substring(0, 1).toUpperCase() + s.substring(1)); +/* */ } +/* */ } +/* */ } +/* */ +/* */ static +/* */ { +/* 100 */ font = new Font(Console.message("MenuFont"), +/* 101 */ 0, 12); +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* 435 */ parts = new Vector(); +/* */ +/* 437 */ parts.addElement(Console.message("Head")); +/* 438 */ parts.addElement(Console.message("Head-size")); +/* 439 */ parts.addElement(Console.message("Face")); +/* 440 */ parts.addElement(Console.message("Hair")); +/* 441 */ parts.addElement(Console.message("Skin")); +/* 442 */ parts.addElement(Console.message("Shirt")); +/* 443 */ parts.addElement(Console.message("Coat")); +/* 444 */ parts.addElement(Console.message("Dress")); +/* 445 */ parts.addElement(Console.message("Pants")); +/* 446 */ parts.addElement(Console.message("Left-glove")); +/* 447 */ parts.addElement(Console.message("Right-glove")); +/* 448 */ parts.addElement(Console.message("Left-shoe")); +/* 449 */ parts.addElement(Console.message("Right-shoe")); +/* */ +/* */ +/* 452 */ sizes = new Vector(); +/* */ +/* 454 */ sizes.addElement(Console.message("m30")); +/* 455 */ sizes.addElement(Console.message("m20")); +/* 456 */ sizes.addElement(Console.message("m10")); +/* 457 */ sizes.addElement(Console.message("standard")); +/* 458 */ sizes.addElement(Console.message("p10")); +/* 459 */ sizes.addElement(Console.message("p20")); +/* 460 */ sizes.addElement(Console.message("p30")); +/* */ +/* */ +/* 463 */ colors = new Vector(); +/* */ +/* 465 */ colors.addElement(Console.message("Original")); +/* 466 */ colors.addElement(Console.message("Black")); +/* 467 */ colors.addElement(Console.message("Blue")); +/* 468 */ colors.addElement(Console.message("Tan")); +/* 469 */ colors.addElement(Console.message("Red-orange")); +/* 470 */ colors.addElement(Console.message("Pale-pink")); +/* 471 */ colors.addElement(Console.message("Bright-green")); +/* 472 */ colors.addElement(Console.message("Green")); +/* 473 */ colors.addElement(Console.message("Dark-blue")); +/* 474 */ colors.addElement(Console.message("Blue-purple")); +/* 475 */ colors.addElement(Console.message("Light-blue")); +/* 476 */ colors.addElement(Console.message("Dark-pink")); +/* 477 */ colors.addElement(Console.message("Light-green")); +/* 478 */ colors.addElement(Console.message("Pale-orange")); +/* 479 */ colors.addElement(Console.message("Dark-grey")); +/* 480 */ colors.addElement(Console.message("Orange")); +/* 481 */ colors.addElement(Console.message("Pink")); +/* 482 */ colors.addElement(Console.message("Purple")); +/* 483 */ colors.addElement(Console.message("Red")); +/* 484 */ colors.addElement(Console.message("Burgundy")); +/* 485 */ colors.addElement(Console.message("Brown")); +/* 486 */ colors.addElement(Console.message("Light-grey")); +/* 487 */ colors.addElement(Console.message("Violet")); +/* 488 */ colors.addElement(Console.message("White")); +/* 489 */ colors.addElement(Console.message("Golden-yellow")); +/* 490 */ colors.addElement(Console.message("Medium-yellow")); +/* 491 */ colors.addElement(Console.message("Light-yellow")); +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* 507 */ faceTypes = new Vector(); +/* 508 */ headTypes = new Vector(); +/* */ +/* 510 */ headTypes.addElement(Console.message("Original")); +/* 511 */ addProperCasedEntries(headTypes, PosableShape.getPermittedNames()); +/* */ +/* 513 */ faceTypes.addElement(Console.message("Original")); +/* 514 */ addProperCasedEntries(faceTypes, PosableShape.getFaceNames()); +/* */ } +/* */ +/* */ public static void rebuildHeadList() { +/* 518 */ headTypes.removeAllElements(); +/* 519 */ headTypes.addElement(Console.message("Original")); +/* 520 */ addProperCasedEntries(headTypes, PosableShape.getPermittedNames()); +/* */ } +/* */ +/* */ public Vector<String> getComponents() +/* */ { +/* 525 */ return parts; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ public static int findIndex(Vector<String> v, String match) +/* */ { +/* 533 */ int end = v.size(); +/* 534 */ for (int i = 0; i < end; i++) { +/* 535 */ String s = (String)v.elementAt(i); +/* 536 */ if (s.equalsIgnoreCase(match)) { +/* 537 */ return i; +/* */ } +/* */ } +/* 540 */ return -1; +/* */ } +/* */ +/* */ +/* */ +/* */ public int getCurrentSelection(int index) +/* */ { +/* 547 */ String str = PosableShape.getCurrentAvCustomizable(); +/* 548 */ if (str == null) { +/* 549 */ return 0; +/* */ } +/* 551 */ int pos = str.indexOf(".", 7); +/* 552 */ String bodyType = str.substring(7, pos).toLowerCase(); +/* 553 */ int result = -1; +/* */ +/* */ +/* */ +/* */ +/* 558 */ switch (index) { +/* */ case 0: +/* 560 */ int p = str.lastIndexOf("NS"); +/* 561 */ if ((p >= 0) && (str.charAt(p + 5) == 'G')) { +/* 562 */ result = findIndex(headTypes, PosableShape.readName(str, p + 6)); +/* 563 */ if (result >= 0) +/* 564 */ return result; +/* */ } +/* 566 */ result = findIndex(headTypes, bodyType); +/* 567 */ return result < 0 ? 0 : result; +/* */ +/* */ case 1: +/* 570 */ int p = str.lastIndexOf("NS"); +/* 571 */ if (p >= 0) +/* 572 */ result = "qhd0DHQ".indexOf(str.charAt(p + 2)); +/* 573 */ return result < 0 ? 3 : result; +/* */ +/* */ case 2: +/* 576 */ int head = str.lastIndexOf("NS"); +/* 577 */ int p = str.lastIndexOf("DgT"); +/* 578 */ if (p > head) { +/* 579 */ p += 3; +/* */ +/* */ +/* 582 */ while ((str.charAt(p) >= '0') && (str.charAt(p) <= '9')) { +/* 583 */ p++; +/* */ } +/* */ +/* 586 */ String texName = PosableShape.readName(str, p); +/* */ +/* 588 */ Vector<String> v = faceTypes; +/* */ +/* 590 */ int i = v.size(); +/* 591 */ do { String s = (String)v.elementAt(i); +/* 592 */ if (s.regionMatches(true, 0, texName, 0, s.length())) { +/* 593 */ result = i; +/* 594 */ break; +/* */ } +/* 590 */ i--; } while (i >= 1); +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* 598 */ if (result < 0) { +/* 599 */ result = findIndex(faceTypes, bodyType); +/* */ } +/* */ +/* 602 */ if (result > 0) +/* */ { +/* */ +/* 605 */ if (((String)faceTypes.elementAt(result)).equals((String)headTypes.elementAt(getCurrentSelection(0)))) +/* 606 */ result = 0; +/* */ } +/* */ } else { +/* 609 */ result = 0; +/* */ } +/* */ +/* 612 */ return result < 0 ? 0 : result; +/* */ } +/* */ +/* 615 */ int p = +/* 616 */ PosableShape.getMatPosition(str, "fabcdeOVKY".charAt(index - 3)); +/* */ +/* */ +/* */ +/* */ +/* */ +/* 622 */ if (p >= 0) +/* */ { +/* 624 */ if ((str.charAt(p) == 'C') && (str.charAt(p + 1) == '_')) { +/* 625 */ char letter = str.charAt(p + 2); +/* 626 */ if ((letter >= 'A') && (letter <= 'Z')) { +/* 627 */ result = 1 + (letter - 'A'); +/* */ } +/* */ } +/* */ } +/* 631 */ return result < 0 ? 0 : result; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public void setCurrentSelection(int index, int choice) +/* */ { +/* 642 */ String str = PosableShape.getCurrentAvCustomizable(); +/* 643 */ if (str == null) { +/* */ return; +/* */ } +/* */ +/* */ +/* */ String val; +/* */ +/* */ char limb; +/* */ +/* */ String val; +/* */ +/* 654 */ if (index >= 3) { +/* 655 */ char limb = "fabcdeOVKY".charAt(index - 3); +/* */ +/* 657 */ assert (choice >= 0); +/* 658 */ assert (choice <= PosableShape.colorTable.length); +/* */ +/* 660 */ val = "C_" + (char)(65 + choice - 1); } else { String val; +/* 661 */ if (index == 1) +/* */ { +/* 663 */ char scale = "qhd0DHQ".charAt(choice); +/* 664 */ char[] scaleStr = new char[3]; +/* 665 */ scaleStr[0] = scale; +/* 666 */ scaleStr[1] = scale; +/* 667 */ scaleStr[2] = scale; +/* */ +/* 669 */ char limb = 'Q'; +/* 670 */ val = new String(scaleStr); +/* */ } else { +/* 672 */ limb = index == 0 ? 'H' : 'E'; +/* 673 */ Vector<String> choices = index == 0 ? headTypes : faceTypes; +/* 674 */ val = choice == 0 ? null : ((String)choices.elementAt(choice)) +/* 675 */ .toLowerCase(); +/* */ } +/* */ } +/* 678 */ WearAction.setAvLimb(limb, val); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ private void changeAvatar(AvMenuItem item, String ext, URL url) +/* */ { +/* 688 */ if (url == null) { +/* */ try { +/* 690 */ url = new URL(URL.getAvatar(), item.intAvatar); +/* */ } catch (MalformedURLException e) { +/* 692 */ Console.println(Console.message("invalid-URL") + " " + e); +/* 693 */ return; +/* */ } +/* */ } +/* */ +/* 697 */ this.defcon.setNextAvatar(url, item); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ private AvMenuItem findAvatar(Vector<AvMenuItem> items, String name) +/* */ { +/* 705 */ if (items != null) { +/* 706 */ int count = items.size(); +/* 707 */ for (int i = 0; i < count; i++) { +/* 708 */ AvMenuItem item = (AvMenuItem)items.elementAt(i); +/* 709 */ if (item.getLabel().equals(name)) +/* 710 */ return item; +/* */ } +/* */ } +/* 713 */ return null; +/* */ } +/* */ +/* */ public AvMenuItem findMenuItem(URL url) { +/* 717 */ String prefix = URL.getAvatar().getAbsolute(); +/* 718 */ String name = url.getAbsolute().substring(prefix.length()); +/* */ +/* 720 */ String pname = SelectAvatarAction.getPrettyAvatarName(name); +/* */ +/* */ +/* */ +/* */ +/* */ +/* 726 */ String suffix = name.substring(name.lastIndexOf('.') + 1); +/* */ AvMenuItem item; +/* */ AvMenuItem item; +/* 729 */ if (((suffix.equalsIgnoreCase("rwg")) && +/* 730 */ (this.articulatedAvatarItemsAF != null) && +/* 731 */ ((item = findAvatar(this.articulatedAvatarItemsAF, pname)) != null)) || +/* 732 */ ((item = findAvatar(this.articulatedAvatarItemsGO, pname)) != null) || +/* 733 */ ((item = findAvatar(this.articulatedAvatarItemsPZ, pname)) != null) || +/* 734 */ ((item = findAvatar(this.specialGuestAvatarItems, pname)) != null) || ( +/* 735 */ (suffix.equalsIgnoreCase("mov")) && +/* 736 */ (this.holographicAvatarItemsAL != null) && ( +/* 737 */ ((item = findAvatar(this.holographicAvatarItemsAL, pname)) != null) || ((item = findAvatar( +/* 738 */ this.holographicAvatarItemsMZ, pname)) != null)))) +/* 739 */ return item; +/* 740 */ return null; +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\AvMenu.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/AvMenuItem.java b/NET/worlds/console/AvMenuItem.java new file mode 100644 index 0000000..e33ddd9 --- /dev/null +++ b/NET/worlds/console/AvMenuItem.java @@ -0,0 +1,71 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import java.awt.CheckboxMenuItem; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ class AvMenuItem +/* */ extends CheckboxMenuItem +/* */ { +/* */ private static final long serialVersionUID = 8358406033091883856L; +/* */ public String intAvatar; +/* */ public String prettyAvatar; +/* */ +/* */ AvMenuItem(String s, boolean b) +/* */ { +/* 53 */ super(s, b); +/* 54 */ this.prettyAvatar = s; +/* */ } +/* */ +/* */ public static String avify(String in, String ext) { +/* 58 */ int idx = in.indexOf('.'); +/* 59 */ if (idx != -1) { +/* 60 */ return in.substring(0, idx).toLowerCase() + ext; +/* */ } +/* */ +/* 63 */ return in.toLowerCase() + ext; +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\AvMenuItem.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/AvMenuItemSortable.java b/NET/worlds/console/AvMenuItemSortable.java new file mode 100644 index 0000000..fdab7c9 --- /dev/null +++ b/NET/worlds/console/AvMenuItemSortable.java @@ -0,0 +1,86 @@ +/* */ package NET.worlds.console; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ class AvMenuItemSortable +/* */ implements Comparable<Object> +/* */ { +/* */ public AvMenuItem menuItem; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ AvMenuItemSortable(AvMenuItem i) +/* */ { +/* 72 */ this.menuItem = i; +/* */ } +/* */ +/* */ public int compareTo(Object o) { +/* 76 */ AvMenuItemSortable b = (AvMenuItemSortable)o; +/* */ +/* 78 */ return this.menuItem.prettyAvatar.compareTo(b.menuItem.prettyAvatar); +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\AvMenuItemSortable.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/AvatarDialog.java b/NET/worlds/console/AvatarDialog.java new file mode 100644 index 0000000..c4069ca --- /dev/null +++ b/NET/worlds/console/AvatarDialog.java @@ -0,0 +1,210 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import NET.worlds.scape.EventQueue; +/* */ import java.awt.Button; +/* */ import java.awt.Choice; +/* */ import java.awt.Color; +/* */ import java.awt.Event; +/* */ import java.awt.Font; +/* */ import java.awt.GridBagConstraints; +/* */ import java.awt.GridBagLayout; +/* */ import java.awt.GridLayout; +/* */ import java.awt.Label; +/* */ import java.awt.Panel; +/* */ import java.awt.Point; +/* */ import java.awt.Window; +/* */ import java.util.Vector; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public class AvatarDialog +/* */ extends PolledDialog +/* */ { +/* */ private static final long serialVersionUID = 8661992825430619335L; +/* 42 */ private Button okButton = new Button(Console.message("Close")); +/* */ private AvatarDialogCallback callback; +/* 44 */ private Vector<Choice> choices = new Vector(); +/* 45 */ private Vector<int[]> changes = new Vector(); +/* 46 */ private static Font font = new Font(Console.message("MenuFont"), +/* 47 */ 0, 12); +/* 48 */ private static Font bfont = new Font(Console.message("ButtonFont"), +/* 49 */ 0, 12); +/* */ +/* */ private int checkChanges; +/* */ +/* */ +/* */ public AvatarDialog(Window parent, DialogReceiver receiver, String title, AvatarDialogCallback callback) +/* */ { +/* 56 */ super(parent, receiver, title, false); +/* 57 */ this.callback = callback; +/* */ +/* 59 */ setResizable(false); +/* 60 */ setAlignment(3); +/* */ +/* 62 */ ready(); +/* */ } +/* */ +/* */ public void setChangeCheck() { +/* 66 */ this.checkChanges = 2; +/* */ } +/* */ +/* */ protected void build() +/* */ { +/* 71 */ Vector<String> headings = this.callback.getComponents(); +/* 72 */ int rows = headings.size(); +/* 73 */ Panel top = new Panel(new GridLayout(rows, 2, 2, 2)); +/* 74 */ top.setFont(font); +/* 75 */ top.setBackground(Color.black); +/* 76 */ for (int i = 0; i < rows; i++) { +/* 77 */ Label label = new Label((String)headings.elementAt(i), 2); +/* 78 */ label.setForeground(Color.white); +/* 79 */ label.setFont(font); +/* 80 */ top.add(label); +/* 81 */ Choice choice = new Choice(); +/* 82 */ choice.setForeground(Color.white); +/* 83 */ choice.setBackground(Color.black); +/* 84 */ choice.setFont(font); +/* 85 */ top.add(choice); +/* 86 */ this.choices.addElement(choice); +/* 87 */ Vector<String> items = this.callback.getChoices(i); +/* 88 */ int count = items.size(); +/* 89 */ for (int j = 0; j < count; j++) +/* 90 */ choice.add((String)items.elementAt(j)); +/* 91 */ choice.select(this.callback.getCurrentSelection(i)); +/* */ } +/* 93 */ GridBagLayout gbag = new GridBagLayout(); +/* 94 */ setLayout(gbag); +/* 95 */ GridBagConstraints c = new GridBagConstraints(); +/* 96 */ c.weightx = 1.0D; +/* 97 */ c.weighty = 1.0D; +/* 98 */ c.gridheight = rows; +/* 99 */ c.gridwidth = 0; +/* 100 */ c.fill = 0; +/* 101 */ add(gbag, top, c); +/* 102 */ Panel bottom = new Panel(); +/* 103 */ this.okButton.setFont(bfont); +/* 104 */ bottom.add(this.okButton); +/* 105 */ bottom.setBackground(Color.black); +/* 106 */ c.gridheight = 1; +/* 107 */ c.weightx = 0.0D; +/* 108 */ c.weighty = 0.0D; +/* 109 */ c.fill = 1; +/* 110 */ add(gbag, bottom, c); +/* 111 */ this.okButton.setBackground(Color.black); +/* 112 */ this.okButton.setForeground(Color.white); +/* */ } +/* */ +/* */ @Deprecated +/* */ public boolean handleEvent(Event event) +/* */ { +/* 118 */ if (EventQueue.redirectDrivingKeys(event)) { +/* 119 */ return true; +/* */ } +/* 121 */ if (event.id == 201) +/* 122 */ return done(false); +/* 123 */ return super.handleEvent(event); +/* */ } +/* */ +/* */ @Deprecated +/* */ public boolean action(Event event, Object what) +/* */ { +/* 129 */ Object target = event.target; +/* 130 */ if (target == this.okButton) { +/* 131 */ return done(true); +/* */ } +/* 133 */ int count = this.choices.size(); +/* 134 */ for (int i = 0; i < count; i++) { +/* 135 */ Choice choice = (Choice)this.choices.elementAt(i); +/* 136 */ if (target == choice) { +/* 137 */ int[] change = new int[2]; +/* 138 */ change[0] = i; +/* 139 */ change[1] = choice.getSelectedIndex(); +/* 140 */ this.changes.addElement(change); +/* 141 */ return true; +/* */ } +/* */ } +/* */ +/* 145 */ return false; +/* */ } +/* */ +/* */ +/* 149 */ static Point lastWindowLocation = null; +/* */ +/* */ public boolean done(boolean confirmed) +/* */ { +/* 153 */ lastWindowLocation = getLocation(); +/* 154 */ return super.done(confirmed); +/* */ } +/* */ +/* */ public void closeWin() { +/* 158 */ if (lastWindowLocation == null) { +/* 159 */ done(true); +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ protected void initialSize(int width, int height) +/* */ { +/* 168 */ if (lastWindowLocation == null) { +/* 169 */ super.initialSize(width, height); +/* */ } else { +/* 171 */ setLocation(lastWindowLocation); +/* 172 */ lastWindowLocation = null; +/* 173 */ setSize(width, height); +/* */ } +/* */ } +/* */ +/* */ protected void activeCallback() +/* */ { +/* 179 */ if ((this.checkChanges > 0) && +/* 180 */ (--this.checkChanges == 0)) { +/* 181 */ for (int i = 0; i < this.choices.size(); i++) { +/* 182 */ ((Choice)this.choices.elementAt(i)).select(this.callback +/* 183 */ .getCurrentSelection(i)); +/* */ } +/* */ } +/* 186 */ while (this.changes.size() != 0) { +/* 187 */ int[] change = (int[])this.changes.elementAt(0); +/* */ +/* 189 */ this.callback.setCurrentSelection(change[0], change[1]); +/* */ +/* 191 */ this.checkChanges = 1; +/* */ +/* 193 */ this.changes.removeElementAt(0); +/* */ } +/* */ } +/* */ +/* */ @Deprecated +/* */ public boolean keyDown(Event event, int key) +/* */ { +/* 200 */ if (key == 27) +/* 201 */ return done(false); +/* 202 */ return super.keyDown(event, key); +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\AvatarDialog.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/AvatarDialogCallback.java b/NET/worlds/console/AvatarDialogCallback.java new file mode 100644 index 0000000..d011dbb --- /dev/null +++ b/NET/worlds/console/AvatarDialogCallback.java @@ -0,0 +1,20 @@ +package NET.worlds.console; + +import java.util.Vector; + +public abstract interface AvatarDialogCallback +{ + public abstract Vector<String> getComponents(); + + public abstract Vector<String> getChoices(int paramInt); + + public abstract int getCurrentSelection(int paramInt); + + public abstract void setCurrentSelection(int paramInt1, int paramInt2); +} + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\AvatarDialogCallback.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/AvatarDialogTest.java b/NET/worlds/console/AvatarDialogTest.java new file mode 100644 index 0000000..b8867f4 --- /dev/null +++ b/NET/worlds/console/AvatarDialogTest.java @@ -0,0 +1,60 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import java.util.Vector; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public class AvatarDialogTest +/* */ implements AvatarDialogCallback +/* */ { +/* 12 */ private static final String[] components = { "Color", "Weather", "Height", +/* 13 */ "Shape" }; +/* */ +/* 15 */ private static final String[] colors = { "Red", "Orange", "Yellow", +/* 16 */ "Green", "Blue", "Violet" }; +/* */ +/* 18 */ private static final String[] weather = { "Sunny", "Cloudy", "Raining", +/* 19 */ "Snowing" }; +/* */ +/* 21 */ private static final String[] heights = { "Short", "Medium", "Tall" }; +/* */ +/* 23 */ private static final String[] shapes = { "Circle", "Rectangle", "Triangle" }; +/* */ +/* 25 */ private static final String[][] items = { colors, weather, heights, shapes }; +/* */ +/* 27 */ private static int[] settings = new int[components.length]; +/* */ +/* */ +/* */ +/* */ public Vector<String> getComponents() +/* */ { +/* 33 */ return stringsToVector(components); +/* */ } +/* */ +/* */ public Vector<String> getChoices(int index) { +/* 37 */ return stringsToVector(items[index]); +/* */ } +/* */ +/* */ public int getCurrentSelection(int index) { +/* 41 */ return settings[index]; +/* */ } +/* */ +/* */ public void setCurrentSelection(int index, int choice) { +/* 45 */ settings[index] = choice; +/* */ } +/* */ +/* */ private static Vector<String> stringsToVector(String[] strings) { +/* 49 */ Vector<String> v = new Vector(); +/* 50 */ for (int i = 0; i < strings.length; i++) +/* 51 */ v.addElement(strings[i]); +/* 52 */ return v; +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\AvatarDialogTest.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/BBAnimateDroneCommand.java b/NET/worlds/console/BBAnimateDroneCommand.java new file mode 100644 index 0000000..20b95d0 --- /dev/null +++ b/NET/worlds/console/BBAnimateDroneCommand.java @@ -0,0 +1,60 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import NET.worlds.scape.Drone; +/* */ import NET.worlds.scape.Pilot; +/* */ import java.io.DataInputStream; +/* */ import java.io.DataOutputStream; +/* */ import java.io.IOException; +/* */ +/* */ public class BBAnimateDroneCommand extends BlackBoxCommand +/* */ { +/* */ private String animation; +/* */ private String droneName; +/* */ +/* */ public BBAnimateDroneCommand() +/* */ { +/* 16 */ this.commandType = 9; +/* */ } +/* */ +/* */ public BBAnimateDroneCommand(String drone, String cmd) { +/* 20 */ this(); +/* 21 */ this.animation = new String(cmd); +/* 22 */ this.droneName = new String(drone); +/* */ } +/* */ +/* */ public boolean execute() +/* */ { +/* 27 */ if (this.droneName.equals("@Pilot")) { +/* 28 */ Pilot p = Pilot.getActive(); +/* 29 */ if (p != null) +/* 30 */ p.animate(this.animation); +/* */ } else { +/* 32 */ Drone d = ArmyOfZombies.instance().get(this.droneName); +/* 33 */ if (d != null) { +/* 34 */ d.animate(this.animation); +/* */ } +/* */ } +/* 37 */ doCallback(true); +/* 38 */ return true; +/* */ } +/* */ +/* */ public void save(DataOutputStream dos) throws IOException +/* */ { +/* 43 */ super.save(dos); +/* 44 */ dos.writeUTF(this.animation); +/* 45 */ dos.writeUTF(this.droneName); +/* */ } +/* */ +/* */ public void load(DataInputStream dis) throws IOException +/* */ { +/* 50 */ super.load(dis); +/* 51 */ this.animation = new String(dis.readUTF()); +/* 52 */ this.droneName = new String(dis.readUTF()); +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\BBAnimateDroneCommand.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/BBAppearDroneCommand.java b/NET/worlds/console/BBAppearDroneCommand.java new file mode 100644 index 0000000..0e9dc96 --- /dev/null +++ b/NET/worlds/console/BBAppearDroneCommand.java @@ -0,0 +1,77 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import NET.worlds.scape.HoloDrone; +/* */ import java.io.DataInputStream; +/* */ import java.io.DataOutputStream; +/* */ import java.io.IOException; +/* */ +/* */ public class BBAppearDroneCommand extends BlackBoxCommand +/* */ { +/* */ private short x; +/* */ private short y; +/* */ private short z; +/* */ private short dir; +/* */ private String room; +/* */ private String name; +/* */ +/* */ public BBAppearDroneCommand(String roomName, String pName, short px, short py, short pz, short pdir) +/* */ { +/* 19 */ this(); +/* 20 */ this.x = px; +/* 21 */ this.y = py; +/* 22 */ this.z = pz; +/* 23 */ this.dir = pdir; +/* 24 */ this.room = new String(roomName); +/* 25 */ this.name = new String(pName); +/* */ } +/* */ +/* */ public BBAppearDroneCommand() { +/* 29 */ this.commandType = 5; +/* */ } +/* */ +/* */ public boolean execute() +/* */ { +/* 34 */ HoloDrone d = new HoloDrone(null, null); +/* 35 */ d.setName(this.name); +/* */ +/* 37 */ NET.worlds.scape.Room r = NET.worlds.scape.World.findRoomByName(this.room); +/* 38 */ if (r != null) { +/* 39 */ d.appear(r, this.x, this.y, this.z, this.dir); +/* 40 */ d.makeTag(true); +/* 41 */ ArmyOfZombies.instance().addZombie(d); +/* 42 */ doCallback(true); +/* */ } else { +/* 44 */ doCallback(false); +/* */ } +/* */ +/* 47 */ return true; +/* */ } +/* */ +/* */ public void save(DataOutputStream dos) throws IOException +/* */ { +/* 52 */ super.save(dos); +/* 53 */ dos.writeShort(this.x); +/* 54 */ dos.writeShort(this.y); +/* 55 */ dos.writeShort(this.z); +/* 56 */ dos.writeShort(this.dir); +/* 57 */ dos.writeUTF(this.room); +/* 58 */ dos.writeUTF(this.name); +/* */ } +/* */ +/* */ public void load(DataInputStream dis) throws IOException +/* */ { +/* 63 */ super.load(dis); +/* 64 */ this.x = dis.readShort(); +/* 65 */ this.y = dis.readShort(); +/* 66 */ this.z = dis.readShort(); +/* 67 */ this.dir = dis.readShort(); +/* 68 */ this.room = new String(dis.readUTF()); +/* 69 */ this.name = new String(dis.readUTF()); +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\BBAppearDroneCommand.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/BBChatCommand.java b/NET/worlds/console/BBChatCommand.java new file mode 100644 index 0000000..2d6e7fe --- /dev/null +++ b/NET/worlds/console/BBChatCommand.java @@ -0,0 +1,45 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import java.io.DataInputStream; +/* */ import java.io.DataOutputStream; +/* */ import java.io.IOException; +/* */ +/* */ public class BBChatCommand extends BlackBoxCommand +/* */ { +/* */ private String chatLine; +/* */ +/* */ public BBChatCommand(String line) +/* */ { +/* 13 */ this(); +/* 14 */ this.chatLine = new String(line); +/* */ } +/* */ +/* */ public BBChatCommand() { +/* 18 */ this.commandType = 0; +/* */ } +/* */ +/* */ public boolean execute() +/* */ { +/* 23 */ Console.println(this.chatLine); +/* 24 */ doCallback(true); +/* 25 */ return true; +/* */ } +/* */ +/* */ public void save(DataOutputStream dos) throws IOException +/* */ { +/* 30 */ super.save(dos); +/* 31 */ dos.writeUTF(this.chatLine); +/* */ } +/* */ +/* */ public void load(DataInputStream dis) throws IOException +/* */ { +/* 36 */ super.load(dis); +/* 37 */ this.chatLine = new String(dis.readUTF()); +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\BBChatCommand.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/BBDisappearDroneCommand.java b/NET/worlds/console/BBDisappearDroneCommand.java new file mode 100644 index 0000000..31df982 --- /dev/null +++ b/NET/worlds/console/BBDisappearDroneCommand.java @@ -0,0 +1,45 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import java.io.DataInputStream; +/* */ import java.io.DataOutputStream; +/* */ import java.io.IOException; +/* */ +/* */ public class BBDisappearDroneCommand extends BlackBoxCommand +/* */ { +/* */ private String name; +/* */ +/* */ public BBDisappearDroneCommand(String pName) +/* */ { +/* 13 */ this(); +/* 14 */ this.name = new String(pName); +/* */ } +/* */ +/* */ public BBDisappearDroneCommand() { +/* 18 */ this.commandType = 6; +/* */ } +/* */ +/* */ public boolean execute() +/* */ { +/* 23 */ ArmyOfZombies.instance().killZombie(this.name); +/* 24 */ doCallback(true); +/* 25 */ return true; +/* */ } +/* */ +/* */ public void save(DataOutputStream dos) throws IOException +/* */ { +/* 30 */ super.save(dos); +/* 31 */ dos.writeUTF(this.name); +/* */ } +/* */ +/* */ public void load(DataInputStream dis) throws IOException +/* */ { +/* 36 */ super.load(dis); +/* 37 */ this.name = new String(dis.readUTF()); +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\BBDisappearDroneCommand.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/BBDroneBitmapCommand.java b/NET/worlds/console/BBDroneBitmapCommand.java new file mode 100644 index 0000000..8092dcb --- /dev/null +++ b/NET/worlds/console/BBDroneBitmapCommand.java @@ -0,0 +1,65 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import NET.worlds.network.URL; +/* */ import NET.worlds.scape.Drone; +/* */ import java.io.DataInputStream; +/* */ import java.io.DataOutputStream; +/* */ import java.io.IOException; +/* */ +/* */ public class BBDroneBitmapCommand extends BlackBoxCommand +/* */ { +/* */ private String name; +/* */ private String bitmap; +/* */ +/* */ public BBDroneBitmapCommand(String pName, String pBitmap) +/* */ { +/* 16 */ this(); +/* 17 */ this.name = new String(pName); +/* 18 */ this.bitmap = new String(pBitmap); +/* */ } +/* */ +/* */ public BBDroneBitmapCommand() { +/* 22 */ this.commandType = 7; +/* */ } +/* */ +/* */ public boolean execute() +/* */ { +/* 27 */ Drone id = ArmyOfZombies.instance().get(this.name); +/* 28 */ if (id != null) +/* */ { +/* 30 */ Drone newDrone = id.handleVAR_BITMAP(this.bitmap); +/* 31 */ ArmyOfZombies.instance().replaceZombie(this.name, newDrone); +/* 32 */ } else if (this.name.equals("@Pilot")) { +/* 33 */ Console c = Console.getActive(); +/* 34 */ if (c != null) { +/* 35 */ c.setAvatar(URL.make(this.bitmap)); +/* */ } +/* */ } +/* */ else { +/* 39 */ System.out.println("Couldn't find drone " + this.name + +/* 40 */ " for bitmap command."); +/* */ } +/* 42 */ doCallback(true); +/* 43 */ return true; +/* */ } +/* */ +/* */ public void save(DataOutputStream dos) throws IOException +/* */ { +/* 48 */ super.save(dos); +/* 49 */ dos.writeUTF(this.name); +/* 50 */ dos.writeUTF(this.bitmap); +/* */ } +/* */ +/* */ public void load(DataInputStream dis) throws IOException +/* */ { +/* 55 */ super.load(dis); +/* 56 */ this.name = new String(dis.readUTF()); +/* 57 */ this.bitmap = new String(dis.readUTF()); +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\BBDroneBitmapCommand.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/BBDroneDeltaPosCommand.java b/NET/worlds/console/BBDroneDeltaPosCommand.java new file mode 100644 index 0000000..07c2140 --- /dev/null +++ b/NET/worlds/console/BBDroneDeltaPosCommand.java @@ -0,0 +1,84 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import NET.worlds.scape.Drone; +/* */ import NET.worlds.scape.HoloPilot; +/* */ import java.io.DataInputStream; +/* */ import java.io.DataOutputStream; +/* */ import java.io.IOException; +/* */ +/* */ public class BBDroneDeltaPosCommand extends BlackBoxCommand +/* */ { +/* */ private byte dx; +/* */ private byte dy; +/* */ private byte dyaw; +/* */ private String droneID; +/* */ +/* */ public BBDroneDeltaPosCommand() +/* */ { +/* 18 */ this.commandType = 8; +/* */ } +/* */ +/* */ public BBDroneDeltaPosCommand(String pdroneID, byte pdx, byte pdy, byte pdyaw) +/* */ { +/* 23 */ this(); +/* 24 */ this.droneID = pdroneID; +/* 25 */ this.dx = pdx; +/* 26 */ this.dy = pdy; +/* 27 */ this.dyaw = pdyaw; +/* */ } +/* */ +/* */ public boolean execute() +/* */ { +/* 32 */ Drone id = null; +/* */ +/* 34 */ if (this.droneID.equals("@Pilot")) { +/* 35 */ NET.worlds.scape.Pilot p = NET.worlds.scape.Pilot.getActive(); +/* 36 */ if ((p != null) && +/* 37 */ ((p instanceof HoloPilot))) { +/* 38 */ HoloPilot hp = (HoloPilot)p; +/* 39 */ Drone d = hp.getInternalDrone(); +/* 40 */ if ((d != null) && +/* 41 */ ((d instanceof Drone))) { +/* 42 */ id = d; +/* */ } +/* */ } +/* */ } +/* */ else +/* */ { +/* 48 */ id = ArmyOfZombies.instance().get(this.droneID); +/* */ } +/* */ +/* 51 */ if (id != null) { +/* 52 */ id.shortLoc(this.dx, this.dy, this.dyaw); +/* 53 */ doCallback(true); +/* 54 */ return true; +/* */ } +/* */ +/* 57 */ doCallback(true); +/* 58 */ return true; +/* */ } +/* */ +/* */ public void save(DataOutputStream dos) throws IOException +/* */ { +/* 63 */ super.save(dos); +/* 64 */ dos.writeUTF(this.droneID); +/* 65 */ dos.writeByte(this.dx); +/* 66 */ dos.writeByte(this.dy); +/* 67 */ dos.writeByte(this.dyaw); +/* */ } +/* */ +/* */ public void load(DataInputStream dis) throws IOException +/* */ { +/* 72 */ super.load(dis); +/* 73 */ this.droneID = dis.readUTF(); +/* 74 */ this.dx = dis.readByte(); +/* 75 */ this.dy = dis.readByte(); +/* 76 */ this.dyaw = dis.readByte(); +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\BBDroneDeltaPosCommand.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/BBMoveDroneCommand.java b/NET/worlds/console/BBMoveDroneCommand.java new file mode 100644 index 0000000..ec775fc --- /dev/null +++ b/NET/worlds/console/BBMoveDroneCommand.java @@ -0,0 +1,86 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import NET.worlds.scape.Drone; +/* */ import NET.worlds.scape.HoloPilot; +/* */ import java.io.DataInputStream; +/* */ import java.io.DataOutputStream; +/* */ +/* */ public class BBMoveDroneCommand extends BlackBoxCommand +/* */ { +/* */ private short x; +/* */ private short y; +/* */ private short z; +/* */ private short dir; +/* */ private String droneID; +/* */ +/* */ public BBMoveDroneCommand() +/* */ { +/* 18 */ this.commandType = 3; +/* */ } +/* */ +/* */ public BBMoveDroneCommand(String pdroneID, short px, short py, short pz, short pdir) +/* */ { +/* 23 */ this(); +/* 24 */ this.droneID = pdroneID; +/* 25 */ this.x = px; +/* 26 */ this.y = py; +/* 27 */ this.z = pz; +/* 28 */ this.dir = pdir; +/* */ } +/* */ +/* */ public boolean execute() +/* */ { +/* 33 */ Drone id = null; +/* */ +/* 35 */ if (this.droneID.equals("@Pilot")) { +/* 36 */ NET.worlds.scape.Pilot p = NET.worlds.scape.Pilot.getActive(); +/* 37 */ if ((p != null) && +/* 38 */ ((p instanceof HoloPilot))) { +/* 39 */ HoloPilot hp = (HoloPilot)p; +/* 40 */ id = hp.getInternalDrone(); +/* */ } +/* */ } +/* */ else { +/* 44 */ id = ArmyOfZombies.instance().get(this.droneID); +/* */ } +/* */ +/* 47 */ if (id != null) { +/* 48 */ short _dir = this.dir; +/* 49 */ _dir = (short)(90 - _dir); +/* 50 */ _dir = (short)(360 - _dir); +/* 51 */ id.longLoc(this.x, this.y, this.z, _dir); +/* */ +/* 53 */ doCallback(true); +/* 54 */ return true; +/* */ } +/* */ +/* 57 */ doCallback(true); +/* 58 */ return true; +/* */ } +/* */ +/* */ public void save(DataOutputStream dos) throws java.io.IOException +/* */ { +/* 63 */ super.save(dos); +/* 64 */ dos.writeUTF(this.droneID); +/* 65 */ dos.writeShort(this.x); +/* 66 */ dos.writeShort(this.y); +/* 67 */ dos.writeShort(this.z); +/* 68 */ dos.writeShort(this.dir); +/* */ } +/* */ +/* */ public void load(DataInputStream dis) throws java.io.IOException +/* */ { +/* 73 */ super.load(dis); +/* 74 */ this.droneID = dis.readUTF(); +/* 75 */ this.x = dis.readShort(); +/* 76 */ this.y = dis.readShort(); +/* 77 */ this.z = dis.readShort(); +/* 78 */ this.dir = dis.readShort(); +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\BBMoveDroneCommand.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/BBTeleportCommand.java b/NET/worlds/console/BBTeleportCommand.java new file mode 100644 index 0000000..78f002f --- /dev/null +++ b/NET/worlds/console/BBTeleportCommand.java @@ -0,0 +1,90 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import NET.worlds.scape.Drone; +/* */ import NET.worlds.scape.HoloPilot; +/* */ import NET.worlds.scape.Pilot; +/* */ import NET.worlds.scape.Point3Temp; +/* */ import NET.worlds.scape.TeleportAction; +/* */ import NET.worlds.scape.TeleportStatus; +/* */ import java.io.DataInputStream; +/* */ import java.io.DataOutputStream; +/* */ import java.io.IOException; +/* */ +/* */ +/* */ +/* */ +/* */ public class BBTeleportCommand +/* */ extends BlackBoxCommand +/* */ implements TeleportStatus +/* */ { +/* */ private String location; +/* */ +/* */ public BBTeleportCommand() +/* */ { +/* 24 */ this.commandType = 1; +/* */ } +/* */ +/* */ public BBTeleportCommand(String pLocation) { +/* 28 */ this(); +/* 29 */ if (pLocation != null) { +/* 30 */ this.location = new String(pLocation); +/* */ } +/* */ } +/* */ +/* */ public boolean execute() { +/* 35 */ if (this.location != null) +/* 36 */ TeleportAction.teleport(this.location, this); +/* 37 */ return true; +/* */ } +/* */ +/* */ public void save(DataOutputStream dos) throws IOException +/* */ { +/* 42 */ super.save(dos); +/* 43 */ if (this.location == null) { +/* 44 */ dos.writeUTF(""); +/* */ } else { +/* 46 */ dos.writeUTF(this.location); +/* */ } +/* */ } +/* */ +/* */ public void load(DataInputStream dis) throws IOException { +/* 51 */ super.load(dis); +/* 52 */ this.location = dis.readUTF(); +/* 53 */ if (this.location.equals("")) { +/* 54 */ this.location = null; +/* */ } +/* */ } +/* */ +/* */ public void teleportStatus(String err, String targetURL) { +/* 59 */ Pilot p = Pilot.getActive(); +/* 60 */ if ((p instanceof HoloPilot)) { +/* 61 */ HoloPilot hp = (HoloPilot)p; +/* 62 */ Drone d = hp.getInternalDrone(); +/* 63 */ if (d != null) { +/* 64 */ short dir = (short)(int)(-p.getYaw() + 90.0F); +/* 65 */ dir = (short)(dir % 360); +/* 66 */ while (dir < 0) { +/* 67 */ dir = (short)(dir + 360); +/* */ } +/* 69 */ dir = (short)(90 - dir); +/* 70 */ dir = (short)(360 - dir); +/* */ +/* 72 */ Point3Temp pos = p.getPosition(); +/* 73 */ d.reset((short)(int)pos.x, (short)(int)pos.y, +/* 74 */ (short)(int)p.getFootHeight(), dir); +/* */ } +/* */ } +/* */ +/* 78 */ if (err == null) { +/* 79 */ doCallback(true); +/* */ } else { +/* 81 */ doCallback(false); +/* */ } +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\BBTeleportCommand.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/BBWObjClickedCommand.java b/NET/worlds/console/BBWObjClickedCommand.java new file mode 100644 index 0000000..7c925f5 --- /dev/null +++ b/NET/worlds/console/BBWObjClickedCommand.java @@ -0,0 +1,89 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import NET.worlds.scape.DeepEnumeration; +/* */ import NET.worlds.scape.MouseDownEvent; +/* */ import NET.worlds.scape.MouseDownHandler; +/* */ import NET.worlds.scape.Pilot; +/* */ import NET.worlds.scape.Room; +/* */ import NET.worlds.scape.SuperRoot; +/* */ import java.io.DataInputStream; +/* */ import java.io.DataOutputStream; +/* */ import java.io.IOException; +/* */ +/* */ public class BBWObjClickedCommand extends BlackBoxCommand +/* */ { +/* */ private String objUrl; +/* */ int x; +/* */ int y; +/* */ char key; +/* */ +/* */ public BBWObjClickedCommand() +/* */ { +/* 22 */ this.commandType = 4; +/* */ } +/* */ +/* */ public BBWObjClickedCommand(String obj, char pkey, int px, int py) { +/* 26 */ this(); +/* 27 */ this.objUrl = new String(obj); +/* 28 */ this.key = pkey; +/* 29 */ this.x = px; +/* 30 */ this.y = py; +/* */ } +/* */ +/* */ public boolean execute() +/* */ { +/* 35 */ MouseDownHandler target = null; +/* 36 */ if (Pilot.getActive() == null) { +/* 37 */ return false; +/* */ } +/* 39 */ Room r = Pilot.getActive().getRoom(); +/* 40 */ if (r == null) { +/* 41 */ return false; +/* */ } +/* 43 */ DeepEnumeration<?> de = new DeepEnumeration(); +/* 44 */ r.getChildren(de); +/* 45 */ while (de.hasMoreElements()) { +/* 46 */ Object o = de.nextElement(); +/* 47 */ if (((o instanceof MouseDownHandler)) && +/* 48 */ (((SuperRoot)o).getName().equals(this.objUrl))) { +/* 49 */ target = (MouseDownHandler)o; +/* 50 */ break; +/* */ } +/* */ } +/* */ +/* */ +/* 55 */ if (target == null) { +/* 56 */ doCallback(false); +/* 57 */ return false; +/* */ } +/* */ +/* 60 */ MouseDownEvent e = new MouseDownEvent(0, null, this.key, this.x, this.y); +/* 61 */ target.handle(e); +/* 62 */ doCallback(true); +/* 63 */ return true; +/* */ } +/* */ +/* */ public void save(DataOutputStream dos) throws IOException +/* */ { +/* 68 */ super.save(dos); +/* 69 */ dos.writeInt(this.x); +/* 70 */ dos.writeInt(this.y); +/* 71 */ dos.writeChar(this.key); +/* 72 */ dos.writeUTF(this.objUrl); +/* */ } +/* */ +/* */ public void load(DataInputStream dis) throws IOException +/* */ { +/* 77 */ super.load(dis); +/* 78 */ this.x = dis.readInt(); +/* 79 */ this.y = dis.readInt(); +/* 80 */ this.key = dis.readChar(); +/* 81 */ this.objUrl = dis.readUTF(); +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\BBWObjClickedCommand.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/BackButton.java b/NET/worlds/console/BackButton.java new file mode 100644 index 0000000..e6557bc --- /dev/null +++ b/NET/worlds/console/BackButton.java @@ -0,0 +1,1233 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import java.awt.Button; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ class BackButton +/* */ extends Button +/* */ { +/* */ private static final long serialVersionUID = -3040398427896332517L; +/* */ +/* */ public BackButton(String name) +/* */ { +/* 1225 */ super(name); +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\BackButton.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/BlackBox.java b/NET/worlds/console/BlackBox.java new file mode 100644 index 0000000..bd44e80 --- /dev/null +++ b/NET/worlds/console/BlackBox.java @@ -0,0 +1,474 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import NET.worlds.core.IniFile; +/* */ import NET.worlds.core.Std; +/* */ import NET.worlds.network.Galaxy; +/* */ import NET.worlds.network.URL; +/* */ import NET.worlds.scape.Camera; +/* */ import NET.worlds.scape.Drone; +/* */ import NET.worlds.scape.FrameEvent; +/* */ import NET.worlds.scape.FrameHandler; +/* */ import NET.worlds.scape.HoloPilot; +/* */ import NET.worlds.scape.Pilot; +/* */ import NET.worlds.scape.Point3Temp; +/* */ import NET.worlds.scape.Postrenderable; +/* */ import NET.worlds.scape.SmoothDriver; +/* */ import NET.worlds.scape.Sound; +/* */ import NET.worlds.scape.SoundPlayer; +/* */ import NET.worlds.scape.WMPSoundPlayer; +/* */ import NET.worlds.scape.WavSoundPlayer; +/* */ import java.awt.FileDialog; +/* */ import java.awt.Frame; +/* */ import java.io.DataInputStream; +/* */ import java.io.DataOutputStream; +/* */ import java.io.EOFException; +/* */ import java.io.File; +/* */ import java.io.FileInputStream; +/* */ import java.io.FileOutputStream; +/* */ import java.io.PrintStream; +/* */ import java.util.Enumeration; +/* */ import java.util.Properties; +/* */ import java.util.Vector; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public class BlackBox +/* */ implements BlackBoxCallback, FrameHandler, Postrenderable +/* */ { +/* 41 */ private static BlackBox instance = new BlackBox(); +/* */ +/* */ public static BlackBox getInstance() { +/* 44 */ return instance; +/* */ } +/* */ +/* 47 */ private boolean disable = IniFile.gamma().getIniInt("disableRecorder", 0) == 1; +/* */ +/* 49 */ private String autoFile = null; +/* 50 */ private SoundPlayer autoSound = null; +/* */ static final int PLAYING = 0; +/* */ +/* 53 */ private BlackBox() { this.state = 2; +/* 54 */ this.commandList = new Vector(); +/* 55 */ this.pendingCommand = 0; +/* */ +/* 57 */ this.autoFile = IniFile.override().getIniString("AutoPlaybackFile", ""); +/* 58 */ if (!this.autoFile.equals("")) { +/* 59 */ play(); +/* */ } else { +/* 61 */ this.autoFile = null; +/* */ } +/* */ +/* 64 */ String soundFile = IniFile.override().getIniString("AutoPlaybackSound", +/* 65 */ ""); +/* 66 */ if (!soundFile.equals("")) { +/* 67 */ Sound owner = new Sound(URL.make(soundFile)); +/* 68 */ if (soundFile.toLowerCase().endsWith(".wav")) { +/* 69 */ this.autoSound = new WavSoundPlayer(owner); +/* */ } else { +/* 71 */ this.autoSound = new WMPSoundPlayer(owner); +/* */ } +/* */ } +/* */ } +/* */ +/* */ public void finalize() +/* */ { +/* 78 */ stop(); +/* */ } +/* */ +/* */ public void postrender(Camera cam) { +/* 82 */ if (this.disable) { +/* 83 */ return; +/* */ } +/* */ +/* 86 */ if (Std.getSynchronizedTime() % 2 == 0) { +/* 87 */ return; +/* */ } +/* 89 */ if (isPlaying()) { +/* 90 */ cam.nDrawText(Console.message("PLAY"), 10, 10, 18, 16711680); +/* 91 */ } else if (isRecording()) { +/* 92 */ cam.nDrawText(Console.message("REC"), 10, 10, 18, 16711680); +/* */ } +/* */ } +/* */ +/* */ +/* */ static final int RECORDING = 1; +/* */ +/* */ static final int STOPPED = 2; +/* */ +/* */ private int state; +/* */ +/* */ static final int CHATCMD = 0; +/* */ +/* */ static final int TELEPORTCMD = 1; +/* */ static final int ACTORLISTCMD = 2; +/* */ static final int MOVEDRONECMD = 3; +/* */ static final int OBJCLICKEDCMD = 4; +/* */ static final int APPEARDRONECMD = 5; +/* */ static final int DISAPPEARDRONECMD = 6; +/* */ static final int DRONEBITMAPCMD = 7; +/* */ static final int DRONEDELTACMD = 8; +/* */ static final int ANIMATECMD = 9; +/* */ public static final String PilotID = "@Pilot"; +/* */ private Vector<BlackBoxCommand> commandList; +/* */ private int commandIdx; +/* */ private long basetime; +/* */ static final int NOCMD = 0; +/* */ static final int PLAYCMD = 1; +/* */ static final int RECCMD = 2; +/* */ static final int STOPCMD = 3; +/* */ private int pendingCommand; +/* */ static final int FILE_VERSION = 1; +/* */ public synchronized void record() +/* */ { +/* 126 */ this.pendingCommand = 2; +/* */ } +/* */ +/* */ private boolean doRecord() { +/* 130 */ if (this.state != 2) { +/* 131 */ stop(); +/* */ } +/* 133 */ this.commandList.removeAllElements(); +/* */ +/* */ +/* 136 */ this.basetime = Std.getFastTime(); +/* */ +/* */ +/* 139 */ String url = ""; +/* 140 */ Pilot pilot = Pilot.getActive(); +/* 141 */ if (pilot == null) { +/* 142 */ return false; +/* */ } +/* 144 */ url = pilot.getURL(); +/* */ +/* 146 */ this.state = 1; +/* */ +/* 148 */ submitEvent(new BBTeleportCommand(url)); +/* */ +/* */ +/* 151 */ URL avatar = Console.getActive().getAvatarName(); +/* 152 */ if (avatar != null) { +/* 153 */ submitEvent(new BBDroneBitmapCommand("@Pilot", +/* 154 */ avatar.toString())); +/* */ } +/* */ +/* */ +/* 158 */ ArmyOfZombies.instance().zombify(); +/* */ +/* 160 */ return true; +/* */ } +/* */ +/* */ public synchronized void play() { +/* 164 */ this.pendingCommand = 1; +/* */ } +/* */ +/* */ public synchronized void play(URL recFile) { +/* 168 */ this.autoFile = recFile.unalias(); +/* 169 */ this.pendingCommand = 1; +/* */ } +/* */ +/* */ private void doPlay() { +/* 173 */ if (this.state != 2) { +/* 174 */ stop(); +/* */ } +/* 176 */ if (!restore()) { +/* 177 */ return; +/* */ } +/* 179 */ Galaxy.forceOffline(false); +/* 180 */ Console.getActive().setChatname(""); +/* */ +/* 182 */ Pilot p = Pilot.getActive(); +/* 183 */ if ((p instanceof HoloPilot)) { +/* 184 */ HoloPilot hp = (HoloPilot)p; +/* 185 */ hp.removeSmoothDriver(); +/* */ } +/* */ +/* 188 */ if (this.autoSound != null) { +/* 189 */ this.autoSound.start(1); +/* 190 */ this.autoSound = null; +/* */ } +/* */ +/* 193 */ this.commandIdx = 0; +/* */ +/* 195 */ this.basetime = Std.getFastTime(); +/* */ +/* 197 */ this.state = 0; +/* */ } +/* */ +/* */ public void commandCompleted(BlackBoxCommand c, boolean ok) { +/* 201 */ if (ok) { +/* 202 */ this.commandIdx += 1; +/* */ } else { +/* 204 */ System.out.println("Failed command!"); +/* 205 */ stop(); +/* */ } +/* */ } +/* */ +/* */ public boolean handle(FrameEvent e) { +/* 210 */ if (this.disable) { +/* 211 */ return false; +/* */ } +/* 213 */ switch (this.pendingCommand) { +/* */ case 1: +/* 215 */ doPlay(); +/* 216 */ this.pendingCommand = 0; +/* 217 */ break; +/* */ +/* */ case 2: +/* 220 */ doRecord(); +/* 221 */ this.pendingCommand = 0; +/* 222 */ break; +/* */ +/* */ case 3: +/* 225 */ doStop(); +/* 226 */ this.pendingCommand = 0; +/* */ } +/* */ +/* */ +/* 230 */ if (isPlaying()) { +/* 231 */ if (this.commandIdx >= this.commandList.size()) { +/* 232 */ stop(); +/* 233 */ return false; +/* */ } +/* */ +/* 236 */ long elapsedTime = Std.getFastTime() - this.basetime; +/* */ +/* 238 */ BlackBoxCommand c = +/* 239 */ (BlackBoxCommand)this.commandList.elementAt(this.commandIdx); +/* 240 */ if (c.startTime <= elapsedTime) { +/* 241 */ c.execute(this); +/* */ } +/* 243 */ Pilot p = Pilot.getActive(); +/* 244 */ if ((p instanceof HoloPilot)) { +/* 245 */ HoloPilot hp = (HoloPilot)p; +/* 246 */ Drone d = hp.getInternalDrone(); +/* 247 */ if (d != null) { +/* 248 */ d.interpolate(e.time, 2000, p); +/* 249 */ p.setZ(p.getPosition().z + +/* 250 */ hp.getSmoothDriver().getEyeHeight()); +/* */ } +/* */ } +/* */ } +/* */ +/* 255 */ return false; +/* */ } +/* */ +/* */ public boolean isRecording() { +/* 259 */ return this.state == 1; +/* */ } +/* */ +/* */ public boolean isPlaying() { +/* 263 */ return this.state == 0; +/* */ } +/* */ +/* */ public void submitEvent(BlackBoxCommand c) { +/* 267 */ if (this.disable) { +/* 268 */ return; +/* */ } +/* 270 */ if (!isRecording()) { +/* 271 */ return; +/* */ } +/* 273 */ c.timestamp(this.basetime); +/* 274 */ this.commandList.addElement(c); +/* */ } +/* */ +/* */ public synchronized void stop() { +/* 278 */ this.pendingCommand = 3; +/* */ } +/* */ +/* */ private void doStop() { +/* 282 */ if (this.state == 2) { +/* 283 */ return; +/* */ } +/* 285 */ if (isRecording()) { +/* 286 */ save(); +/* */ } +/* */ +/* 289 */ if (isPlaying()) +/* */ { +/* 291 */ ArmyOfZombies.instance().killZombies(); +/* */ +/* 293 */ Pilot p = Pilot.getActive(); +/* 294 */ if ((p instanceof HoloPilot)) { +/* 295 */ HoloPilot hp = (HoloPilot)p; +/* 296 */ hp.returnSmoothDriver(); +/* */ } +/* */ +/* */ +/* 300 */ Console c = Console.getActive(); +/* 301 */ if ((c instanceof DefaultConsole)) { +/* 302 */ DefaultConsole dc = (DefaultConsole)c; +/* 303 */ dc.getGalaxy().localForceOnline(); +/* 304 */ dc.getGalaxy().waitForConnection(dc); +/* */ } +/* */ } +/* */ +/* 308 */ this.state = 2; +/* */ } +/* */ +/* */ +/* */ private void save() +/* */ { +/* 314 */ Frame parent = Console.getFrame(); +/* */ +/* 316 */ Properties p = System.getProperties(); +/* 317 */ String oldDir = p.getProperty("user.dir"); +/* */ +/* 319 */ FileDialog fd = new FileDialog(parent, +/* 320 */ Console.message("Save-recording"), 1); +/* 321 */ fd.setFile("record.rec"); +/* 322 */ fd.setVisible(true); +/* */ +/* 324 */ String fname = fd.getFile(); +/* 325 */ String path = fd.getDirectory(); +/* */ +/* 327 */ p.remove("user.dir"); +/* 328 */ p.put("user.dir", oldDir); +/* 329 */ System.setProperties(p); +/* */ +/* 331 */ if (fname == null) { +/* 332 */ return; +/* */ } +/* 334 */ File f = new File(path, fname); +/* */ try { +/* 336 */ FileOutputStream fos = new FileOutputStream(f); +/* 337 */ DataOutputStream dos = new DataOutputStream(fos); +/* 338 */ dos.writeInt(1); +/* */ +/* 340 */ Enumeration<BlackBoxCommand> e = this.commandList.elements(); +/* 341 */ while (e.hasMoreElements()) { +/* 342 */ BlackBoxCommand cmd = (BlackBoxCommand)e.nextElement(); +/* 343 */ cmd.save(dos); +/* */ } +/* */ +/* 346 */ dos.close(); +/* 347 */ fos.close(); +/* */ } catch (Exception e) { +/* 349 */ System.out.println(e); +/* */ } +/* */ } +/* */ +/* */ private boolean restore() { +/* 354 */ if (this.autoFile != null) { +/* 355 */ restoreFile(new File(this.autoFile)); +/* 356 */ this.autoFile = null; +/* 357 */ return true; +/* */ } +/* */ +/* 360 */ Frame parent = Console.getFrame(); +/* */ +/* 362 */ Properties p = System.getProperties(); +/* 363 */ String oldDir = p.getProperty("user.dir"); +/* 364 */ FileDialog fd = new FileDialog(parent, +/* 365 */ Console.message("Load-recording"), 0); +/* */ +/* 367 */ fd.setVisible(true); +/* */ +/* 369 */ String filename = fd.getFile(); +/* 370 */ String directory = fd.getDirectory(); +/* */ +/* 372 */ p.remove("user.dir"); +/* 373 */ p.put("user.dir", oldDir); +/* 374 */ System.setProperties(p); +/* */ +/* 376 */ if (filename == null) { +/* 377 */ return false; +/* */ } +/* 379 */ File f = new File(directory, filename); +/* */ +/* 381 */ restoreFile(f); +/* */ +/* 383 */ return true; +/* */ } +/* */ +/* */ private void restoreFile(File f) { +/* 387 */ this.commandList.removeAllElements(); +/* */ try +/* */ { +/* 390 */ FileInputStream fis = new FileInputStream(f); +/* 391 */ DataInputStream dis = new DataInputStream(fis); +/* 392 */ int version = dis.readInt(); +/* 393 */ dis.close(); +/* 394 */ if (version != 1) { +/* 395 */ Console.println("Invalid recorder file."); +/* 396 */ return; +/* */ } +/* */ try +/* */ { +/* */ for (;;) { +/* 401 */ int cmdId = dis.readInt(); +/* */ +/* 403 */ BlackBoxCommand cmd = null; +/* */ +/* 405 */ switch (cmdId) +/* */ { +/* */ case 1: +/* 408 */ cmd = new BBTeleportCommand(); +/* 409 */ break; +/* */ +/* */ +/* */ case 3: +/* 413 */ cmd = new BBMoveDroneCommand(); +/* 414 */ break; +/* */ +/* */ +/* */ case 4: +/* 418 */ cmd = new BBWObjClickedCommand(); +/* 419 */ break; +/* */ +/* */ +/* */ case 5: +/* 423 */ cmd = new BBAppearDroneCommand(); +/* 424 */ break; +/* */ +/* */ +/* */ case 6: +/* 428 */ cmd = new BBDisappearDroneCommand(); +/* 429 */ break; +/* */ +/* */ +/* */ case 7: +/* 433 */ cmd = new BBDroneBitmapCommand(); +/* 434 */ break; +/* */ +/* */ +/* */ case 8: +/* 438 */ cmd = new BBDroneDeltaPosCommand(); +/* 439 */ break; +/* */ +/* */ +/* */ case 0: +/* 443 */ cmd = new BBChatCommand(); +/* 444 */ break; +/* */ +/* */ case 9: +/* 447 */ cmd = new BBAnimateDroneCommand(); +/* 448 */ break; +/* */ case 2: +/* */ default: +/* 451 */ System.out.println("Error! Unknown command type."); +/* */ } +/* */ +/* */ +/* 455 */ if (cmd != null) { +/* 456 */ cmd.load(dis); +/* 457 */ this.commandList.addElement(cmd); +/* */ } +/* */ } +/* */ } catch (EOFException e) { +/* 461 */ dis.close(); +/* 462 */ fis.close(); +/* */ } +/* */ return; +/* 465 */ } catch (Exception e) { System.out.println(e); +/* */ } +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\BlackBox.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/BlackBoxCallback.java b/NET/worlds/console/BlackBoxCallback.java new file mode 100644 index 0000000..b514235 --- /dev/null +++ b/NET/worlds/console/BlackBoxCallback.java @@ -0,0 +1,12 @@ +package NET.worlds.console; + +public abstract interface BlackBoxCallback +{ + public abstract void commandCompleted(BlackBoxCommand paramBlackBoxCommand, boolean paramBoolean); +} + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\BlackBoxCallback.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/BlackBoxCommand.java b/NET/worlds/console/BlackBoxCommand.java new file mode 100644 index 0000000..6f4f5eb --- /dev/null +++ b/NET/worlds/console/BlackBoxCommand.java @@ -0,0 +1,59 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import NET.worlds.core.Std; +/* */ import java.io.DataInputStream; +/* */ import java.io.DataOutputStream; +/* */ import java.io.IOException; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public abstract class BlackBoxCommand +/* */ { +/* */ int commandType; +/* */ long startTime; +/* */ BlackBoxCallback callback; +/* 19 */ boolean waiting = false; +/* */ +/* */ void timestamp(long basetime) { +/* 22 */ this.startTime = (Std.getFastTime() - basetime); +/* */ } +/* */ +/* */ public boolean execute(BlackBoxCallback c) { +/* 26 */ if (this.waiting) { +/* 27 */ return false; +/* */ } +/* 29 */ this.callback = c; +/* 30 */ if (c != null) { +/* 31 */ this.waiting = true; +/* */ } +/* 33 */ return execute(); +/* */ } +/* */ +/* */ abstract boolean execute(); +/* */ +/* */ void save(DataOutputStream dos) throws IOException { +/* 39 */ dos.writeInt(this.commandType); +/* 40 */ dos.writeLong(this.startTime); +/* */ } +/* */ +/* */ void load(DataInputStream dis) throws IOException { +/* 44 */ this.startTime = dis.readLong(); +/* */ } +/* */ +/* */ void doCallback(boolean ok) { +/* 48 */ if (this.callback != null) { +/* 49 */ this.waiting = false; +/* 50 */ this.callback.commandCompleted(this, ok); +/* */ } +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\BlackBoxCommand.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/BlockingDialog.java b/NET/worlds/console/BlockingDialog.java new file mode 100644 index 0000000..7de11dd --- /dev/null +++ b/NET/worlds/console/BlockingDialog.java @@ -0,0 +1,68 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import java.awt.Dialog; +/* */ import java.awt.Frame; +/* */ import java.awt.event.ActionEvent; +/* */ import java.awt.event.ActionListener; +/* */ import java.awt.event.WindowAdapter; +/* */ import java.awt.event.WindowEvent; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public class BlockingDialog +/* */ extends Dialog +/* */ implements ActionListener +/* */ { +/* */ private static final long serialVersionUID = 8379457384966170912L; +/* 29 */ boolean stillWaiting = true; +/* */ +/* */ public BlockingDialog(Frame parent, String title, boolean modal) { +/* 32 */ super(parent, title, modal); +/* 33 */ addWindowListener(new WindowAdapter() +/* */ { +/* */ public void windowClosing(WindowEvent e) { +/* 36 */ BlockingDialog.this.finish(); +/* */ } +/* */ }); +/* */ } +/* */ +/* */ public void actionPerformed(ActionEvent e) { +/* 42 */ finish(); +/* */ } +/* */ +/* */ public void finish() { +/* 46 */ responded(); +/* 47 */ setVisible(false); +/* */ } +/* */ +/* */ public synchronized void waitForResponse() { +/* */ try { +/* 52 */ while (this.stillWaiting) { +/* 53 */ wait(); +/* */ } +/* */ } catch (Exception localException) {} +/* */ } +/* */ +/* */ public synchronized void responded() { +/* 59 */ this.stillWaiting = false; +/* 60 */ notifyAll(); +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\BlockingDialog.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/BookmarkAddDialog.java b/NET/worlds/console/BookmarkAddDialog.java new file mode 100644 index 0000000..356f3a5 --- /dev/null +++ b/NET/worlds/console/BookmarkAddDialog.java @@ -0,0 +1,1022 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import java.awt.Window; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ class BookmarkAddDialog +/* */ implements MainCallback, DialogReceiver +/* */ { +/* */ private Window parent; +/* */ private DialogReceiver receiver; +/* */ private BookmarkEditDialog editor; +/* */ +/* */ BookmarkAddDialog(Window parent, DialogReceiver receiver) +/* */ { +/* 992 */ this.parent = parent; +/* 993 */ this.receiver = receiver; +/* */ +/* 995 */ Main.register(this); +/* */ } +/* */ +/* */ public void mainCallback() +/* */ { +/* 1000 */ this.editor = new BookmarkEditDialog(this.parent, this, +/* 1001 */ Console.message("Add-WorldsMark2"), +/* 1002 */ WorldsMarkPart.getCurrentPositionName(), +/* 1003 */ Console.message("Add"), Console.message("Cancel"), +/* 1004 */ WorldsMarkPart.getCurrentPositionURL(false)); +/* 1005 */ Main.unregister(this); +/* */ } +/* */ +/* */ public BookmarkEditDialog getEditor() { +/* 1009 */ return this.editor; +/* */ } +/* */ +/* */ public void dialogDone(Object who, boolean confirmed) +/* */ { +/* 1014 */ this.receiver.dialogDone(this, confirmed); +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\BookmarkAddDialog.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/BookmarkDeleteDialog.java b/NET/worlds/console/BookmarkDeleteDialog.java new file mode 100644 index 0000000..4946fd5 --- /dev/null +++ b/NET/worlds/console/BookmarkDeleteDialog.java @@ -0,0 +1,1153 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import java.awt.Button; +/* */ import java.awt.Event; +/* */ import java.awt.Font; +/* */ import java.awt.GridBagConstraints; +/* */ import java.awt.GridBagLayout; +/* */ import java.awt.Label; +/* */ import java.awt.List; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ class BookmarkDeleteDialog +/* */ extends PolledDialog +/* */ implements DialogReceiver +/* */ { +/* */ private static final long serialVersionUID = 7297733090895837320L; +/* 1023 */ private List listbox = new List(10); +/* 1024 */ private Button delButton = new Button(Console.message("Delete")); +/* 1025 */ private Button cancelButton = new Button(Console.message("Done")); +/* */ private WorldsMarkPart bookmarks; +/* 1027 */ private static Font font = new Font(Console.message("MenuFont"), +/* 1028 */ 0, 12); +/* 1029 */ private static Font bfont = new Font(Console.message("ButtonFont"), +/* 1030 */ 0, 12); +/* */ +/* */ BookmarkDeleteDialog(WorldsMarkPart bookmarks) +/* */ { +/* 1034 */ super(Console.getFrame(), null, Console.message("Delete-WorldsMark"), true); +/* 1035 */ this.bookmarks = bookmarks; +/* 1036 */ ready(); +/* */ } +/* */ +/* */ protected void build() +/* */ { +/* 1041 */ int count = WorldsMarkPart.getBookmarkCount(); +/* 1042 */ for (int i = 0; i < count; i++) +/* 1043 */ this.listbox.add(WorldsMarkPart.getBookmarkName(i)); +/* 1044 */ Label caption = new Label(Console.message("Choose-WorldsMark")); +/* */ +/* 1046 */ GridBagLayout gbag = new GridBagLayout(); +/* 1047 */ setLayout(gbag); +/* 1048 */ GridBagConstraints c = new GridBagConstraints(); +/* */ +/* 1050 */ c.fill = 2; +/* 1051 */ c.gridwidth = 0; +/* 1052 */ c.gridheight = 1; +/* 1053 */ c.weightx = 1.0D; +/* 1054 */ c.weighty = 0.0D; +/* 1055 */ caption.setFont(font); +/* 1056 */ add(gbag, caption, c); +/* */ +/* 1058 */ c.fill = 1; +/* 1059 */ c.gridwidth = 0; +/* 1060 */ c.gridheight = 6; +/* 1061 */ c.weightx = 1.0D; +/* 1062 */ c.weighty = 1.0D; +/* 1063 */ this.listbox.setFont(font); +/* 1064 */ add(gbag, this.listbox, c); +/* */ +/* 1066 */ c.fill = 0; +/* 1067 */ c.gridwidth = -1; +/* 1068 */ c.gridheight = 0; +/* 1069 */ c.anchor = 14; +/* 1070 */ c.weightx = 0.45D; +/* 1071 */ c.weighty = 0.0D; +/* 1072 */ this.delButton.setFont(bfont); +/* 1073 */ this.cancelButton.setFont(bfont); +/* 1074 */ add(gbag, this.delButton, c); +/* 1075 */ c.gridwidth = 0; +/* 1076 */ c.anchor = 16; +/* 1077 */ c.weightx = 0.55D; +/* 1078 */ add(gbag, this.cancelButton, c); +/* */ } +/* */ +/* */ private void select(boolean state) { +/* 1082 */ this.delButton.setEnabled(state); +/* */ } +/* */ +/* */ +/* */ +/* */ public void setVisible(boolean visible) +/* */ { +/* 1089 */ super.setVisible(visible); +/* 1090 */ if (visible) { +/* 1091 */ if (this.listbox.getItemCount() != 0) { +/* 1092 */ this.listbox.select(0); +/* 1093 */ select(true); +/* */ } else { +/* 1095 */ select(false); } +/* 1096 */ this.listbox.requestFocus(); +/* */ } +/* */ } +/* */ +/* */ @Deprecated +/* */ public boolean handleEvent(Event event) +/* */ { +/* 1103 */ if (event.id == 701) { +/* 1104 */ select(true); +/* 1105 */ } else if (event.id == 702) +/* 1106 */ select(false); +/* 1107 */ return super.handleEvent(event); +/* */ } +/* */ +/* */ @Deprecated +/* */ public boolean action(Event event, Object what) +/* */ { +/* 1113 */ Object target = event.target; +/* 1114 */ if (target == this.cancelButton) +/* 1115 */ return done(false); +/* 1116 */ if (target == this.delButton) { +/* 1117 */ int index = this.listbox.getSelectedIndex(); +/* 1118 */ if (index != -1) { +/* 1119 */ this.listbox.remove(index); +/* 1120 */ this.bookmarks.removeBookmark(index); +/* */ +/* */ +/* 1123 */ int count = this.listbox.getItemCount(); +/* 1124 */ if (index < count - 1) { +/* 1125 */ this.listbox.select(index); +/* 1126 */ } else if (count > 0) { +/* 1127 */ this.listbox.select(count - 1); +/* */ } else { +/* 1129 */ select(false); +/* 1130 */ this.listbox.requestFocus(); +/* */ } +/* */ } +/* 1133 */ return true; +/* */ } +/* 1135 */ return false; +/* */ } +/* */ +/* */ @Deprecated +/* */ public boolean keyDown(Event event, int key) +/* */ { +/* 1141 */ if ((key == 27) || (key == 10)) +/* 1142 */ return done(false); +/* 1143 */ return super.keyDown(event, key); +/* */ } +/* */ +/* */ public void dialogDone(Object who, boolean confirmed) {} +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\BookmarkDeleteDialog.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/BookmarkEditDialog.java b/NET/worlds/console/BookmarkEditDialog.java new file mode 100644 index 0000000..4e4f60f --- /dev/null +++ b/NET/worlds/console/BookmarkEditDialog.java @@ -0,0 +1,1325 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import java.awt.Button; +/* */ import java.awt.Event; +/* */ import java.awt.Font; +/* */ import java.awt.GridBagConstraints; +/* */ import java.awt.GridBagLayout; +/* */ import java.awt.Label; +/* */ import java.awt.Panel; +/* */ import java.awt.TextField; +/* */ import java.awt.Window; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ class BookmarkEditDialog +/* */ extends PolledDialog +/* */ { +/* */ private static final long serialVersionUID = 3386024535827699136L; +/* */ private TextField nameField; +/* */ private TextField URLField; +/* */ private Button okButton; +/* */ private Button cancelButton; +/* */ private String newName; +/* */ private String newTarget; +/* */ private int index; +/* 1171 */ private static Font font = new Font(Console.message("MenuFont"), +/* 1172 */ 0, 12); +/* 1173 */ private static Font bfont = new Font(Console.message("ButtonFont"), +/* 1174 */ 0, 12); +/* */ +/* */ +/* */ BookmarkEditDialog(Window parent, DialogReceiver receiver, String title, String name, String url) +/* */ { +/* 1179 */ this(parent, receiver, title, name, Console.message("OK"), Console.message("Cancel"), url, -1); +/* */ } +/* */ +/* */ BookmarkEditDialog(Window parent, DialogReceiver receiver, String title, String name, String ok, String cancel, String url) +/* */ { +/* 1184 */ this(parent, receiver, title, name, ok, cancel, url, -1); +/* */ } +/* */ +/* */ +/* */ BookmarkEditDialog(Window parent, DialogReceiver receiver, String name, String url, int index) +/* */ { +/* 1190 */ this(parent, receiver, Console.message("Edit-WorldsMark"), name, Console.message("OK"), Console.message("Cancel"), url, index); +/* */ } +/* */ +/* */ +/* */ private BookmarkEditDialog(Window parent, DialogReceiver receiver, String title, String name, String ok, String cancel, String url, int index) +/* */ { +/* 1196 */ super(parent, receiver, title, true); +/* 1197 */ this.index = index; +/* 1198 */ this.nameField = new TextField(name, 40); +/* 1199 */ this.URLField = new TextField(url, 40); +/* 1200 */ this.okButton = new Button(ok); +/* 1201 */ this.cancelButton = new Button(cancel); +/* 1202 */ ready(); +/* */ } +/* */ +/* */ protected void build() +/* */ { +/* 1207 */ GridBagLayout gbag = new GridBagLayout(); +/* 1208 */ setLayout(gbag); +/* 1209 */ GridBagConstraints c = new GridBagConstraints(); +/* 1210 */ c.fill = 0; +/* 1211 */ c.weightx = 1.0D; +/* 1212 */ c.weighty = 1.0D; +/* 1213 */ c.gridwidth = 2; +/* 1214 */ c.gridheight = 1; +/* 1215 */ Label lName = new Label(Console.message("Name")); +/* 1216 */ add(gbag, lName, c); +/* 1217 */ c.gridwidth = 0; +/* 1218 */ c.fill = 2; +/* 1219 */ this.nameField.setFont(font); +/* 1220 */ this.URLField.setFont(font); +/* 1221 */ add(gbag, this.nameField, c); +/* */ +/* */ +/* 1224 */ c.fill = 0; +/* 1225 */ c.gridwidth = 2; +/* 1226 */ add(gbag, new Label("URL:"), c); +/* 1227 */ c.gridwidth = 0; +/* 1228 */ c.fill = 2; +/* 1229 */ add(gbag, this.URLField, c); +/* */ +/* 1231 */ Panel buttons = new Panel(); +/* 1232 */ this.okButton.setFont(bfont); +/* 1233 */ this.cancelButton.setFont(bfont); +/* 1234 */ buttons.add(this.okButton); +/* 1235 */ buttons.add(this.cancelButton); +/* 1236 */ c.gridwidth = 0; +/* 1237 */ c.fill = 0; +/* 1238 */ add(gbag, buttons, c); +/* */ } +/* */ +/* */ @Deprecated +/* */ public boolean action(Event event, Object what) +/* */ { +/* 1244 */ Object target = event.target; +/* 1245 */ if ((target == this.okButton) && (mayConfirm())) +/* 1246 */ return done(true); +/* 1247 */ if (target == this.cancelButton) +/* 1248 */ return done(false); +/* 1249 */ return false; +/* */ } +/* */ +/* */ public String getName() +/* */ { +/* 1254 */ return this.newName; +/* */ } +/* */ +/* */ public String getTarget() { +/* 1258 */ return this.newTarget; +/* */ } +/* */ +/* */ public int getIndex() { +/* 1262 */ return this.index; +/* */ } +/* */ +/* */ private boolean mayConfirm() +/* */ { +/* 1267 */ this.newName = this.nameField.getText(); +/* */ +/* 1269 */ int i = this.newName.length(); +/* 1270 */ do { if (this.newName.charAt(i) != ' ') { +/* */ break; +/* */ } +/* 1269 */ i--; } while (i >= 0); +/* */ +/* */ +/* */ +/* 1273 */ this.newName = this.newName.substring(0, i + 1); +/* */ +/* 1275 */ this.newTarget = this.URLField.getText().trim(); +/* */ +/* 1277 */ return (this.newName.length() != 0) && (this.newTarget.length() != 0); +/* */ } +/* */ +/* */ @Deprecated +/* */ public boolean keyDown(Event event, int key) +/* */ { +/* 1283 */ if (key == 27) +/* 1284 */ return done(false); +/* 1285 */ if (key == 10) { +/* 1286 */ if (mayConfirm()) +/* 1287 */ return done(true); +/* 1288 */ } else if (key == 9) +/* */ { +/* */ +/* */ +/* 1292 */ if (event.target == this.nameField) { +/* 1293 */ this.URLField.requestFocus(); +/* 1294 */ this.URLField.selectAll(); +/* 1295 */ } else if (event.target == this.URLField) { +/* 1296 */ this.nameField.requestFocus(); +/* 1297 */ this.nameField.selectAll(); +/* */ } +/* */ +/* 1300 */ return true; +/* */ } +/* 1302 */ return super.keyDown(event, key); +/* */ } +/* */ +/* */ +/* */ +/* */ public void setVisible(boolean visible) +/* */ { +/* 1309 */ super.setVisible(visible); +/* 1310 */ if (visible) { +/* 1311 */ this.nameField.requestFocus(); +/* 1312 */ this.nameField.selectAll(); +/* */ } +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\BookmarkEditDialog.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/BookmarkListDialog.java b/NET/worlds/console/BookmarkListDialog.java new file mode 100644 index 0000000..ee26a15 --- /dev/null +++ b/NET/worlds/console/BookmarkListDialog.java @@ -0,0 +1,989 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import java.awt.Button; +/* */ import java.awt.Event; +/* */ import java.awt.Font; +/* */ import java.awt.GridBagConstraints; +/* */ import java.awt.GridBagLayout; +/* */ import java.awt.List; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ class BookmarkListDialog +/* */ extends PolledDialog +/* */ implements DialogReceiver +/* */ { +/* */ private static final long serialVersionUID = 2134767291802432777L; +/* 804 */ private List listbox = new List(10); +/* 805 */ private Button editButton = new Button(Console.message("Edit")); +/* 806 */ private Button addButton = new Button(Console.message("Add")); +/* 807 */ private Button copyButton = new Button(Console.message("Copy")); +/* 808 */ private Button delButton = new Button(Console.message("Delete")); +/* 809 */ private Button okButton = new Button(Console.message("Go-To")); +/* 810 */ private Button cancelButton = new Button(Console.message("Done")); +/* */ private WorldsMarkPart bookmarks; +/* 812 */ private static Font font = new Font(Console.message("MenuFont"), +/* 813 */ 0, 12); +/* 814 */ private static Font bfont = new Font(Console.message("ButtonFont"), +/* 815 */ 0, 12); +/* */ +/* */ BookmarkListDialog(WorldsMarkPart bookmarks) +/* */ { +/* 819 */ super(Console.getFrame(), null, Console.message("Edit-WorldsMarkL"), true); +/* 820 */ this.bookmarks = bookmarks; +/* 821 */ ready(); +/* */ } +/* */ +/* */ protected void build() +/* */ { +/* 826 */ int count = WorldsMarkPart.getBookmarkCount(); +/* 827 */ for (int i = 0; i < count; i++) { +/* 828 */ this.listbox.add(WorldsMarkPart.getBookmarkName(i)); +/* */ } +/* 830 */ GridBagLayout gbag = new GridBagLayout(); +/* 831 */ setLayout(gbag); +/* 832 */ GridBagConstraints c = new GridBagConstraints(); +/* 833 */ c.fill = 1; +/* 834 */ c.weightx = 1.0D; +/* 835 */ c.weighty = 1.0D; +/* 836 */ c.gridwidth = 2; +/* 837 */ c.gridheight = 6; +/* 838 */ this.listbox.setFont(font); +/* 839 */ add(gbag, this.listbox, c); +/* 840 */ c.weightx = 0.0D; +/* 841 */ c.weighty = 0.0D; +/* 842 */ c.gridwidth = 0; +/* 843 */ c.gridheight = 1; +/* 844 */ c.fill = 2; +/* 845 */ this.editButton.setFont(bfont); +/* 846 */ this.addButton.setFont(bfont); +/* 847 */ this.delButton.setFont(bfont); +/* 848 */ this.okButton.setFont(bfont); +/* 849 */ this.cancelButton.setFont(bfont); +/* 850 */ add(gbag, this.editButton, c); +/* 851 */ add(gbag, this.addButton, c); +/* */ +/* 853 */ add(gbag, this.copyButton, c); +/* 854 */ add(gbag, this.delButton, c); +/* 855 */ c.weighty = 1.0D; +/* 856 */ c.anchor = 15; +/* 857 */ add(gbag, this.okButton, c); +/* 858 */ c.weighty = 0.0D; +/* 859 */ add(gbag, this.cancelButton, c); +/* */ } +/* */ +/* */ private void select(boolean state) { +/* 863 */ this.editButton.setEnabled(state); +/* 864 */ this.delButton.setEnabled(state); +/* 865 */ this.copyButton.setEnabled(state); +/* 866 */ this.okButton.setEnabled(state); +/* */ } +/* */ +/* */ +/* */ +/* */ public void setVisible(boolean visible) +/* */ { +/* 873 */ super.setVisible(visible); +/* 874 */ if (visible) { +/* 875 */ if (this.listbox.getItemCount() != 0) { +/* 876 */ this.listbox.select(0); +/* 877 */ select(true); +/* */ } else { +/* 879 */ select(false); } +/* 880 */ this.listbox.requestFocus(); +/* */ } +/* */ } +/* */ +/* */ @Deprecated +/* */ public boolean handleEvent(Event event) +/* */ { +/* 887 */ if (event.id == 701) { +/* 888 */ select(true); +/* 889 */ } else if (event.id == 702) +/* 890 */ select(false); +/* 891 */ return super.handleEvent(event); +/* */ } +/* */ +/* */ @Deprecated +/* */ public boolean action(Event event, Object what) +/* */ { +/* 897 */ Object target = event.target; +/* 898 */ if ((target == this.okButton) || (target == this.listbox)) { +/* 899 */ WorldsMarkPart.gotoBookmark(this.listbox.getSelectedIndex()); +/* 900 */ return done(true); +/* */ } +/* 902 */ if (target == this.cancelButton) +/* 903 */ return done(false); +/* 904 */ if (target == this.delButton) { +/* 905 */ int index = this.listbox.getSelectedIndex(); +/* 906 */ if (index != -1) { +/* 907 */ this.listbox.remove(index); +/* 908 */ this.bookmarks.removeBookmark(index); +/* */ +/* */ +/* 911 */ int count = this.listbox.getItemCount(); +/* 912 */ if (index < count - 1) { +/* 913 */ this.listbox.select(index); +/* 914 */ } else if (count > 0) { +/* 915 */ this.listbox.select(count - 1); +/* */ } else { +/* 917 */ select(false); +/* 918 */ this.listbox.requestFocus(); +/* */ } +/* */ } +/* 921 */ return true; +/* */ } +/* 923 */ if (target == this.copyButton) { +/* 924 */ int index = this.listbox.getSelectedIndex(); +/* 925 */ if (index != -1) +/* 926 */ add(WorldsMarkPart.getBookmarkName(index), +/* 927 */ WorldsMarkPart.getBookmarkTarget(index)); +/* 928 */ return true; +/* */ } +/* 930 */ if (target == this.addButton) { +/* 931 */ new BookmarkAddDialog(this, this); +/* 932 */ return true; +/* */ } +/* 934 */ if (target == this.editButton) { +/* 935 */ int index = this.listbox.getSelectedIndex(); +/* 936 */ new BookmarkEditDialog(this, this, +/* 937 */ WorldsMarkPart.getBookmarkName(index), +/* 938 */ WorldsMarkPart.getBookmarkTarget(index), index); +/* 939 */ return true; +/* */ } +/* 941 */ return false; +/* */ } +/* */ +/* */ @Deprecated +/* */ public boolean keyDown(Event event, int key) +/* */ { +/* 947 */ if (key == 27) +/* 948 */ return done(false); +/* 949 */ if (key == 10) { +/* 950 */ WorldsMarkPart.gotoBookmark(this.listbox.getSelectedIndex()); +/* 951 */ return done(true); +/* */ } +/* 953 */ return super.keyDown(event, key); +/* */ } +/* */ +/* */ private void add(String name, String target) { +/* 957 */ this.bookmarks.addBookmark(name, target); +/* 958 */ this.listbox.add(name); +/* 959 */ this.listbox.makeVisible(this.listbox.getItemCount() - 1); +/* 960 */ this.listbox.select(this.listbox.getItemCount() - 1); +/* 961 */ select(true); +/* */ } +/* */ +/* */ public void dialogDone(Object who, boolean confirmed) +/* */ { +/* 966 */ if (confirmed) { +/* 967 */ if ((who instanceof BookmarkAddDialog)) { +/* 968 */ BookmarkAddDialog adder = (BookmarkAddDialog)who; +/* 969 */ BookmarkEditDialog editor = adder.getEditor(); +/* 970 */ add(editor.getName(), editor.getTarget()); +/* 971 */ } else if ((who instanceof BookmarkEditDialog)) { +/* 972 */ BookmarkEditDialog edit = (BookmarkEditDialog)who; +/* 973 */ int index = edit.getIndex(); +/* 974 */ String name = edit.getName(); +/* 975 */ String target = edit.getTarget(); +/* 976 */ this.bookmarks.changeBookmark(index, name, target); +/* 977 */ this.listbox.replaceItem(name, index); +/* 978 */ this.listbox.makeVisible(index); +/* 979 */ this.listbox.select(index); +/* */ } +/* */ } +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\BookmarkListDialog.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/BookmarkMenuItem.java b/NET/worlds/console/BookmarkMenuItem.java new file mode 100644 index 0000000..1094e51 --- /dev/null +++ b/NET/worlds/console/BookmarkMenuItem.java @@ -0,0 +1,68 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import NET.worlds.scape.Persister; +/* */ import NET.worlds.scape.Restorer; +/* */ import NET.worlds.scape.Saver; +/* */ import NET.worlds.scape.TooNewException; +/* */ import java.awt.MenuItem; +/* */ import java.io.IOException; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public class BookmarkMenuItem +/* */ extends MenuItem +/* */ implements Persister +/* */ { +/* */ private static final long serialVersionUID = -6078093402030113754L; +/* */ private String target; +/* */ +/* */ public BookmarkMenuItem(String name, String target) +/* */ { +/* 27 */ super(name); +/* 28 */ this.target = target; +/* */ } +/* */ +/* */ public BookmarkMenuItem() {} +/* */ +/* */ public String getTarget() +/* */ { +/* 35 */ return this.target; +/* */ } +/* */ +/* */ public void setTarget(String loc) { +/* 39 */ this.target = loc; +/* */ } +/* */ +/* 42 */ private static Object classCookie = new Object(); +/* */ +/* */ public void saveState(Saver s) throws IOException { +/* 45 */ s.saveVersion(1, classCookie); +/* 46 */ s.saveString(getLabel()); +/* 47 */ s.saveString(this.target); +/* */ } +/* */ +/* */ public void restoreState(Restorer r) throws IOException, TooNewException { +/* 51 */ switch (r.restoreVersion(classCookie)) { +/* */ case 1: +/* 53 */ setLabel(r.restoreString()); +/* 54 */ this.target = r.restoreString(); +/* 55 */ break; +/* */ default: +/* 57 */ throw new TooNewException(); +/* */ } +/* */ } +/* */ +/* */ public void postRestore(int version) {} +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\BookmarkMenuItem.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/BootDialog.java b/NET/worlds/console/BootDialog.java new file mode 100644 index 0000000..d7d967d --- /dev/null +++ b/NET/worlds/console/BootDialog.java @@ -0,0 +1,139 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import java.awt.Button; +/* */ import java.awt.Event; +/* */ import java.awt.Font; +/* */ import java.awt.GridBagConstraints; +/* */ import java.awt.GridBagLayout; +/* */ import java.awt.Label; +/* */ import java.awt.Panel; +/* */ import java.awt.TextField; +/* */ import java.awt.Window; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public class BootDialog +/* */ extends PolledDialog +/* */ { +/* */ private static final long serialVersionUID = -4574101262059937239L; +/* 34 */ private Label bootLabel = new Label(Console.message("User-to-Boot")); +/* 35 */ private Button okButton = new Button(Console.message("OK")); +/* 36 */ private Button cancelButton = new Button(Console.message("Cancel")); +/* 37 */ private static Font font = new Font(Console.message("MenuFont"), +/* 38 */ 0, 12); +/* 39 */ private static Font bfont = new Font(Console.message("ButtonFont"), +/* 40 */ 0, 12); +/* */ +/* */ +/* */ +/* */ private TextField bootField; +/* */ +/* */ +/* */ +/* */ +/* */ public BootDialog(Window parent, DialogReceiver receiver, String title) +/* */ { +/* 51 */ super(parent, receiver, title, true); +/* */ +/* 53 */ this.bootField = new TextField(""); +/* */ +/* 55 */ ready(); +/* */ } +/* */ +/* */ public String getBoot() +/* */ { +/* 60 */ return this.bootField.getText(); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ protected void build() +/* */ { +/* 69 */ GridBagLayout gbag = new GridBagLayout(); +/* 70 */ setLayout(gbag); +/* 71 */ GridBagConstraints c = new GridBagConstraints(); +/* 72 */ c.weightx = 1.0D; +/* 73 */ c.weighty = 1.0D; +/* 74 */ c.gridheight = 1; +/* 75 */ c.fill = 0; +/* */ +/* 77 */ c.gridwidth = 2; +/* 78 */ add(gbag, this.bootLabel, c); +/* 79 */ c.gridwidth = 0; +/* 80 */ c.fill = 2; +/* 81 */ this.bootField.setFont(font); +/* 82 */ add(gbag, this.bootField, c); +/* */ +/* 84 */ Panel buttons = new Panel(); +/* 85 */ this.okButton.setFont(bfont); +/* 86 */ buttons.add(this.okButton); +/* 87 */ this.cancelButton.setFont(bfont); +/* 88 */ buttons.add(this.cancelButton); +/* 89 */ c.gridwidth = 0; +/* 90 */ c.fill = 0; +/* 91 */ add(gbag, buttons, c); +/* */ } +/* */ +/* */ +/* */ +/* */ public void setVisible(boolean visible) +/* */ { +/* 98 */ if (visible) { +/* 99 */ initialSize(320, 140); +/* 100 */ super.setVisible(visible); +/* 101 */ this.bootField.requestFocus(); +/* */ } else { +/* 103 */ super.setVisible(visible); +/* */ } +/* */ } +/* */ +/* */ @Deprecated +/* */ public boolean handleEvent(Event event) +/* */ { +/* 110 */ if (event.id == 201) +/* 111 */ return done(false); +/* 112 */ return super.handleEvent(event); +/* */ } +/* */ +/* */ @Deprecated +/* */ public boolean action(Event event, Object what) +/* */ { +/* 118 */ Object target = event.target; +/* 119 */ if (target == this.cancelButton) { +/* 120 */ done(false); +/* 121 */ } else if (target == this.okButton) +/* 122 */ done(true); +/* 123 */ return false; +/* */ } +/* */ +/* */ @Deprecated +/* */ public boolean keyDown(Event event, int key) +/* */ { +/* 129 */ if (key == 27) +/* 130 */ return done(false); +/* 131 */ return super.keyDown(event, key); +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\BootDialog.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/CameraConveyor.java b/NET/worlds/console/CameraConveyor.java new file mode 100644 index 0000000..c2094db --- /dev/null +++ b/NET/worlds/console/CameraConveyor.java @@ -0,0 +1,124 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import NET.worlds.scape.FrameEvent; +/* */ import NET.worlds.scape.FrameHandler; +/* */ import NET.worlds.scape.NoSuchPropertyException; +/* */ import NET.worlds.scape.Pilot; +/* */ import NET.worlds.scape.Point3; +/* */ import NET.worlds.scape.Point3Temp; +/* */ import NET.worlds.scape.Property; +/* */ import NET.worlds.scape.Restorer; +/* */ import NET.worlds.scape.Saver; +/* */ import NET.worlds.scape.SuperRoot; +/* */ import NET.worlds.scape.TooNewException; +/* */ import NET.worlds.scape.WObject; +/* */ import java.io.IOException; +/* */ import java.util.Enumeration; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public class CameraConveyor +/* */ extends SuperRoot +/* */ implements FrameHandler +/* */ { +/* */ private Point3 vector; +/* */ +/* */ public CameraConveyor() {} +/* */ +/* */ public CameraConveyor(Point3Temp direction, float speed) +/* */ { +/* 46 */ this.vector = new Point3(direction.normalize().times(speed)); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public CameraConveyor(Point3Temp v) +/* */ { +/* 55 */ this.vector = new Point3(v); +/* */ } +/* */ +/* */ public boolean handle(FrameEvent e) { +/* 59 */ if (e.dt == 0) +/* 60 */ return true; +/* 61 */ Enumeration<WObject> stuff = e.receiver.getContents(); +/* */ +/* 63 */ Point3Temp delta = Point3Temp.make(this.vector); +/* 64 */ delta.times(e.dt / 1000.0F); +/* */ +/* 66 */ while (stuff.hasMoreElements()) { +/* 67 */ WObject thing = (WObject)stuff.nextElement(); +/* 68 */ if ((thing instanceof Pilot)) { +/* 69 */ thing.moveThrough(delta); +/* */ } +/* */ } +/* 72 */ return true; +/* */ } +/* */ +/* 75 */ private static Object classCookie = new Object(); +/* */ +/* */ public void saveState(Saver s) throws IOException +/* */ { +/* 79 */ s.saveVersion(1, classCookie); +/* 80 */ super.saveState(s); +/* 81 */ s.save(this.vector); +/* */ } +/* */ +/* */ public void restoreState(Restorer r) throws IOException, TooNewException +/* */ { +/* 86 */ switch (r.restoreVersion(classCookie)) { +/* */ case 1: +/* 88 */ super.restoreState(r); +/* */ case 0: +/* 90 */ this.vector = ((Point3)r.restore()); +/* 91 */ break; +/* */ default: +/* 93 */ throw new TooNewException(); +/* */ } +/* */ +/* */ } +/* */ +/* */ +/* */ +/* */ public Object properties(int index, int offset, int mode, Object value) +/* */ throws NoSuchPropertyException +/* */ { +/* 103 */ Object ret = null; +/* */ +/* 105 */ switch (index - offset) { +/* */ case 0: +/* 107 */ if (mode == 0) { +/* 108 */ ret = new Property(this, index, "Velocity"); +/* 109 */ } else if (mode == 1) +/* 110 */ ret = this.vector; +/* 111 */ break; +/* */ default: +/* 113 */ ret = super.properties(index, offset + 1, mode, value); +/* */ } +/* */ +/* 116 */ return ret; +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\CameraConveyor.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/ChannelDialog.java b/NET/worlds/console/ChannelDialog.java new file mode 100644 index 0000000..7c3c9a7 --- /dev/null +++ b/NET/worlds/console/ChannelDialog.java @@ -0,0 +1,141 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import java.awt.Button; +/* */ import java.awt.Event; +/* */ import java.awt.Font; +/* */ import java.awt.GridBagConstraints; +/* */ import java.awt.GridBagLayout; +/* */ import java.awt.Label; +/* */ import java.awt.Panel; +/* */ import java.awt.TextField; +/* */ import java.awt.Window; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public class ChannelDialog +/* */ extends PolledDialog +/* */ { +/* */ private static final long serialVersionUID = -3677512952231237135L; +/* 37 */ private Label channelLabel = new Label(Console.message("New-channel")); +/* 38 */ private Button okButton = new Button(Console.message("OK")); +/* 39 */ private Button cancelButton = new Button(Console.message("Cancel")); +/* 40 */ private static Font font = new Font(Console.message("MenuFont"), +/* 41 */ 0, 12); +/* */ +/* */ +/* */ +/* */ private TextField channelField; +/* */ +/* */ +/* */ +/* */ +/* */ public ChannelDialog(Window parent, DialogReceiver receiver, String title, String defChannel) +/* */ { +/* 52 */ super(parent, receiver, title, true); +/* */ +/* 54 */ this.channelField = new TextField(defChannel); +/* */ +/* 56 */ ready(); +/* */ } +/* */ +/* */ public String getChannel() +/* */ { +/* 61 */ return this.channelField.getText(); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ protected void build() +/* */ { +/* 70 */ GridBagLayout gbag = new GridBagLayout(); +/* 71 */ setLayout(gbag); +/* 72 */ GridBagConstraints c = new GridBagConstraints(); +/* 73 */ c.weightx = 1.0D; +/* 74 */ c.weighty = 1.0D; +/* 75 */ c.gridheight = 1; +/* 76 */ c.fill = 0; +/* */ +/* 78 */ c.gridwidth = 2; +/* 79 */ this.channelLabel.setFont(font); +/* 80 */ add(gbag, this.channelLabel, c); +/* 81 */ c.gridwidth = 0; +/* 82 */ c.fill = 2; +/* 83 */ this.channelField.setFont(font); +/* 84 */ add(gbag, this.channelField, c); +/* */ +/* 86 */ Panel buttons = new Panel(); +/* 87 */ buttons.add(this.okButton); +/* 88 */ buttons.add(this.cancelButton); +/* 89 */ this.okButton.setFont(font); +/* 90 */ this.cancelButton.setFont(font); +/* 91 */ c.gridwidth = 0; +/* 92 */ c.fill = 0; +/* 93 */ add(gbag, buttons, c); +/* */ } +/* */ +/* */ +/* */ +/* */ public void setVisible(boolean visible) +/* */ { +/* 100 */ if (visible) { +/* 101 */ initialSize(320, 140); +/* 102 */ super.setVisible(visible); +/* 103 */ this.channelField.requestFocus(); +/* */ } else { +/* 105 */ super.setVisible(visible); +/* */ } +/* */ } +/* */ +/* */ @Deprecated +/* */ public boolean handleEvent(Event event) +/* */ { +/* 112 */ if (event.id == 201) +/* 113 */ return done(false); +/* 114 */ return super.handleEvent(event); +/* */ } +/* */ +/* */ @Deprecated +/* */ public boolean action(Event event, Object what) +/* */ { +/* 120 */ Object target = event.target; +/* 121 */ if (target == this.cancelButton) { +/* 122 */ done(false); +/* 123 */ } else if (target == this.okButton) +/* 124 */ done(true); +/* 125 */ return false; +/* */ } +/* */ +/* */ @Deprecated +/* */ public boolean keyDown(Event event, int key) +/* */ { +/* 131 */ if (key == 27) +/* 132 */ return done(false); +/* 133 */ return super.keyDown(event, key); +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\ChannelDialog.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/ChatArea.java b/NET/worlds/console/ChatArea.java new file mode 100644 index 0000000..658d65f --- /dev/null +++ b/NET/worlds/console/ChatArea.java @@ -0,0 +1,423 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import java.awt.Component; +/* */ import java.awt.Event; +/* */ import java.io.BufferedReader; +/* */ import java.io.File; +/* */ import java.io.FileNotFoundException; +/* */ import java.io.FileReader; +/* */ import java.io.FileWriter; +/* */ import java.io.IOException; +/* */ import java.io.PrintStream; +/* */ import java.io.PrintWriter; +/* */ import java.text.DateFormat; +/* */ import java.util.Date; +/* */ import java.util.Observer; +/* */ import javax.swing.JScrollPane; +/* */ import javax.swing.JTextArea; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public class ChatArea +/* */ extends JScrollPane +/* */ implements SharedTextArea +/* */ { +/* */ private static final long serialVersionUID = 1L; +/* */ private JTextArea textArea; +/* */ private static String sharedText; +/* */ private boolean isShared; +/* */ private String unsharedText; +/* */ private String unaddedText; +/* */ private boolean haveFocus; +/* */ private PrintWriter logFile; +/* */ private String logFileName; +/* */ private static final long oneMeg = 1048576L; +/* */ private static final long logLengthLimit = 524288L; +/* */ +/* */ public ChatArea(int rows, int cols, boolean isShared) +/* */ { +/* 86 */ this.textArea = new JTextArea(rows, cols); +/* */ +/* 88 */ this.isShared = isShared; +/* 89 */ this.textArea.setEditable(false); +/* */ +/* 91 */ setViewportView(this.textArea); +/* 92 */ super.setHorizontalScrollBarPolicy(31); +/* 93 */ super.setVerticalScrollBarPolicy(20); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public Component getComponent() +/* */ { +/* 109 */ return this; +/* */ } +/* */ +/* */ public void finalize() +/* */ { +/* 114 */ disableLogging(); +/* */ } +/* */ +/* */ +/* */ public synchronized void validate() +/* */ { +/* 120 */ super.validate(); +/* 121 */ String text = this.isShared ? sharedText : this.unsharedText; +/* 122 */ if (text != null) { +/* 123 */ this.textArea.replaceRange("", 0, this.textArea.getText().length()); +/* 124 */ this.textArea.append(text); +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public synchronized void enableLogging(String fileName, String title, boolean append) +/* */ { +/* 140 */ if (this.logFile != null) +/* */ { +/* 142 */ if (this.logFileName.equals(fileName)) { +/* 143 */ return; +/* */ } +/* 145 */ this.logFile.close(); +/* */ } +/* */ try { +/* 148 */ if ((append) && (new File(fileName).exists())) { +/* 149 */ truncateIfExceeds(fileName, title, 524288L); +/* 150 */ this.logFile = new PrintWriter(new FileWriter(fileName, true)); +/* */ } else { +/* 152 */ this.logFile = new PrintWriter(new FileWriter(fileName, false)); +/* 153 */ obsLogFile.setChanged(true); +/* 154 */ this.logFile.println("<html>"); +/* 155 */ this.logFile.println("<head>"); +/* 156 */ this.logFile.println("<title>" + title + "</title>"); +/* 157 */ this.logFile.println("</head>"); +/* 158 */ this.logFile.println("<body>"); +/* */ } +/* 160 */ this.logFileName = fileName; +/* 161 */ this.logFile.println("<hr>"); +/* 162 */ this.logFile.println("<h3>Conversation of " + +/* 163 */ DateFormat.getDateTimeInstance().format(new Date()) + +/* 164 */ "</h3>"); +/* */ +/* 166 */ this.logFile.flush(); +/* 167 */ obsLogFile.notifyObservers(this); +/* */ } catch (IOException ex) { +/* 169 */ System.out.println("Log file not opened: " + ex); +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* 175 */ private static PublicObservable obsLogFile = new PublicObservable(); +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public static void addLogObserver(Observer o) +/* */ { +/* 183 */ obsLogFile.addObserver(o); +/* */ } +/* */ +/* */ +/* */ +/* */ public static void deleteLogObserver(Observer o) +/* */ { +/* 190 */ obsLogFile.deleteObserver(o); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ private synchronized void truncateIfExceeds(String fileName, String title, long lengthLimit) +/* */ { +/* 203 */ File f = new File(fileName); +/* 204 */ if (f.length() > lengthLimit) { +/* 205 */ File tf = new File(fileName + ".temp"); +/* */ +/* */ try +/* */ { +/* 209 */ BufferedReader in = new BufferedReader(new FileReader(f)); +/* 210 */ PrintWriter out = new PrintWriter(new FileWriter(tf)); +/* 211 */ out.println("<html>"); +/* 212 */ out.println("<head>"); +/* 213 */ out.println("<title>" + title + "</title>"); +/* 214 */ out.println("</head>"); +/* 215 */ out.println("<body>"); +/* 216 */ in.skip(f.length() - lengthLimit / 2L); +/* 217 */ String line = in.readLine(); +/* 218 */ line = in.readLine(); +/* 219 */ while (line != null) { +/* 220 */ out.println(line); +/* 221 */ line = in.readLine(); +/* */ } +/* 223 */ in.close(); +/* 224 */ out.close(); +/* */ +/* */ +/* 227 */ f.delete(); +/* 228 */ f = new File(fileName); +/* 229 */ tf.renameTo(f); +/* */ } catch (FileNotFoundException ex) { +/* 231 */ System.out.println("DuplexPart fatal: " + ex); +/* */ } catch (IOException ex) { +/* 233 */ System.out.println("DuplexPart: Unable to write, " + ex); +/* */ } +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ public synchronized void disableLogging() +/* */ { +/* 242 */ if (this.logFile != null) { +/* 243 */ this.logFile.close(); +/* 244 */ this.logFile = null; +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public boolean canAddText() +/* */ { +/* 255 */ if (!this.haveFocus) { +/* 256 */ return true; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* 293 */ return false; +/* */ } +/* */ +/* */ +/* */ +/* */ private String toHtml(String s) +/* */ { +/* 300 */ assert (s != null); +/* 301 */ String h = ""; +/* 302 */ for (int i = 0; i < s.length(); i++) { +/* 303 */ char c = s.charAt(i); +/* 304 */ switch (c) { +/* */ case '<': +/* 306 */ h = h + "<"; +/* 307 */ break; +/* */ case '>': +/* 309 */ h = h + ">"; +/* 310 */ break; +/* */ case '"': +/* 312 */ h = h + """; +/* 313 */ break; +/* */ case '&': +/* 315 */ h = h + "&"; +/* 316 */ break; +/* */ default: +/* 318 */ h = h + c; +/* */ } +/* */ +/* */ } +/* 322 */ return h; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public synchronized void println(String msg) +/* */ { +/* 334 */ if ((this.logFile != null) && (msg != null)) { +/* 335 */ this.logFile.println(toHtml(msg) + "<br>"); +/* 336 */ this.logFile.flush(); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* 342 */ if (this.unaddedText == null) { +/* 343 */ this.unaddedText = msg; +/* 344 */ } else if (msg != null) { +/* 345 */ this.unaddedText = (this.unaddedText + "\n" + msg); +/* */ } +/* 347 */ if ((this.unaddedText == null) || (!canAddText())) { +/* 348 */ return; +/* */ } +/* 350 */ if (this.textArea.getText().length() == 0) { +/* 351 */ this.textArea.append(this.unaddedText); +/* */ } else +/* 353 */ this.textArea.append("\n" + this.unaddedText); +/* 354 */ this.unaddedText = null; +/* */ +/* */ +/* 357 */ String text = this.textArea.getText(); +/* 358 */ if (text.length() > 20000) { +/* 359 */ int linePos = text.indexOf('\n', 10240); +/* 360 */ if (linePos >= 0) { +/* 361 */ text = text.substring(linePos + 1); +/* */ +/* */ +/* 364 */ linePos = text.lastIndexOf('\n'); +/* 365 */ if (linePos > 0) { +/* 366 */ this.textArea.setText(text.substring(0, linePos)); +/* 367 */ this.textArea.append(text.substring(linePos)); +/* */ } +/* */ } +/* */ } +/* */ +/* 372 */ if (this.isShared) { +/* 373 */ sharedText = text; +/* */ } else { +/* 375 */ this.unsharedText = text; +/* */ } +/* */ } +/* */ +/* */ public synchronized void scrollToBottom() { +/* 380 */ String text = this.textArea.getText(); +/* 381 */ int textlen = text.length(); +/* 382 */ this.textArea.select(textlen, textlen); +/* */ } +/* */ +/* */ +/* */ +/* */ @Deprecated +/* */ public synchronized boolean handleEvent(Event event) +/* */ { +/* 390 */ if (event.id == 1004) { +/* 391 */ this.haveFocus = true; +/* 392 */ } else if (event.id == 1005) +/* */ { +/* 394 */ this.haveFocus = false; +/* */ } +/* */ +/* 397 */ poll(); +/* */ +/* 399 */ return super.handleEvent(event); +/* */ } +/* */ +/* */ public void poll() +/* */ { +/* 404 */ if (this.unaddedText != null) { +/* 405 */ println(null); +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public boolean isFocusTraversable() +/* */ { +/* 415 */ return false; +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\ChatArea.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/ChatDialog.java b/NET/worlds/console/ChatDialog.java new file mode 100644 index 0000000..cf75c95 --- /dev/null +++ b/NET/worlds/console/ChatDialog.java @@ -0,0 +1,204 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import java.awt.Button; +/* */ import java.awt.Choice; +/* */ import java.awt.Event; +/* */ import java.awt.Font; +/* */ import java.awt.GridBagConstraints; +/* */ import java.awt.GridBagLayout; +/* */ import java.awt.Label; +/* */ import java.awt.Panel; +/* */ import java.awt.TextField; +/* */ import java.awt.Window; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public class ChatDialog +/* */ extends PolledDialog +/* */ { +/* */ private static final long serialVersionUID = 2346715931784644393L; +/* 35 */ private Label fontsizeLabel = new Label(Console.message("Font-Size")); +/* 36 */ private Label linesLabel = new Label(Console.message("Chat-Lines")); +/* 37 */ private Label chatlengthLabel = new Label(Console.message("Chat-Buffer-Length")); +/* 38 */ private Button okButton = new Button(Console.message("OK")); +/* 39 */ private Button cancelButton = new Button(Console.message("Cancel")); +/* 40 */ private static Font font = new Font(Console.message("MenuFont"), 0, 12); +/* */ +/* */ +/* */ +/* */ private Choice fontsizeChoice; +/* */ +/* */ +/* */ +/* */ private Choice linesChoice; +/* */ +/* */ +/* */ private TextField chatlengthField; +/* */ +/* */ +/* */ +/* */ public ChatDialog(Window parent, DialogReceiver receiver, String title, int defSize, int defLines, int defLength) +/* */ { +/* 57 */ super(parent, receiver, title, true); +/* */ +/* */ +/* */ +/* 61 */ this.fontsizeChoice = new Choice(); +/* 62 */ this.linesChoice = new Choice(); +/* 63 */ this.chatlengthField = new TextField(defLength); +/* */ +/* 65 */ for (int i = 0; i <= 16; i++) +/* */ { +/* 67 */ this.fontsizeChoice.insert(i + 10 + "pt", i); +/* */ } +/* 69 */ if ((defSize < 10) || (defSize > 16)) { +/* 70 */ this.fontsizeChoice.select(2); +/* */ } else { +/* 72 */ this.fontsizeChoice.select(defSize - 10); +/* */ } +/* */ +/* 75 */ for (int i = 0; i < 24; i++) +/* */ { +/* 77 */ this.linesChoice.insert(i + 6 + " lines", i); +/* */ } +/* 79 */ if ((defLines < 6) || (defLines > 30)) { +/* 80 */ this.linesChoice.select(0); +/* */ } else { +/* 82 */ this.linesChoice.select(defLines - 6); +/* */ } +/* */ +/* 85 */ ready(); +/* */ } +/* */ +/* */ public int getFontsize() +/* */ { +/* */ try +/* */ { +/* 92 */ return this.fontsizeChoice.getSelectedIndex() + 10; +/* */ } catch (Exception e) {} +/* 94 */ return 12; +/* */ } +/* */ +/* */ +/* */ public int getLines() +/* */ { +/* */ try +/* */ { +/* 102 */ return this.linesChoice.getSelectedIndex() + 6; +/* */ } catch (Exception e) {} +/* 104 */ return 6; +/* */ } +/* */ +/* */ public int getLength() +/* */ { +/* */ try { +/* 110 */ return Integer.parseInt(this.chatlengthField.getText()); +/* */ } catch (Exception e) {} +/* 112 */ return 20000; +/* */ } +/* */ +/* */ +/* */ +/* */ protected void build() +/* */ { +/* 119 */ GridBagLayout gbag = new GridBagLayout(); +/* 120 */ setLayout(gbag); +/* 121 */ GridBagConstraints c = new GridBagConstraints(); +/* 122 */ c.weightx = 1.0D; +/* 123 */ c.weighty = 1.0D; +/* 124 */ c.gridheight = 1; +/* 125 */ c.fill = 0; +/* */ +/* 127 */ c.gridwidth = 2; +/* 128 */ this.fontsizeLabel.setFont(font); +/* 129 */ add(gbag, this.fontsizeLabel, c); +/* 130 */ c.gridwidth = 0; +/* 131 */ c.fill = 2; +/* */ +/* 133 */ add(gbag, this.fontsizeChoice, c); +/* */ +/* 135 */ c.fill = 0; +/* 136 */ c.gridwidth = 2; +/* 137 */ this.linesLabel.setFont(font); +/* 138 */ add(gbag, this.linesLabel, c); +/* 139 */ c.gridwidth = 0; +/* 140 */ c.fill = 2; +/* */ +/* 142 */ add(gbag, this.linesChoice, c); +/* */ +/* 144 */ c.gridwidth = 2; +/* 145 */ this.chatlengthLabel.setFont(font); +/* 146 */ add(gbag, this.chatlengthLabel, c); +/* 147 */ c.gridwidth = 0; +/* 148 */ c.fill = 2; +/* 149 */ this.chatlengthField.setFont(font); +/* 150 */ add(gbag, this.chatlengthField, c); +/* */ +/* 152 */ Panel buttons = new Panel(); +/* 153 */ buttons.add(this.okButton); +/* 154 */ buttons.add(this.cancelButton); +/* 155 */ this.okButton.setFont(font); +/* 156 */ this.cancelButton.setFont(font); +/* 157 */ c.gridwidth = 0; +/* 158 */ c.fill = 0; +/* 159 */ add(gbag, buttons, c); +/* */ } +/* */ +/* */ +/* */ public void setVisible(boolean visible) +/* */ { +/* 165 */ if (visible) { +/* 166 */ initialSize(320, 160); +/* 167 */ super.setVisible(visible); +/* */ +/* 169 */ this.fontsizeChoice.requestFocus(); +/* */ } else { +/* 171 */ super.setVisible(visible); +/* */ } +/* */ } +/* */ +/* */ @Deprecated +/* */ public boolean handleEvent(Event event) { +/* 177 */ if (event.id == 201) +/* 178 */ return done(false); +/* 179 */ return super.handleEvent(event); +/* */ } +/* */ +/* */ @Deprecated +/* */ public boolean action(Event event, Object what) { +/* 184 */ Object target = event.target; +/* 185 */ if (target == this.cancelButton) { +/* 186 */ done(false); +/* 187 */ } else if (target == this.okButton) +/* 188 */ done(true); +/* 189 */ return false; +/* */ } +/* */ +/* */ @Deprecated +/* */ public boolean keyDown(Event event, int key) { +/* 194 */ if (key == 27) +/* 195 */ return done(false); +/* 196 */ return super.keyDown(event, key); +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\ChatDialog.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/ChatPart.java b/NET/worlds/console/ChatPart.java new file mode 100644 index 0000000..1f7af6e --- /dev/null +++ b/NET/worlds/console/ChatPart.java @@ -0,0 +1,116 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import NET.worlds.scape.FrameEvent; +/* */ import NET.worlds.scape.Pilot; +/* */ import java.awt.Container; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public class ChatPart +/* */ extends DuplexPart +/* */ { +/* */ private Window renderWindow; +/* */ private DefaultConsole console; +/* */ private static final String activateVCselfWhisper = "&|+debug<selfWhisperON"; +/* */ private static final String deactivateVCselfWhisper = "&|+debug<selfWhisperOFF"; +/* */ private static final String VCextraCommand = "&|+debug<VCcommand"; +/* */ +/* */ protected void sendText(String s) +/* */ { +/* 40 */ int ii = s.indexOf('\\'); +/* */ +/* 42 */ if (s.startsWith("&|+debug<")) { +/* 43 */ triggerLocalDebug(s); +/* 44 */ } else if ((ii >= 0) && (ii < s.length() - 1) && (s.charAt(ii + 1) == 'u')) { +/* 45 */ Pilot.sendText(Console.parseUnicode(s)); +/* */ } else { +/* 47 */ Pilot.sendText(s); +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ public void activate(Console c, Container f, Console prev) +/* */ { +/* 55 */ super.activate(c, f, prev); +/* */ +/* */ +/* 58 */ this.console = ((DefaultConsole)c); +/* */ } +/* */ +/* */ public void deactivate() +/* */ { +/* 63 */ super.deactivate(); +/* */ +/* */ +/* 66 */ this.renderWindow = null; +/* 67 */ this.console = null; +/* */ } +/* */ +/* */ public synchronized boolean handle(FrameEvent f) +/* */ { +/* 72 */ boolean ret = super.handle(f); +/* */ +/* */ +/* 75 */ if ((this.renderWindow == null) && (this.console != null)) { +/* 76 */ RenderCanvas rc = this.console.getRender(); +/* 77 */ if (rc != null) { +/* 78 */ Window w = rc.getWindow(); +/* 79 */ if (w != null) { +/* */ try { +/* 81 */ w.hookChatLine(this.line); +/* 82 */ this.renderWindow = w; +/* */ } +/* */ catch (WindowNotFoundException localWindowNotFoundException) {} +/* */ } +/* */ } +/* */ } +/* 88 */ return ret; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ private void triggerLocalDebug(String s) +/* */ { +/* 100 */ if (s.startsWith("&|+debug<selfWhisperON")) { +/* 101 */ VoiceChat.activateSelfWhisper(); +/* */ } +/* 103 */ if (s.startsWith("&|+debug<selfWhisperOFF")) { +/* 104 */ VoiceChat.deactivateSelfWhisper(); +/* */ } +/* 106 */ if (s.startsWith("&|+debug<VCcommand")) { +/* 107 */ VoiceChat.setExtra(s); +/* */ } +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\ChatPart.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/ClassicSharedTextArea.java b/NET/worlds/console/ClassicSharedTextArea.java new file mode 100644 index 0000000..139a54c --- /dev/null +++ b/NET/worlds/console/ClassicSharedTextArea.java @@ -0,0 +1,765 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import NET.worlds.core.IniFile; +/* */ import java.awt.Color; +/* */ import java.awt.Component; +/* */ import java.awt.Event; +/* */ import java.awt.FontMetrics; +/* */ import java.awt.Graphics; +/* */ import java.awt.Image; +/* */ import java.awt.Point; +/* */ import java.awt.Rectangle; +/* */ import java.awt.TextArea; +/* */ import java.io.BufferedReader; +/* */ import java.io.File; +/* */ import java.io.FileNotFoundException; +/* */ import java.io.FileReader; +/* */ import java.io.FileWriter; +/* */ import java.io.IOException; +/* */ import java.io.PrintStream; +/* */ import java.io.PrintWriter; +/* */ import java.text.DateFormat; +/* */ import java.util.Date; +/* */ import java.util.Observer; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ class ClassicSharedTextArea +/* */ extends TextArea +/* */ implements SharedTextArea +/* */ { +/* */ private static final long serialVersionUID = -3315186117230082655L; +/* */ private static String sharedText; +/* */ private boolean isShared; +/* */ private String unsharedText; +/* */ private String unaddedText; +/* */ private boolean haveFocus; +/* */ private PrintWriter logFile; +/* */ private String logFileName; +/* */ private static final long oneMeg = 1048576L; +/* */ private static final long logLengthLimit = 524288L; +/* */ +/* */ public ClassicSharedTextArea(int rows, int cols, boolean isShared) +/* */ { +/* 445 */ super("", rows, cols, 1); +/* 446 */ this.isShared = isShared; +/* 447 */ setEditable(false); +/* */ } +/* */ +/* */ public Component getComponent() { +/* 451 */ return this; +/* */ } +/* */ +/* */ +/* */ public void finalize() +/* */ { +/* 457 */ disableLogging(); +/* */ } +/* */ +/* */ public synchronized void validate() +/* */ { +/* 462 */ super.validate(); +/* 463 */ String text = this.isShared ? sharedText : this.unsharedText; +/* 464 */ if (text != null) { +/* 465 */ replaceRange("", 0, getText().length()); +/* 466 */ append(text); +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public synchronized void enableLogging(String fileName, String title, boolean append) +/* */ { +/* 483 */ if (this.logFile != null) +/* */ { +/* 485 */ if (this.logFileName.equals(fileName)) { +/* 486 */ return; +/* */ } +/* 488 */ this.logFile.close(); +/* */ } +/* */ try { +/* 491 */ if ((append) && (new File(fileName).exists())) { +/* 492 */ truncateIfExceeds(fileName, title, 524288L); +/* 493 */ this.logFile = new PrintWriter(new FileWriter(fileName, true)); +/* */ } else { +/* 495 */ this.logFile = new PrintWriter(new FileWriter(fileName, false)); +/* 496 */ obsLogFile.setChanged(true); +/* 497 */ this.logFile.println("<html>"); +/* 498 */ this.logFile.println("<head>"); +/* 499 */ this.logFile.println("<title>" + title + "</title>"); +/* 500 */ this.logFile.println("</head>"); +/* 501 */ this.logFile.println("<body>"); +/* */ } +/* 503 */ this.logFileName = fileName; +/* 504 */ this.logFile.println("<hr>"); +/* 505 */ this.logFile.println("<h3>Conversation of " + +/* 506 */ DateFormat.getDateTimeInstance().format(new Date()) + +/* 507 */ "</h3>"); +/* 508 */ this.logFile.flush(); +/* 509 */ obsLogFile.notifyObservers(this); +/* */ } catch (IOException ex) { +/* 511 */ System.out.println("Log file not opened: " + ex); +/* */ } +/* */ } +/* */ +/* */ +/* 516 */ private static PublicObservable obsLogFile = new PublicObservable(); +/* */ +/* */ +/* */ +/* */ +/* */ public static void addLogObserver(Observer o) +/* */ { +/* 523 */ obsLogFile.addObserver(o); +/* */ } +/* */ +/* */ public static void deleteLogObserver(Observer o) +/* */ { +/* 528 */ obsLogFile.deleteObserver(o); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ private void truncateIfExceeds(String fileName, String title, long lengthLimit) +/* */ { +/* 539 */ File f = new File(fileName); +/* 540 */ if (f.length() > lengthLimit) { +/* 541 */ File tf = new File(fileName + ".temp"); +/* */ +/* */ try +/* */ { +/* 545 */ BufferedReader in = new BufferedReader(new FileReader(f)); +/* 546 */ PrintWriter out = new PrintWriter(new FileWriter(tf)); +/* 547 */ out.println("<html>"); +/* 548 */ out.println("<head>"); +/* 549 */ out.println("<title>" + title + "</title>"); +/* 550 */ out.println("</head>"); +/* 551 */ out.println("<body>"); +/* 552 */ in.skip(f.length() - lengthLimit / 2L); +/* 553 */ String line = in.readLine(); +/* 554 */ line = in.readLine(); +/* 555 */ while (line != null) { +/* 556 */ out.println(line); +/* 557 */ line = in.readLine(); +/* */ } +/* 559 */ in.close(); +/* 560 */ out.close(); +/* */ +/* */ +/* 563 */ f.delete(); +/* 564 */ f = new File(fileName); +/* 565 */ tf.renameTo(f); +/* */ } catch (FileNotFoundException ex) { +/* 567 */ System.out.println("DuplexPart fatal: " + ex); +/* */ } catch (IOException ex) { +/* 569 */ System.out.println("DuplexPart: Unable to write, " + ex); +/* */ } +/* */ } +/* */ } +/* */ +/* */ public synchronized void disableLogging() +/* */ { +/* 576 */ if (this.logFile != null) { +/* 577 */ this.logFile.close(); +/* 578 */ this.logFile = null; +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public boolean canAddText() +/* */ { +/* 588 */ if (!this.haveFocus) { +/* 589 */ return true; +/* */ } +/* 591 */ return true; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* 614 */ public static int chatLengthLimit = IniFile.gamma().getIniInt("ChatLengthLimit", 20000); +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public synchronized void println(String msg) +/* */ { +/* 623 */ if ((this.logFile != null) && (msg != null)) { +/* 624 */ this.logFile.println(DuplexPart.toHtml(msg) + "<br>"); +/* 625 */ this.logFile.flush(); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* 631 */ if (this.unaddedText == null) { +/* 632 */ this.unaddedText = msg; +/* 633 */ } else if (msg != null) { +/* 634 */ this.unaddedText = (this.unaddedText + "\n" + msg); +/* */ } +/* 636 */ if ((this.unaddedText == null) || (!canAddText())) { +/* 637 */ return; +/* */ } +/* 639 */ if (getText().length() == 0) { +/* 640 */ append(this.unaddedText); +/* */ } else +/* 642 */ append("\n" + this.unaddedText); +/* 643 */ this.unaddedText = null; +/* */ +/* */ +/* 646 */ String text = getText(); +/* 647 */ if (text.length() > chatLengthLimit) { +/* 648 */ int linePos = text.indexOf('\n', chatLengthLimit / 2 - 80); +/* 649 */ if (linePos >= 0) { +/* 650 */ text = text.substring(linePos + 1); +/* */ +/* */ +/* 653 */ linePos = text.lastIndexOf('\n'); +/* 654 */ if (linePos > 0) { +/* 655 */ setText(text.substring(0, linePos)); +/* 656 */ append(text.substring(linePos)); +/* */ } +/* */ } +/* */ } +/* */ +/* 661 */ if (this.isShared) { +/* 662 */ sharedText = text; +/* */ } else { +/* 664 */ this.unsharedText = text; +/* */ } +/* */ } +/* */ +/* */ public synchronized void scrollToBottom() { +/* 669 */ String text = getText(); +/* 670 */ int textlen = text.length(); +/* 671 */ select(textlen, textlen); +/* */ } +/* */ +/* */ +/* */ +/* */ @Deprecated +/* */ public boolean handleEvent(Event event) +/* */ { +/* 679 */ if (event.id == 1004) { +/* 680 */ this.haveFocus = true; +/* 681 */ } else if (event.id == 1005) { +/* 682 */ this.haveFocus = false; +/* */ } +/* */ +/* 685 */ poll(); +/* */ +/* 687 */ return super.handleEvent(event); +/* */ } +/* */ +/* */ public void poll() +/* */ { +/* 692 */ if (this.unaddedText != null) { +/* 693 */ println(null); +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ public boolean isFocusTraversable() +/* */ { +/* 702 */ return false; +/* */ } +/* */ +/* */ public synchronized void paint(Graphics g) +/* */ { +/* 707 */ String[] fulltext = getText().split("\n"); +/* 708 */ Rectangle r = getBounds(); +/* 709 */ if ((r.height < 0) || (r.width < 0)) { +/* 710 */ return; +/* */ } +/* */ +/* */ +/* 714 */ Point offset = new Point(0, 0); +/* */ +/* */ +/* */ +/* 718 */ Image offImage = createImage(r.width, r.height); +/* 719 */ Graphics offGraphic = offImage.getGraphics(); +/* */ +/* 721 */ offGraphic.setColor(GammaTextArea.getBackgroundColor()); +/* 722 */ offGraphic.fillRect(r.x, r.y, r.width, r.height); +/* 723 */ offGraphic.setColor(Color.black); +/* */ +/* 725 */ offGraphic.setFont(getFont()); +/* 726 */ FontMetrics fm = offGraphic.getFontMetrics(getFont()); +/* 727 */ int windowY = offset.y; +/* 728 */ int curY = fm.getHeight(); +/* 729 */ int curLine = 0; +/* */ +/* 731 */ int mode = -1; +/* */ +/* 733 */ System.out.println("paint (" + r.x + "," + r.y + "):" + r.height + "," + +/* 734 */ r.width + " Offset=" + offset.x + "," + offset.y + " lines=" + +/* 735 */ fulltext.length); +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* 742 */ System.out.println("curLine=" + curLine + " curY=" + curY); +/* 743 */ for (int i = curLine; (i < fulltext.length) && (curY <= windowY + r.height); i++) +/* */ { +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* 752 */ if (mode != 0) +/* */ { +/* 754 */ offGraphic.drawString(fulltext[i], offset.x, curY); +/* 755 */ curY += fm.getHeight(); +/* */ } +/* */ } +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\ClassicSharedTextArea.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/ColorFiller.java b/NET/worlds/console/ColorFiller.java new file mode 100644 index 0000000..33ef19d --- /dev/null +++ b/NET/worlds/console/ColorFiller.java @@ -0,0 +1,2909 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import java.awt.Dimension; +/* */ import java.awt.Panel; +/* */ import java.awt.Rectangle; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ class ColorFiller +/* */ extends Panel +/* */ { +/* */ private static final long serialVersionUID = 7047615493861713512L; +/* */ private int w; +/* */ private int h; +/* */ +/* */ ColorFiller(int width, int height) +/* */ { +/* 2875 */ this.w = width; +/* 2876 */ this.h = height; +/* */ } +/* */ +/* */ public void setHeight(int newH) { +/* 2880 */ this.h = newH; +/* */ } +/* */ +/* */ public void setWidth(int newW) { +/* 2884 */ this.w = newW; +/* */ } +/* */ +/* */ public Dimension getPreferredSize() +/* */ { +/* 2889 */ return new Dimension(this.w, this.h); +/* */ } +/* */ +/* */ public Dimension getMaximumSize() +/* */ { +/* 2894 */ return getPreferredSize(); +/* */ } +/* */ +/* */ public void setBounds(Rectangle r) +/* */ { +/* 2899 */ r.width = this.w; +/* 2900 */ r.height = this.h; +/* 2901 */ super.setBounds(r); +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\ColorFiller.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/ConfirmDialog.java b/NET/worlds/console/ConfirmDialog.java new file mode 100644 index 0000000..8b368e4 --- /dev/null +++ b/NET/worlds/console/ConfirmDialog.java @@ -0,0 +1,68 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import java.awt.Button; +/* */ import java.awt.GridBagConstraints; +/* */ import java.awt.Label; +/* */ import java.awt.Window; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public class ConfirmDialog +/* */ extends OkCancelDialog +/* */ { +/* */ private static final long serialVersionUID = 2839131701328189735L; +/* */ private String prompt; +/* */ +/* */ public ConfirmDialog(Window parent, DialogReceiver target, String title, String prompt) +/* */ { +/* 29 */ super(parent, target, title, Console.message("No"), Console.message("Yes")); +/* 30 */ this.prompt = prompt; +/* 31 */ ready(); +/* */ } +/* */ +/* */ public ConfirmDialog(Window parent, String title, String prompt) { +/* 35 */ this(parent, (DialogReceiver)parent, title, prompt); +/* */ } +/* */ +/* */ protected void build() +/* */ { +/* 40 */ GridBagConstraints c = new GridBagConstraints(); +/* 41 */ c.weightx = 1.0D; +/* 42 */ c.weighty = 1.0D; +/* 43 */ c.gridwidth = 0; +/* 44 */ add(this.gbag, new Label(this.prompt), c); +/* 45 */ super.build(); +/* */ } +/* */ +/* */ protected boolean setValue() +/* */ { +/* 50 */ return true; +/* */ } +/* */ +/* */ +/* */ +/* */ public void setVisible(boolean visible) +/* */ { +/* 57 */ super.setVisible(visible); +/* 58 */ if (visible) { +/* 59 */ this.okButton.requestFocus(); +/* */ } +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\ConfirmDialog.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/ConnectionRecord.java b/NET/worlds/console/ConnectionRecord.java new file mode 100644 index 0000000..e6c89d9 --- /dev/null +++ b/NET/worlds/console/ConnectionRecord.java @@ -0,0 +1,755 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import java.util.Date; +/* */ import java.util.Vector; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ class ConnectionRecord +/* */ { +/* 701 */ private static Vector<ConnectionRecord> recordList = new Vector(); +/* */ +/* 703 */ private String _who = null; +/* 704 */ private Date _startDelayTime = null; +/* */ +/* */ public ConnectionRecord(String who) { +/* 707 */ this._who = who; +/* 708 */ this._startDelayTime = new Date(); +/* */ } +/* */ +/* */ +/* */ +/* */ public boolean isExpired(Date now) +/* */ { +/* 715 */ return now.getTime() - this._startDelayTime.getTime() > 15000L; +/* */ } +/* */ +/* */ public String getWho() { +/* 719 */ return this._who; +/* */ } +/* */ +/* */ public static Vector<ConnectionRecord> getList() { +/* 723 */ return recordList; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public static synchronized boolean checkList(String w) +/* */ { +/* 732 */ boolean delayed = false; +/* 733 */ int i = 0; +/* 734 */ Date now = new Date(); +/* */ +/* 736 */ while ((!recordList.isEmpty()) && (i < recordList.size())) { +/* 737 */ ConnectionRecord r = (ConnectionRecord)recordList.elementAt(i); +/* 738 */ if (r.isExpired(now)) { +/* 739 */ recordList.removeElementAt(i); +/* */ } else { +/* 741 */ i++; +/* 742 */ if (r.getWho().equals(w)) { +/* 743 */ delayed = true; +/* */ } +/* */ } +/* */ } +/* 747 */ return delayed; +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\ConnectionRecord.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/Console.java b/NET/worlds/console/Console.java new file mode 100644 index 0000000..d6b0b5e --- /dev/null +++ b/NET/worlds/console/Console.java @@ -0,0 +1,3897 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import NET.worlds.core.IniFile; +/* */ import NET.worlds.core.Std; +/* */ import NET.worlds.network.ConnectionWaiter; +/* */ import NET.worlds.network.DNSLookup; +/* */ import NET.worlds.network.Galaxy; +/* */ import NET.worlds.network.InfiniteWaitException; +/* */ import NET.worlds.network.InvalidServerURLException; +/* */ import NET.worlds.network.NetworkObject; +/* */ import NET.worlds.network.OldPropertyList; +/* */ import NET.worlds.network.PacketTooLargeException; +/* */ import NET.worlds.network.PropertyList; +/* */ import NET.worlds.network.PropertySetCmd; +/* */ import NET.worlds.network.VarErrorException; +/* */ import NET.worlds.network.WorldServer; +/* */ import NET.worlds.network.net2Property; +/* */ import NET.worlds.scape.Attribute; +/* */ import NET.worlds.scape.BooleanPropertyEditor; +/* */ import NET.worlds.scape.Drone; +/* */ import NET.worlds.scape.FrameEvent; +/* */ import NET.worlds.scape.FrameHandler; +/* */ import NET.worlds.scape.HoloDrone; +/* */ import NET.worlds.scape.HoloPilot; +/* */ import NET.worlds.scape.InventoryManager; +/* */ import NET.worlds.scape.LoadedURLSelf; +/* */ import NET.worlds.scape.NoSuchPropertyException; +/* */ import NET.worlds.scape.Pilot; +/* */ import NET.worlds.scape.ProgressiveAdder; +/* */ import NET.worlds.scape.PropAdder; +/* */ import NET.worlds.scape.Property; +/* */ import NET.worlds.scape.Restorer; +/* */ import NET.worlds.scape.Room; +/* */ import NET.worlds.scape.Saver; +/* */ import NET.worlds.scape.Sharer; +/* */ import NET.worlds.scape.StringPropertyEditor; +/* */ import NET.worlds.scape.SuperRoot; +/* */ import NET.worlds.scape.TeleportStatus; +/* */ import NET.worlds.scape.TooNewException; +/* */ import NET.worlds.scape.URLPropertyEditor; +/* */ import NET.worlds.scape.URLSelf; +/* */ import NET.worlds.scape.URLSelfLoader; +/* */ import NET.worlds.scape.VectorProperty; +/* */ import NET.worlds.scape.WObject; +/* */ import NET.worlds.scape.WobLoaded; +/* */ import NET.worlds.scape.WobLoader; +/* */ import NET.worlds.scape.World; +/* */ import java.awt.CardLayout; +/* */ import java.awt.CheckboxMenuItem; +/* */ import java.awt.Container; +/* */ import java.awt.Event; +/* */ import java.awt.Font; +/* */ import java.awt.Menu; +/* */ import java.awt.MenuBar; +/* */ import java.awt.MenuItem; +/* */ import java.awt.MenuShortcut; +/* */ import java.awt.Panel; +/* */ import java.awt.PopupMenu; +/* */ import java.io.File; +/* */ import java.io.IOException; +/* */ import java.io.PrintStream; +/* */ import java.net.HttpURLConnection; +/* */ import java.net.MalformedURLException; +/* */ import java.net.URLConnection; +/* */ import java.text.MessageFormat; +/* */ import java.util.Enumeration; +/* */ import java.util.Hashtable; +/* */ import java.util.Locale; +/* */ import java.util.MissingResourceException; +/* */ import java.util.ResourceBundle; +/* */ import java.util.Vector; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public abstract class Console +/* */ extends SuperRoot +/* */ implements URLSelf, MainCallback, NetworkObject, WobLoaded, DialogDisabled, ConnectionWaiter +/* */ { +/* */ private static Vector<String> storedLines; +/* */ +/* */ public static synchronized void println(String msg) +/* */ { +/* 269 */ if (active != null) { +/* 270 */ active.printLine(msg); +/* */ } else { +/* 272 */ storedLines.addElement(msg); +/* */ } +/* */ } +/* */ +/* */ public static void printWhisper(String from, String msg) +/* */ { +/* 278 */ if (active != null) { +/* 279 */ active.printWhisperFrom(from, msg); +/* */ } +/* */ } +/* */ +/* */ +/* */ public static void printOwnWhisper(String to, String msg) +/* */ { +/* 286 */ if (active != null) { +/* 287 */ active.printWhisperTo(to, msg); +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ public static void startWhispering(String to) +/* */ { +/* 295 */ if (active != null) { +/* 296 */ active.startWhisperingTo(to); +/* */ } +/* */ } +/* */ +/* */ public static synchronized String message(String Id) +/* */ { +/* 302 */ Locale currentLocale = Locale.getDefault(); +/* */ try +/* */ { +/* 305 */ String bundlePrefix = IniFile.override().getIniString( +/* 306 */ "BundlePrefix", "MessagesBundle"); +/* */ +/* 308 */ ResourceBundle messages = ResourceBundle.getBundle(bundlePrefix, +/* 309 */ currentLocale); +/* */ +/* 311 */ String mess = messages.getString(Id); +/* */ +/* 313 */ if ((mess.indexOf('{') == -1) && (mess.indexOf('}') == -1)) { +/* 314 */ mess = Std.replaceStr(mess, "''", "'"); +/* */ } +/* */ +/* 317 */ if ((mess.lastIndexOf(".gif") > 0) || (mess.lastIndexOf(".jpg") > 0) || +/* 318 */ (mess.lastIndexOf(".bmp") > 0)) { +/* 319 */ File f = new File(mess); +/* 320 */ if (!f.exists()) { +/* 321 */ return Id; +/* */ } +/* */ } +/* 324 */ return mess; +/* */ } +/* */ catch (MissingResourceException e) { +/* 327 */ if (Galaxy.getDebugLevel() != 0) { +/* 328 */ System.out.println("MRE: " + e.getClassName() + " " + +/* 329 */ e.getKey()); +/* 330 */ System.out.println("NO MESSAGE for " + Id); +/* */ } +/* */ } +/* 333 */ return Id; +/* */ } +/* */ +/* */ +/* */ +/* */ public static synchronized String parseUnicode(String s) +/* */ { +/* 340 */ if (s == null) { +/* 341 */ return s; +/* */ } +/* */ int idx; +/* 344 */ while ((idx = s.indexOf("\\u")) != -1) { int idx; +/* 345 */ if (idx >= s.length() - 5) +/* 346 */ return s; +/* 347 */ String x = s.substring(idx + 2, idx + 6); +/* 348 */ char p = (char)Integer.parseInt(x, 16); +/* 349 */ String tmp = s.substring(0, idx) + p + s.substring(idx + 6); +/* 350 */ s = tmp; +/* */ } +/* */ +/* 353 */ return s; +/* */ } +/* */ +/* */ public static synchronized Vector<String> parseUnicode(Vector<String> cc) { +/* 357 */ for (int i = 0; i < cc.size(); i++) { +/* 358 */ String s = (String)cc.elementAt(i); +/* */ +/* 360 */ String s2 = parseUnicode(s); +/* */ +/* */ +/* 363 */ cc.setElementAt(s2, i); +/* */ } +/* 365 */ return cc; +/* */ } +/* */ +/* */ +/* */ public static synchronized String parseExtended(String s) +/* */ { +/* 371 */ String uc = ""; +/* 372 */ for (int i = 0; i < s.length(); i++) { +/* 373 */ char c = s.charAt(i); +/* 374 */ if (c > 'ÿ') { +/* 375 */ int ii = c; +/* */ try { +/* 377 */ uc = uc + "\\u" + Integer.toHexString(ii); +/* */ } catch (NumberFormatException e) { +/* 379 */ uc = uc + "?"; +/* */ } +/* */ } +/* */ else { +/* 383 */ uc = uc + c; +/* */ } } +/* 385 */ return uc; +/* */ } +/* */ +/* */ public static boolean wasHttpNoSuchFile(String us) { +/* 389 */ java.net.URL u = null; +/* 390 */ URLConnection uc = null; +/* */ try { +/* 392 */ u = DNSLookup.lookup(new java.net.URL(us)); +/* 393 */ uc = u.openConnection(); +/* */ } catch (Exception ex) { +/* 395 */ return true; +/* */ } +/* */ try { +/* 398 */ if (((HttpURLConnection)uc).getResponseCode() == 404) { +/* 399 */ return true; +/* */ } +/* */ } catch (Exception ex) { +/* 402 */ return true; +/* */ } +/* 404 */ return false; +/* */ } +/* */ +/* */ protected void printWhisperFrom(String from, String msg) +/* */ { +/* 409 */ if (!msg.startsWith("&|+")) { +/* 410 */ Object[] arguments = { new String(from), new String(msg) }; +/* 411 */ println(MessageFormat.format(message("whispered"), +/* 412 */ arguments)); +/* */ } +/* */ } +/* */ +/* */ protected void printWhisperTo(String to, String msg) +/* */ { +/* 418 */ if (!msg.startsWith("&|+")) { +/* 419 */ Object[] arguments = { new String(to), new String(msg) }; +/* 420 */ println(MessageFormat.format(message("You-whispered"), +/* 421 */ arguments)); +/* */ } +/* */ } +/* */ +/* */ protected void startWhisperingTo(String to) +/* */ { +/* 427 */ Object[] arguments = { new String(to) }; +/* 428 */ println(MessageFormat.format(message("You-want-whisp"), +/* 429 */ arguments)); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ public void printLine(String msg) +/* */ { +/* 437 */ System.out.println(msg); +/* */ } +/* */ +/* 440 */ protected boolean disableShaperAccess = false; +/* */ +/* */ public boolean isShaperAccessDisabled() { +/* 443 */ return this.disableShaperAccess; +/* */ } +/* */ +/* 446 */ protected boolean disableSingleUserAccess = false; +/* */ private static Console active; +/* */ +/* 449 */ public boolean isSingleUserAccessDisabled() { return this.disableSingleUserAccess; } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public static Console getActive() +/* */ { +/* 458 */ return active; +/* */ } +/* */ +/* */ +/* */ +/* */ private Panel myCard; +/* */ +/* */ +/* */ private static int nameCounter; +/* */ +/* */ +/* */ private static Font font; +/* */ +/* */ +/* */ private NET.worlds.network.URL targetAv; +/* */ +/* */ private static String activeTeleportURL; +/* */ +/* */ private static String lastTeleportURL; +/* */ +/* */ private static FrameEvent frameEvent; +/* */ +/* */ private static int freezeFrameEvents; +/* */ +/* */ public void forPilotOnlyActivate() +/* */ { +/* 484 */ if (active == this) { +/* 485 */ return; +/* */ } +/* */ +/* 488 */ this.myCard = new Panel(); +/* 489 */ String myCardName = nameCounter++; +/* */ +/* 491 */ Container consoleTile = frame.getConsoleTile(); +/* 492 */ consoleTile.add(myCardName, this.myCard); +/* */ +/* */ +/* 495 */ Console prev = active; +/* 496 */ activate(this.myCard); +/* 497 */ ((CardLayout)consoleTile.getLayout()).show(consoleTile, myCardName); +/* 498 */ getFrame().validate(); +/* */ +/* */ +/* 501 */ if (prev != null) { +/* 502 */ consoleTile.remove(prev.myCard); +/* 503 */ prev.myCard.removeAll(); +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ protected void setEnableMenu(boolean enable) +/* */ { +/* 511 */ this.enableMenu = enable; +/* 512 */ if (this == active) +/* */ { +/* */ +/* 515 */ enable |= Gamma.shaper != null; +/* 516 */ boolean enabled = (frame.getMenuBar() == menuBar) && (menuBar != null); +/* 517 */ if (enable != enabled) { +/* 518 */ frame.setMenuBar(enable ? menuBar : null); +/* */ +/* */ +/* */ +/* 522 */ frame.pack(); +/* */ } +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ private static synchronized void setActive(Console active) +/* */ { +/* 533 */ active = active; +/* */ +/* 535 */ int sz = storedLines.size(); +/* 536 */ if (sz > 0) { +/* 537 */ for (int i = 0; i < sz; i++) { +/* 538 */ active.printLine((String)storedLines.elementAt(i)); +/* */ } +/* 540 */ storedLines.removeAllElements(); +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ protected void activate(Container c) +/* */ { +/* 553 */ assert (this.pilot != null); +/* */ +/* 555 */ Console prev = active; +/* */ +/* */ +/* 558 */ if (active != null) { +/* 559 */ active.deactivate(); +/* */ } +/* 561 */ setActive(this); +/* */ +/* 563 */ Main.register(this); +/* */ +/* 565 */ this.menus.clear(); +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* 593 */ menuBar = new MenuBar(); +/* */ +/* */ +/* 596 */ getMenu("File"); +/* */ +/* 598 */ if (Gamma.shaper != null) { +/* 599 */ Gamma.shaper.activate(this, c, prev); +/* */ } +/* 601 */ int len = this.parts.size(); +/* 602 */ for (int i = 0; i < len; i++) { +/* 603 */ ((FramePart)this.parts.elementAt(i)).activate(this, c, prev); +/* */ } +/* */ +/* 606 */ this.exitItem = addMenuItem(message("Exit"), "File"); +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* 614 */ if (activeTeleportURL != null) { +/* 615 */ teleportNotification("", activeTeleportURL); +/* */ } +/* 617 */ this.cursor.activate(); +/* */ } +/* */ +/* */ +/* */ protected void menuDone() +/* */ { +/* 623 */ setEnableMenu(this.enableMenu); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ protected void deactivate() +/* */ { +/* 635 */ if (active != this) { +/* 636 */ return; +/* */ } +/* 638 */ setActive(null); +/* */ +/* 640 */ Main.unregister(this); +/* */ +/* 642 */ int len = this.parts.size(); +/* 643 */ for (int i = 0; i < len; i++) { +/* 644 */ ((FramePart)this.parts.elementAt(i)).deactivate(); +/* */ } +/* 646 */ if (Gamma.shaper != null) { +/* 647 */ Gamma.shaper.deactivate(); +/* */ } +/* 649 */ this.cursor.deactivate(); +/* */ +/* 651 */ frame.deactivate(); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public String getActiveTeleportURL() +/* */ { +/* 663 */ return lastTeleportURL == null ? "" : lastTeleportURL; +/* */ } +/* */ +/* */ +/* */ +/* */ public static void teleportNotification(String err, String url) +/* */ { +/* 670 */ if ((err != null) && (err.length() == 0)) { +/* 671 */ activeTeleportURL = url; +/* 672 */ lastTeleportURL = url.toString(); +/* */ } +/* */ else { +/* 675 */ activeTeleportURL = null; +/* */ } +/* 677 */ if (active == null) { +/* 678 */ return; +/* */ } +/* 680 */ if ((active instanceof TeleportStatus)) { +/* 681 */ ((TeleportStatus)active).teleportStatus(err, url); +/* */ } +/* 683 */ int len = active.parts.size(); +/* 684 */ for (int i = 0; i < len; i++) { +/* 685 */ Object fp = active.parts.elementAt(i); +/* 686 */ if ((fp instanceof TeleportStatus)) { +/* 687 */ ((TeleportStatus)fp).teleportStatus(err, url); +/* */ } +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public static void setFreezeFrameEvents(boolean x) +/* */ { +/* 710 */ if (x) { +/* 711 */ freezeFrameEvents += 1; +/* */ } else { +/* 713 */ freezeFrameEvents -= 1; +/* 714 */ assert (freezeFrameEvents >= 0); +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public void mainCallback() +/* */ { +/* 725 */ if (frameEvent == null) { +/* 726 */ frameEvent = new FrameEvent(null, null); +/* */ } +/* */ +/* 729 */ if (freezeFrameEvents > 0) { +/* 730 */ return; +/* */ } +/* 732 */ frameEvent.newFrameTime(); +/* */ +/* 734 */ frameEvent.source = this; +/* */ +/* 736 */ generateFrameEvents(frameEvent); +/* */ +/* 738 */ frameEvent.target = null; +/* 739 */ frameEvent.receiver = null; +/* 740 */ frameEvent.source = null; +/* */ } +/* */ +/* 743 */ private String sleepMode = ""; +/* */ +/* */ +/* */ private int lastUserAction; +/* */ +/* */ +/* */ +/* */ public void generateFrameEvents(FrameEvent f) +/* */ { +/* 752 */ World.generateFrameEvents(f); +/* */ +/* 754 */ int now = Std.getFastTime(); +/* 755 */ if (Window.getAndResetUserActionCount() != 0) { +/* 756 */ setSleepMode(null); +/* 757 */ this.lastUserAction = now; +/* */ +/* */ } +/* 760 */ else if (now > this.lastUserAction + 300000) { +/* 761 */ if (this.lastUserAction == 0) { +/* 762 */ this.lastUserAction = now; +/* */ } else { +/* 764 */ goToSleep(); +/* */ } +/* */ } +/* */ +/* 768 */ int len = this.parts.size(); +/* 769 */ if (Main.profile != 0) { +/* 770 */ for (int i = 0; i < len; i++) { +/* 771 */ FramePart fp = (FramePart)this.parts.elementAt(i); +/* 772 */ int start = Std.getRealTime(); +/* 773 */ long startBytes = Runtime.getRuntime().freeMemory(); +/* 774 */ fp.handle(f); +/* 775 */ int dur = Std.getRealTime() - start; +/* 776 */ long used = startBytes - Runtime.getRuntime().freeMemory(); +/* 777 */ if (dur > Main.profile) +/* 778 */ System.out.println("Took " + dur + "ms and " + used + +/* 779 */ " bytes to call framePart " + fp); +/* */ } +/* */ } else { +/* 782 */ for (int i = 0; i < len; i++) +/* 783 */ ((FramePart)this.parts.elementAt(i)).handle(f); +/* */ } +/* 785 */ ProgressiveAdder.get().handle(f); +/* */ +/* 787 */ if ((this instanceof FrameHandler)) { +/* 788 */ ((FrameHandler)this).handle(f); +/* */ } +/* */ +/* */ +/* 792 */ if (this.pilot != null) { +/* 793 */ this.pilot.generateFrameEvents(f); +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ +/* 800 */ private Vector<FramePart> parts = new Vector(); +/* */ +/* */ private static MenuBar menuBar; +/* */ +/* */ public void addPart(FramePart p) +/* */ { +/* 806 */ this.parts.addElement(p); +/* */ } +/* */ +/* */ public Enumeration<FramePart> getParts() { +/* 810 */ return this.parts.elements(); +/* */ } +/* */ +/* */ +/* */ +/* */ public boolean action(Event event, Object what) +/* */ { +/* 817 */ if (event.target == this.exitItem) { +/* 818 */ return maybeQuit(); +/* */ } +/* 820 */ if ((Gamma.shaper != null) && (Gamma.shaper.action(event, what))) { +/* 821 */ return true; +/* */ } +/* 823 */ int len = this.parts.size(); +/* 824 */ for (int i = 0; i < len; i++) { +/* 825 */ if (((FramePart)this.parts.elementAt(i)).action(event, what)) +/* 826 */ return true; +/* */ } +/* 828 */ return false; +/* */ } +/* */ +/* */ +/* */ +/* */ public boolean handleEvent(Event e) +/* */ { +/* 835 */ if (e.id == 201) +/* 836 */ return maybeQuit(); +/* 837 */ return false; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ public boolean okToQuit() +/* */ { +/* 845 */ return true; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ public static void quit() +/* */ { +/* 853 */ if (Gamma.getShaper() != null) { +/* 854 */ Gamma.getShaper().maybeQuit(); +/* */ } else { +/* 856 */ GammaFrameState.saveBorder(); +/* 857 */ Main.end(); +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public static boolean maybeQuit() +/* */ { +/* 867 */ Console c = getActive(); +/* 868 */ if ((c == null) || (c.okToQuit())) +/* 869 */ quit(); +/* 870 */ return true; +/* */ } +/* */ +/* */ +/* */ +/* */ public static MenuBar getMenuBar() +/* */ { +/* 877 */ return menuBar; +/* */ } +/* */ +/* 880 */ protected boolean enableMenu = false; +/* */ +/* */ protected MenuItem exitItem; +/* */ +/* 884 */ private Hashtable<String, Menu> menus = new Hashtable(); +/* */ protected static boolean autoFullVIP; +/* */ protected static boolean isRedLightWorld; +/* */ protected static int vip; +/* */ protected static int spguest; +/* */ +/* 890 */ public Menu getMenu(String name) { Menu menu = (Menu)this.menus.get(name); +/* 891 */ if (menu == null) { +/* 892 */ if ((name.equals("Help")) || (name.equals("Options")) || +/* 893 */ (name.equals("VIP"))) { +/* 894 */ menu = new PopupMenu(); +/* */ } else { +/* 896 */ menu = new Menu(name); +/* 897 */ menuBar.add(menu); +/* */ } +/* 899 */ this.menus.put(name, menu); +/* */ } +/* */ +/* 902 */ return menu; +/* */ } +/* */ +/* */ public void addMenuItem(MenuItem item, String menuName) { +/* 906 */ getMenu(menuName).add(item); +/* 907 */ item.setFont(font); +/* */ } +/* */ +/* */ public MenuItem addMenuItem(String itemName, String menuName) { +/* 911 */ MenuItem item = new MenuItem(itemName); +/* */ +/* 913 */ getMenu(menuName).add(item); +/* 914 */ item.setFont(font); +/* 915 */ return item; +/* */ } +/* */ +/* */ public MenuItem addMenuItem(String itemName, String menuName, int keyCode, boolean shiftKey) +/* */ { +/* 920 */ MenuItem item = new MenuItem(itemName); +/* 921 */ MenuShortcut shortcut = new MenuShortcut(keyCode, shiftKey); +/* */ +/* 923 */ item.setShortcut(shortcut); +/* 924 */ getMenu(menuName).add(item); +/* 925 */ item.setFont(font); +/* */ +/* 927 */ return item; +/* */ } +/* */ +/* */ public CheckboxMenuItem addMenuCheckbox(String itemName, String menuName) { +/* 931 */ CheckboxMenuItem item = new CheckboxMenuItem(itemName); +/* */ +/* 933 */ getMenu(menuName).add(item); +/* 934 */ item.setFont(font); +/* */ +/* 936 */ return item; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public void dialogDisable(boolean disable) +/* */ { +/* 952 */ int len = this.parts.size(); +/* 953 */ for (int i = 0; i < len; i++) { +/* 954 */ FramePart part = (FramePart)this.parts.elementAt(i); +/* 955 */ if ((part instanceof DialogDisabled)) { +/* 956 */ ((DialogDisabled)part).dialogDisable(disable); +/* */ } +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public static String encode(String password) +/* */ { +/* 988 */ String coded = ""; +/* 989 */ if (password != null) { +/* 990 */ char[] cryptChars = encrypt(password).toCharArray(); +/* 991 */ for (int i = 0; i < cryptChars.length; i++) { +/* 992 */ String hex = Integer.toHexString(cryptChars[i]); +/* 993 */ if (hex.length() == 1) +/* 994 */ hex = "0" + hex; +/* 995 */ coded = coded + hex; +/* */ } +/* */ } +/* 998 */ return coded; +/* */ } +/* */ +/* */ public static String decode(String password) { +/* */ try { +/* 1003 */ int length = password.length(); +/* 1004 */ if ((length != 0) && ((length & 0x1) == 0)) { +/* 1005 */ char[] cryptChars = new char[length / 2]; +/* 1006 */ int j = 0; +/* 1007 */ for (int i = 0; i < cryptChars.length; j += 2) { +/* 1008 */ cryptChars[i] = ((char)Integer.parseInt( +/* 1009 */ password.substring(j, j + 2), 16));i++; +/* */ } +/* 1010 */ String ret = decrypt(new String(cryptChars)); +/* 1011 */ if ((ret != null) && (ret.length() != 0)) { +/* 1012 */ return ret; +/* */ } +/* */ } +/* */ } catch (NumberFormatException localNumberFormatException) {} +/* 1016 */ return null; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public boolean getVIPAvatars() +/* */ { +/* 1037 */ return (vip > 0) || (isRedLightWorld); +/* */ } +/* */ +/* */ public boolean getVIP() { +/* 1041 */ return vip > 0; +/* */ } +/* */ +/* */ public void setVIP(boolean vip) { +/* 1045 */ vip = vip ? 1 : 0; +/* 1046 */ checkCourtesyVIP(); +/* 1047 */ IniFile.gamma().setIniInt("VIP", vip); +/* 1048 */ if ((autoFullVIP) && (vip)) +/* 1049 */ vip = 2; +/* */ } +/* */ +/* */ public boolean getFullVIP() { +/* 1053 */ return vip == 2; +/* */ } +/* */ +/* */ public void setFullVIP(boolean fullVIP) { +/* 1057 */ if (fullVIP) +/* 1058 */ vip = 2; +/* 1059 */ IniFile.gamma().setIniInt("VIP", vip); +/* */ } +/* */ +/* */ +/* */ +/* */ public boolean getSpecialGuest() +/* */ { +/* 1066 */ return spguest > 0; +/* */ } +/* */ +/* */ public void setSpecialGuest(boolean spguest) { +/* 1070 */ if (spguest > 1 != spguest) { +/* 1071 */ spguest = spguest ? 1 : 0; +/* */ +/* 1073 */ IniFile.gamma().setIniInt("SPGUEST", spguest); +/* 1074 */ spguest += spguest; +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ public void checkCourtesyVIP() +/* */ { +/* 1083 */ int oldVIP = vip; +/* */ +/* */ +/* 1086 */ if (vip < 1) { +/* 1087 */ World w = getPilot().getWorld(); +/* */ +/* 1089 */ vip = (w != null) && (w.isHomeWorld()) && (w.getCourtesyVIP()) ? 1 : 0; +/* */ } +/* */ +/* 1092 */ if (vip != oldVIP) { +/* 1093 */ if (vip == 1) { +/* 1094 */ println(message("You-VIP")); +/* */ } else { +/* 1096 */ println(message("You-no-VIP")); +/* */ } +/* */ } +/* 1099 */ NET.worlds.network.URL av = getDefaultAvatarURL(); +/* */ +/* 1101 */ if (!av.equals(getAvatarName())) +/* 1102 */ setAvatar(av); +/* */ } +/* */ +/* 1105 */ private boolean canBroadcast = false; +/* */ protected NET.worlds.network.URL lastPilotRequested; +/* */ +/* 1108 */ public boolean broadcastEnabled() { return this.canBroadcast; } +/* */ +/* */ public void enableBroadcast(boolean enabled) +/* */ { +/* 1112 */ this.canBroadcast = enabled; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public void serverStatus(WorldServer serv, VarErrorException ve) +/* */ { +/* 1124 */ System.out.println("status-- " + serv + ": " + ve.getMsg()); +/* */ } +/* */ +/* */ +/* */ +/* */ public void property(OldPropertyList propList) +/* */ { +/* 1131 */ if (!$assertionsDisabled) { throw new AssertionError(); +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public void propertyUpdate(PropertyList propList) +/* */ { +/* 1146 */ if (!$assertionsDisabled) { throw new AssertionError(); +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public WorldServer getServer() +/* */ { +/* 1159 */ NET.worlds.network.URL url = getGalaxyURL(); +/* */ +/* 1161 */ if ((url == null) || (this.galaxy == null)) { +/* 1162 */ return null; +/* */ } +/* */ try +/* */ { +/* 1166 */ return getGalaxy().getServer(url); +/* */ } catch (InvalidServerURLException e) { +/* 1168 */ println(">>" + e.getMessage()); } +/* 1169 */ return null; +/* */ } +/* */ +/* */ public WorldServer getServerNew() +/* */ { +/* 1174 */ NET.worlds.network.URL url = getGalaxyURL(); +/* */ +/* 1176 */ if ((url == null) || (this.galaxy == null)) { +/* 1177 */ return null; +/* */ } +/* */ try +/* */ { +/* 1181 */ return getGalaxy().getServer(url); +/* */ } catch (InvalidServerURLException e) { +/* 1183 */ println(">>" + e.getMessage()); } +/* 1184 */ return null; +/* */ } +/* */ +/* */ public String getLongID() +/* */ { +/* 1189 */ return this.galaxy.getChatname(); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ public void galaxyDisconnected() +/* */ { +/* 1197 */ setChatname(""); +/* */ +/* 1199 */ this.galaxy.waitForConnection(this); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public void changeChannel(Galaxy g, String oldChannel, String newChannel) +/* */ { +/* 1209 */ this.pilot.changeChannel(g, oldChannel, newChannel); +/* */ } +/* */ +/* */ protected void handleVAR_BITMAP(String s) +/* */ { +/* 1214 */ if (s.charAt(0) == 0) { +/* 1215 */ s = s.substring(2); +/* */ } +/* */ try +/* */ { +/* 1219 */ loadPilot(new NET.worlds.network.URL(NET.worlds.network.URL.getAvatar(), s)); +/* */ } catch (MalformedURLException e) { +/* 1221 */ loadPilot(NET.worlds.network.URL.make("error:\"" + s + '"')); +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* 1235 */ public String pendingPilot = ""; +/* */ +/* 1237 */ protected boolean setFromMenu = false; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* 1244 */ private String postFix = ""; +/* */ +/* */ public static boolean selfCustom; +/* */ +/* */ protected void loadPilot(NET.worlds.network.URL url) +/* */ { +/* 1250 */ if (url.equals(this.lastPilotRequested)) { +/* 1251 */ return; +/* */ } +/* */ +/* 1254 */ this.lastPilotRequested = url; +/* 1255 */ this.pendingPilot = url.toString(); +/* 1256 */ Pilot.load(url, this); +/* 1257 */ this.setFromMenu = false; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* 1264 */ protected Vector<LoadedURLSelf> callbacks = new Vector(); +/* */ +/* */ +/* */ +/* */ +/* */ public void wobLoaded(WobLoader loader, SuperRoot w) +/* */ { +/* 1271 */ String err = null; +/* 1272 */ if (w == null) { +/* 1273 */ err = message("no-load-pilot"); +/* 1274 */ println(err + " " + loader.getWobName()); +/* 1275 */ } else if (!(w instanceof Pilot)) { +/* 1276 */ err = message("not-pilot"); +/* 1277 */ println(loader.getWobName().toString() + " " + err); +/* */ } else { +/* */ try { +/* 1280 */ setPilot((Pilot)w); +/* */ } catch (IllegalPilotException e) { +/* 1282 */ err = e.getMessage(); +/* */ } +/* */ } +/* */ +/* */ +/* 1287 */ if ((this.pilot == null) && (err != null) && (!this.disableSingleUserAccess)) { +/* 1288 */ useDefaultPilot(); +/* 1289 */ err = null; +/* */ } +/* */ +/* 1292 */ int end = this.callbacks.size(); +/* 1293 */ for (int i = 0; i < end; i++) { +/* 1294 */ LoadedURLSelf callback = (LoadedURLSelf)this.callbacks.elementAt(i); +/* 1295 */ if (err == null) { +/* 1296 */ callback.loadedURLSelf(this, getSourceURL(), null); +/* */ } else { +/* 1298 */ decRef(); +/* 1299 */ callback.loadedURLSelf(null, getSourceURL(), err); +/* */ } +/* */ } +/* 1302 */ this.callbacks.removeAllElements(); +/* */ } +/* */ +/* */ public static NET.worlds.network.URL getDefaultURL() +/* */ { +/* 1307 */ String defaultAvatar = IniFile.override().getIniString("DefaultAvatar", +/* 1308 */ "avatar:pengo.mov"); +/* 1309 */ return NET.worlds.network.URL.make(defaultAvatar); +/* */ } +/* */ +/* */ protected void useDefaultPilot() +/* */ { +/* */ try { +/* 1315 */ setPilot(new HoloPilot(getDefaultURL())); +/* */ } +/* */ catch (IllegalPilotException e) +/* */ { +/* 1319 */ if (!$assertionsDisabled) { throw new AssertionError(); +/* */ } +/* */ } +/* */ } +/* */ +/* */ public void connectionCallback(Object caller, boolean connected) +/* */ { +/* 1326 */ if ((caller instanceof Galaxy)) { +/* 1327 */ if (caller != this.galaxy) +/* 1328 */ return; +/* 1329 */ if (!connected) { +/* 1330 */ return; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* 1338 */ setAvatar(this.lastPilotRequested); +/* */ +/* 1340 */ displayAds(); +/* */ } +/* */ } +/* */ +/* */ +/* */ public void displayAds() +/* */ { +/* 1347 */ Pilot p = Pilot.getActive(); +/* 1348 */ if (p != null) { +/* 1349 */ World w = p.getWorld(); +/* 1350 */ if (w != null) { +/* 1351 */ w.setupAdBanner(); +/* */ } +/* */ } +/* */ } +/* */ +/* */ +/* 1357 */ private String defaultAction = ""; +/* */ +/* */ public void setDefaultAction(String newda) { +/* 1360 */ this.defaultAction = newda; +/* */ } +/* */ +/* */ public String getDefaultAction() { +/* 1364 */ return this.defaultAction; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* 1373 */ protected String tempCarAvatar = ""; +/* */ protected static String defaultConsole; +/* */ private static Hashtable<NET.worlds.network.URL, Console> defConsoles; +/* */ private static Console defaultUnshared; +/* */ +/* */ public NET.worlds.network.URL getDefaultAvatarURL() +/* */ { +/* 1380 */ String defAv = getDefaultURL().toString(); +/* 1381 */ String av = IniFile.gamma().getIniString("AVATAR", defAv); +/* 1382 */ String vav = IniFile.gamma().getIniString("VIPAVATAR", ""); +/* 1383 */ boolean isVIPAv = av.toLowerCase().endsWith(".rwg"); +/* 1384 */ if (vav.equals("")) { +/* 1385 */ vav = av; +/* 1386 */ if (isVIPAv) { +/* 1387 */ IniFile.gamma().setIniString("VIPAVATAR", vav); +/* */ } +/* */ } +/* 1390 */ if (this.tempCarAvatar != "") { +/* 1391 */ av = this.tempCarAvatar; +/* 1392 */ } else if (getVIPAvatars()) +/* */ { +/* */ +/* */ +/* 1396 */ av = vav; +/* 1397 */ } else if (isVIPAv) { +/* 1398 */ av = defAv; +/* */ } +/* 1400 */ return NET.worlds.network.URL.make(av); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public Console() +/* */ { +/* 1409 */ add(this.cursor); +/* 1410 */ this.galaxy = Galaxy.getAnonGalaxy(); +/* 1411 */ regWithGalaxy(); +/* 1412 */ setServerURL(null); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ public Console(NET.worlds.network.URL serverURL) +/* */ { +/* 1420 */ add(this.cursor); +/* 1421 */ this.galaxy = Galaxy.getAnonGalaxy(); +/* 1422 */ regWithGalaxy(); +/* 1423 */ setServerURL(serverURL); +/* 1424 */ templateInit(); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public void loadInit() +/* */ { +/* 1433 */ templateInit(); +/* 1434 */ add(this.cursor); +/* */ } +/* */ +/* */ public void addCursor(Cursor c) { +/* 1438 */ add(c); +/* */ } +/* */ +/* */ private void templateInit() { +/* 1442 */ this.pilotSoulTemplate = new HoloPilot(); +/* 1443 */ this.droneSoulTemplate = new HoloDrone(); +/* */ +/* 1445 */ add(this.pilotSoulTemplate); +/* 1446 */ add(this.droneSoulTemplate); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public static void load(NET.worlds.network.URL url, LoadedURLSelf callback) +/* */ { +/* 1469 */ if ((url != null) && (url.endsWith(".console"))) { +/* 1470 */ new ConsoleLoader(url, callback); +/* */ } else { Console c; +/* */ Console c; +/* 1473 */ if (url == null) { +/* 1474 */ c = defaultUnshared; +/* */ } else { +/* 1476 */ c = (Console)defConsoles.get(url); +/* */ } +/* 1478 */ if ((c != null) && (c.galaxy == null)) +/* */ { +/* 1480 */ if (c.getGalaxyURL() == null) { +/* 1481 */ c.galaxy = Galaxy.getAnonGalaxy(); +/* */ } else { +/* */ try { +/* 1484 */ c.galaxy = Galaxy.getGalaxy(c.getGalaxyURL()); +/* */ } +/* */ catch (InvalidServerURLException e) { +/* 1487 */ System.out.println("Illegal ServerURL = " + +/* 1488 */ c.getGalaxyURL()); +/* */ +/* 1490 */ c.galaxy = Galaxy.getAnonGalaxy(); +/* */ +/* 1492 */ c.setServerURL(null); +/* */ } +/* */ } +/* 1495 */ c.regWithGalaxy(); +/* 1496 */ c.regPilot(); +/* */ } +/* 1498 */ assert ((c == null) || (c.galaxy != null)); +/* */ +/* 1500 */ if (c == null) { +/* */ try { +/* 1502 */ Class<?> cl = Class.forName(defaultConsole); +/* 1503 */ c = (Console)cl.newInstance(); +/* */ } catch (Exception e) { +/* 1505 */ System.out.println("Can't use class " + defaultConsole + +/* 1506 */ ", using DefaultConsole instead."); +/* 1507 */ e.printStackTrace(System.out); +/* 1508 */ c = new DefaultConsole(); +/* */ } +/* 1510 */ assert (c != null); +/* 1511 */ if (c.galaxy == null) +/* */ { +/* */ +/* 1514 */ c.galaxy = Galaxy.getAnonGalaxy(); +/* 1515 */ c.regWithGalaxy(); +/* 1516 */ c.regPilot(); +/* */ } +/* 1518 */ assert (c.galaxy != null); +/* 1519 */ c.loadInit(); +/* */ +/* 1521 */ c.setServerURL(url); +/* */ +/* 1523 */ if (url == null) { +/* 1524 */ c.setName("unshared"); +/* 1525 */ defaultUnshared = c; +/* */ } else { +/* 1527 */ defConsoles.put(c.getGalaxyURL(), c); +/* */ } +/* */ } +/* 1530 */ c.incRef(); +/* 1531 */ c.initPilot(url, callback); +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ protected void initPilot(NET.worlds.network.URL pilotURL, LoadedURLSelf callback) +/* */ { +/* 1549 */ loadPilot(getDefaultAvatarURL()); +/* */ +/* */ +/* */ +/* 1553 */ if (this.pilot == null) { +/* 1554 */ useDefaultPilot(); +/* */ } +/* 1556 */ callback.loadedURLSelf(this, pilotURL, null); +/* */ } +/* */ +/* */ +/* */ +/* 1561 */ private int refcnt = 0; +/* */ protected Pilot pilotSoulTemplate; +/* */ +/* 1564 */ public void incRef() { this.refcnt += 1; } +/* */ +/* */ +/* */ protected Drone droneSoulTemplate; +/* */ +/* */ protected Pilot pilot; +/* */ public void decRef() +/* */ { +/* 1572 */ if (--this.refcnt == 0) +/* */ { +/* */ +/* 1575 */ if (this.galaxy != null) { +/* 1576 */ unregWithGalaxy(); +/* 1577 */ unregPilot(); +/* */ +/* */ +/* 1580 */ this.galaxy.decWorldCount(); +/* */ +/* 1582 */ Galaxy oldGalaxy = this.galaxy; +/* 1583 */ this.galaxy = null; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* 1594 */ this.pilot = null; +/* */ +/* 1596 */ NET.worlds.network.URL url = getSourceURL(); +/* 1597 */ if (url != null) +/* 1598 */ if (url.endsWith(".console")) { +/* 1599 */ URLSelfLoader.unload(this); +/* */ } else +/* 1601 */ defConsoles.remove(url); +/* */ } +/* */ } +/* */ +/* */ public String toString() { +/* 1606 */ return super.toString() + "[" + getSourceURL() + "]"; +/* */ } +/* */ +/* */ +/* */ +/* */ public Pilot getPilotSoulTemplate() +/* */ { +/* 1613 */ return this.pilotSoulTemplate; +/* */ } +/* */ +/* */ public Drone getDroneSoulTemplate() { +/* 1617 */ return this.droneSoulTemplate; +/* */ } +/* */ +/* */ +/* */ +/* */ public Pilot getPilot() +/* */ { +/* 1624 */ return this.pilot; +/* */ } +/* */ +/* */ +/* 1628 */ public boolean targetValid = false; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public boolean isValidAv() +/* */ { +/* 1637 */ if (this.targetAv == null) { +/* 1638 */ return false; +/* */ } +/* 1640 */ if (!InventoryManager.getInventoryManager().inventoryInitialized()) { +/* 1641 */ return true; +/* */ } +/* 1643 */ String av = this.targetAv.getAbsolute(); +/* 1644 */ int len = av.length(); +/* 1645 */ for (int i = 1; i < len; i++) { +/* 1646 */ if (av.charAt(i - 1) == '_') { +/* 1647 */ char firstChar = av.charAt(i); +/* */ +/* 1649 */ if (Character.isLowerCase(firstChar)) +/* */ { +/* 1651 */ StringBuffer item = new StringBuffer(); +/* 1652 */ item.append(Character.toUpperCase(firstChar)); +/* */ do +/* */ { +/* 1655 */ char c = av.charAt(i); +/* */ +/* 1657 */ if (!Character.isLowerCase(c)) +/* */ break; +/* 1659 */ item.append(c);i++; +/* 1654 */ } while (i < len); +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* 1664 */ if (InventoryManager.getInventoryManager().checkInventoryFor(item.toString()) <= 0) { +/* 1665 */ return false; +/* */ } +/* */ } +/* */ } +/* */ } +/* 1670 */ return true; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public void resetAvatar() +/* */ { +/* 1679 */ setAvatar(this.targetAv); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public void setAvatar(NET.worlds.network.URL url) +/* */ { +/* 1693 */ if (url == null) { +/* 1694 */ return; +/* */ } +/* */ +/* */ +/* 1698 */ BlackBox.getInstance().submitEvent( +/* 1699 */ new BBDroneBitmapCommand("@Pilot", url.toString())); +/* */ +/* 1701 */ this.targetAv = url; +/* 1702 */ this.targetValid = true; +/* */ +/* */ +/* */ +/* 1706 */ if (url.getAbsolute().length() > 220) { +/* 1707 */ println(message("av-too-complex")); +/* 1708 */ url = NET.worlds.network.URL.make("avatar:holden.mov"); +/* 1709 */ this.targetValid = false; +/* 1710 */ } else if (!isValidAv()) { +/* 1711 */ println(message("av-has-inventory")); +/* 1712 */ url = NET.worlds.network.URL.make("avatar:holden.mov"); +/* 1713 */ this.targetValid = false; +/* */ } +/* */ +/* */ +/* */ +/* 1718 */ loadPilot(url); +/* */ +/* 1720 */ WorldServer serv = getServerNew(); +/* 1721 */ if (serv == null) { +/* 1722 */ return; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* 1729 */ assert (serv.getVersion() >= 18); +/* */ +/* 1731 */ PropertyList propList = new PropertyList(); +/* */ +/* */ +/* */ +/* 1735 */ propList.addProperty(new net2Property(5, +/* 1736 */ 64, 1, url +/* 1737 */ .getAbsolute())); +/* */ try +/* */ { +/* 1740 */ serv.sendNetworkMsg(new PropertySetCmd(propList)); +/* */ +/* */ +/* */ } +/* */ catch (PacketTooLargeException e) +/* */ { +/* */ +/* 1747 */ assert (url.getAbsolute().length() < 220); +/* 1748 */ if (!$assertionsDisabled) throw new AssertionError(); +/* */ } +/* */ catch (InfiniteWaitException localInfiniteWaitException) {} +/* */ } +/* */ +/* */ public static void wake() { +/* 1754 */ if (active != null) +/* 1755 */ active.setSleepMode(null); +/* */ } +/* */ +/* 1758 */ private String sleepStr = message("asleep"); +/* */ protected static GammaFrame frame; +/* */ +/* 1761 */ public void goToSleep() { setSleepMode(this.sleepStr); +/* */ +/* */ +/* 1764 */ Window.getAndResetUserActionCount(); +/* */ } +/* */ +/* */ public boolean isSleeping() { +/* 1768 */ return !this.sleepMode.equals(""); +/* */ } +/* */ +/* */ protected void setSleepMode(String mode) +/* */ { +/* 1773 */ if (mode == null) { +/* 1774 */ mode = ""; +/* 1775 */ this.lastUserAction = Std.getFastTime(); +/* */ } +/* */ +/* 1778 */ if (this.pilot != null) { +/* 1779 */ this.pilot.setSleepMode(mode); +/* */ } +/* 1781 */ if (mode.equals(this.sleepMode)) { +/* 1782 */ return; +/* */ } +/* 1784 */ WorldServer serv = getServerNew(); +/* 1785 */ if (serv == null) { +/* 1786 */ return; +/* */ } +/* */ +/* 1789 */ PropertyList propList = new PropertyList(); +/* 1790 */ propList.addProperty(new net2Property(23, +/* 1791 */ 64, 1, mode)); +/* */ try { +/* 1793 */ serv.sendNetworkMsg(new PropertySetCmd(propList)); +/* */ } catch (PacketTooLargeException e) { +/* 1795 */ if (!$assertionsDisabled) { throw new AssertionError(); +/* */ } +/* */ } +/* */ catch (InfiniteWaitException localInfiniteWaitException) {} +/* 1799 */ this.sleepMode = mode; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ public void setPilot(Pilot a) +/* */ throws IllegalPilotException +/* */ { +/* 1808 */ assert (a != null); +/* */ +/* 1810 */ Room prevRoom = null; +/* */ +/* */ +/* 1813 */ if (this.pilot != null) { +/* 1814 */ prevRoom = this.pilot.getRoom(); +/* 1815 */ unregPilot(); +/* */ } +/* */ +/* */ +/* 1819 */ this.pilot = a; +/* 1820 */ this.pilot.getSharer().createDynamicFromNet(); +/* 1821 */ this.pilot.setConsole(this); +/* 1822 */ regPilot(); +/* */ +/* */ +/* */ +/* 1826 */ if (active == this) { +/* 1827 */ Pilot.changeActiveRoom(prevRoom); +/* */ } +/* 1829 */ this.pilot.setSleepMode(this.sleepMode); +/* */ +/* */ +/* 1832 */ if ((this instanceof DefaultConsole)) { +/* 1833 */ ((DefaultConsole)this).resetCamera(); +/* */ } +/* */ } +/* */ +/* */ static +/* */ { +/* 275 */ storedLines = new Vector(); +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* 467 */ font = new Font(message("MenuFont"), +/* 468 */ 0, 12); +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* 701 */ freezeFrameEvents = 0; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* 873 */ menuBar = new MenuBar(); +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* 1024 */ autoFullVIP = IniFile.override().getIniInt( +/* 1025 */ "tieredVIP", 0) == 0; +/* */ +/* */ +/* 1028 */ if (!IniFile.override().getIniString("ProductName", "").equalsIgnoreCase("RedLightWorld")) {} +/* 1027 */ isRedLightWorld = +/* */ +/* */ +/* 1030 */ IniFile.override().getIniString("ProductName", "").equalsIgnoreCase("RedLightCenter"); +/* */ +/* 1032 */ vip = IniFile.gamma().getIniInt("VIP", 0) != 0 ? +/* 1033 */ 1 : autoFullVIP ? 2 : +/* 1034 */ 0; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* 1062 */ spguest = IniFile.gamma().getIniInt("SPGUEST", 0) != 0 ? 2 : +/* 1063 */ 0; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* 1246 */ selfCustom = false; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* 1403 */ defaultConsole = IniFile.gamma().getIniString( +/* 1404 */ "DEFAULTCONSOLE", "NET.worlds.console.DefaultConsole"); +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* 1449 */ defConsoles = new Hashtable(); +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* 1837 */ frame = new GammaFrame(); +/* */ +/* */ +/* 1840 */ WhisperManager.whisperManager().setParent(frame); +/* */ } +/* */ +/* */ public static GammaFrame getFrame() { +/* 1844 */ return frame; +/* */ } +/* */ +/* 1847 */ protected Galaxy galaxy = null; +/* */ protected NET.worlds.network.URL _galaxyURL; +/* */ +/* 1850 */ public Galaxy getGalaxy() { assert (this.galaxy != null); +/* */ +/* 1852 */ return this.galaxy; +/* */ } +/* */ +/* */ +/* */ public NET.worlds.network.URL getGalaxyURL() +/* */ { +/* 1858 */ return this._galaxyURL; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public void setServerURL(NET.worlds.network.URL serverURL) +/* */ { +/* */ try +/* */ { +/* 1881 */ if (serverURL != null) { +/* 1882 */ this._galaxyURL = NET.worlds.network.URL.make("worldserver://" + +/* 1883 */ getServerHost(serverURL) + "/"); +/* */ } +/* */ } +/* */ catch (InvalidServerURLException e) { +/* 1887 */ println(">>" + e.getMessage()); +/* */ +/* */ +/* */ +/* 1891 */ if (!$assertionsDisabled) { throw new AssertionError(); +/* */ } +/* */ +/* 1894 */ this._galaxyURL = null; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* 1902 */ Galaxy oldGalaxy = this.galaxy; +/* */ +/* 1904 */ unregWithGalaxy(); +/* 1905 */ unregPilot(); +/* */ +/* */ +/* */ +/* 1909 */ if (this._galaxyURL != null) { +/* */ try { +/* 1911 */ this.galaxy = Galaxy.getGalaxy(this._galaxyURL); +/* */ } +/* */ catch (InvalidServerURLException e) { +/* 1914 */ println(">>" + e.getMessage()); +/* */ +/* */ +/* 1917 */ this.galaxy = Galaxy.getAnonGalaxy(); +/* */ } +/* */ } else { +/* 1920 */ this.galaxy = Galaxy.getAnonGalaxy(); +/* */ } +/* 1922 */ assert (this.galaxy != null); +/* 1923 */ regWithGalaxy(); +/* 1924 */ regPilot(); +/* */ +/* */ +/* 1927 */ if (oldGalaxy != null) { +/* 1928 */ oldGalaxy.decWorldCount(); +/* */ +/* */ +/* */ +/* */ +/* */ +/* 1934 */ if (oldGalaxy != this.galaxy) { +/* 1935 */ oldGalaxy.forceObjectRereg(); +/* */ } +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ private void regWithGalaxy() +/* */ { +/* 1944 */ assert (this.galaxy != null); +/* 1945 */ this.galaxy.addConsole(this); +/* 1946 */ this.galaxy.waitForConnection(this); +/* */ } +/* */ +/* */ private void unregWithGalaxy() { +/* 1950 */ assert (this.galaxy != null); +/* 1951 */ this.galaxy.delConsole(this); +/* */ } +/* */ +/* */ +/* */ +/* */ protected void regPilot() +/* */ { +/* 1958 */ if (this.pilot != null) { +/* 1959 */ this.pilot.getSharer().adjustShare(); +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public static String getServerHost(NET.worlds.network.URL url) +/* */ throws InvalidServerURLException +/* */ { +/* 1976 */ String s = url.unalias(); +/* 1977 */ int len = s.length(); +/* 1978 */ if ((len > 14) && (s.startsWith("worldserver://"))) +/* */ { +/* 1980 */ if (s.charAt(len - 1) == '/') { +/* 1981 */ len--; +/* */ } +/* 1983 */ s = s.substring(14, len); +/* */ +/* */ +/* 1986 */ if (s.equals("209.67.68.214:6650")) { +/* 1987 */ s = "www.3dcd.com:6650"; +/* */ } +/* 1989 */ return s; +/* */ } +/* */ +/* 1992 */ throw new InvalidServerURLException("Bad worldserver:// URL format"); +/* */ } +/* */ +/* */ +/* */ public static NET.worlds.network.URL makeServerURL(String host) +/* */ { +/* 1998 */ assert ((host != null) && (host.length() > 0)); +/* 1999 */ return NET.worlds.network.URL.make("worldserver://" + host + "/"); +/* */ } +/* */ +/* */ +/* */ +/* */ protected void unregPilot() +/* */ { +/* 2006 */ if (this.pilot != null) +/* 2007 */ this.pilot.getSharer().adjustShare(); +/* */ } +/* */ +/* 2010 */ private Cursor cursor = new Cursor(NET.worlds.network.URL.make("system:WAIT_CURSOR")); +/* */ +/* */ public Cursor getCursor() +/* */ { +/* 2014 */ return this.cursor; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public String getScriptServer() +/* */ { +/* 2023 */ String Fred = "Fred"; +/* 2024 */ String override = IniFile.override().getIniString("ScriptServer", Fred); +/* 2025 */ if (!override.equals(Fred)) { +/* 2026 */ return new String(override); +/* */ } +/* 2028 */ WorldServer server = getServerNew(); +/* 2029 */ if (server != null) { +/* 2030 */ String sname = server.getScriptServer(); +/* 2031 */ if (sname != null) +/* 2032 */ return new String(sname); +/* */ } +/* 2034 */ return new String("http://www-dynamic.us.worlds.net/cgi-bin/"); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public String getSmtpServer() +/* */ { +/* 2043 */ WorldServer server = getServerNew(); +/* 2044 */ if (server != null) { +/* 2045 */ String sname = server.getSmtpServer(); +/* 2046 */ if (sname != null) +/* 2047 */ return sname; +/* */ } +/* 2049 */ return "www.3dcd.com:25"; +/* */ } +/* */ +/* */ public String getMailDomain() +/* */ { +/* 2054 */ WorldServer server = getServerNew(); +/* 2055 */ if (server != null) { +/* 2056 */ String dname = server.getMailDomain(); +/* 2057 */ if (dname != null) +/* 2058 */ return dname; +/* */ } +/* 2060 */ return "3dcd.com"; +/* */ } +/* */ +/* */ public Object properties(int index, int offset, int mode, Object value) +/* */ throws NoSuchPropertyException +/* */ { +/* 2066 */ Object ret = null; +/* */ +/* 2068 */ switch (index - offset) { +/* */ case 0: +/* 2070 */ if (mode == 0) { +/* 2071 */ ret = URLPropertyEditor.make(new Property(this, index, +/* 2072 */ "Server URL").allowSetNull(), null); +/* 2073 */ } else if (mode == 1) { +/* 2074 */ ret = getGalaxyURL(); +/* 2075 */ } else if (mode == 2) +/* 2076 */ if (value == null) { +/* 2077 */ setServerURL(null); +/* */ +/* */ +/* */ +/* */ } +/* */ else +/* */ { +/* */ +/* */ +/* */ +/* 2087 */ NET.worlds.network.URL u = (NET.worlds.network.URL)value; +/* 2088 */ if ((u == null) || (u.unalias().startsWith("worldserver:"))) { +/* 2089 */ setServerURL(u); +/* */ } else +/* 2091 */ println(message("server-URL")); +/* */ } +/* 2093 */ break; +/* */ +/* */ case 1: +/* 2096 */ if (mode == 0) { +/* 2097 */ ret = BooleanPropertyEditor.make(new Property(this, index, +/* 2098 */ "Enable Menu Bar"), "No", "Yes"); +/* 2099 */ } else if (mode == 1) { +/* 2100 */ ret = new Boolean(this.enableMenu); +/* 2101 */ } else if (mode == 2) +/* 2102 */ setEnableMenu(((Boolean)value).booleanValue()); +/* 2103 */ break; +/* */ +/* */ case 2: +/* 2106 */ if (mode == 0) { +/* 2107 */ ret = BooleanPropertyEditor.make(new Property(this, index, +/* 2108 */ "Disable Shaper Access (irreversible!)"), "No", "Yes"); +/* 2109 */ } else if (mode == 1) { +/* 2110 */ ret = new Boolean(this.disableShaperAccess); +/* 2111 */ } else if (mode == 2) +/* 2112 */ this.disableShaperAccess = ((Boolean)value).booleanValue(); +/* 2113 */ break; +/* */ +/* */ case 3: +/* 2116 */ if (mode == 0) { +/* 2117 */ ret = BooleanPropertyEditor.make(new Property(this, index, +/* 2118 */ "Disable Single-user Access"), "No", "Yes"); +/* 2119 */ } else if (mode == 1) { +/* 2120 */ ret = new Boolean(this.disableSingleUserAccess); +/* 2121 */ } else if (mode == 2) +/* 2122 */ this.disableSingleUserAccess = ((Boolean)value).booleanValue(); +/* 2123 */ break; +/* */ +/* */ case 4: +/* 2126 */ if (mode == 0) { +/* 2127 */ ret = new Property(this, index, "Pilot Soul Template"); +/* 2128 */ } else if (mode == 1) +/* 2129 */ ret = this.pilotSoulTemplate; +/* 2130 */ break; +/* */ +/* */ case 5: +/* 2133 */ if (mode == 0) { +/* 2134 */ ret = new Property(this, index, "Drone Soul Template"); +/* 2135 */ } else if (mode == 1) +/* 2136 */ ret = this.droneSoulTemplate; +/* 2137 */ break; +/* */ +/* */ case 6: +/* 2140 */ if (mode == 0) { +/* 2141 */ ret = new Property(this, index, "Cursor"); +/* 2142 */ } else if (mode == 1) +/* 2143 */ ret = getCursor(); +/* 2144 */ break; +/* */ +/* */ case 7: +/* 2147 */ if (mode == 0) { +/* 2148 */ ret = PropAdder.make(new VectorProperty(this, index, +/* 2149 */ "Temporary Area")); +/* 2150 */ } else if (mode == 1) { +/* 2151 */ ret = this.tempArea.clone(); +/* 2152 */ } else if (mode == 4) { +/* 2153 */ this.tempArea.removeElement(value); +/* 2154 */ ((SuperRoot)value).detach(); +/* 2155 */ } else if (mode == 3) { +/* 2156 */ this.tempArea.addElement(value); +/* 2157 */ add((SuperRoot)value); +/* 2158 */ if ((value instanceof Console)) { +/* 2159 */ Console c = (Console)value; +/* 2160 */ if (c.pilotSoulTemplate == null) +/* 2161 */ c.loadInit(); +/* */ } +/* 2163 */ } else if ((mode == 5) && ((value instanceof SuperRoot)) && +/* 2164 */ (!(value instanceof Room))) { +/* 2165 */ ret = value; } +/* 2166 */ break; +/* */ +/* */ case 8: +/* 2169 */ if (mode == 0) { +/* 2170 */ ret = StringPropertyEditor.make(new Property(this, index, +/* 2171 */ "Default Action")); +/* 2172 */ } else if (mode == 1) { +/* 2173 */ ret = getDefaultAction(); +/* 2174 */ } else if (mode == 2) +/* 2175 */ setDefaultAction((String)value); +/* 2176 */ break; +/* */ +/* */ default: +/* 2179 */ ret = super.properties(index, offset + 9, mode, value); +/* */ } +/* 2181 */ return ret; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* 2189 */ private Vector<Object> tempArea = new Vector(); +/* */ +/* */ +/* 2192 */ private static Object classCookie = new Object(); +/* */ +/* */ public void saveState(Saver s) throws IOException { +/* 2195 */ s.saveVersion(4, classCookie); +/* 2196 */ super.saveState(s); +/* */ +/* 2198 */ NET.worlds.network.URL.save(s, getGalaxyURL()); +/* 2199 */ s.saveBoolean(this.enableMenu); +/* 2200 */ s.saveBoolean(this.disableShaperAccess); +/* 2201 */ s.saveString(this.defaultAction); +/* 2202 */ s.save(this.pilotSoulTemplate); +/* 2203 */ s.save(this.droneSoulTemplate); +/* 2204 */ s.save(this.cursor); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ private static NET.worlds.network.URL restoreOldURL(Restorer r) +/* */ throws IOException +/* */ { +/* 2213 */ String s = r.restoreString(); +/* 2214 */ if ((s == null) || (s.equals("UNSHARED"))) { +/* 2215 */ return null; +/* */ } +/* 2217 */ return makeServerURL(s); +/* */ } +/* */ +/* */ public void restoreState(Restorer r) throws IOException, TooNewException { +/* 2221 */ int vers = r.restoreVersion(classCookie); +/* 2222 */ switch (vers) +/* */ { +/* */ +/* */ case 0: +/* */ case 1: +/* 2227 */ WObject w = new WObject(); +/* 2228 */ w.restoreState(r); +/* 2229 */ setName(w.getName()); +/* */ +/* 2231 */ templateInit(); +/* */ +/* */ +/* 2234 */ Enumeration<Attribute> e = w.getAttributes(); +/* 2235 */ while (e.hasMoreElements()) { +/* 2236 */ Attribute a = (Attribute)e.nextElement(); +/* 2237 */ a.setAttrID(a.getForwardAttrID()); +/* */ } +/* */ +/* */ +/* 2241 */ Pilot.copySoul(w, this.pilotSoulTemplate); +/* */ +/* */ +/* 2244 */ setServerURL(restoreOldURL(r)); +/* 2245 */ this.enableMenu = r.restoreBoolean(); +/* 2246 */ this.disableShaperAccess = r.restoreBoolean(); +/* */ +/* 2248 */ if (vers == 1) { +/* 2249 */ this.cursor = ((Cursor)r.restore()); +/* */ } +/* 2251 */ break; +/* */ +/* */ case 2: +/* 2254 */ super.restoreState(r); +/* 2255 */ setServerURL(restoreOldURL(r)); +/* 2256 */ this.enableMenu = r.restoreBoolean(); +/* 2257 */ this.disableShaperAccess = r.restoreBoolean(); +/* 2258 */ this.pilotSoulTemplate = ((Pilot)r.restore()); +/* 2259 */ add(this.pilotSoulTemplate); +/* 2260 */ this.droneSoulTemplate = ((Drone)r.restore()); +/* 2261 */ add(this.droneSoulTemplate); +/* 2262 */ this.cursor = ((Cursor)r.restore()); +/* 2263 */ break; +/* */ +/* */ case 3: +/* 2266 */ super.restoreState(r); +/* 2267 */ setServerURL(restoreOldURL(r)); +/* 2268 */ this.enableMenu = r.restoreBoolean(); +/* 2269 */ this.disableShaperAccess = r.restoreBoolean(); +/* 2270 */ this.defaultAction = r.restoreString(); +/* 2271 */ this.pilotSoulTemplate = ((Pilot)r.restore()); +/* 2272 */ add(this.pilotSoulTemplate); +/* 2273 */ this.droneSoulTemplate = ((Drone)r.restore()); +/* 2274 */ add(this.droneSoulTemplate); +/* 2275 */ this.cursor = ((Cursor)r.restore()); +/* 2276 */ break; +/* */ +/* */ case 4: +/* 2279 */ super.restoreState(r); +/* */ +/* */ +/* */ +/* 2283 */ setServerURL(NET.worlds.network.URL.restore(r)); +/* 2284 */ this.enableMenu = r.restoreBoolean(); +/* 2285 */ this.disableShaperAccess = r.restoreBoolean(); +/* 2286 */ this.defaultAction = r.restoreString(); +/* 2287 */ this.pilotSoulTemplate = ((Pilot)r.restore()); +/* 2288 */ add(this.pilotSoulTemplate); +/* 2289 */ this.droneSoulTemplate = ((Drone)r.restore()); +/* 2290 */ add(this.droneSoulTemplate); +/* 2291 */ this.cursor = ((Cursor)r.restore()); +/* 2292 */ break; +/* */ +/* */ default: +/* 2295 */ throw new TooNewException(); +/* */ } +/* */ +/* 2298 */ add(this.cursor); +/* */ } +/* */ +/* */ public void inventoryChanged() {} +/* */ +/* */ public static final native String encrypt(String paramString); +/* */ +/* */ public static final native String decrypt(String paramString); +/* */ +/* */ public static final native int getVolumeInfo(); +/* */ +/* */ public abstract NET.worlds.network.URL getAvatarName(); +/* */ +/* */ public abstract void setChatname(String paramString); +/* */ +/* */ public void register() {} +/* */ +/* */ public void reacquireServer(WorldServer oldServ) {} +/* */ +/* */ public abstract void setOnlineState(boolean paramBoolean1, boolean paramBoolean2); +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\Console.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/ConsoleLoader.java b/NET/worlds/console/ConsoleLoader.java new file mode 100644 index 0000000..2b357b1 --- /dev/null +++ b/NET/worlds/console/ConsoleLoader.java @@ -0,0 +1,2356 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import NET.worlds.network.URL; +/* */ import NET.worlds.scape.LoadedURLSelf; +/* */ import NET.worlds.scape.URLSelf; +/* */ import NET.worlds.scape.URLSelfLoader; +/* */ import java.util.Vector; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ class ConsoleLoader +/* */ implements LoadedURLSelf +/* */ { +/* */ private LoadedURLSelf callback; +/* */ +/* */ public ConsoleLoader(URL url, LoadedURLSelf callback) +/* */ { +/* 2325 */ this.callback = callback; +/* 2326 */ URLSelfLoader.load(url, this, true); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ public void loadedURLSelf(URLSelf o, URL url, String err) +/* */ { +/* 2334 */ Console c = (Console)o; +/* */ +/* */ +/* 2337 */ if ((err != null) || (c.pilot != null)) { +/* 2338 */ this.callback.loadedURLSelf(o, url, err); +/* 2339 */ return; +/* */ } +/* */ +/* */ +/* */ +/* 2344 */ if (c.disableSingleUserAccess) { +/* 2345 */ c.callbacks.addElement(this.callback); +/* */ } else { +/* 2347 */ c.initPilot(url, this.callback); +/* */ } +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\ConsoleLoader.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/Conveyor.java b/NET/worlds/console/Conveyor.java new file mode 100644 index 0000000..b8fa887 --- /dev/null +++ b/NET/worlds/console/Conveyor.java @@ -0,0 +1,89 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import NET.worlds.scape.FrameEvent; +/* */ import NET.worlds.scape.FrameHandler; +/* */ import NET.worlds.scape.Point3; +/* */ import NET.worlds.scape.Point3Temp; +/* */ import NET.worlds.scape.Restorer; +/* */ import NET.worlds.scape.Saver; +/* */ import NET.worlds.scape.SuperRoot; +/* */ import NET.worlds.scape.TooNewException; +/* */ import NET.worlds.scape.WObject; +/* */ import java.io.IOException; +/* */ import java.util.Enumeration; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public class Conveyor +/* */ extends SuperRoot +/* */ implements FrameHandler +/* */ { +/* */ private Point3 vector; +/* */ +/* */ public Conveyor(Point3Temp direction, float speed) +/* */ { +/* 38 */ this.vector = new Point3(direction.normalize().times(speed)); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public Conveyor(Point3Temp v) +/* */ { +/* 47 */ this.vector = new Point3(v); +/* */ } +/* */ +/* */ public boolean handle(FrameEvent e) { +/* 51 */ Enumeration<WObject> stuff = e.receiver.getContents(); +/* 52 */ Point3Temp delta = this.vector; +/* 53 */ delta.times(e.dt / 1000.0F); +/* */ +/* 55 */ while (stuff.hasMoreElements()) { +/* 56 */ WObject thing = (WObject)stuff.nextElement(); +/* 57 */ thing.moveThrough(delta); +/* */ } +/* 59 */ return true; +/* */ } +/* */ +/* 62 */ private static Object classCookie = new Object(); +/* */ +/* */ public void saveState(Saver s) throws IOException +/* */ { +/* 66 */ s.saveVersion(1, classCookie); +/* 67 */ super.saveState(s); +/* 68 */ s.save(this.vector); +/* */ } +/* */ +/* */ public void restoreState(Restorer r) throws IOException, TooNewException +/* */ { +/* 73 */ switch (r.restoreVersion(classCookie)) { +/* */ case 1: +/* 75 */ super.restoreState(r); +/* */ case 0: +/* 77 */ this.vector = ((Point3)r.restore()); +/* 78 */ break; +/* */ default: +/* 80 */ throw new TooNewException(); +/* */ } +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\Conveyor.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/Cursor.java b/NET/worlds/console/Cursor.java new file mode 100644 index 0000000..d903881 --- /dev/null +++ b/NET/worlds/console/Cursor.java @@ -0,0 +1,359 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import NET.worlds.network.URL; +/* */ import NET.worlds.scape.BGLoaded; +/* */ import NET.worlds.scape.BackgroundLoader; +/* */ import NET.worlds.scape.NoSuchPropertyException; +/* */ import NET.worlds.scape.Pilot; +/* */ import NET.worlds.scape.Property; +/* */ import NET.worlds.scape.Restorer; +/* */ import NET.worlds.scape.Room; +/* */ import NET.worlds.scape.Saver; +/* */ import NET.worlds.scape.SuperRoot; +/* */ import NET.worlds.scape.TooNewException; +/* */ import NET.worlds.scape.URLPropertyEditor; +/* */ import java.io.IOException; +/* */ import java.text.MessageFormat; +/* */ import java.util.Enumeration; +/* */ import java.util.Hashtable; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public class Cursor +/* */ extends SuperRoot +/* */ implements BGLoaded +/* */ { +/* 44 */ private URL url = URL.make("system:DEFAULT_CURSOR"); +/* */ +/* */ +/* */ +/* */ private int hCursor; +/* */ +/* */ +/* */ +/* */ private static Cursor active; +/* */ +/* */ +/* */ +/* */ private static Hashtable<URL, Comparable> sysCursors; +/* */ +/* */ +/* */ private static int defaultCursor; +/* */ +/* */ +/* */ +/* */ private static URL addCursor(String javaName, String win32Name) +/* */ { +/* 65 */ URL url = URL.make("system:" + javaName); +/* 66 */ sysCursors.put(url, win32Name); +/* 67 */ return url; +/* */ } +/* */ +/* */ static +/* */ { +/* 54 */ sysCursors = new Hashtable(); +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* 72 */ defaultCursor = retrieveSystemCursor(addCursor("DEFAULT_CURSOR", +/* 73 */ "IDC_ARROW")); +/* 74 */ assert (defaultCursor != 0); +/* */ +/* 76 */ addCursor("CROSSHAIR_CURSOR", "IDC_CROSS"); +/* 77 */ addCursor("TEXT_CURSOR", "IDC_IBEAM"); +/* 78 */ addCursor("WAIT_CURSOR", "IDC_WAIT"); +/* 79 */ addCursor("NE_RESIZE_CURSOR", "IDC_SIZENESW"); +/* 80 */ addCursor("SW_RESIZE_CURSOR", "IDC_SIZENESW"); +/* 81 */ addCursor("NW_RESIZE_CURSOR", "IDC_SIZENWSE"); +/* 82 */ addCursor("SE_RESIZE_CURSOR", "IDC_SIZENWSE"); +/* 83 */ addCursor("N_RESIZE_CURSOR", "IDC_SIZENS"); +/* 84 */ addCursor("S_RESIZE_CURSOR", "IDC_SIZENS"); +/* 85 */ addCursor("W_RESIZE_CURSOR", "IDC_SIZEWE"); +/* 86 */ addCursor("E_RESIZE_CURSOR", "IDC_SIZEWE"); +/* 87 */ addCursor("HAND_CURSOR", "IDC_UPARROW"); +/* 88 */ addCursor("MOVE_CURSOR", "IDC_SIZEALL"); +/* 89 */ addCursor("CANNOT_CURSOR", "IDC_NO"); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public Cursor(URL url) +/* */ { +/* 113 */ setURL(url); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public void setURL(URL url) +/* */ { +/* 124 */ this.url = url; +/* 125 */ if (!url.unalias().startsWith("system:")) { +/* 126 */ BackgroundLoader.get(this, url); +/* */ } else { +/* 128 */ activate(); +/* */ } +/* */ } +/* */ +/* */ public static Cursor getActive() { +/* 133 */ return active; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public void activate() +/* */ { +/* 142 */ SuperRoot owner = getOwner(); +/* */ +/* 144 */ if ((owner != null) && (owner == Console.getActive())) { +/* 145 */ int sysCurs = retrieveSystemCursor(this.url); +/* */ +/* 147 */ if (sysCurs != 0) { +/* 148 */ Window.setCursor(sysCurs); +/* 149 */ maybeDestroyCursor(); +/* 150 */ this.hCursor = sysCurs; +/* 151 */ } else if (this.hCursor != 0) { +/* 152 */ Window.setCursor(this.hCursor); +/* */ } +/* */ +/* 155 */ active = this; +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public void deactivate() +/* */ { +/* 165 */ if (active == this) +/* */ { +/* */ +/* */ +/* 169 */ active = null; +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ public URL getURL() +/* */ { +/* 177 */ return this.url; +/* */ } +/* */ +/* */ public static Enumeration<URL> getSysCursorURLs() +/* */ { +/* 182 */ return sysCursors.keys(); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ private static int retrieveSystemCursor(URL url) +/* */ { +/* 208 */ int handle = 0; +/* 209 */ Object c = sysCursors.get(url); +/* 210 */ if (c != null) +/* 211 */ if ((c instanceof String)) { +/* 212 */ handle = loadSystemCursor((String)c); +/* 213 */ sysCursors.put(url, new Integer(handle)); +/* */ } else { +/* 215 */ handle = ((Integer)c).intValue(); +/* */ } +/* 217 */ return handle; +/* */ } +/* */ +/* */ private void maybeDestroyCursor() +/* */ { +/* 222 */ if (this.hCursor != 0) { +/* 223 */ if (!sysCursors.contains(new Integer(this.hCursor))) +/* 224 */ destroyCursor(this.hCursor); +/* 225 */ this.hCursor = 0; +/* */ } +/* */ } +/* */ +/* */ +/* */ public Object asyncBackgroundLoad(String localName, URL remoteName) +/* */ { +/* 232 */ deactivate(); +/* 233 */ maybeDestroyCursor(); +/* */ +/* */ +/* 236 */ if (localName == null) { +/* 237 */ return null; +/* */ } +/* 239 */ if ((this.hCursor = loadCursor(localName)) != 0) +/* 240 */ activate(); +/* 241 */ return null; +/* */ } +/* */ +/* */ public boolean syncBackgroundLoad(Object obj, URL remoteURL) { +/* 245 */ if (this.hCursor == 0) { +/* 246 */ Object[] arguments = { new String(this.url) }; +/* 247 */ Console.println(MessageFormat.format( +/* 248 */ Console.message("Load-cursor"), arguments)); +/* */ } +/* 250 */ return false; +/* */ } +/* */ +/* */ public Room getBackgroundLoadRoom() { +/* 254 */ SuperRoot owner = getOwner(); +/* 255 */ if ((owner == null) || (!(owner instanceof Console))) { +/* 256 */ return null; +/* */ } +/* 258 */ return ((Console)owner).getPilot().getRoom(); +/* */ } +/* */ +/* */ +/* */ +/* */ public Object properties(int index, int offset, int mode, Object value) +/* */ throws NoSuchPropertyException +/* */ { +/* 266 */ Object ret = null; +/* */ +/* 268 */ switch (index - offset) { +/* */ case 0: +/* 270 */ if (mode == 0) { +/* 271 */ ret = URLPropertyEditor.make(new Property(this, index, "File"), +/* 272 */ "cur;ani", getSysCursorURLs()); +/* 273 */ } else if (mode == 1) { +/* 274 */ ret = getURL(); +/* 275 */ } else if (mode == 2) +/* 276 */ setURL((URL)value); +/* 277 */ break; +/* */ +/* */ default: +/* 280 */ ret = super.properties(index, offset + 1, mode, value); +/* */ } +/* 282 */ return ret; +/* */ } +/* */ +/* */ +/* */ +/* 287 */ private static Object classCookie = new Object(); +/* */ +/* */ public void saveState(Saver s) throws IOException +/* */ { +/* 291 */ s.saveVersion(1, classCookie); +/* 292 */ super.saveState(s); +/* */ +/* 294 */ URL.save(s, this.url); +/* */ } +/* */ +/* */ public void restoreState(Restorer r) throws IOException, TooNewException +/* */ { +/* 299 */ switch (r.restoreVersion(classCookie)) { +/* */ case 0: +/* 301 */ r.restoreMaybeNull(); +/* */ +/* */ +/* 304 */ String s = r.restoreString(); +/* 305 */ if ((s.endsWith(".cur")) || (s.endsWith(".ani"))) { +/* 306 */ setURL(URL.restore(r, s, null)); +/* */ } else { +/* 308 */ setURL(URL.make("system:" + this.url)); +/* */ } +/* 310 */ break; +/* */ +/* */ case 1: +/* 313 */ super.restoreState(r); +/* 314 */ setURL(URL.restore(r)); +/* 315 */ break; +/* */ +/* */ default: +/* 318 */ throw new TooNewException(); +/* */ } +/* */ } +/* */ +/* */ public Cursor() {} +/* */ +/* */ public static native int getSystemCursorWidth(); +/* */ +/* */ public static native int getSystemCursorHeight(); +/* */ +/* */ public static native int getSystemCursorDepth(); +/* */ +/* */ private static native int loadCursor(String paramString); +/* */ +/* */ private static native int loadSystemCursor(String paramString); +/* */ +/* */ private static native void destroyCursor(int paramInt); +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\Cursor.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/DefaultConsole.java b/NET/worlds/console/DefaultConsole.java new file mode 100644 index 0000000..cf40867 --- /dev/null +++ b/NET/worlds/console/DefaultConsole.java @@ -0,0 +1,2842 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import NET.worlds.core.ArchiveMaker; +/* */ import NET.worlds.core.IniFile; +/* */ import NET.worlds.core.Std; +/* */ import NET.worlds.network.Galaxy; +/* */ import NET.worlds.network.NetUpdate; +/* */ import NET.worlds.network.RemoteFileConst; +/* */ import NET.worlds.network.URL; +/* */ import NET.worlds.network.WorldServer; +/* */ import NET.worlds.scape.BooleanPropertyEditor; +/* */ import NET.worlds.scape.CDAudio; +/* */ import NET.worlds.scape.CDControl; +/* */ import NET.worlds.scape.CDPlayerAction; +/* */ import NET.worlds.scape.EquipAction; +/* */ import NET.worlds.scape.FrameEvent; +/* */ import NET.worlds.scape.MusicManager; +/* */ import NET.worlds.scape.NoSuchPropertyException; +/* */ import NET.worlds.scape.Pilot; +/* */ import NET.worlds.scape.PosableShape; +/* */ import NET.worlds.scape.Property; +/* */ import NET.worlds.scape.RenderWare; +/* */ import NET.worlds.scape.Restorer; +/* */ import NET.worlds.scape.Saver; +/* */ import NET.worlds.scape.SelectAvatarAction; +/* */ import NET.worlds.scape.SendURLAction; +/* */ import NET.worlds.scape.TeleportAction; +/* */ import NET.worlds.scape.TooNewException; +/* */ import NET.worlds.scape.URLPropertyEditor; +/* */ import NET.worlds.scape.VehicleShape; +/* */ import NET.worlds.scape.World; +/* */ import java.awt.BorderLayout; +/* */ import java.awt.CardLayout; +/* */ import java.awt.CheckboxMenuItem; +/* */ import java.awt.Color; +/* */ import java.awt.Component; +/* */ import java.awt.Container; +/* */ import java.awt.Dimension; +/* */ import java.awt.Event; +/* */ import java.awt.FlowLayout; +/* */ import java.awt.Font; +/* */ import java.awt.FontMetrics; +/* */ import java.awt.GridLayout; +/* */ import java.awt.Label; +/* */ import java.awt.Menu; +/* */ import java.awt.MenuItem; +/* */ import java.awt.Panel; +/* */ import java.awt.Point; +/* */ import java.awt.PopupMenu; +/* */ import java.awt.Rectangle; +/* */ import java.awt.TextField; +/* */ import java.awt.Toolkit; +/* */ import java.io.File; +/* */ import java.io.FilenameFilter; +/* */ import java.io.IOException; +/* */ import java.io.PrintStream; +/* */ import java.text.Collator; +/* */ import java.text.DateFormat; +/* */ import java.text.MessageFormat; +/* */ import java.util.Date; +/* */ import java.util.Locale; +/* */ import java.util.MissingResourceException; +/* */ import java.util.NoSuchElementException; +/* */ import java.util.ResourceBundle; +/* */ import java.util.StringTokenizer; +/* */ import java.util.Vector; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public class DefaultConsole +/* */ extends Console +/* */ implements DialogReceiver, ImageButtonsCallback, RemoteFileConst +/* */ { +/* */ MenuItem aboutItem; +/* */ MenuItem statisticsItem; +/* */ MenuItem upgradeItem; +/* */ MenuItem channelItem; +/* */ MenuItem infoItem; +/* */ MenuItem sleepItem; +/* */ MenuItem helpItem; +/* */ MenuItem gettingStartedItem; +/* */ MenuItem serverItem; +/* */ MenuItem numVisItem; +/* */ MenuItem checkAccountItem; +/* */ MenuItem becomeVIPItem; +/* */ MenuItem toggleVoiceChatItem; +/* */ MenuItem chatItem; +/* */ MenuItem shaperHelpItem; +/* */ MenuItem inventoryItem; +/* */ MenuItem checkInventoryItem; +/* */ MenuItem bankItem; +/* */ MenuItem ubuItem; +/* */ MenuItem proxyServerItem; +/* */ MenuItem musicManItem; +/* */ MenuItem condenseItem; +/* */ MenuItem expandItem; +/* */ MenuItem i18nTest; +/* */ MenuItem currentLang; +/* */ Menu switchLang; +/* 368 */ Vector<MenuItem> downItems = null; +/* 369 */ Vector<MenuItem> langItems = null; +/* 370 */ Vector<MenuItem> fontItems = null; +/* */ +/* */ static final String LANGUAGES = "languages.lst"; +/* */ +/* */ static final String FONTS = "fonts.lst"; +/* 375 */ Vector<CheckboxMenuItem> viewItems = null; Vector<CheckboxMenuItem> camSpeedItems = null; +/* */ +/* */ CheckboxMenuItem currentViewItem; +/* */ CheckboxMenuItem currentCamSpeedItem; +/* */ ImageButtons driveButton; +/* */ ImageButtons quitButton; +/* */ ImageButtons exploreButton; +/* */ ImageButtons menuButtons; +/* */ ImageButtons adCubeButton; +/* 384 */ String defaultAd = IniFile.override().getIniString("defaultAd", +/* 385 */ "home:adworlds.cmp"); +/* 386 */ AdPart ad = new AdPart(URL.make(this.defaultAd)); +/* */ ColorFiller adFiller; +/* 388 */ ChatPart chat = new ChatPart(); +/* 389 */ RenderCanvas render = new RenderCanvas(this, new Dimension(560, 360)); +/* */ Panel renderAndUniverse; +/* */ UniversePanel universe; +/* */ CardLayout renderCard; +/* */ +/* 394 */ public UniversePanel getUniversePanel() { return this.universe; } +/* */ +/* */ +/* */ +/* 398 */ InventoryPart inventory = new InventoryPart(); +/* 399 */ WorldsMarkPart marks = new WorldsMarkPart(); +/* 400 */ FriendsListPart friends = new FriendsListPart(); +/* 401 */ ActionsPart actions = new ActionsPart(); +/* 402 */ MuteListPart mutes = new MuteListPart(); +/* 403 */ MapPart map = new MapPart(); +/* 404 */ SavedAvPart savedAvs = new SavedAvPart(); +/* 405 */ private static Font font = new Font(Console.message("ConsoleFont"), +/* 406 */ 0, 12); +/* 407 */ private static Font mfont = new Font(Console.message("MenuFont"), +/* 408 */ 0, 12); +/* */ +/* 410 */ private static int chatLines = IniFile.gamma().getIniInt("ChatLines", 6); +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* 418 */ private static int maxWebSize = 540; +/* */ +/* */ CDControl cdcontrol; +/* */ +/* */ boolean playedCD; +/* */ +/* */ MenuItem cdPlayerItem; +/* */ +/* */ MenuItem volumeItem; +/* */ +/* */ MenuItem graphicsItem; +/* */ MenuItem nametagItem; +/* */ MenuItem chatBoxItem; +/* */ MenuItem broadcastToRoom; +/* */ MenuItem broadcastToAll; +/* */ MenuItem bootSomeone; +/* */ CheckboxMenuItem orthographicViewItem; +/* */ MenuItem recorderPlayItem; +/* */ MenuItem recorderRecItem; +/* */ MenuItem recorderStopItem; +/* */ boolean universeMode; +/* 439 */ private static final int[] menuButtonHeights = { 23, 21, 21, 21, 21, 21, +/* 440 */ 25, -29 }; +/* */ private Vector<CameraView> viewNames; +/* */ private Vector<CameraSpeed> speedNames; +/* */ +/* */ public class CameraView { +/* 445 */ public CameraView(String vn, int vid) { this.viewName = vn; +/* 446 */ this.viewID = vid; +/* */ } +/* */ +/* */ public String viewName; +/* */ public int viewID; } +/* */ +/* */ public class CameraSpeed { public String speedName; +/* */ public int speedID; +/* */ +/* 455 */ public CameraSpeed(String sn, int sid) { this.speedName = sn; +/* 456 */ this.speedID = sid; +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ private static final int HELP = 0; +/* */ +/* */ +/* */ +/* */ +/* */ private static final int OPTIONS = 1; +/* */ +/* */ +/* */ +/* */ +/* */ private static final int WORLDSMAIL = 2; +/* */ +/* */ +/* */ +/* */ private static final int WORLDSMARK = 3; +/* */ +/* */ +/* */ +/* */ private static final int LETS = 4; +/* */ +/* */ +/* */ +/* */ private static final int ACTIONS = 5; +/* */ +/* */ +/* */ +/* */ private static final int VIP = 6; +/* */ +/* */ +/* */ +/* */ public void printLine(String msg) +/* */ { +/* 496 */ this.chat.println(msg); +/* 497 */ super.printLine(msg); +/* */ } +/* */ +/* */ protected void printWhisperFrom(String from, String msg) +/* */ { +/* 502 */ WhisperManager.whisperManager().printFrom(from, msg); +/* */ } +/* */ +/* */ protected void printWhisperTo(String to, String msg) +/* */ { +/* 507 */ WhisperManager.whisperManager().printTo(to, msg); +/* */ } +/* */ +/* */ protected void startWhisperingTo(String to) +/* */ { +/* 512 */ WhisperManager.whisperManager().startTo(to); +/* */ } +/* */ +/* 515 */ static String loadingString = Console.message("Loading"); +/* 516 */ static String arrowKeyMsg = Console.message("Use-arrow-keys"); +/* 517 */ String statusMessage = arrowKeyMsg; +/* */ String overrideMessage; +/* 519 */ String lastStatus = ""; +/* 520 */ int lastUpdateTime = 0; +/* 521 */ boolean wasTeleporting = false; +/* */ +/* */ private int lastVMCheck; +/* */ private int lastVMBigWarning; +/* */ Component bottom; +/* */ Component top; +/* 527 */ Label status = new UnpaddedLabel("", 2); +/* 528 */ Label yourName = new UnpaddedLabel("", 0); +/* */ +/* */ public DefaultConsole() +/* */ { +/* 532 */ init(); +/* 533 */ loadViewNames(); +/* */ +/* */ +/* */ +/* */ +/* */ +/* 539 */ this.speedNames = new Vector(); +/* 540 */ this.speedNames +/* 541 */ .addElement(new CameraSpeed("Slow", 1)); +/* 542 */ this.speedNames.addElement(new CameraSpeed("Medium", +/* 543 */ 2)); +/* 544 */ this.speedNames +/* 545 */ .addElement(new CameraSpeed("Fast", 3)); +/* */ } +/* */ +/* */ public void loadViewNames() +/* */ { +/* 550 */ this.viewNames = new Vector(); +/* 551 */ this.viewNames.addElement(new CameraView("First-person", +/* 552 */ 1)); +/* 553 */ this.viewNames.addElement(new CameraView("Low-first-person", +/* 554 */ 2)); +/* 555 */ this.viewNames.addElement(new CameraView("Waist", 3)); +/* 556 */ this.viewNames.addElement(new CameraView("Shoulder", +/* 557 */ 4)); +/* 558 */ this.viewNames.addElement(new CameraView("Head", 5)); +/* 559 */ this.viewNames.addElement(new CameraView("Overhead", +/* 560 */ 6)); +/* 561 */ this.viewNames +/* 562 */ .addElement(new CameraView("Behind", 7)); +/* 563 */ this.viewNames.addElement(new CameraView("Wide-shot", +/* 564 */ 8)); +/* */ +/* 566 */ if (Gamma.getShaper() != null) { +/* 567 */ this.viewNames.addElement(new CameraView("Orthographic", +/* 568 */ 9)); +/* */ } +/* */ } +/* */ +/* */ public void setOrthoEnabled(boolean in) { +/* 573 */ if (this.orthographicViewItem != null) { +/* 574 */ this.orthographicViewItem.setEnabled(in); +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public void loadInit() +/* */ { +/* 584 */ super.loadInit(); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public void removeUseArrowStatusMsg() +/* */ { +/* 593 */ if (this.statusMessage == arrowKeyMsg) { +/* 594 */ this.statusMessage = ""; +/* */ } +/* */ } +/* */ +/* */ public void overrideStatusMsg(String msg) { +/* 599 */ synchronized (this.status) { +/* 600 */ this.overrideMessage = msg; +/* 601 */ if (msg != null) { +/* 602 */ this.status.setText(msg); +/* */ } else { +/* 604 */ this.status.setText(this.lastStatus); +/* */ } +/* */ } +/* */ } +/* */ +/* */ public String message(String Id, Locale currentLocale) { +/* 610 */ Locale.setDefault(currentLocale); +/* 611 */ Console.println(currentLocale.getDisplayName()); +/* */ try +/* */ { +/* 614 */ ResourceBundle messages = ResourceBundle.getBundle( +/* 615 */ "MessagesBundle", currentLocale); +/* 616 */ return messages.getString(Id); +/* */ } catch (MissingResourceException e) {} +/* 618 */ return "NO MESSAGE for " + Id; +/* */ } +/* */ +/* */ +/* */ +/* 623 */ static String[] lNames = lpList(); +/* 624 */ static int lLength = lNames.length; +/* 625 */ static MenuItem[] lLangs = new MenuItem[lLength]; +/* 626 */ static Locale[] newLocale = new Locale[lLength]; +/* 627 */ static String[][] lCodes = new String[lLength][2]; +/* */ +/* */ +/* */ +/* 631 */ Vector<String> lList = new Vector(); +/* 632 */ Vector<String> sList = new Vector(); +/* 633 */ int[] lSizes = new int[10]; +/* 634 */ int dLength = dpList(this.lList, this.sList, this.lSizes); +/* 635 */ MenuItem[] dLangs = this.dLength == 0 ? null : new MenuItem[this.dLength]; +/* 636 */ Locale[] newdLocale = this.dLength == 0 ? null : new Locale[this.dLength]; +/* */ +/* */ +/* 639 */ Vector<String> flList = new Vector(); +/* 640 */ Vector<String> fsList = new Vector(); +/* 641 */ int[] fSizes = new int[10]; +/* 642 */ int fLength = fpList(this.flList, this.fsList, this.fSizes); +/* 643 */ MenuItem[] dFonts = this.fLength == 0 ? null : new MenuItem[this.fLength]; +/* 644 */ Locale[] newfLocale = this.fLength == 0 ? null : new Locale[this.fLength]; +/* */ static boolean wasDelta; +/* */ static boolean doDrive; +/* */ Panel mapPanel; +/* */ +/* */ private void init() +/* */ { +/* 651 */ addPart(this.render); +/* 652 */ addPart(this.chat); +/* 653 */ addPart(this.inventory); +/* 654 */ addPart(this.marks); +/* 655 */ addPart(this.friends); +/* 656 */ addPart(this.actions); +/* 657 */ addPart(this.mutes); +/* 658 */ addPart(this.ad); +/* 659 */ addPart(this.map); +/* 660 */ addPart(this.savedAvs); +/* */ +/* */ +/* 663 */ Panel drivePanel = new Panel(new FlowLayout(1, 0, 0)); +/* */ +/* 665 */ String driveGif = IniFile.override().getIniString("driveGif", +/* 666 */ "drive.gif"); +/* 667 */ addPart(this.driveButton = new ImageButtons(driveGif, 81, 19, this)); +/* 668 */ String quitGif = IniFile.override().getIniString("quitGif", +/* 669 */ Console.message("quit.gif")); +/* 670 */ addPart(this.quitButton = new ImageButtons(quitGif, 65, 19, this)); +/* 671 */ String exploreGif = IniFile.override().getIniString("exploreGif", +/* 672 */ Console.message("explore.gif")); +/* 673 */ addPart(this.exploreButton = new ImageButtons(exploreGif, 98, 22, this)); +/* 674 */ drivePanel.add(this.driveButton); +/* 675 */ this.driveButton.setDownUpHandler(new ImageButtonsCallback() +/* */ { +/* */ public Object imageButtonsCallback(Component who, int which) { +/* 678 */ if (which != -1) { +/* 679 */ DefaultConsole.this.startDrive(); +/* */ } +/* */ else +/* */ { +/* 683 */ DefaultConsole.this.driveButton.drawDown(); +/* */ } +/* 685 */ return this; +/* */ } +/* */ +/* 688 */ }); +/* 689 */ Panel mid = new Panel(); +/* 690 */ mid.setLayout(new GridLayout(1, 3)); +/* 691 */ int bgR = IniFile.override().getIniInt("uiBackgroundRed", 49); +/* 692 */ int bgG = IniFile.override().getIniInt("uiBackgroundGreen", 0); +/* 693 */ int bgB = IniFile.override().getIniInt("uiBackgroundBlue", 255); +/* 694 */ mid.setBackground(new Color(bgR, bgG, bgB)); +/* 695 */ mid.add(this.yourName); +/* 696 */ mid.add(drivePanel); +/* */ +/* */ +/* 699 */ mid.add(this.status); +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* 725 */ this.chat.line.setBackground(Color.black); +/* 726 */ this.chat.line.setForeground(Color.white); +/* 727 */ this.chat.line.setFont(font); +/* */ +/* 729 */ Panel chatter = new InsetPanel(new BorderLayout(0, 3), 0, 0, 3, 0); +/* 730 */ chatter.add("North", mid); +/* 731 */ chatter.add("Center", this.chat.listen.getComponent()); +/* 732 */ chatter.add("South", this.chat.line); +/* */ +/* 734 */ this.chat.listen.setBackground(Color.black); +/* 735 */ this.chat.listen.setForeground(Color.white); +/* 736 */ this.chat.listen.setFont(font); +/* */ +/* */ +/* 739 */ Panel p = new Panel(new BorderLayout()); +/* 740 */ Panel q = new Panel(new BorderLayout()); +/* */ +/* */ +/* */ +/* 744 */ Panel r = new Panel(new BorderLayout()); +/* 745 */ Panel s = new Panel(new BorderLayout()); +/* */ +/* 747 */ ColorFiller qBlue1 = new ColorFiller(65, 19); +/* 748 */ qBlue1.setBackground(new Color(bgR, bgG, bgB)); +/* 749 */ r.add("West", this.quitButton); +/* 750 */ r.add("East", qBlue1); +/* */ +/* 752 */ int bgbR = IniFile.override().getIniInt("uiBackground2Red", 0); +/* 753 */ int bgbG = IniFile.override().getIniInt("uiBackground2Green", 0); +/* 754 */ int bgbB = IniFile.override().getIniInt("uiBackground2Blue", 0); +/* 755 */ s.add("North", r); +/* 756 */ s.add("Center", this.ad); +/* 757 */ if (chatLines > 6) { +/* 758 */ int h = chatLines * +/* 759 */ this.chat.listen.getComponent() +/* 760 */ .getFontMetrics(this.chat.listen.getFont()) +/* 761 */ .getHeight(); +/* */ +/* */ +/* 764 */ h -= 96; +/* 765 */ if (h > 0) { +/* 766 */ this.adFiller = new ColorFiller(130, h); +/* 767 */ this.adFiller.setBackground(new Color(bgbR, bgbG, bgbB)); +/* */ +/* */ +/* 770 */ s.add("South", this.adFiller); +/* */ } +/* */ } +/* */ +/* 774 */ p.add("West", s); +/* */ +/* */ +/* 777 */ this.mapPanel = new Panel(new BorderLayout()); +/* */ +/* */ +/* 780 */ this.mapPanel.add("Center", this.map); +/* 781 */ this.mapPanel.setBackground(Color.black); +/* */ +/* 783 */ r = new Panel(new BorderLayout()); +/* 784 */ ColorFiller qBlue = new ColorFiller(60, 19); +/* 785 */ qBlue.setBackground(new Color(bgR, bgG, bgB)); +/* 786 */ r.add("North", qBlue); +/* */ +/* 788 */ ColorFiller qBlack = new ColorFiller(60, 3); +/* */ +/* */ +/* */ +/* 792 */ qBlack.setBackground(new Color(bgbR, bgbG, bgbB)); +/* 793 */ r.add("South", qBlack); +/* */ +/* 795 */ q = new Panel(new BorderLayout()); +/* 796 */ q.add("East", this.exploreButton); +/* 797 */ q.add("West", r); +/* 798 */ this.mapPanel.add("North", q); +/* */ +/* 800 */ p.add("East", this.mapPanel); +/* */ +/* 802 */ p.add("Center", chatter); +/* */ +/* 804 */ this.bottom = p; +/* */ +/* */ +/* 807 */ this.renderCard = new CardLayout(); +/* 808 */ this.renderAndUniverse = new Panel(this.renderCard); +/* 809 */ this.renderAndUniverse.add("render", this.render); +/* */ +/* 811 */ Panel p = new InsetPanel(new BorderLayout(), 3, 3, 0, 0); +/* 812 */ p.add("Center", this.renderAndUniverse); +/* */ +/* 814 */ int bgbR = IniFile.override().getIniInt("uiBackground3Red", 0); +/* 815 */ int bgbG = IniFile.override().getIniInt("uiBackground3Green", 0); +/* 816 */ int bgbB = IniFile.override().getIniInt("uiBackground3Blue", 0); +/* 817 */ ColorFiller rtBlack = new ColorFiller(97, 1); +/* 818 */ rtBlack.setBackground(new Color(bgbR, bgbG, bgbB)); +/* */ +/* 820 */ Panel rt = new Panel(new QuantizedStackedLayout(rtBlack)); +/* 821 */ String panelGif = IniFile.override().getIniString("rtPanel", +/* 822 */ Console.message("rtpanel.gif")); +/* */ +/* 824 */ addPart(this.menuButtons = new ImageButtons(panelGif, 97, menuButtonHeights, +/* 825 */ this)); +/* */ +/* 827 */ rt.add(rtBlack); +/* 828 */ rt.add(this.menuButtons); +/* 829 */ rt.add(this.friends); +/* 830 */ p.add("East", rt); +/* 831 */ this.top = p; +/* */ } +/* */ +/* */ +/* */ +/* */ public void relayoutMap() +/* */ { +/* 838 */ this.mapPanel.invalidate(); +/* 839 */ this.mapPanel.validate(); +/* 840 */ this.mapPanel.doLayout(); +/* 841 */ this.mapPanel.repaint(); +/* */ } +/* */ +/* */ public void startDrive() { +/* 845 */ this.statusMessage = Console.message("Drag-mouse"); +/* 846 */ doDrive = true; +/* 847 */ Window.makeJavaReleaseCapture(); +/* */ } +/* */ +/* 850 */ private static String signIn = Console.message("Sign-In"); +/* 851 */ private static String signOut = Console.message("Sign-Out"); +/* 852 */ private static String signingIn = Console.message("Signing-In"); +/* 853 */ private static String noMultiUser = Console.message("Network"); +/* */ +/* */ public void setOnlineState(boolean enabled, boolean online) +/* */ { +/* 857 */ synchronized (this) { +/* 858 */ if (this.serverItem != null) { +/* 859 */ this.serverItem.setEnabled(enabled); +/* 860 */ if (!enabled) { +/* 861 */ Galaxy g = getGalaxy(); +/* 862 */ if ((g != null) && (!g.isAnonymous())) +/* */ { +/* */ +/* */ +/* */ +/* 867 */ this.serverItem.setLabel(signingIn); +/* */ } else +/* 869 */ this.serverItem.setLabel(noMultiUser); +/* 870 */ } else if (online) { +/* 871 */ this.serverItem.setLabel(signOut); +/* */ } else { +/* 873 */ this.serverItem.setLabel(signIn); +/* */ } +/* */ } +/* */ } } +/* */ +/* 878 */ private static String enable3D = Console.message("Enable3D"); +/* 879 */ private static String disable3D = Console.message("Disable3D"); +/* */ +/* */ private void handleNametagsItem() { +/* 882 */ if (IniFile.gamma().getIniInt("SHOWNAMETAGS", 1) == 0) { +/* 883 */ IniFile.gamma().setIniInt("SHOWNAMETAGS", 1); +/* 884 */ this.nametagItem.setLabel(hideTags); +/* */ } else { +/* 886 */ IniFile.gamma().setIniInt("SHOWNAMETAGS", 0); +/* 887 */ this.nametagItem.setLabel(showTags); +/* */ } +/* */ +/* 890 */ new OkCancelDialog(getFrame(), null, Console.message("Alert"), null, +/* 891 */ Console.message("OK"), Console.message("Change-exit"), true); +/* */ } +/* */ +/* */ +/* 895 */ private static String showTags = Console.message("ShowNametags"); +/* 896 */ private static String hideTags = Console.message("HideNametags"); +/* */ +/* */ private void handleGraphicsItem() { +/* 899 */ if (IniFile.gamma().getIniInt("UserEnabled3DHardware", 0) == 0) { +/* 900 */ IniFile.gamma().setIniInt("UserEnabled3DHardware", 1); +/* 901 */ this.graphicsItem.setLabel(disable3D); +/* */ } else { +/* 903 */ IniFile.gamma().setIniInt("UserEnabled3DHardware", 0); +/* 904 */ this.graphicsItem.setLabel(enable3D); +/* */ } +/* */ +/* 907 */ new OkCancelDialog(getFrame(), null, Console.message("Alert"), null, +/* 908 */ Console.message("OK"), Console.message("Change-exit"), true); +/* */ } +/* */ +/* */ +/* */ +/* 913 */ private static String enableClassicChat = Console.message("EnableClassicChat"); +/* */ +/* 915 */ private static String disableClassicChat = Console.message("DisableClassicChat"); +/* 916 */ private static String configureChat = Console.message("Config-Chat"); +/* */ Menu chatLogMenu; +/* */ +/* 919 */ private void handleChatBoxItem() { if (IniFile.gamma().getIniInt("classicChatBox", 1) == 0) { +/* 920 */ IniFile.gamma().setIniInt("classicChatBox", 1); +/* 921 */ this.chatBoxItem.setLabel(disableClassicChat); +/* */ } else { +/* 923 */ IniFile.gamma().setIniInt("classicChatBox", 0); +/* 924 */ this.chatBoxItem.setLabel(enableClassicChat); +/* */ } +/* */ +/* 927 */ new OkCancelDialog(getFrame(), null, Console.message("Alert"), null, +/* 928 */ Console.message("OK"), Console.message("Change-exit"), true); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ public AvMenu getAvatarMenu() +/* */ { +/* 936 */ return this.avatarMenu; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public void inventoryChanged() +/* */ { +/* 946 */ super.inventoryChanged(); +/* 947 */ if (this.avatarMenu != null) { +/* 948 */ this.avatarMenu.buildSpecialGuestMenu(); +/* */ } +/* */ } +/* */ +/* */ +/* */ public void setMenusWRTVIP() +/* */ { +/* 955 */ if (this.avatarMenu != null) { +/* 956 */ this.avatarMenu.setEnabled(getVIP()); +/* 957 */ this.avatarMenu.customize.setEnabled(getVIP()); +/* */ } +/* 959 */ if (this.savedAvs != null) { +/* 960 */ this.savedAvs.setEnabled(getVIP()); +/* */ } +/* 962 */ if (this.chatLogMenu != null) { +/* 963 */ this.chatLogMenu.setEnabled(getVIP()); +/* */ } +/* 965 */ if (this.toggleVoiceChatItem != null) +/* */ { +/* 967 */ this.toggleVoiceChatItem.setLabel((getVIP()) && (VoiceChat.voiceChatEnabled) ? +/* 968 */ Console.message("Reject-Voice") : +/* 969 */ Console.message("Accept-Voice")); +/* 970 */ this.toggleVoiceChatItem.setEnabled((getVIP()) && +/* 971 */ (VoiceChat.voiceChatAvailable())); +/* */ } +/* 973 */ if (this.becomeVIPItem != null) { +/* 974 */ this.becomeVIPItem.setLabel(vip > 0 ? +/* */ +/* 976 */ Console.message("Become-full-VIP") : vip > 1 ? Console.message("Youre-a-VIP") : +/* 977 */ Console.message("Become-VIP")); +/* */ } +/* 979 */ if (this.numVisItem != null) { +/* 980 */ this.numVisItem.setEnabled(getVIP()); +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public void addBroadcastMenu() +/* */ { +/* 990 */ if (this.bootSomeone == null) { +/* 991 */ if (IniFile.gamma().getIniInt("Broadcast", 0) != 0) { +/* 992 */ Menu menu = new Menu(Console.message("Broadcast")); +/* 993 */ menu.add(this.broadcastToRoom = new MenuItem( +/* 994 */ Console.message("Users"))); +/* 995 */ menu.add(this.broadcastToAll = new MenuItem( +/* 996 */ Console.message("All-users"))); +/* 997 */ addMenuItem(menu, "Options"); +/* */ } +/* 999 */ this.bootSomeone = new MenuItem(Console.message("Boot-user")); +/* 1000 */ addMenuItem(this.bootSomeone, "Options"); +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ AvMenu avatarMenu; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ private static String[] lpList() +/* */ { +/* 1058 */ File dir = new File("."); +/* 1059 */ FilenameFilter f = new FilenameFilter() +/* */ { +/* */ public boolean accept(File dir, String name) { +/* 1062 */ return (name.startsWith("MessagesBundle")) && +/* 1063 */ (name.endsWith(".properties")); +/* */ } +/* 1065 */ }; +/* 1066 */ String[] list = dir.list(f); +/* 1067 */ Collator sortCollator = Collator.getInstance(); +/* 1068 */ sortStrings(sortCollator, list); +/* 1069 */ return list; +/* */ } +/* */ +/* */ +/* */ +/* */ private int dpList(Vector<String> lList, Vector<String> sList, int[] lSizes) +/* */ { +/* 1076 */ String err = NetUpdate.getLanguages( +/* 1077 */ URL.make(NetUpdate.getUpgradeServerURL() + +/* 1078 */ "I18N/" + "languages.lst"), lList, sList, lSizes); +/* 1079 */ if (err != null) { +/* 1080 */ System.out.println(err); +/* 1081 */ return 0; +/* */ } +/* 1083 */ return lList.size(); +/* */ } +/* */ +/* */ +/* */ +/* */ private int fpList(Vector<String> lList, Vector<String> sList, int[] lSizes) +/* */ { +/* 1090 */ String err = NetUpdate.getLanguages( +/* 1091 */ URL.make(NetUpdate.getUpgradeServerURL() + +/* 1092 */ "I18N/" + "fonts.lst"), lList, sList, lSizes); +/* 1093 */ if (err != null) { +/* 1094 */ System.out.println(err); +/* 1095 */ return 0; +/* */ } +/* 1097 */ return lList.size(); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public static void sortStrings(Collator collator, String[] words, Locale[] Locales, String[][] Codes) +/* */ { +/* 1108 */ for (int i = 0; i < words.length; i++) { +/* 1109 */ for (int j = i + 1; j < words.length; j++) { +/* 1110 */ if (collator.compare(words[i], words[j]) > 0) { +/* 1111 */ String tmp = words[i]; +/* 1112 */ Locale ltmp = Locales[i]; +/* 1113 */ String c0 = Codes[i][0]; +/* 1114 */ String c1 = Codes[i][1]; +/* 1115 */ words[i] = words[j]; +/* 1116 */ Locales[i] = Locales[j]; +/* 1117 */ Codes[i][0] = Codes[j][0]; +/* 1118 */ Codes[i][1] = Codes[j][1]; +/* 1119 */ words[j] = tmp; +/* 1120 */ Locales[j] = ltmp; +/* 1121 */ Codes[j][0] = c0; +/* 1122 */ Codes[j][1] = c1; +/* */ } +/* */ } +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public static void sortStrings(Collator collator, String[] words, Locale[] Locales, Vector<String> CodeL, Vector<String> CodeS) +/* */ { +/* 1136 */ for (int i = 0; i < words.length; i++) { +/* 1137 */ for (int j = i + 1; j < words.length; j++) { +/* 1138 */ if (collator.compare(words[i], words[j]) > 0) { +/* 1139 */ String tmp = words[i]; +/* 1140 */ Locale ltmp = Locales[i]; +/* 1141 */ String c0 = (String)CodeL.elementAt(i); +/* 1142 */ String c1 = (String)CodeS.elementAt(i); +/* 1143 */ words[i] = words[j]; +/* 1144 */ Locales[i] = Locales[j]; +/* 1145 */ CodeL.setElementAt((String)CodeL.elementAt(j), i); +/* 1146 */ CodeS.setElementAt((String)CodeS.elementAt(j), i); +/* 1147 */ words[j] = tmp; +/* 1148 */ Locales[j] = ltmp; +/* 1149 */ CodeL.setElementAt(c0, j); +/* 1150 */ CodeS.setElementAt(c1, j); +/* */ } +/* */ } +/* */ } +/* */ } +/* */ +/* */ +/* */ public static void sortStrings(Collator collator, String[] words) +/* */ { +/* 1159 */ for (int i = 0; i < words.length; i++) { +/* 1160 */ for (int j = i + 1; j < words.length; j++) { +/* 1161 */ if (collator.compare(words[i], words[j]) > 0) { +/* 1162 */ String tmp = words[i]; +/* 1163 */ words[i] = words[j]; +/* 1164 */ words[j] = tmp; +/* */ } +/* */ } +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ public void activate(Container c) +/* */ { +/* 1175 */ super.activate(c); +/* */ +/* 1177 */ c.setBackground(Color.black); +/* 1178 */ c.setForeground(Color.white); +/* 1179 */ c.setLayout(new BorderLayout()); +/* */ +/* 1181 */ c.add("Center", this.top); +/* 1182 */ c.add("South", this.bottom); +/* */ +/* 1184 */ this.chat.line.setBackground(Color.white); +/* 1185 */ this.chat.line.setForeground(Color.black); +/* */ +/* 1187 */ boolean useShaper = Gamma.getShaper() != null; +/* */ +/* 1189 */ if (useShaper) { +/* 1190 */ this.shaperHelpItem = addMenuItem(Console.message("using-shaper"), +/* 1191 */ "Help"); +/* */ } +/* */ +/* */ +/* */ +/* 1196 */ if (NetUpdate.getInfoURL() != null) { +/* 1197 */ this.helpItem = addMenuItem(Console.message("Help-Contents"), "Help"); +/* 1198 */ this.infoItem = addMenuItem(Console.message("Latest-info"), "Help"); +/* */ } +/* */ +/* 1201 */ Object[] arguments = { new String(Std.getProductName()) }; +/* 1202 */ this.aboutItem = addMenuItem(MessageFormat.format( +/* 1203 */ Console.message("About-product"), arguments), "Help"); +/* */ +/* */ +/* 1206 */ int cameraMode = IniFile.gamma().getIniInt("CAM_MODE", +/* 1207 */ 7); +/* 1208 */ int cameraSpeed = IniFile.gamma().getIniInt("CAM_SPEED", +/* 1209 */ 3); +/* */ +/* 1211 */ if ((!useShaper) && (cameraMode == 9)) { +/* 1212 */ cameraMode = 7; +/* */ } +/* */ +/* 1215 */ this.pilot.setOutsideCameraMode(cameraMode, cameraSpeed); +/* */ +/* 1217 */ Menu viewMenu = new Menu(Console.message("Change-View")); +/* 1218 */ addMenuItem(viewMenu, "Options"); +/* */ +/* 1220 */ MenuItem cameraVMenu = new MenuItem(Console.message("CAMERA-VIEW")); +/* 1221 */ cameraVMenu.setFont(mfont); +/* 1222 */ viewMenu.add(cameraVMenu); +/* */ +/* 1224 */ this.viewItems = new Vector(); +/* */ +/* 1226 */ for (int i = 0; i < this.viewNames.size(); i++) { +/* 1227 */ CameraView currView = (CameraView)this.viewNames.elementAt(i); +/* 1228 */ CheckboxMenuItem item = new CheckboxMenuItem(" " + +/* 1229 */ Console.message(currView.viewName), +/* 1230 */ cameraMode == currView.viewID); +/* 1231 */ if (cameraMode == currView.viewID) +/* 1232 */ this.currentViewItem = item; +/* 1233 */ item.setFont(mfont); +/* 1234 */ viewMenu.add(item); +/* 1235 */ this.viewItems.addElement(item); +/* */ +/* 1237 */ if (currView.viewName == "Orthographic") +/* */ { +/* 1239 */ this.orthographicViewItem = item; +/* */ } +/* */ } +/* */ +/* 1243 */ viewMenu.addSeparator(); +/* 1244 */ MenuItem cameraSMenu = new MenuItem(Console.message("CAMERA-SPEED")); +/* 1245 */ cameraSMenu.setFont(mfont); +/* 1246 */ viewMenu.add(cameraSMenu); +/* */ +/* 1248 */ this.camSpeedItems = new Vector(); +/* 1249 */ for (int i = 0; i < this.speedNames.size(); i++) { +/* 1250 */ CameraSpeed currSpeed = (CameraSpeed)this.speedNames.elementAt(i); +/* 1251 */ CheckboxMenuItem item = new CheckboxMenuItem(" " + +/* 1252 */ Console.message(currSpeed.speedName), +/* 1253 */ currSpeed.speedID == cameraSpeed); +/* 1254 */ if (currSpeed.speedID == cameraSpeed) +/* 1255 */ this.currentCamSpeedItem = item; +/* 1256 */ item.setFont(mfont); +/* 1257 */ viewMenu.add(item); +/* 1258 */ this.camSpeedItems.addElement(item); +/* */ } +/* */ +/* */ +/* 1262 */ this.becomeVIPItem = addMenuItem( +/* 1263 */ vip == 1 ? Console.message("Become-full-VIP") : +/* 1264 */ Console.message("Become-VIP"), "VIP"); +/* */ +/* 1266 */ addMenuItem(this.avatarMenu = new AvMenu(this, this.lastPilotRequested), "VIP"); +/* 1267 */ addMenuItem(this.savedAvs, "VIP"); +/* 1268 */ addMenuItem(this.avatarMenu.customize, "VIP"); +/* */ +/* */ +/* 1271 */ this.toggleVoiceChatItem = addMenuItem(Console.message("Enable-Voice"), +/* 1272 */ "VIP"); +/* 1273 */ this.toggleVoiceChatItem.setEnabled(false); +/* */ +/* 1275 */ this.numVisItem = addMenuItem(Console.message("Num-Visible"), "VIP"); +/* */ +/* 1277 */ if ((NetUpdate.isInternalVersion()) || +/* 1278 */ (IniFile.gamma().getIniInt("EnableTrading", 0) == 1)) { +/* 1279 */ this.inventoryItem = addMenuItem("My Stuff", "VIP"); +/* 1280 */ this.checkInventoryItem = addMenuItem("Check Inventory", "VIP"); +/* */ } +/* */ +/* 1283 */ if ((NetUpdate.isInternalVersion()) || +/* 1284 */ (IniFile.gamma().getIniInt("EnableBank", 0) == 1)) { +/* 1285 */ this.bankItem = addMenuItem("Access Bank Account", "VIP"); +/* */ } +/* */ +/* 1288 */ if (IniFile.gamma().getIniInt("EnableUBU", 0) == 1) { +/* 1289 */ this.ubuItem = addMenuItem("U-B-U Vanatar", "VIP"); +/* */ } +/* */ +/* 1292 */ setMenusWRTVIP(); +/* */ +/* 1294 */ this.proxyServerItem = addMenuItem(Console.message("Proxy-Server"), +/* 1295 */ "Options"); +/* */ +/* 1297 */ this.checkAccountItem = addMenuItem(Console.message("Account-Info"), +/* 1298 */ "Options"); +/* */ +/* 1300 */ if (useShaper) { +/* 1301 */ this.statisticsItem = addMenuItem(Console.message("Display-Stat"), +/* 1302 */ "Options"); +/* */ } +/* */ +/* 1305 */ this.upgradeItem = addMenuItem(Console.message("Upgrade-Now"), "Options"); +/* */ +/* 1307 */ if (useShaper) { +/* 1308 */ this.channelItem = addMenuItem(Console.message("Dimension-Sel"), +/* 1309 */ "Options"); +/* */ } +/* 1311 */ this.serverItem = addMenuItem(signIn, "Options"); +/* 1312 */ setOnlineState(this.galaxy.getOnlineEnabled(), this.galaxy.getOnline()); +/* */ +/* */ +/* 1315 */ if (IniFile.gamma().getIniInt("recorderEnabled", 1) == 1) { +/* 1316 */ Menu recorderMenu = new Menu(Console.message("Recorder")); +/* 1317 */ addMenuItem(recorderMenu, "Options"); +/* */ +/* 1319 */ this.recorderRecItem = new MenuItem(Console.message("Record")); +/* 1320 */ recorderMenu.add(this.recorderRecItem); +/* 1321 */ this.recorderStopItem = new MenuItem(Console.message("Stop")); +/* 1322 */ recorderMenu.add(this.recorderStopItem); +/* 1323 */ this.recorderPlayItem = new MenuItem(Console.message("Play")); +/* 1324 */ recorderMenu.add(this.recorderPlayItem); +/* */ } +/* */ +/* 1327 */ if (NetUpdate.isInternalVersion()) { +/* 1328 */ Menu languageMenu = new Menu(Console.message("Languages")); +/* 1329 */ addMenuItem(languageMenu, "Options"); +/* */ +/* */ +/* 1332 */ Menu downloadFont = new Menu(Console.message("Download-Font")); +/* 1333 */ languageMenu.add(downloadFont); +/* 1334 */ downloadFont.setFont(mfont); +/* */ +/* */ +/* 1337 */ this.fontItems = new Vector(); +/* 1338 */ for (int i = 0; i < this.fLength; i++) +/* */ { +/* 1340 */ if (this.flList.elementAt(i) != null) { +/* 1341 */ if (this.fsList.elementAt(i) != null) { +/* 1342 */ this.newfLocale[i] = new Locale( +/* 1343 */ (String)this.flList.elementAt(i), +/* 1344 */ (String)this.fsList.elementAt(i)); +/* */ +/* */ +/* 1347 */ String code = (String)this.flList.elementAt(i) + "_" + +/* 1348 */ (String)this.fsList.elementAt(i); +/* */ +/* 1350 */ if (code.equals(Console.message(code))) { +/* 1351 */ this.dFonts[i] = new MenuItem( +/* 1352 */ this.newfLocale[i].getDisplayName()); +/* */ } else { +/* 1354 */ this.dFonts[i] = new MenuItem( +/* 1355 */ Console.message(code)); +/* */ } +/* */ } else { +/* 1358 */ String code = (String)this.flList.elementAt(i); +/* 1359 */ if (code.equals(Console.message(code))) { +/* 1360 */ this.dFonts[i] = new MenuItem( +/* 1361 */ (String)this.flList.elementAt(i)); +/* */ } else { +/* 1363 */ this.dFonts[i] = new MenuItem( +/* 1364 */ Console.message(code)); +/* */ } +/* */ } +/* 1367 */ this.dFonts[i].setFont(mfont); +/* */ +/* 1369 */ downloadFont.add(this.dFonts[i]); +/* 1370 */ this.fontItems.addElement(this.dFonts[i]); +/* */ } +/* */ } +/* */ +/* */ +/* 1375 */ Menu downloadLanguage = new Menu( +/* 1376 */ Console.message("Download-Language")); +/* 1377 */ languageMenu.add(downloadLanguage); +/* 1378 */ downloadLanguage.setFont(mfont); +/* */ +/* */ +/* 1381 */ this.downItems = new Vector(); +/* 1382 */ String[] sLangs = new String[this.dLength]; +/* */ +/* 1384 */ for (int i = 0; i < this.dLength; i++) +/* */ { +/* */ +/* */ +/* */ +/* */ +/* 1390 */ if (this.lList.elementAt(i) != null) { +/* 1391 */ this.newdLocale[i] = new Locale((String)this.lList.elementAt(i), +/* 1392 */ (String)this.sList.elementAt(i)); +/* */ +/* */ String lName0; +/* */ +/* */ String lName0; +/* 1397 */ if (i > 0) { +/* 1398 */ Locale locale0 = new Locale((String)this.lList.elementAt(i - 1), +/* 1399 */ (String)this.sList.elementAt(i - 1)); +/* 1400 */ lName0 = locale0.getDisplayName(); +/* */ } else { +/* 1402 */ lName0 = this.newdLocale[i].getDisplayName(); +/* */ } +/* 1404 */ String lName1 = this.newdLocale[i].getDisplayName(); +/* 1405 */ lName1 = lName1.substring(0, lName1.indexOf('(') - 1); +/* */ String lName; +/* 1407 */ String lName; if (i < this.dLength - 1) { +/* 1408 */ Locale locale2 = new Locale((String)this.lList.elementAt(i + 1), +/* 1409 */ (String)this.sList.elementAt(i + 1)); +/* 1410 */ String lName2 = locale2.getDisplayName(); +/* 1411 */ lName2 = lName2.substring(0, lName2.indexOf('(') - 1); +/* 1412 */ String lName; if (lName2.equals(lName1)) { +/* 1413 */ lName = this.newdLocale[i].getDisplayName(); +/* */ } else +/* 1415 */ lName = lName1; } else { String lName; +/* 1416 */ if (i == this.dLength - 1) { +/* 1417 */ lName0 = lName0.substring(0, lName0.indexOf('(') - 1); +/* 1418 */ String lName; if (lName1.equals(lName0)) { +/* 1419 */ lName = this.newdLocale[i].getDisplayName(); +/* */ } else +/* 1421 */ lName = lName1; } else { String lName; +/* 1422 */ if (sLangs[(i - 1)].equals(lName1)) { +/* 1423 */ lName = this.newdLocale[i].getDisplayName(); +/* */ } else +/* 1425 */ lName = lName1; +/* */ } +/* */ } +/* 1428 */ String code = (String)this.lList.elementAt(i) + "_" + +/* 1429 */ (String)this.sList.elementAt(i); +/* */ +/* 1431 */ if (code.equals(Console.message(code))) { +/* 1432 */ sLangs[i] = lName; +/* */ } else { +/* 1434 */ sLangs[i] = Console.message(code); +/* */ } +/* */ } +/* */ } +/* */ +/* 1439 */ Collator sortCollator = Collator.getInstance(); +/* 1440 */ sortStrings(sortCollator, sLangs, this.newdLocale, this.lList, this.sList); +/* */ +/* 1442 */ for (int i = 0; i < this.dLength; i++) { +/* 1443 */ this.dLangs[i] = new MenuItem(sLangs[i]); +/* 1444 */ this.dLangs[i].setFont(mfont); +/* */ +/* 1446 */ downloadLanguage.add(this.dLangs[i]); +/* 1447 */ this.downItems.addElement(this.dLangs[i]); +/* */ } +/* */ +/* */ +/* 1451 */ Menu switchLang = new Menu(Console.message("Switch-Language")); +/* 1452 */ languageMenu.add(switchLang); +/* 1453 */ switchLang.setFont(mfont); +/* */ +/* */ +/* */ +/* 1457 */ this.langItems = new Vector(); +/* */ +/* 1459 */ for (int i = 0; i < lLength; i++) { +/* 1460 */ int imb = lNames[i].indexOf('_'); +/* 1461 */ if (imb < 0) { +/* 1462 */ lCodes[i][0] = "en"; +/* 1463 */ lCodes[i][1] = "US"; +/* */ } else { +/* 1465 */ int ipr = lNames[i].lastIndexOf('.'); +/* 1466 */ if (ipr < 0) { +/* 1467 */ ipr = 0; +/* */ } +/* 1469 */ lCodes[i][0] = lNames[i].substring(imb + 1, imb + 3); +/* */ +/* 1471 */ if (ipr > imb + 4) { +/* 1472 */ lCodes[i][1] = lNames[i].substring(imb + 4, ipr); +/* */ } else { +/* 1474 */ lCodes[i][1] = lCodes[i][0].toUpperCase(); +/* */ } +/* */ } +/* */ } +/* 1478 */ String[] slLangs = new String[lLength]; +/* */ +/* 1480 */ for (int i = 0; i < lLength; i++) +/* */ { +/* 1482 */ newLocale[i] = new Locale(lCodes[i][0], lCodes[i][1]); +/* */ +/* */ +/* */ String lName0; +/* */ +/* */ +/* */ String lName0; +/* */ +/* 1490 */ if (i > 0) { +/* 1491 */ Locale locale0 = new Locale(lCodes[(i - 1)][0], lCodes[(i - 1)][1]); +/* 1492 */ lName0 = locale0.getDisplayName(); +/* */ } else { +/* 1494 */ lName0 = newLocale[i].getDisplayName(); +/* */ } +/* 1496 */ String lName1 = newLocale[i].getDisplayName(); +/* 1497 */ lName1 = lName1.substring(0, lName1.indexOf('(') - 1); +/* */ String lName; +/* 1499 */ String lName; if (i < lLength - 1) { +/* 1500 */ Locale locale2 = new Locale(lCodes[(i + 1)][0], lCodes[(i + 1)][1]); +/* 1501 */ String lName2 = locale2.getDisplayName(); +/* 1502 */ lName2 = lName2.substring(0, lName2.indexOf('(') - 1); +/* 1503 */ String lName; if (lName2.equals(lName1)) { +/* 1504 */ lName = newLocale[i].getDisplayName(); +/* */ } else +/* 1506 */ lName = lName1; } else { String lName; +/* 1507 */ if (i == lLength - 1) { +/* 1508 */ lName0 = lName0.substring(0, lName0.indexOf('(') - 1); +/* 1509 */ String lName; if (lName1.equals(lName0)) { +/* 1510 */ lName = newLocale[i].getDisplayName(); +/* */ } else +/* 1512 */ lName = lName1; } else { String lName; +/* 1513 */ if (slLangs[(i - 1)].equals(lName1)) { +/* 1514 */ lName = newLocale[i].getDisplayName(); +/* */ } else +/* 1516 */ lName = lName1; +/* */ } +/* */ } +/* 1519 */ String code = lCodes[i][0] + "_" + lCodes[i][1]; +/* */ +/* 1521 */ if (code.equals(Console.message(code))) { +/* 1522 */ slLangs[i] = lName; +/* */ } else { +/* 1524 */ slLangs[i] = Console.message(code); +/* */ } +/* */ } +/* 1527 */ sortStrings(sortCollator, slLangs, newLocale, lCodes); +/* */ +/* 1529 */ for (int i = 0; i < lLength; i++) { +/* 1530 */ lLangs[i] = new MenuItem(slLangs[i]); +/* 1531 */ lLangs[i].setFont(mfont); +/* 1532 */ switchLang.add(lLangs[i]); +/* 1533 */ this.langItems.addElement(lLangs[i]); +/* */ } +/* */ +/* 1536 */ this.currentLang = new MenuItem(Console.message("Current-Language")); +/* 1537 */ languageMenu.add(this.currentLang); +/* 1538 */ this.currentLang.setFont(mfont); +/* */ } +/* */ +/* 1541 */ if (useShaper) { +/* 1542 */ this.condenseItem = addMenuItem(Console.message("Condense-Files"), +/* 1543 */ "Options"); +/* 1544 */ this.expandItem = addMenuItem(Console.message("Expand-Files"), "Options"); +/* 1545 */ this.musicManItem = addMenuItem(Console.message("Music-Manager"), +/* 1546 */ "Options"); +/* 1547 */ this.i18nTest = addMenuItem(Console.message("I18N-Test"), "Options"); +/* */ } +/* */ +/* 1550 */ this.cdPlayerItem = addMenuItem(Console.message("MusicM"), "Options"); +/* 1551 */ this.volumeItem = addMenuItem(Console.message("Volume-control"), "Options"); +/* */ +/* 1553 */ if (RenderWare.get3DHardwareAvailable()) { +/* 1554 */ if (RenderWare.get3DHardwareInUse()) { +/* 1555 */ this.graphicsItem = addMenuItem(disable3D, "Options"); +/* */ } else { +/* 1557 */ this.graphicsItem = addMenuItem(enable3D, "Options"); +/* */ } +/* */ } +/* 1560 */ if (IniFile.gamma().getIniInt("SHOWNAMETAGS", 1) == 1) { +/* 1561 */ this.nametagItem = addMenuItem(hideTags, "Options"); +/* */ } else { +/* 1563 */ this.nametagItem = addMenuItem(showTags, "Options"); +/* */ } +/* 1565 */ if (IniFile.gamma().getIniInt("classicChatBox", 1) == 1) { +/* 1566 */ this.chatBoxItem = addMenuItem(disableClassicChat, "Options"); +/* */ } else { +/* 1568 */ this.chatBoxItem = addMenuItem(enableClassicChat, "Options"); +/* 1569 */ this.chatItem = addMenuItem(configureChat, "Options"); +/* */ } +/* */ +/* */ +/* 1573 */ if (Gamma.loadProgress != null) { +/* 1574 */ Gamma.loadProgress.setMessage("Preloading avatars..."); +/* 1575 */ Gamma.loadProgress.advance(); +/* */ } +/* */ +/* 1578 */ menuDone(); +/* 1579 */ getFrame().activate(); +/* 1580 */ LogFile.mailLogIfPresent(getSmtpServer()); +/* 1581 */ this.render.requestFocus(); +/* 1582 */ setMenusWRTVIP(); +/* */ +/* */ +/* */ +/* */ +/* */ +/* 1588 */ this.bootSomeone = null; +/* */ +/* 1590 */ if (broadcastEnabled()) { +/* 1591 */ addBroadcastMenu(); +/* */ } +/* 1593 */ this.universeMode = false; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public void setVIP(boolean f) +/* */ { +/* 1603 */ super.setVIP(f); +/* 1604 */ setMenusWRTVIP(); +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* 1615 */ setNameStr(); +/* */ } +/* */ +/* */ public void checkCourtesyVIP() +/* */ { +/* 1620 */ super.checkCourtesyVIP(); +/* 1621 */ setMenusWRTVIP(); +/* 1622 */ setNameStr(); +/* */ } +/* */ +/* */ public void setNameStr() { +/* 1626 */ String nameStr = this.galaxy.getUsernameU(); +/* */ +/* 1628 */ boolean isOnline = this.galaxy.getOnline(); +/* */ +/* 1630 */ if (!isOnline) { +/* 1631 */ this.yourName.setText(Console.message("Off-line")); +/* 1632 */ return; +/* */ } +/* */ +/* 1635 */ if (nameStr.length() > 0) { +/* 1636 */ if (nameStr.regionMatches(true, 0, "VIP ", 0, 4)) { +/* 1637 */ nameStr = nameStr.substring(4); +/* */ } +/* 1639 */ if (vip > 0) { +/* 1640 */ if (vip > 1) { +/* 1641 */ nameStr = Console.message("VIP") + " " + nameStr; +/* */ } else { +/* 1643 */ nameStr = Console.message("vip") + " " + nameStr; +/* */ } +/* */ } +/* 1646 */ IniFile.gamma().setIniString("LASTCHATNAME", parseExtended(nameStr)); +/* 1647 */ this.yourName.setText(Console.parseUnicode(nameStr)); +/* */ } +/* */ } +/* */ +/* */ public void enableBroadcast(boolean enabled) +/* */ { +/* 1653 */ super.enableBroadcast(enabled); +/* 1654 */ if (enabled) { +/* 1655 */ addBroadcastMenu(); +/* */ } +/* */ } +/* */ +/* */ public void deactivate() { +/* 1660 */ super.deactivate(); +/* 1661 */ this.universeMode = false; +/* */ } +/* */ +/* 1664 */ private int chooseView = -1; +/* 1665 */ private int chooseCamSpeed = -1; +/* */ +/* 1667 */ private static String sleepStatus = Console.message("Sleeping"); +/* */ OkCancelDialog reloginDialog; +/* */ +/* */ protected void setSleepMode(String mode) { +/* 1671 */ super.setSleepMode(mode); +/* */ +/* 1673 */ if ((mode != null) && (mode.equals(Console.message("asleep")))) { +/* 1674 */ this.statusMessage = sleepStatus; +/* 1675 */ } else if (this.statusMessage == sleepStatus) { +/* 1676 */ this.statusMessage = ""; +/* */ } +/* */ } +/* */ +/* */ private void relogin() +/* */ { +/* 1682 */ if (this.serverItem.getLabel().equals(signOut)) { +/* 1683 */ this.reloginDialog = new OkCancelDialog(getFrame(), this, +/* 1684 */ Console.message("Re-login"), Console.message("Cancel"), +/* 1685 */ Console.message("OK"), Console.message("auto-sign-out"), +/* 1686 */ true); +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ @Deprecated +/* */ public boolean action(Event event, Object what) +/* */ { +/* 1696 */ if (event.target == this.aboutItem) { +/* 1697 */ new AboutDialog(Std.getProductName(), getFrame()); +/* 1698 */ } else if ((event.target == this.statisticsItem) && (this.statisticsItem != null)) { +/* 1699 */ new StatisticsWindow(getFrame()); +/* 1700 */ } else if (this.viewItems.contains(event.target)) { +/* 1701 */ changeView((CheckboxMenuItem)event.target); +/* 1702 */ } else if (this.camSpeedItems.contains(event.target)) { +/* 1703 */ changeCamSpeed((CheckboxMenuItem)event.target); +/* 1704 */ } else if (event.target == this.gettingStartedItem) { +/* 1705 */ new SendURLAction(getHelpGettingStarted()).startBrowser(); +/* 1706 */ } else if (event.target == this.shaperHelpItem) +/* */ { +/* 1708 */ String helpURL = IniFile.override().getIniString("ShaperHelp", +/* 1709 */ new StringBuilder(String.valueOf(getScriptServer())).append("shaperhelp.pl").toString()) + +/* 1710 */ "?u="; +/* 1711 */ String lastName = IniFile.gamma().getIniString("lastchatname", ""); +/* 1712 */ if (!lastName.equals("")) { +/* 1713 */ if (lastName.startsWith("VIP ")) +/* 1714 */ lastName = lastName.substring(4); +/* 1715 */ helpURL = helpURL + lastName; +/* */ } +/* */ +/* 1718 */ new SendURLAction(WebControlImp.processURL(helpURL)).startBrowser(); +/* 1719 */ } else if (event.target == this.helpItem) { +/* 1720 */ String serv = NetUpdate.getUpgradeServerURL(); +/* */ +/* 1722 */ String directory = IniFile.override().getIniString("HelpDirectory", +/* 1723 */ "help"); +/* 1724 */ String helpPage = IniFile.override().getIniString("HelpPage", +/* 1725 */ Std.getVersion() + Console.message(".html")); +/* */ +/* */ +/* 1728 */ if (wasHttpNoSuchFile(serv + directory + "/" + helpPage)) { +/* 1729 */ helpPage = IniFile.override().getIniString("HelpPage", +/* 1730 */ Std.getVersion() + ".html"); +/* */ } +/* 1732 */ new SendURLAction(serv + directory + "/" + helpPage).startBrowser(); +/* 1733 */ } else if (event.target == this.infoItem) { +/* 1734 */ String infoOverride = IniFile.override().getIniString( +/* 1735 */ "infoOverride", ""); +/* 1736 */ if (infoOverride.equals("")) { +/* 1737 */ NetUpdate.showInfo(); +/* */ } else { +/* 1739 */ new SendURLAction(infoOverride).startBrowser(); +/* */ } +/* 1741 */ } else if (event.target == this.i18nTest) +/* */ { +/* 1743 */ Locale df = Locale.getDefault(); +/* 1744 */ Console.println("Default = " + df.getDisplayName()); +/* */ +/* 1746 */ DateFormat fulldate = DateFormat.getDateTimeInstance( +/* 1747 */ 1, 1); +/* 1748 */ Date today = new Date(); +/* 1749 */ Console.println("Today = " + fulldate.format(today)); +/* */ +/* 1751 */ Locale[] list = DateFormat.getAvailableLocales(); +/* 1752 */ Console.println("Avaliable Locales are:"); +/* 1753 */ for (int i = 0; i < list.length; i++) { +/* 1754 */ Locale.setDefault(list[i]); +/* 1755 */ Console.println(list[i].getDisplayName() + " " + list[i]); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* 1761 */ Locale fr = new Locale("fr", "FR"); +/* 1762 */ Locale de = new Locale("de", "DE"); +/* 1763 */ Locale ja = new Locale("ja", "JP"); +/* 1764 */ Locale zh = new Locale("zh", "CN"); +/* 1765 */ Locale th = new Locale("th", "TH"); +/* 1766 */ Locale ru = new Locale("ru", "RU"); +/* 1767 */ Locale iw = new Locale("iw", "IL"); +/* */ +/* 1769 */ Console.println("file.encoding = " + +/* 1770 */ System.getProperty("file.encoding")); +/* */ +/* */ +/* */ +/* 1774 */ Console.println(message("test-language", fr)); +/* 1775 */ Console.println(message("test-language", de)); +/* 1776 */ Console.println(message("test-language", ja)); +/* 1777 */ Console.println(message("test-language", zh)); +/* 1778 */ Console.println(message("test-language", th)); +/* 1779 */ Console.println(message("test-language", ru)); +/* 1780 */ Console.println(message("test-language", iw)); +/* */ +/* */ +/* 1783 */ Console.println(message("test-language", df)); +/* */ } +/* 1785 */ else if (event.target == this.checkAccountItem) { +/* 1786 */ String accountOverride = IniFile.override().getIniString( +/* 1787 */ "accountOverride", ""); +/* 1788 */ if (accountOverride.equals("")) { +/* 1789 */ String accountScript = IniFile.override().getIniString( +/* 1790 */ "accountInfoPage", "account" + Console.message(".pl")); +/* 1791 */ if (wasHttpNoSuchFile(getScriptServer() + accountScript)) { +/* 1792 */ accountScript = IniFile.override().getIniString( +/* 1793 */ "accountInfoPage", "account.pl"); +/* */ } +/* 1795 */ new SendURLAction(getScriptServer() + accountScript, true).startBrowser(); +/* */ } else { +/* 1797 */ new SendURLAction(accountOverride).startBrowser(); +/* */ } +/* 1799 */ relogin(); +/* 1800 */ } else if (event.target == this.upgradeItem) { +/* 1801 */ NetUpdate.doUpdate(true); +/* */ } +/* 1803 */ else if ((event.target == this.channelItem) && (this.channelItem != null)) { +/* 1804 */ Galaxy g = getGalaxy(); +/* 1805 */ String channel = ""; +/* 1806 */ assert (g != null); +/* 1807 */ if (g != null) +/* 1808 */ channel = g.getChannel(); +/* 1809 */ new ChannelDialog(getFrame(), this, +/* 1810 */ Console.message("Dimension-Sel"), channel); +/* 1811 */ } else if (event.target == this.becomeVIPItem) { +/* 1812 */ String completeOverride = IniFile.override().getIniString( +/* 1813 */ "vipOverride", ""); +/* 1814 */ if (completeOverride.equals("")) { +/* 1815 */ String vipScript = IniFile.override().getIniString("vipPage", +/* 1816 */ "vip" + Console.message(".pl")); +/* 1817 */ if (wasHttpNoSuchFile(getScriptServer() + vipScript)) { +/* 1818 */ vipScript = IniFile.override().getIniString("vipPage", +/* 1819 */ "vip.pl"); +/* */ } +/* 1821 */ new SendURLAction(getScriptServer() + vipScript, true).startBrowser(); +/* */ } else { +/* 1823 */ new SendURLAction(completeOverride, false).startBrowser(); +/* */ } +/* 1825 */ relogin(); +/* 1826 */ } else if (event.target == this.numVisItem) { +/* 1827 */ new SetNumVisibleAvs(); +/* 1828 */ } else if (event.target == this.inventoryItem) { +/* 1829 */ EquipAction eAction = new EquipAction(); +/* 1830 */ eAction.trigger(null, null); +/* 1831 */ } else if (event.target == this.checkInventoryItem) { +/* 1832 */ new SendURLAction(getScriptServer() + "inventory.pl", true).startBrowser(); +/* */ } +/* 1834 */ else if (event.target == this.bankItem) { +/* 1835 */ new SendURLAction(getScriptServer() + "bank.pl", true).startBrowser(); +/* */ } +/* 1837 */ else if (event.target == this.ubuItem) { +/* 1838 */ String ubuDest = IniFile.gamma().getIniString("UbuDestURL", getScriptServer() + "ubu.pl"); +/* 1839 */ new SendURLAction(ubuDest, true).startBrowser(); +/* 1840 */ } else if (event.target == this.proxyServerItem) { +/* 1841 */ System.out.println("Triggering the Proxy Server dialog."); +/* 1842 */ ProxyServerDialog psd = new ProxyServerDialog(); +/* 1843 */ psd.setVisible(true); +/* 1844 */ } else if (event.target == this.toggleVoiceChatItem) { +/* 1845 */ VoiceChat.setVoiceChatEnabled(!VoiceChat.voiceChatEnabled); +/* 1846 */ setMenusWRTVIP(); +/* 1847 */ } else if (event.target == this.serverItem) { +/* 1848 */ handleServerItem(); +/* 1849 */ } else if (event.target == this.condenseItem) { +/* 1850 */ new ArchiveMaker(true); +/* 1851 */ } else if (event.target == this.expandItem) { +/* 1852 */ new ArchiveMaker(false); +/* 1853 */ } else if (event.target == this.musicManItem) { +/* 1854 */ MusicManager.showDialog(); +/* 1855 */ } else if (event.target == this.cdPlayerItem) { +/* 1856 */ if (this.cdcontrol == null) { +/* 1857 */ this.playedCD = true; +/* 1858 */ this.cdcontrol = new CDControl(getFrame(), this); +/* */ } +/* 1860 */ } else if (event.target == this.volumeItem) { +/* 1861 */ if (!CDPlayerAction.launchVolumeControlApp()) +/* 1862 */ new OkCancelDialog(getFrame(), null, +/* 1863 */ Console.message("No-Volume"), null, +/* 1864 */ Console.message("OK"), +/* 1865 */ Console.message("Cannot-locate"), true); +/* 1866 */ } else if (event.target == this.graphicsItem) { +/* 1867 */ handleGraphicsItem(); +/* 1868 */ } else if (event.target == this.nametagItem) { +/* 1869 */ handleNametagsItem(); +/* 1870 */ } else if (event.target == this.chatBoxItem) { +/* 1871 */ handleChatBoxItem(); +/* 1872 */ } else if ((event.target == this.chatItem) && (this.chatItem != null)) { +/* 1873 */ new ChatDialog(getFrame(), this, +/* 1874 */ Console.message("Chat-Configuration"), IniFile.gamma() +/* 1875 */ .getIniInt("ChatFontSize", 12), chatLines, +/* 1876 */ IniFile.gamma().getIniInt("ChatLengthLimit", 20000)); +/* 1877 */ } else if (event.target == this.bootSomeone) { +/* 1878 */ new BootDialog(getFrame(), this, Console.message("Boot-user")); +/* 1879 */ } else if (event.target == this.broadcastToRoom) { +/* 1880 */ startWhispering("room"); +/* 1881 */ } else if (event.target == this.broadcastToAll) { +/* 1882 */ startWhispering("world"); +/* 1883 */ } else if (event.target == this.currentLang) { +/* 1884 */ String code = Locale.getDefault().toString(); +/* 1885 */ if (code == Console.message(code)) { +/* 1886 */ Console.println( +/* 1887 */ Console.message("Current-Language") + " = " + Locale.getDefault().getDisplayName()); +/* */ } else +/* 1889 */ Console.println( +/* 1890 */ Console.message("Current-Language") + " = " + Console.message(code)); +/* 1891 */ } else if (event.target == this.recorderPlayItem) { +/* 1892 */ println(Console.message("BlackBoxPlay")); +/* 1893 */ BlackBox.getInstance().play(); +/* 1894 */ } else if (event.target == this.recorderRecItem) { +/* 1895 */ println(Console.message("BlackBoxRec")); +/* 1896 */ BlackBox.getInstance().record(); +/* 1897 */ } else if (event.target == this.recorderStopItem) { +/* 1898 */ println(Console.message("BlackBoxStop")); +/* 1899 */ BlackBox.getInstance().stop(); +/* 1900 */ } else if ((this.fontItems != null) && (this.fontItems.contains(event.target))) +/* */ { +/* 1902 */ String languageURL = IniFile.gamma().getIniString("upgradeServer", +/* 1903 */ "") + +/* 1904 */ "/I18N/font_"; +/* */ +/* 1906 */ for (int i = 0; i < this.fLength; i++) { +/* 1907 */ if (event.target == this.fontItems.elementAt(i)) { +/* 1908 */ if (this.fsList.elementAt(i) != null) { +/* 1909 */ languageURL = +/* 1910 */ languageURL + (String)this.flList.elementAt(i) + "_" + (String)this.fsList.elementAt(i) + ".EXE"; +/* */ } else { +/* 1912 */ languageURL = +/* 1913 */ languageURL + (String)this.flList.elementAt(i) + ".EXE"; +/* */ } +/* */ +/* 1916 */ int sz = this.fSizes[i]; +/* 1917 */ String fName = languageURL.substring( +/* 1918 */ languageURL.lastIndexOf('/') + 1, +/* 1919 */ languageURL.length()); +/* 1920 */ LanguageManager.handle(languageURL, sz, fName); +/* 1921 */ break; +/* */ } +/* */ } +/* 1924 */ } else if ((this.downItems != null) && (this.downItems.contains(event.target))) +/* */ { +/* 1926 */ String languageURL = IniFile.gamma().getIniString("upgradeServer", +/* 1927 */ "") + +/* 1928 */ "/I18N/language_"; +/* */ +/* 1930 */ for (int i = 0; i < this.dLength; i++) { +/* 1931 */ if (event.target == this.downItems.elementAt(i)) { +/* 1932 */ if (this.sList.elementAt(i) != null) { +/* 1933 */ languageURL = +/* 1934 */ languageURL + (String)this.lList.elementAt(i) + "_" + (String)this.sList.elementAt(i) + ".zip"; +/* */ +/* */ +/* 1937 */ IniFile.gamma().setIniString( +/* 1938 */ "DEFAULTLANGUAGE", +/* 1939 */ (String)this.lList.elementAt(i) + "_" + +/* 1940 */ (String)this.sList.elementAt(i)); +/* */ } else { +/* 1942 */ languageURL = languageURL + (String)this.lList.elementAt(i) + ".zip"; +/* */ +/* */ +/* 1945 */ IniFile.gamma().setIniString("DEFAULTLANGUAGE", +/* 1946 */ (String)this.lList.elementAt(i)); +/* */ } +/* */ +/* 1949 */ int sz = this.lSizes[i]; +/* 1950 */ String fName = languageURL.substring( +/* 1951 */ languageURL.lastIndexOf('/') + 1, +/* 1952 */ languageURL.length()); +/* 1953 */ LanguageManager.handle(languageURL, sz, fName); +/* */ +/* 1955 */ break; +/* */ } +/* */ } +/* 1958 */ } else if ((this.langItems != null) && (this.langItems.contains(event.target))) +/* */ { +/* 1960 */ for (int i = 0; i < lLength; i++) { +/* 1961 */ if (event.target == this.langItems.elementAt(i)) { +/* 1962 */ Locale.setDefault(newLocale[i]); +/* 1963 */ String code = newLocale[i].toString(); +/* 1964 */ if (code == Console.message(code)) { +/* 1965 */ Console.println( +/* 1966 */ message("Setting-to") + " " + newLocale[i].getDisplayName()); +/* */ } else { +/* 1968 */ Console.println( +/* 1969 */ message("Setting-to") + " " + Console.message(code)); +/* */ } +/* */ +/* 1972 */ IniFile.gamma().setIniString("DEFAULTLANGUAGE", +/* 1973 */ lCodes[i][0] + "_" + lCodes[i][1]); +/* */ +/* 1975 */ new OkCancelDialog(getFrame(), null, +/* 1976 */ Console.message("Alert"), null, +/* 1977 */ Console.message("OK"), +/* 1978 */ Console.message("Change-exit"), true); +/* */ +/* 1980 */ break; +/* */ } +/* */ } +/* 1983 */ } else if ((this.avatarMenu == null) || (!this.avatarMenu.action(event, what))) +/* */ { +/* */ +/* 1986 */ return super.action(event, what); +/* */ } +/* 1988 */ return true; +/* */ } +/* */ +/* */ +/* */ +/* 1993 */ private Object nextAvatarMutex = new Object(); +/* */ private URL nextAvatar; +/* */ private CheckboxMenuItem nextAvatarItem; +/* */ private CheckboxMenuItem curAvatarItem; +/* */ +/* */ public void setCurrentAvatarItem(CheckboxMenuItem item) +/* */ { +/* 2000 */ if (this.curAvatarItem != null) +/* 2001 */ this.curAvatarItem.setState(false); +/* 2002 */ this.curAvatarItem = item; +/* 2003 */ if (this.curAvatarItem != null) { +/* 2004 */ this.curAvatarItem.setState(true); +/* */ } +/* */ } +/* */ +/* */ public CheckboxMenuItem getCurrentAvatarItem() { +/* 2009 */ return this.curAvatarItem; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ public void deletedSavedAvatar(CheckboxMenuItem item) +/* */ { +/* 2017 */ if (this.curAvatarItem == item) { +/* 2018 */ findAvatarMenuItem(getDefaultAvatarURL()); +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ public void setNextAvatar(URL url, CheckboxMenuItem item) +/* */ { +/* 2026 */ synchronized (this.nextAvatarMutex) { +/* 2027 */ this.nextAvatar = url; +/* 2028 */ this.nextAvatarItem = item; +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ private void findAvatarMenuItem(URL url) +/* */ { +/* 2039 */ synchronized (this.nextAvatarMutex) { +/* 2040 */ if (this.nextAvatarItem == null) { CheckboxMenuItem item; +/* */ CheckboxMenuItem item; +/* 2042 */ if (((this.savedAvs != null) && ((item = this.savedAvs.findMenuItem(url)) != null)) || ( +/* 2043 */ (this.avatarMenu != null) && +/* 2044 */ ((item = this.avatarMenu.findMenuItem(url)) != null))) { +/* 2045 */ setCurrentAvatarItem(item); +/* */ } else { +/* 2047 */ setCurrentAvatarItem(null); +/* */ } +/* */ } +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ private URL getHelpGettingStarted() +/* */ { +/* 2057 */ IniFile ini = new IniFile("InstalledWorlds"); +/* 2058 */ String helpName = Console.message("Getting-started"); +/* */ +/* */ +/* 2061 */ String w = ini.getIniString("InstalledWorld0", ""); +/* 2062 */ if (!w.equals("")) { +/* 2063 */ URL name = URL.make("home:" + w + "/" + helpName); +/* 2064 */ File f = new File(name.unalias()); +/* 2065 */ if (f.exists()) +/* 2066 */ return name; +/* */ } +/* 2068 */ return URL.make("home:" + helpName); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ private void changeView(CheckboxMenuItem item) +/* */ { +/* 2078 */ this.chooseView = this.viewItems.indexOf(item); +/* */ +/* */ +/* */ +/* 2082 */ if (item != this.currentViewItem) { +/* 2083 */ this.currentViewItem.setState(false); +/* 2084 */ this.currentViewItem = item; +/* 2085 */ this.currentViewItem.setState(true); +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ private void changeCamSpeed(CheckboxMenuItem item) +/* */ { +/* 2103 */ this.chooseCamSpeed = this.camSpeedItems.indexOf(item); +/* */ +/* 2105 */ if (item != this.currentCamSpeedItem) { +/* 2106 */ this.currentCamSpeedItem.setState(false); +/* 2107 */ this.currentCamSpeedItem = item; +/* 2108 */ this.currentCamSpeedItem.setState(true); +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public void resetCamera() +/* */ { +/* 2118 */ if ((this.viewItems == null) || (this.camSpeedItems == null)) +/* 2119 */ return; +/* 2120 */ this.chooseView = this.viewItems.indexOf(this.currentViewItem); +/* 2121 */ this.chooseCamSpeed = this.camSpeedItems.indexOf(this.currentCamSpeedItem); +/* */ } +/* */ +/* */ +/* */ +/* */ private void handleServerItem() +/* */ { +/* 2128 */ if (!this.serverItem.getLabel().equals(signIn)) { +/* 2129 */ Galaxy.forceOffline(false); +/* */ +/* */ } +/* */ else +/* */ { +/* */ +/* 2135 */ getGalaxy().localForceOnline(); +/* */ +/* */ +/* 2138 */ getGalaxy().waitForConnection(this); +/* */ } +/* */ } +/* */ +/* */ public UniversePanel getUniverse() { +/* 2143 */ return this.universeMode ? this.universe : null; +/* */ } +/* */ +/* */ public synchronized void setUniverseMode(boolean f) +/* */ { +/* 2148 */ if (f == this.universeMode) { +/* 2149 */ return; +/* */ } +/* 2151 */ this.universeMode = f; +/* 2152 */ if (this.universeMode) { +/* 2153 */ if (this.universe == null) { +/* 2154 */ this.universe = new UniversePanel(this); +/* 2155 */ this.renderAndUniverse.add("universe", this.universe); +/* */ } +/* 2157 */ this.renderCard.show(this.renderAndUniverse, "universe"); +/* */ +/* 2159 */ this.universe.startWatch(); +/* 2160 */ this.render.requestFocus(); +/* */ } else { +/* 2162 */ this.renderCard.show(this.renderAndUniverse, "render"); +/* 2163 */ if (physMem < 64000000) { +/* 2164 */ this.renderAndUniverse.remove(this.universe); +/* 2165 */ this.universe.stopWatch(); +/* 2166 */ this.universe.flushImage(); +/* 2167 */ this.universe = null; +/* */ } +/* 2169 */ this.renderAndUniverse.repaint(); +/* */ } +/* */ } +/* */ +/* */ public void toggleUniverseMode() { +/* 2174 */ setUniverseMode(!this.universeMode); +/* */ } +/* */ +/* */ public boolean isUniverseMode() { +/* 2178 */ return this.universeMode; +/* */ } +/* */ +/* */ public Object imageButtonsCallback(Component who, int which) +/* */ { +/* 2183 */ if (who != this.driveButton) +/* */ { +/* 2185 */ if (who == this.quitButton) { +/* 2186 */ maybeQuit(); +/* 2187 */ } else if (who == this.adCubeButton) { +/* 2188 */ String adURL = IniFile.gamma().getIniString("AdCubeURL", "http://www.worlds.com/"); +/* 2189 */ new SendURLAction(adURL, true).startBrowser(); +/* */ } +/* 2191 */ else if (who == this.exploreButton) { +/* 2192 */ toggleUniverseMode(); +/* 2193 */ } else if (who == this.menuButtons) { +/* 2194 */ switch (which) { +/* */ case 0: +/* 2196 */ return getMenu("Help"); +/* */ case 1: +/* 2198 */ return getMenu("Options"); +/* */ +/* */ +/* */ case 2: +/* 2202 */ String prodName = IniFile.override().getIniString( +/* 2203 */ "ProductName", ""); +/* 2204 */ if ((!prodName.equalsIgnoreCase("RedLightWorld")) && +/* 2205 */ (!prodName.equalsIgnoreCase("RedLightCenter"))) +/* 2206 */ EMailPart.showMessage(this); +/* 2207 */ break; +/* */ +/* */ case 3: +/* 2210 */ return (PopupMenu)this.marks.getMenu(); +/* */ case 4: +/* 2212 */ return (PopupMenu)this.marks.getLetsMenu(); +/* */ case 5: +/* 2214 */ this.actions.present(); +/* 2215 */ break; +/* */ case 6: +/* 2217 */ return getMenu("VIP"); +/* */ } +/* */ } } +/* 2220 */ return null; +/* */ } +/* */ +/* */ public RenderCanvas getRender() { +/* 2224 */ return this.render; +/* */ } +/* */ +/* */ public FriendsListPart getFriends() { +/* 2228 */ return this.friends; +/* */ } +/* */ +/* */ public MuteListPart getMutes() { +/* 2232 */ return this.mutes; +/* */ } +/* */ +/* */ +/* 2236 */ private static String lastWorldName = ""; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public void generateFrameEvents(FrameEvent f) +/* */ { +/* 2245 */ if (Window.getWindowState(Window.getFrameHandle()) == 1) { +/* 2246 */ goToSleep(); +/* */ } +/* 2248 */ if (doDrive) { +/* 2249 */ doDrive = false; +/* */ +/* 2251 */ this.render.drive(); +/* 2252 */ wasDelta = true; +/* */ } +/* */ +/* 2255 */ super.generateFrameEvents(f); +/* */ +/* 2257 */ Pilot pilot = Pilot.getActive(); +/* */ +/* */ +/* 2260 */ GammaFrame frame = getFrame(); +/* */ +/* 2262 */ String worldName = ""; +/* 2263 */ if (pilot != null) { +/* 2264 */ World world = pilot.getWorld(); +/* 2265 */ if (world != null) { +/* 2266 */ String name = world.getName(); +/* 2267 */ if (name != null) +/* 2268 */ worldName = name; +/* */ } +/* */ } +/* 2271 */ if (!lastWorldName.equals(worldName)) { +/* 2272 */ lastWorldName = worldName; +/* 2273 */ String newTitle = GammaFrame.getDefaultTitle(); +/* 2274 */ if (worldName.length() != 0) { +/* 2275 */ newTitle = newTitle + " - " + worldName; +/* */ +/* */ +/* */ +/* 2279 */ if (!this.playedCD) { +/* 2280 */ CDAudio.startupPlay(); +/* 2281 */ this.playedCD = true; +/* */ } +/* */ } +/* 2284 */ frame.setTitle(newTitle); +/* */ } +/* */ +/* 2287 */ if (pilot == null) { +/* 2288 */ return; +/* */ } +/* 2290 */ if ((this.chooseView != -1) || (this.chooseCamSpeed != -1)) { +/* 2291 */ int oldCameraMode = pilot.getOutsideCameraMode(); +/* 2292 */ int oldCameraSpeed = pilot.getOutsideCameraSpeed(); +/* */ +/* 2294 */ int cameraMode = oldCameraMode; +/* 2295 */ int cameraSpeed = oldCameraSpeed; +/* */ +/* 2297 */ if (this.chooseView != -1) { +/* 2298 */ cameraMode = ((CameraView)this.viewNames.elementAt(this.chooseView)).viewID; +/* */ } +/* 2300 */ if (this.chooseCamSpeed != -1) { +/* 2301 */ cameraSpeed = +/* 2302 */ ((CameraSpeed)this.speedNames.elementAt(this.chooseCamSpeed)).speedID; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* 2308 */ pilot.setOutsideCameraMode(cameraMode, cameraSpeed); +/* */ +/* 2310 */ if (cameraMode != 99) { +/* 2311 */ IniFile.gamma().setIniInt("CAM_MODE", cameraMode); +/* 2312 */ IniFile.gamma().setIniInt("CAM_SPEED", cameraSpeed); +/* */ } +/* */ +/* 2315 */ this.chooseView = -1; +/* 2316 */ this.chooseCamSpeed = -1; +/* */ } +/* */ +/* 2319 */ if (this.wasTeleporting != this.marks.isTeleporting()) { +/* 2320 */ this.wasTeleporting = this.marks.isTeleporting(); +/* 2321 */ if (this.wasTeleporting) { +/* 2322 */ this.statusMessage = loadingString; +/* 2323 */ } else if (this.statusMessage == loadingString) { +/* 2324 */ this.statusMessage = ""; +/* */ } +/* */ } +/* */ +/* 2328 */ checkVMWarning(); +/* */ +/* 2330 */ if ((wasDelta) && +/* 2331 */ (!this.render.getDeltaMode())) +/* */ { +/* 2333 */ this.statusMessage = arrowKeyMsg; +/* 2334 */ wasDelta = false; +/* 2335 */ this.driveButton.drawCursed(); +/* */ } +/* */ +/* */ +/* */ +/* 2340 */ synchronized (this.status) { +/* 2341 */ if ((this.statusMessage != this.lastStatus) && (this.overrideMessage == null)) { +/* 2342 */ this.lastStatus = this.statusMessage; +/* 2343 */ this.status.setText(this.statusMessage); +/* */ } +/* */ } +/* */ +/* */ +/* 2348 */ synchronized (this.nextAvatarMutex) { +/* 2349 */ if (this.nextAvatar != null) { +/* 2350 */ setAvatar(this.nextAvatar); +/* 2351 */ this.nextAvatar = null; +/* */ +/* 2353 */ if (this.avatarMenu != null) { +/* 2354 */ this.avatarMenu.notifyOfChange(); +/* */ } +/* 2356 */ if (this.nextAvatarItem != null) { +/* 2357 */ setCurrentAvatarItem(this.nextAvatarItem); +/* 2358 */ this.nextAvatarItem = null; +/* */ } +/* */ } +/* */ } +/* */ } +/* */ +/* 2364 */ private static String lowVMMsg = Console.message("Low-virt"); +/* */ private boolean showedMidWarn; +/* 2366 */ private static boolean startupMemCheck = true; +/* */ public static int physMem; +/* */ protected URL avatarURL; +/* */ +/* 2370 */ private void checkVMWarning() { int now = Std.getFastTime(); +/* 2371 */ if (now > this.lastVMCheck + 10000) { +/* 2372 */ StatMemNode m = StatMemNode.getNode(); +/* 2373 */ m.updateMemoryStatus(); +/* */ +/* */ +/* 2376 */ if (m._availPageMem < 0) +/* 2377 */ m._availPageMem = 2000000000; +/* 2378 */ if (m._totPhysMem < 0) { +/* 2379 */ m._totPhysMem = 2000000000; +/* */ } +/* 2381 */ physMem = m._totPhysMem; +/* 2382 */ if (m._availPageMem < 4194304) { +/* 2383 */ if ((this.lastVMBigWarning == 0) || (this.showedMidWarn) || +/* 2384 */ (now > this.lastVMBigWarning + 300000)) { +/* 2385 */ Console.println(Console.message("Low-virt-mem")); +/* 2386 */ this.lastVMBigWarning = now; +/* 2387 */ this.showedMidWarn = false; +/* */ } +/* 2389 */ this.statusMessage = lowVMMsg; +/* 2390 */ } else if ((m._availPageMem > 5242880) && +/* 2391 */ (this.lastVMBigWarning != 0)) { +/* 2392 */ if (m._availPageMem > 10485760) { +/* 2393 */ Console.println(Console.message("plenty-virt")); +/* 2394 */ this.lastVMBigWarning = 0; +/* 2395 */ } else if (!this.showedMidWarn) { +/* 2396 */ Console.println(Console.message("plenty-virt-mem")); +/* 2397 */ this.showedMidWarn = true; +/* */ } +/* 2399 */ if (this.statusMessage == lowVMMsg) { +/* 2400 */ this.statusMessage = ""; +/* */ } +/* */ } +/* 2403 */ Object[] arguments = { new String(Std.getProductName()), +/* 2404 */ new Integer(24) }; +/* */ +/* 2406 */ if (startupMemCheck) { +/* 2407 */ if (m._totPhysMem < 24000000) { +/* 2408 */ String result = MessageFormat.format( +/* 2409 */ Console.message("Mem-detected"), arguments); +/* */ +/* 2411 */ new OkCancelDialog(getFrame(), null, +/* 2412 */ Console.message("Too-Little-RAM"), null, +/* 2413 */ Console.message("OK"), result, true); +/* */ } +/* */ +/* 2416 */ startupMemCheck = false; +/* 2417 */ System.out.println("System has " + m._totPhysMem + +/* 2418 */ " bytes of physical RAM"); +/* */ } +/* */ +/* 2421 */ this.lastVMCheck = now; +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public URL getAvatarName() +/* */ { +/* 2436 */ return this.avatarURL; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public void setServerURL(URL serverURL) +/* */ { +/* 2459 */ super.setServerURL(serverURL); +/* */ } +/* */ +/* */ public void dialogDone(Object who, boolean confirmed) +/* */ { +/* 2464 */ if ((who instanceof QuitDialog)) { +/* 2465 */ if (confirmed) +/* 2466 */ Console.quit(); +/* 2467 */ } else if ((who instanceof BootDialog)) { +/* 2468 */ if (confirmed) { +/* 2469 */ BootDialog bd = (BootDialog)who; +/* 2470 */ String bname = bd.getBoot(); +/* 2471 */ if (!bname.equals("")) +/* 2472 */ Pilot.sendText("world", "!boot " + bname); +/* */ } +/* 2474 */ } else if ((who instanceof ChannelDialog)) { +/* 2475 */ if (confirmed) { +/* 2476 */ ChannelDialog cd = (ChannelDialog)who; +/* 2477 */ String newChannel = cd.getChannel(); +/* */ +/* 2479 */ Pilot pilot = Pilot.getActive(); +/* 2480 */ String oldPos = pilot != null ? pilot.getURL() : null; +/* 2481 */ if (oldPos != null) +/* */ { +/* */ +/* 2484 */ int channelIndex = oldPos.indexOf("<"); +/* 2485 */ int channelEndIndex = oldPos.indexOf(">"); +/* 2486 */ if ((channelIndex >= 0) && (channelEndIndex > channelIndex)) +/* 2487 */ TeleportAction.teleport( +/* */ +/* */ +/* 2490 */ oldPos.substring(0, channelIndex + 1) + newChannel + oldPos.substring(channelEndIndex), null); +/* */ } else { +/* 2492 */ Console.println(Console.message("cant-determine")); +/* */ } +/* */ } +/* 2495 */ } else if ((who instanceof ChatDialog)) { +/* 2496 */ if (confirmed) { +/* 2497 */ ChatDialog cd = (ChatDialog)who; +/* 2498 */ int newFontsize = cd.getFontsize(); +/* 2499 */ int newLines = cd.getLines(); +/* 2500 */ int newLength = cd.getLength(); +/* 2501 */ if (newLines < 6) { +/* 2502 */ newLines = 6; +/* */ } +/* */ +/* 2505 */ int oldFontSize = IniFile.gamma().getIniInt("ChatFontSize", 12); +/* 2506 */ int oldLength = IniFile.gamma().getIniInt("ChatLengthLimit", +/* 2507 */ 20000); +/* 2508 */ if ((newFontsize != oldFontSize) || (newLines != chatLines) || +/* 2509 */ (newLength != oldLength)) +/* */ { +/* 2511 */ if (newFontsize != oldFontSize) +/* 2512 */ IniFile.gamma().setIniInt("ChatFontSize", newFontsize); +/* 2513 */ if (newLines != chatLines) { +/* 2514 */ chatLines = newLines; +/* 2515 */ IniFile.gamma().setIniInt("ChatLines", newLines); +/* */ } +/* 2517 */ if (newLength != oldLength) { +/* 2518 */ NewSharedTextArea.chatLengthLimit = newLength; +/* 2519 */ ClassicSharedTextArea.chatLengthLimit = newLength; +/* 2520 */ IniFile.gamma().setIniInt("ChatLengthLimit", newLength); +/* */ } +/* */ +/* 2523 */ int h = chatLines * +/* 2524 */ this.chat.listen.getComponent() +/* 2525 */ .getFontMetrics(this.chat.listen.getFont()) +/* 2526 */ .getHeight(); +/* */ +/* */ +/* 2529 */ h -= 96; +/* 2530 */ if ((h > 0) && (this.adFiller != null)) { +/* 2531 */ this.adFiller.setHeight(h); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* 2541 */ if (this.chat.listen.getComponent().getClass() == NewSharedTextArea.class) { +/* */ try { +/* 2543 */ NewSharedTextArea gta = (NewSharedTextArea)this.chat.listen +/* 2544 */ .getComponent(); +/* 2545 */ gta.setFontSize(newFontsize); +/* 2546 */ gta.setRows(chatLines); +/* */ +/* 2548 */ gta.scrollToBottom(); +/* 2549 */ gta.setScrollBounds(); +/* */ } +/* */ catch (Exception localException) {} +/* */ } +/* */ +/* */ +/* 2555 */ Console.frame.invalidate(); +/* 2556 */ Console.frame.validate(); +/* 2557 */ Console.frame.repaint(); +/* */ } +/* */ +/* */ } +/* */ +/* */ } +/* 2563 */ else if ((who instanceof LoginWizard)) { +/* 2564 */ if (!$assertionsDisabled) throw new AssertionError(); +/* 2565 */ } else if ((who instanceof CDControl)) { +/* 2566 */ if (this.cdcontrol == who) +/* 2567 */ this.cdcontrol = null; +/* 2568 */ } else if ((who instanceof InternetConnectionDialog)) { +/* 2569 */ if (!$assertionsDisabled) throw new AssertionError(); +/* 2570 */ } else if (who == this.reloginDialog) { +/* 2571 */ if (confirmed) +/* 2572 */ Galaxy.forceOffline(true); +/* 2573 */ this.reloginDialog = null; +/* */ } +/* */ } +/* */ +/* */ +/* */ public void setAvatar(URL url) +/* */ { +/* 2580 */ this.avatarURL = url; +/* */ +/* */ +/* 2583 */ boolean isVIPAv = url.getInternal().toLowerCase().endsWith(".rwg"); +/* */ +/* */ +/* */ +/* */ +/* */ +/* 2589 */ boolean hasAmnesty = (url.equals(getDefaultURL())) && +/* 2590 */ (!getGalaxy().getOnline()); +/* */ +/* 2592 */ if ((!getVIP()) && (isVIPAv) && (!hasAmnesty)) { +/* 2593 */ Console.println( +/* */ +/* 2595 */ Console.message("Only-VIPs") + " '" + SelectAvatarAction.getPrettyAvatarName(url.getBase()) + "'."); +/* 2596 */ return; +/* */ } +/* */ +/* */ +/* */ +/* 2601 */ if (VehicleShape.isVehicle(url)) { +/* 2602 */ this.tempCarAvatar = url.getAbsolute(); +/* 2603 */ super.setAvatar(url); +/* 2604 */ return; +/* */ } +/* */ +/* 2607 */ this.tempCarAvatar = ""; +/* */ +/* */ +/* 2610 */ if (this.avatarMenu != null) { +/* 2611 */ this.avatarMenu.customize.setEnabled(!url.getAbsolute().endsWith("mov")); +/* */ } +/* */ +/* 2614 */ if (!url.equals(getDefaultAvatarURL())) { +/* 2615 */ if (getVIPAvatars()) { +/* 2616 */ if (!isVIPAv) { +/* 2617 */ IniFile.gamma().setIniString("VIPAVATAR", ""); +/* */ } +/* */ else +/* 2620 */ IniFile.gamma().setIniString("VIPAVATAR", url.getAbsolute()); +/* */ } +/* 2622 */ if (!isVIPAv) +/* 2623 */ IniFile.gamma().setIniString("AVATAR", url.getAbsolute()); +/* */ } +/* 2625 */ super.setAvatar(url); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ protected void loadPilot(URL url) +/* */ { +/* 2642 */ super.loadPilot(url); +/* */ +/* 2644 */ findAvatarMenuItem(url); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public void setChatname(String chatname) +/* */ { +/* 2653 */ assert (chatname != null); +/* 2654 */ if (chatname.length() != 0) { +/* 2655 */ String nameStr = (getVIP() ? (vip > 1 ? Console.message("VIP") + +/* 2656 */ " " : Console.message("vip")) + +/* 2657 */ " " : "") + +/* 2658 */ "\"" + Console.parseUnicode(chatname) + "\""; +/* 2659 */ this.yourName.setText(nameStr); +/* */ +/* 2661 */ IniFile.gamma() +/* 2662 */ .setIniString("LASTCHATNAME", parseExtended(nameStr)); +/* */ } else { +/* 2664 */ this.yourName.setText(Console.message("Off-line")); +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public void connectionCallback(Object caller, boolean connected) +/* */ { +/* 2675 */ super.connectionCallback(caller, connected); +/* 2676 */ if ((caller instanceof Galaxy)) +/* */ { +/* 2678 */ if (caller != this.galaxy) +/* 2679 */ return; +/* 2680 */ if (connected) { +/* 2681 */ WorldServer serv = getServerNew(); +/* 2682 */ this.friends.setServer(serv, getGalaxy().getIniSection()); +/* 2683 */ this.mutes.setServer(serv, getGalaxy().getIniSection()); +/* 2684 */ if (vip < 2) { +/* 2685 */ Console.println(vip == 1 ? +/* 2686 */ Console.message("Press-full-VIP") : +/* 2687 */ Console.message("Press-VIP")); +/* */ } +/* 2689 */ PosableShape.downloadPermittedNames(); +/* */ } +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public void galaxyDisconnected() +/* */ { +/* 2701 */ super.galaxyDisconnected(); +/* 2702 */ getFriends().maybeServerDisconnect(); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public boolean okToQuit() +/* */ { +/* 2711 */ int quitDlg = IniFile.override().getIniInt("QuitDialog", 1); +/* */ try +/* */ { +/* 2714 */ if (quitDlg == 1) { +/* 2715 */ new QuitDialog(getFrame(), this); +/* 2716 */ return false; +/* */ } +/* */ } +/* */ catch (Exception localException) {} +/* */ +/* */ +/* 2722 */ return true; +/* */ } +/* */ +/* */ public Rectangle getBrowserPlacement() +/* */ { +/* 2727 */ String coords = IniFile.gamma().getIniString("BROWSERWINDOW", ""); +/* 2728 */ if (coords.length() != 0) { +/* 2729 */ StringTokenizer tok = new StringTokenizer(coords, " ,"); +/* */ try { +/* 2731 */ return new Rectangle(Integer.parseInt(tok.nextToken()), +/* 2732 */ Integer.parseInt(tok.nextToken()), Integer.parseInt(tok +/* 2733 */ .nextToken()), +/* 2734 */ Integer.parseInt(tok.nextToken())); +/* */ } +/* */ catch (NumberFormatException localNumberFormatException) {}catch (NoSuchElementException localNoSuchElementException) {} +/* */ } +/* */ +/* */ +/* */ +/* 2741 */ int w = this.menuButtons.getLocationOnScreen().x - +/* 2742 */ (int)(this.menuButtons.getSize().width * 0.7D); +/* */ +/* */ +/* */ +/* */ +/* 2747 */ int frameWidth = Window.getSystemMetrics(32); +/* 2748 */ int screenWidth = Toolkit.getDefaultToolkit().getScreenSize().width; +/* 2749 */ int minWidth = Math.min(screenWidth, 640) + 2 * frameWidth; +/* */ +/* */ +/* */ +/* */ +/* 2754 */ int x = 0; +/* */ +/* 2756 */ if (w != minWidth) { +/* 2757 */ if (w > minWidth) +/* 2758 */ x += w - minWidth; +/* 2759 */ w = minWidth; +/* */ } +/* */ +/* */ +/* 2763 */ if (w > screenWidth) { +/* 2764 */ x += -frameWidth; +/* */ } +/* 2766 */ int h = this.chat.listen.getLocationOnScreen().y + +/* 2767 */ this.chat.listen.getSize().height - this.chat.line.getSize().height; +/* 2768 */ int y = 0; +/* */ +/* 2770 */ if (h > maxWebSize) { +/* 2771 */ y += h - maxWebSize; +/* 2772 */ h = maxWebSize; +/* */ } +/* */ +/* 2775 */ return new Rectangle(x, y, w, h); +/* */ } +/* */ +/* */ +/* */ public Object properties(int index, int offset, int mode, Object value) +/* */ throws NoSuchPropertyException +/* */ { +/* 2782 */ Object ret = null; +/* */ +/* 2784 */ switch (index - offset) { +/* */ case 0: +/* 2786 */ if (mode == 0) { +/* 2787 */ ret = URLPropertyEditor.make( +/* 2788 */ new Property(this, index, "Avatar"), "rwg;mov"); +/* 2789 */ } else if (mode == 1) { +/* 2790 */ ret = this.lastPilotRequested; +/* 2791 */ } else if (mode == 2) +/* 2792 */ setNextAvatar((URL)value, null); +/* 2793 */ break; +/* */ +/* */ case 1: +/* 2796 */ if (mode == 0) { +/* 2797 */ ret = BooleanPropertyEditor.make(new Property(this, index, +/* 2798 */ "Collect garbage"), "No", "Yes"); +/* 2799 */ } else if (mode == 1) { +/* 2800 */ ret = new Boolean(false); +/* 2801 */ } else if ((mode == 2) && +/* 2802 */ (((Boolean)value).booleanValue())) { +/* 2803 */ System.gc(); +/* 2804 */ System.runFinalization(); +/* */ } +/* */ +/* 2807 */ break; +/* */ +/* */ default: +/* 2810 */ ret = super.properties(index, offset + 2, mode, value); +/* */ } +/* 2812 */ return ret; +/* */ } +/* */ +/* */ +/* 2816 */ private static Object classCookie = new Object(); +/* */ +/* */ public void saveState(Saver s) throws IOException +/* */ { +/* 2820 */ s.saveVersion(0, classCookie); +/* 2821 */ super.saveState(s); +/* */ } +/* */ +/* */ public void restoreState(Restorer r) throws IOException, TooNewException +/* */ { +/* 2826 */ int vers = r.restoreVersion(classCookie); +/* 2827 */ switch (vers) { +/* */ case 0: +/* 2829 */ super.restoreState(r); +/* 2830 */ break; +/* */ +/* */ default: +/* 2833 */ throw new TooNewException(); +/* */ } +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\DefaultConsole.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/DialogDisabled.java b/NET/worlds/console/DialogDisabled.java new file mode 100644 index 0000000..7d6aaa1 --- /dev/null +++ b/NET/worlds/console/DialogDisabled.java @@ -0,0 +1,12 @@ +package NET.worlds.console; + +public abstract interface DialogDisabled +{ + public abstract void dialogDisable(boolean paramBoolean); +} + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\DialogDisabled.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/DialogReceiver.java b/NET/worlds/console/DialogReceiver.java new file mode 100644 index 0000000..1f8a116 --- /dev/null +++ b/NET/worlds/console/DialogReceiver.java @@ -0,0 +1,12 @@ +package NET.worlds.console; + +public abstract interface DialogReceiver +{ + public abstract void dialogDone(Object paramObject, boolean paramBoolean); +} + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\DialogReceiver.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/DuplexPart.java b/NET/worlds/console/DuplexPart.java new file mode 100644 index 0000000..41a04ba --- /dev/null +++ b/NET/worlds/console/DuplexPart.java @@ -0,0 +1,1083 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import NET.worlds.core.IniFile; +/* */ import NET.worlds.scape.FrameEvent; +/* */ import java.awt.Color; +/* */ import java.awt.Container; +/* */ import java.awt.Event; +/* */ import java.awt.TextField; +/* */ import java.util.Observer; +/* */ import java.util.Vector; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public abstract class DuplexPart +/* */ implements FramePart +/* */ { +/* */ private boolean classicTextArea; +/* */ +/* */ public DuplexPart() +/* */ { +/* 906 */ this(true); +/* */ } +/* */ +/* */ public DuplexPart(boolean isShared) { +/* 910 */ this(isShared, 3); +/* */ } +/* */ +/* */ public DuplexPart(boolean isShared, int height) { +/* 914 */ this.classicTextArea = (IniFile.gamma().getIniInt("classicChatBox", 1) == 1); +/* 915 */ if (this.classicTextArea) { +/* 916 */ this.listen = new ClassicSharedTextArea(height, 30, isShared); +/* 917 */ this.listen.setBackground(Color.white); +/* */ } else { +/* 919 */ this.listen = new NewSharedTextArea(height, 30, isShared); +/* */ +/* 921 */ this.listen.setBackground(GammaTextArea.getBackgroundColor()); +/* */ } +/* */ +/* 924 */ this.listen.setForeground(Color.black); +/* */ } +/* */ +/* */ public void forceTakeFocus() { +/* 928 */ ((FocusPreservingTextField)this.line).takeNextFocus(); +/* */ } +/* */ +/* */ public synchronized void activate(Console c, Container f, Console prev) { +/* 932 */ if ((this instanceof ChatPart)) { +/* 933 */ ((FocusPreservingTextField)this.line).isChatLine(); +/* */ } +/* */ +/* 936 */ if (!this.classicTextArea) { +/* 937 */ Color bg = GammaTextArea.getBackgroundColor(); +/* 938 */ this.line.setBackground(bg); +/* 939 */ this.listen.setBackground(bg); +/* 940 */ this.line.setForeground(Color.black); +/* 941 */ this.listen.setForeground(Color.black); +/* 942 */ this.line.repaint(); +/* 943 */ this.listen.repaint(); +/* */ } else { +/* 945 */ this.listen.setBackground(Color.white); +/* 946 */ this.listen.setForeground(Color.black); +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ +/* 953 */ public TextField line = new FocusPreservingTextField(); +/* */ +/* */ +/* */ public SharedTextArea listen; +/* */ +/* */ +/* */ public void deactivate() {} +/* */ +/* */ +/* */ public void println(String msg) +/* */ { +/* 964 */ this.listen.println(msg); +/* */ } +/* */ +/* */ +/* */ +/* */ public synchronized void trigger() +/* */ { +/* 971 */ this.talkVec.addElement(this.line.getText()); +/* 972 */ this.line.setText(""); +/* */ } +/* */ +/* */ public synchronized void say(String s) { +/* 976 */ this.talkVec.addElement(s); +/* */ } +/* */ +/* */ public void scrollToBottom() { +/* 980 */ this.listen.scrollToBottom(); +/* */ } +/* */ +/* */ +/* */ +/* */ @Deprecated +/* */ public boolean action(Event event, Object what) +/* */ { +/* 988 */ if (event.target == this.line) { +/* 989 */ trigger(); +/* 990 */ return true; +/* */ } +/* */ +/* 993 */ return false; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public void enableLogging(String fileName, String title, boolean append) +/* */ { +/* 1007 */ this.listen.enableLogging(fileName, title, append); +/* */ } +/* */ +/* */ public void disableLogging() +/* */ { +/* 1012 */ this.listen.disableLogging(); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ public static void addLogObserver(Observer o) +/* */ { +/* 1020 */ NewSharedTextArea.addLogObserver(o); +/* 1021 */ ClassicSharedTextArea.addLogObserver(o); +/* */ } +/* */ +/* */ public static void deleteLogObserver(Observer o) +/* */ { +/* 1026 */ NewSharedTextArea.deleteLogObserver(o); +/* 1027 */ ClassicSharedTextArea.addLogObserver(o); +/* */ } +/* */ +/* 1030 */ private Vector<String> talkVec = new Vector(); +/* */ +/* */ +/* */ +/* */ public synchronized boolean handle(FrameEvent f) +/* */ { +/* 1036 */ this.listen.poll(); +/* 1037 */ while (this.talkVec.size() > 0) { +/* 1038 */ String text = null; +/* 1039 */ synchronized (this) { +/* 1040 */ text = (String)this.talkVec.firstElement(); +/* 1041 */ this.talkVec.removeElementAt(0); +/* */ } +/* 1043 */ if (text != null) +/* 1044 */ sendText(text); +/* */ } +/* 1046 */ return true; +/* */ } +/* */ +/* */ public static String toHtml(String s) +/* */ { +/* 1051 */ assert (s != null); +/* 1052 */ String h = ""; +/* 1053 */ for (int i = 0; i < s.length(); i++) { +/* 1054 */ char c = s.charAt(i); +/* 1055 */ switch (c) { +/* */ case '<': +/* 1057 */ h = h + "<"; +/* 1058 */ break; +/* */ case '>': +/* 1060 */ h = h + ">"; +/* 1061 */ break; +/* */ case '"': +/* 1063 */ h = h + """; +/* 1064 */ break; +/* */ case '&': +/* 1066 */ h = h + "&"; +/* 1067 */ break; +/* */ default: +/* 1069 */ h = h + c; +/* */ } +/* */ +/* */ } +/* 1073 */ return h; +/* */ } +/* */ +/* */ protected abstract void sendText(String paramString); +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\DuplexPart.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/EMailPart.java b/NET/worlds/console/EMailPart.java new file mode 100644 index 0000000..56438de --- /dev/null +++ b/NET/worlds/console/EMailPart.java @@ -0,0 +1,25 @@ +/* */ package NET.worlds.console; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public class EMailPart +/* */ { +/* */ public static void showMessage(Console console) +/* */ { +/* 13 */ new MailDialog(console); +/* */ } +/* */ +/* */ public static void showMessage(Console console, String recipient) { +/* 17 */ new MailDialog(console, recipient); +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\EMailPart.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/EditNamesDialog.java b/NET/worlds/console/EditNamesDialog.java new file mode 100644 index 0000000..be17e1e --- /dev/null +++ b/NET/worlds/console/EditNamesDialog.java @@ -0,0 +1,209 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import java.awt.Button; +/* */ import java.awt.Event; +/* */ import java.awt.Font; +/* */ import java.awt.GridBagConstraints; +/* */ import java.awt.GridBagLayout; +/* */ import java.awt.List; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ class EditNamesDialog +/* */ extends PolledDialog +/* */ implements DialogReceiver +/* */ { +/* */ private static final long serialVersionUID = -3309806087387084117L; +/* 34 */ private List listbox = new List(10); +/* 35 */ private Button addButton = new Button(Console.message("Add")); +/* 36 */ private Button delButton = new Button(Console.message("Delete")); +/* 37 */ private Button cancelButton = new Button(Console.message("Done")); +/* */ private NameListOwner owner; +/* */ private String addTitle; +/* 40 */ private static Font font = new Font(Console.message("ButtonFont"), +/* 41 */ 0, 12); +/* */ +/* */ +/* */ EditNamesDialog(NameListOwner owner, String title, String addTitle) +/* */ { +/* 46 */ super(Console.getFrame(), null, title, true); +/* */ +/* */ +/* 49 */ this.owner = owner; +/* 50 */ this.addTitle = addTitle; +/* 51 */ ready(); +/* */ } +/* */ +/* */ +/* */ +/* */ protected void build() +/* */ { +/* 58 */ int count = this.owner.getNameListCount(); +/* 59 */ for (int i = 0; i < count; i++) { +/* 60 */ this.listbox.add(this.owner.getNameListName(i)); +/* */ } +/* */ +/* 63 */ GridBagLayout gbag = new GridBagLayout(); +/* 64 */ setLayout(gbag); +/* 65 */ GridBagConstraints c = new GridBagConstraints(); +/* 66 */ c.fill = 1; +/* 67 */ c.weightx = 1.0D; +/* 68 */ c.weighty = 1.0D; +/* 69 */ c.gridwidth = 2; +/* 70 */ c.gridheight = 3; +/* 71 */ add(gbag, this.listbox, c); +/* 72 */ c.weightx = 0.0D; +/* 73 */ c.weighty = 0.0D; +/* 74 */ c.gridwidth = 0; +/* 75 */ c.gridheight = 1; +/* 76 */ c.fill = 2; +/* 77 */ this.addButton.setFont(font); +/* 78 */ this.delButton.setFont(font); +/* 79 */ this.cancelButton.setFont(font); +/* 80 */ add(gbag, this.addButton, c); +/* 81 */ add(gbag, this.delButton, c); +/* 82 */ c.weighty = 1.0D; +/* 83 */ c.anchor = 15; +/* 84 */ add(gbag, this.cancelButton, c); +/* */ } +/* */ +/* */ +/* */ private void select(boolean state) +/* */ { +/* 90 */ this.delButton.setEnabled(state); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ public void setVisible(boolean visible) +/* */ { +/* 98 */ super.setVisible(visible); +/* */ +/* 100 */ if (visible) +/* */ { +/* 102 */ if (this.listbox.getItemCount() != 0) { +/* 103 */ this.listbox.select(0); +/* 104 */ select(true); +/* */ } else { +/* 106 */ select(false); +/* */ } +/* */ +/* 109 */ this.listbox.requestFocus(); +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ @Deprecated +/* */ public boolean handleEvent(Event event) +/* */ { +/* 118 */ if (event.id == 701) { +/* 119 */ select(true); +/* 120 */ } else if (event.id == 702) { +/* 121 */ select(false); +/* */ } +/* */ +/* 124 */ return super.handleEvent(event); +/* */ } +/* */ +/* */ +/* */ @Deprecated +/* */ public boolean action(Event event, Object what) +/* */ { +/* 131 */ Object target = event.target; +/* */ +/* */ +/* 134 */ if (target == this.cancelButton) { +/* 135 */ return done(false); +/* */ } +/* */ +/* 138 */ if (target == this.delButton) { +/* 139 */ int index = this.listbox.getSelectedIndex(); +/* 140 */ if (index != -1) +/* */ { +/* */ +/* 143 */ this.listbox.remove(index); +/* 144 */ this.owner.removeNameListName(index); +/* */ +/* */ +/* 147 */ int count = this.listbox.getItemCount(); +/* 148 */ if (index < count - 1) { +/* 149 */ this.listbox.select(index); +/* 150 */ } else if (count > 0) { +/* 151 */ this.listbox.select(count - 1); +/* */ } else { +/* 153 */ select(false); +/* 154 */ this.listbox.requestFocus(); +/* */ } +/* */ } +/* 157 */ return true; +/* */ } +/* */ +/* */ +/* 161 */ if (target == this.addButton) +/* */ { +/* */ +/* 164 */ if (this.owner.mayAddNameListName(this)) +/* 165 */ new AddNameDialog(this, this.addTitle); +/* 166 */ return true; +/* */ } +/* 168 */ return false; +/* */ } +/* */ +/* */ +/* */ @Deprecated +/* */ public boolean keyDown(Event event, int key) +/* */ { +/* 175 */ if ((key == 27) || (key == 10)) +/* 176 */ return done(false); +/* 177 */ return super.keyDown(event, key); +/* */ } +/* */ +/* */ public void dialogDone(Object who, boolean confirmed) +/* */ { +/* 182 */ if (confirmed) +/* */ { +/* */ +/* 185 */ String name = +/* 186 */ Console.parseUnicode(((AddNameDialog)who).getName()); +/* 187 */ int pos = this.owner.addNameListName(name); +/* */ +/* 189 */ if (pos == -1) { +/* 190 */ return; +/* */ } +/* */ +/* */ +/* 194 */ if (pos == this.listbox.getItemCount()) { +/* 195 */ this.listbox.add(name); +/* */ } +/* */ +/* 198 */ this.listbox.makeVisible(pos); +/* 199 */ this.listbox.select(pos); +/* 200 */ select(true); +/* */ } +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\EditNamesDialog.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/EmoteHandler.java b/NET/worlds/console/EmoteHandler.java new file mode 100644 index 0000000..f609273 --- /dev/null +++ b/NET/worlds/console/EmoteHandler.java @@ -0,0 +1,118 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import NET.worlds.network.Cache; +/* */ import NET.worlds.network.CacheFile; +/* */ import NET.worlds.network.NetUpdate; +/* */ import NET.worlds.network.URL; +/* */ import java.io.BufferedReader; +/* */ import java.io.File; +/* */ import java.io.FileReader; +/* */ import java.util.Hashtable; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public class EmoteHandler +/* */ { +/* 19 */ private Hashtable<String, String> emoteHash = new Hashtable(); +/* */ +/* */ public EmoteHandler() { +/* 22 */ Load("EmoteList.txt"); +/* */ } +/* */ +/* */ public EmoteHandler(String filename) { +/* 26 */ Load(filename); +/* */ } +/* */ +/* */ public void Load(String filename) { +/* 30 */ File file = null; +/* */ +/* */ +/* */ try +/* */ { +/* 35 */ CacheFile cf = Cache.getFile(URL.make(NetUpdate.getUpgradeServerURL() + +/* 36 */ filename)); +/* 37 */ if (cf != null) +/* */ { +/* 39 */ file = new File(cf.getLocalName()); +/* 40 */ cf.waitUntilLoaded(); +/* */ } +/* */ +/* 43 */ if (file != null) { +/* 44 */ LoadFile(file); +/* */ } +/* */ } +/* */ catch (Exception localException) {} +/* */ +/* */ +/* */ +/* */ +/* 52 */ file = new File(filename); +/* 53 */ if (file != null) { +/* 54 */ LoadFile(file); +/* */ } +/* */ } +/* */ +/* */ private void LoadFile(File file) { +/* 59 */ if ((file != null) && (file.exists())) { +/* */ try +/* */ { +/* 62 */ BufferedReader reader = new BufferedReader(new FileReader(file)); +/* 63 */ String line = ""; +/* 64 */ String[] words; int i; for (; (line = reader.readLine()) != null; +/* */ +/* */ +/* */ +/* */ +/* 69 */ i < words.length) +/* */ { +/* 66 */ words = line.split("[ \t]"); +/* */ +/* */ +/* 69 */ i = 1; continue; +/* 70 */ put(words[i].toLowerCase(), words[0]);i++; +/* */ } +/* */ +/* */ +/* 73 */ reader.close(); +/* */ } +/* */ catch (Exception e) +/* */ { +/* 77 */ e.printStackTrace(); +/* */ } +/* */ } +/* */ } +/* */ +/* */ public void put(String emote, String imagename) { +/* 83 */ this.emoteHash.put(emote, imagename); +/* */ } +/* */ +/* */ public String get(String emote) { +/* 87 */ return (String)this.emoteHash.get(emote); +/* */ } +/* */ +/* */ public ImageCanvas getImage(String emote) { +/* 91 */ String imagename = get(emote); +/* */ +/* 93 */ if ((imagename != null) && (imagename.length() > 0)) +/* */ { +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* 102 */ return new ImageCanvas(imagename); +/* */ } +/* 104 */ return null; +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\EmoteHandler.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/Escalator.java b/NET/worlds/console/Escalator.java new file mode 100644 index 0000000..52ceb19 --- /dev/null +++ b/NET/worlds/console/Escalator.java @@ -0,0 +1,105 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import NET.worlds.scape.Material; +/* */ import NET.worlds.scape.Point3; +/* */ import NET.worlds.scape.Point3Temp; +/* */ import NET.worlds.scape.Portal; +/* */ import NET.worlds.scape.Rect; +/* */ import NET.worlds.scape.Room; +/* */ import NET.worlds.scape.RoomEnvironment; +/* */ import NET.worlds.scape.World; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public class Escalator +/* */ { +/* */ public Portal bottom; +/* */ public Portal top; +/* */ private Room antelower; +/* */ private Stair stairs; +/* */ private Room anteupper; +/* */ +/* */ public Escalator(World world, String name, float width, float length, float ascent, float height, float antelen, int numsteps, Material riser, Material tread, Material floor, Material left, Material right, Material head, Material ceiling, float traveltime) +/* */ { +/* 56 */ this.stairs = new Stair(world, name, width, length, ascent, ascent + height, +/* 57 */ numsteps, riser, tread, left, right, head, ceiling); +/* */ +/* 59 */ this.antelower = new Room(world, "antelower." + name); +/* 60 */ RoomEnvironment lenv = this.antelower.getEnvironment(); +/* 61 */ lenv.add(new Rect(0.0F, 0.0F, 0.0F, 0.0F, antelen, height, left)); +/* 62 */ lenv.add(new Rect(width, antelen, 0.0F, width, 0.0F, height, right)); +/* 63 */ Portal bp = new Portal(0.0F, antelen, 0.0F, width, antelen, height) +/* 64 */ .biconnect(this.stairs.bottom); +/* 65 */ lenv.add(bp); +/* 66 */ this.bottom = new Portal(width, 0.0F, 0.0F, 0.0F, 0.0F, height); +/* 67 */ lenv.add(this.bottom); +/* 68 */ lenv.add(Rect.floor(0.0F, 0.0F, 0.0F, width, antelen, floor)); +/* 69 */ lenv.add(Rect.ceiling(0.0F, 0.0F, height, width, antelen, ceiling)); +/* */ +/* 71 */ this.anteupper = new Room(world, "anteupper." + name); +/* 72 */ RoomEnvironment uenv = this.anteupper.getEnvironment(); +/* 73 */ uenv.add(new Rect(0.0F, 0.0F, 0.0F, 0.0F, antelen, height, left)); +/* 74 */ uenv.add(new Rect(width, antelen, 0.0F, width, 0.0F, height, right)); +/* 75 */ Portal tp = new Portal(0.0F, antelen, 0.0F, width, antelen, height) +/* 76 */ .biconnect(this.stairs.top); +/* 77 */ uenv.add(tp); +/* 78 */ this.top = new Portal(width, 0.0F, 0.0F, 0.0F, 0.0F, height); +/* 79 */ uenv.add(this.top); +/* 80 */ uenv.add(Rect.floor(0.0F, 0.0F, 0.0F, width, antelen, floor)); +/* 81 */ uenv.add(Rect.ceiling(0.0F, 0.0F, height, width, antelen, ceiling)); +/* */ +/* 83 */ CameraConveyor convup = new CameraConveyor(Point3Temp.make(0.0F, length / +/* 84 */ traveltime, 0.0F)); +/* 85 */ CameraConveyor convdn = new CameraConveyor(new Point3(0.0F, -length / +/* 86 */ traveltime, 0.0F)); +/* 87 */ bp.addHandler(new AddHandler(convup)); +/* 88 */ tp.addHandler(new AddHandler(convdn)); +/* */ +/* */ +/* */ +/* */ +/* */ +/* 94 */ this.stairs.bottom.addHandler(new RemoveHandler(convup)); +/* 95 */ this.stairs.bottom.addHandler(new RemoveHandler(convdn)); +/* 96 */ this.stairs.top.addHandler(new RemoveHandler(convup)); +/* 97 */ this.stairs.top.addHandler(new RemoveHandler(convdn)); +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\Escalator.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/ExpireDialog.java b/NET/worlds/console/ExpireDialog.java new file mode 100644 index 0000000..91165bc --- /dev/null +++ b/NET/worlds/console/ExpireDialog.java @@ -0,0 +1,899 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import java.awt.BorderLayout; +/* */ import java.awt.Button; +/* */ import java.awt.Dialog; +/* */ import java.awt.Event; +/* */ import java.awt.FlowLayout; +/* */ import java.awt.Font; +/* */ import java.awt.Panel; +/* */ import java.text.DateFormat; +/* */ import java.util.Date; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ class ExpireDialog +/* */ extends Dialog +/* */ { +/* */ private static final long serialVersionUID = -1622362025617429254L; +/* */ protected Button button; +/* 848 */ private static Font font = new Font(Console.message("ButtonFont"), +/* 849 */ 0, 12); +/* */ +/* */ public ExpireDialog(Date expireDate) { +/* 852 */ super(null, GammaFrame.getDefaultTitle(), false); +/* */ +/* 854 */ setLayout(new BorderLayout(15, 15)); +/* */ +/* 856 */ add("Center", new MultiLineLabel(Console.message("beta-expired") + +/* 857 */ DateFormat.getDateTimeInstance().format(expireDate), 20, 20)); +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* 864 */ this.button = new Button(Console.message("OK")); +/* 865 */ this.button.setFont(font); +/* */ +/* 867 */ Panel p = new Panel(); +/* 868 */ p.setLayout(new FlowLayout(1, 15, 15)); +/* 869 */ p.add(this.button); +/* 870 */ add("South", p); +/* */ +/* 872 */ pack(); +/* */ } +/* */ +/* */ public boolean action(Event e, Object arg) { +/* 876 */ if (e.target == this.button) { +/* 877 */ setVisible(false); +/* 878 */ dispose(); +/* 879 */ Main.end(); +/* 880 */ return true; +/* */ } +/* 882 */ return false; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ public boolean gotFocus(Event e, Object arg) +/* */ { +/* 890 */ this.button.requestFocus(); +/* 891 */ return true; +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\ExpireDialog.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/ExposedPanel.java b/NET/worlds/console/ExposedPanel.java new file mode 100644 index 0000000..95fd40c --- /dev/null +++ b/NET/worlds/console/ExposedPanel.java @@ -0,0 +1,34 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import java.awt.Color; +/* */ import java.awt.Dimension; +/* */ import java.awt.Graphics; +/* */ import java.awt.Panel; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public class ExposedPanel +/* */ extends Panel +/* */ { +/* */ private static final long serialVersionUID = 6772016496031107748L; +/* */ +/* */ public ExposedPanel() +/* */ { +/* 20 */ setBackground(Color.white); +/* */ } +/* */ +/* */ public void paint(Graphics g) +/* */ { +/* 25 */ g.setColor(getBackground()); +/* 26 */ g.fillRect(0, 0, getSize().width, getSize().height); +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\ExposedPanel.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/FileSaver.java b/NET/worlds/console/FileSaver.java new file mode 100644 index 0000000..bd0b3f6 --- /dev/null +++ b/NET/worlds/console/FileSaver.java @@ -0,0 +1,510 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import NET.worlds.scape.World; +/* */ import java.text.MessageFormat; +/* */ import java.util.Enumeration; +/* */ import java.util.Vector; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ class FileSaver +/* */ implements DialogReceiver +/* */ { +/* 391 */ private Vector<World> saveList = new Vector(); +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ private int state; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public static final int QUIT = 0; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public static final int SAVING = 1; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public static final int CANCEL = 2; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ FileSaver() +/* */ { +/* 424 */ Enumeration<World> e = World.getWorlds(); +/* 425 */ while (e.hasMoreElements()) { +/* 426 */ World w = (World)e.nextElement(); +/* 427 */ if (w.getEdited()) +/* 428 */ this.saveList.addElement(w); +/* */ } +/* 430 */ saveNext(false); +/* */ } +/* */ +/* */ +/* */ +/* */ public int getState() +/* */ { +/* 437 */ return this.state; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ private World getWorld() +/* */ { +/* 445 */ return (World)this.saveList.elementAt(0); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ private void saveNext(boolean removeFirst) +/* */ { +/* 456 */ if (removeFirst) +/* 457 */ this.saveList.removeElementAt(0); +/* 458 */ if (this.saveList.size() != 0) { +/* 459 */ this.state = 1; +/* 460 */ Object[] arguments = { new String(getWorld().getName()) }; +/* 461 */ new YesNoCancelDialog(Console.getFrame(), this, +/* 462 */ Console.message("Save-Changes2"), MessageFormat.format( +/* 463 */ Console.message("has-changed"), arguments)); +/* */ } else { +/* 465 */ this.state = 0; +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public void dialogDone(Object who, boolean confirmed) +/* */ { +/* 475 */ if ((who instanceof YesNoCancelDialog)) { +/* 476 */ switch (((YesNoCancelDialog)who).getChoice()) { +/* */ case 1: +/* 478 */ new FileSysDialog(Console.getFrame(), this, +/* 479 */ Console.message("Save-World"), 1, +/* 480 */ "World Save Files|*.world", +/* 481 */ Shaper.getSaveName(getWorld()), true); +/* 482 */ break; +/* */ case 0: +/* 484 */ saveNext(true); +/* 485 */ break; +/* */ case -1: +/* 487 */ this.state = 2; +/* */ +/* */ } +/* */ +/* */ } +/* */ else +/* */ { +/* 494 */ if (confirmed) { +/* 495 */ FileSysDialog fileDialog = (FileSysDialog)who; +/* 496 */ if (Shaper.doSave(fileDialog.fileName(), getWorld(), false)) { +/* 497 */ saveNext(true); +/* 498 */ return; +/* */ } +/* */ } +/* 501 */ this.state = 2; +/* */ } +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\FileSaver.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/FileSysDialog.java b/NET/worlds/console/FileSysDialog.java new file mode 100644 index 0000000..8959724 --- /dev/null +++ b/NET/worlds/console/FileSysDialog.java @@ -0,0 +1,250 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import java.awt.Frame; +/* */ import java.io.File; +/* */ import javax.swing.JFileChooser; +/* */ import javax.swing.SwingUtilities; +/* */ import javax.swing.UIManager; +/* */ import javax.swing.UnsupportedLookAndFeelException; +/* */ import javax.swing.filechooser.FileNameExtensionFilter; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public class FileSysDialog +/* */ implements Runnable +/* */ { +/* */ public static final int OPEN = 0; +/* */ public static final int SAVE = 1; +/* */ private String title; +/* */ private String typesAndExts; +/* */ private String fileName; +/* */ private static File lastFile; +/* */ private int mode; +/* */ private DialogReceiver receiver; +/* 40 */ private boolean parentDisabled = false; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ private Frame parent; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* 69 */ JFileChooser fc = null; +/* */ +/* 71 */ private static String OpenFileText = "Open File"; +/* 72 */ private static String SaveFileText = "Save File"; +/* */ +/* */ private boolean disableParent; +/* */ +/* */ public FileSysDialog(Frame parent, DialogReceiver receiver, String title, int mode, String typesAndExts, String fileName, boolean disableParent) +/* */ { +/* 78 */ this.receiver = receiver; +/* 79 */ this.title = title; +/* 80 */ this.typesAndExts = typesAndExts; +/* 81 */ this.mode = mode; +/* 82 */ this.fileName = fileName; +/* 83 */ this.parent = parent; +/* 84 */ this.disableParent = disableParent; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* 93 */ SwingUtilities.invokeLater(this); +/* */ } +/* */ +/* */ public void run() +/* */ { +/* 98 */ if ((this.disableParent) && +/* 99 */ (this.parent.isEnabled())) { +/* 100 */ this.parent.setEnabled(false); +/* 101 */ this.parentDisabled = true; +/* */ } +/* */ +/* */ try +/* */ { +/* 106 */ UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName()); +/* */ } +/* */ catch (ClassNotFoundException e1) { +/* 109 */ e1.printStackTrace(); +/* 110 */ return; +/* */ } +/* */ catch (InstantiationException e1) { +/* 113 */ e1.printStackTrace(); +/* 114 */ return; +/* */ } +/* */ catch (IllegalAccessException e1) { +/* 117 */ e1.printStackTrace(); +/* 118 */ return; +/* */ } +/* */ catch (UnsupportedLookAndFeelException e1) { +/* 121 */ e1.printStackTrace(); +/* 122 */ return; +/* */ } +/* */ +/* 125 */ File file = null; +/* */ try { +/* 127 */ if ((this.fileName != null) && (this.fileName != "")) { +/* 128 */ file = new File(this.fileName); +/* 129 */ if ((file != null) && (file.getParent() != null)) { +/* 130 */ this.fc = new JFileChooser(file.getParent()); +/* */ } +/* */ } +/* 133 */ if (this.fc == null) +/* */ { +/* 135 */ if ((lastFile != null) && (lastFile.getParent() != null)) { +/* 136 */ this.fc = new JFileChooser(lastFile.getParent()); +/* */ } +/* */ } +/* 139 */ if (this.fc == null) { +/* 140 */ this.fc = new JFileChooser("."); +/* */ } +/* */ } catch (Exception e) { +/* 143 */ e.printStackTrace(); +/* 144 */ return; +/* */ } +/* */ +/* 147 */ this.fc.setFileSelectionMode(0); +/* 148 */ this.fc.setDialogType(this.mode == 0 ? 0 : +/* 149 */ 1); +/* */ +/* 151 */ if (this.title != null) +/* 152 */ this.fc.setDialogTitle(this.title); +/* 153 */ if (this.typesAndExts != null) { +/* 154 */ buildFileChooser(this.fc, this.typesAndExts); +/* */ } +/* */ +/* 157 */ if (file != null) { +/* 158 */ this.fc.setSelectedFile(file); +/* */ } +/* 160 */ int retval = this.fc.showDialog(null, this.mode == 0 ? OpenFileText : +/* 161 */ SaveFileText); +/* 162 */ if (retval == 0) { +/* 163 */ approveSelection(); +/* */ } else { +/* 165 */ cancelSelection(); +/* */ } +/* 167 */ if ((this.disableParent) && (this.parentDisabled)) { +/* 168 */ this.parent.setEnabled(true); +/* 169 */ this.parentDisabled = false; +/* */ } +/* */ } +/* */ +/* */ private static void buildFileChooser(JFileChooser fc2, String specString) +/* */ { +/* 175 */ String[] entries = specString.split("\\|"); +/* */ +/* */ +/* 178 */ boolean even = false; +/* 179 */ String desc = ""; +/* */ +/* 181 */ FileNameExtensionFilter first = null; +/* 182 */ String[] arrayOfString1; int j = (arrayOfString1 = entries).length; for (int i = 0; i < j; i++) { String entry = arrayOfString1[i]; +/* 183 */ if (even) +/* */ { +/* 185 */ String[] fields = entry.split(";"); +/* */ +/* 187 */ for (int i = 0; i < fields.length; i++) { +/* 188 */ String[] ext = fields[i].split("\\."); +/* 189 */ if (ext.length > 0) { +/* 190 */ fields[i] = ext[(ext.length - 1)]; +/* */ } +/* */ } +/* 193 */ FileNameExtensionFilter ff = null; +/* 194 */ switch (fields.length) { +/* */ case 1: +/* 196 */ ff = new FileNameExtensionFilter(desc, new String[] { fields[0] }); +/* 197 */ break; +/* */ case 2: +/* 199 */ ff = new FileNameExtensionFilter(desc, new String[] { fields[0], fields[1] }); +/* 200 */ break; +/* */ case 3: +/* 202 */ ff = new FileNameExtensionFilter(desc, new String[] { fields[0], +/* 203 */ fields[1], fields[2] }); +/* 204 */ break; +/* */ case 4: +/* 206 */ ff = new FileNameExtensionFilter(desc, new String[] { fields[0], +/* 207 */ fields[1], fields[2], fields[3] }); +/* */ } +/* */ +/* 210 */ if (ff != null) { +/* 211 */ fc2.addChoosableFileFilter(ff); +/* 212 */ if (first == null) { +/* 213 */ first = ff; +/* */ } +/* */ } +/* 216 */ even = false; +/* */ } else { +/* 218 */ desc = entry; +/* 219 */ even = true; +/* */ } +/* */ } +/* 222 */ if (first != null) +/* 223 */ fc2.setFileFilter(first); +/* */ } +/* */ +/* */ public int getMode() { +/* 227 */ return this.mode; +/* */ } +/* */ +/* */ public void approveSelection() { +/* 231 */ File file = this.fc.getSelectedFile(); +/* 232 */ lastFile = file; +/* 233 */ this.fileName = file.getAbsolutePath(); +/* 234 */ this.receiver.dialogDone(this, this.fileName != null); +/* */ } +/* */ +/* */ public void cancelSelection() { +/* 238 */ this.receiver.dialogDone(this, false); +/* */ } +/* */ +/* */ public String fileName() { +/* 242 */ return this.fileName; +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\FileSysDialog.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/Filler.java b/NET/worlds/console/Filler.java new file mode 100644 index 0000000..55e3c54 --- /dev/null +++ b/NET/worlds/console/Filler.java @@ -0,0 +1,43 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import java.awt.Dimension; +/* */ import java.awt.Panel; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public class Filler +/* */ extends Panel +/* */ { +/* */ private static final long serialVersionUID = 2578188264762528538L; +/* */ int wForced; +/* */ int hForced; +/* */ +/* */ public Filler(int w, int h) +/* */ { +/* 24 */ this.wForced = w; +/* 25 */ this.hForced = h; +/* */ } +/* */ +/* */ public Dimension getPreferredSize() +/* */ { +/* 30 */ return getMinimumSize(); +/* */ } +/* */ +/* */ public Dimension getMinimumSize() +/* */ { +/* 35 */ return new Dimension(this.wForced, this.hForced); +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\Filler.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/FixedSizePanel.java b/NET/worlds/console/FixedSizePanel.java new file mode 100644 index 0000000..504cd6c --- /dev/null +++ b/NET/worlds/console/FixedSizePanel.java @@ -0,0 +1,52 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import java.awt.Dimension; +/* */ import java.awt.Panel; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ class FixedSizePanel +/* */ extends Panel +/* */ { +/* */ private static final long serialVersionUID = 3707537728341782609L; +/* */ int w; +/* */ int h; +/* */ +/* */ public FixedSizePanel(int w, int h) +/* */ { +/* 23 */ this.w = w; +/* 24 */ this.h = h; +/* */ } +/* */ +/* */ public Dimension getPreferredSize() +/* */ { +/* 29 */ Dimension d = super.getPreferredSize(); +/* 30 */ if (this.w >= 0) +/* 31 */ d.width = this.w; +/* 32 */ if (this.h >= 0) +/* 33 */ d.height = this.h; +/* 34 */ return d; +/* */ } +/* */ +/* */ public Dimension getMinimumSize() +/* */ { +/* 39 */ Dimension d = super.getMinimumSize(); +/* 40 */ if (this.w >= 0) +/* 41 */ d.width = this.w; +/* 42 */ if (this.h >= 0) +/* 43 */ d.height = this.h; +/* 44 */ return d; +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\FixedSizePanel.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/FixedWidthPanel.java b/NET/worlds/console/FixedWidthPanel.java new file mode 100644 index 0000000..2376577 --- /dev/null +++ b/NET/worlds/console/FixedWidthPanel.java @@ -0,0 +1,1252 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import java.awt.Dimension; +/* */ import java.awt.LayoutManager; +/* */ import java.awt.Panel; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ class FixedWidthPanel +/* */ extends Panel +/* */ { +/* */ private static final long serialVersionUID = 1256222162739133960L; +/* */ private int width; +/* */ +/* */ public FixedWidthPanel(LayoutManager layout, int width) +/* */ { +/* 1237 */ super(layout); +/* 1238 */ this.width = width; +/* */ } +/* */ +/* */ public Dimension getPreferredSize() { +/* 1242 */ Dimension d = super.getPreferredSize(); +/* 1243 */ d.width = this.width; +/* 1244 */ return d; +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\FixedWidthPanel.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/FocusPreservingTextField.java b/NET/worlds/console/FocusPreservingTextField.java new file mode 100644 index 0000000..4329155 --- /dev/null +++ b/NET/worlds/console/FocusPreservingTextField.java @@ -0,0 +1,898 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import NET.worlds.scape.EventQueue; +/* */ import NET.worlds.scape.Pilot; +/* */ import java.awt.Event; +/* */ import java.awt.Font; +/* */ import java.awt.TextField; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ class FocusPreservingTextField +/* */ extends TextField +/* */ { +/* */ private static final long serialVersionUID = 7475622191515920214L; +/* */ private static FocusPreservingTextField lostFocus; +/* */ private static FocusPreservingTextField hasFocus; +/* */ private static FocusPreservingTextField chatLine; +/* 782 */ private static Object hasFocusMutex = new Object(); +/* */ +/* */ +/* 785 */ private static Font font = new Font(Console.message("GammaTextFont"), +/* 786 */ 0, 12); +/* */ boolean preserveFocus; +/* */ +/* 789 */ public FocusPreservingTextField() { super(30); +/* 790 */ setFocusable(true); +/* 791 */ setFont(font); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ boolean takeNextFocus; +/* */ +/* */ +/* */ +/* */ public void isChatLine() +/* */ { +/* 804 */ chatLine = this; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public void requestFocus() +/* */ { +/* 814 */ if (!this.takeNextFocus) { +/* 815 */ synchronized (hasFocusMutex) { +/* 816 */ this.preserveFocus = (((hasFocus != null) && +/* 817 */ (hasFocus.getText().length() != 0)) || ( +/* 818 */ (chatLine != null) && (chatLine.getText().length() != 0))); +/* */ } +/* */ } +/* 821 */ this.takeNextFocus = false; +/* 822 */ if (!this.preserveFocus) { +/* 823 */ super.requestFocus(); +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ public void takeNextFocus() +/* */ { +/* 831 */ this.preserveFocus = false; +/* 832 */ this.takeNextFocus = true; +/* */ } +/* */ +/* */ @Deprecated +/* */ public boolean handleEvent(Event e) +/* */ { +/* 838 */ synchronized (hasFocusMutex) { +/* 839 */ if (e.id == 1005) +/* */ { +/* */ +/* */ +/* */ +/* */ +/* 845 */ if (hasFocus == this) { +/* 846 */ lostFocus = this; +/* 847 */ hasFocus = null; +/* 848 */ this.preserveFocus = false; +/* */ } +/* 850 */ } else if (e.id == 1004) +/* */ { +/* */ +/* */ +/* */ +/* 855 */ hasFocus = this; +/* 856 */ if ((this.preserveFocus) && (lostFocus != null)) { +/* 857 */ lostFocus.takeNextFocus(); +/* 858 */ lostFocus.requestFocus(); +/* */ } +/* 860 */ lostFocus = null; +/* 861 */ this.preserveFocus = false; +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* 867 */ if (e.id == 401) { +/* 868 */ Console.wake(); +/* 869 */ if (e.key == 27) { +/* 870 */ setText(""); +/* 871 */ return true; } +/* 872 */ if (((e.modifiers & 0x2) != 0) && (e.key >= 1) && +/* 873 */ (e.key <= 26)) +/* */ { +/* */ +/* 876 */ if (e.key != 22) +/* */ { +/* 878 */ Pilot pilot = Pilot.getActive(); +/* 879 */ if (pilot != null) +/* 880 */ pilot.animate("abcdefghijklmnopqrstuvwxyz".substring(e.key - 1, e.key)); +/* 881 */ return true; +/* */ } +/* */ } +/* */ } +/* */ +/* 886 */ if (EventQueue.redirectDrivingKeys(e)) { +/* 887 */ return true; +/* */ } +/* */ +/* 890 */ return super.handleEvent(e); +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\FocusPreservingTextField.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/ForwardButton.java b/NET/worlds/console/ForwardButton.java new file mode 100644 index 0000000..a328d4d --- /dev/null +++ b/NET/worlds/console/ForwardButton.java @@ -0,0 +1,1222 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import java.awt.Button; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ class ForwardButton +/* */ extends Button +/* */ { +/* */ private static final long serialVersionUID = -1872202502789241725L; +/* */ +/* */ public ForwardButton(String name) +/* */ { +/* 1214 */ super(name); +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\ForwardButton.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/FourTilePanel.java b/NET/worlds/console/FourTilePanel.java new file mode 100644 index 0000000..1f2a35d --- /dev/null +++ b/NET/worlds/console/FourTilePanel.java @@ -0,0 +1,320 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import java.awt.Color; +/* */ import java.awt.Component; +/* */ import java.awt.Dimension; +/* */ import java.awt.Event; +/* */ import java.awt.Graphics; +/* */ import java.awt.Panel; +/* */ import java.awt.Rectangle; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public class FourTilePanel +/* */ extends Panel +/* */ { +/* */ private static final long serialVersionUID = -7002173409842219262L; +/* */ private static final int tw = 5; +/* */ private static final int th = 5; +/* */ private static final int aw = 7; +/* */ private static final int ah = 4; +/* */ private static final int bw = 3; +/* 39 */ private static Color widgetColor = new Color(255, 238, 177); +/* 40 */ private static Color lineColor = new Color(162, 162, 162); +/* */ +/* */ +/* 43 */ private Component[] comps = new Component[4]; +/* 44 */ private int[] order = { 0, 1, 2, 3 }; +/* 45 */ private float[] divider = { 0.22F, 0.63F }; +/* */ private int tx; +/* */ private int ty; +/* */ private int prevWidth; +/* */ private int prevHeight; +/* 50 */ private Rectangle moveWidget = new Rectangle(); +/* 51 */ private FourTileSwapper swap01 = new FourTileSwapper(this, 0, 1); +/* 52 */ private FourTileSwapper swap02 = new FourTileSwapper(this, 0, 2); +/* 53 */ private FourTileSwapper swap23 = new FourTileSwapper(this, 2, 3); +/* 54 */ private FourTileSwapper swap13 = new FourTileSwapper(this, 1, 3); +/* 55 */ private FourTileSwapper[] swaps = { this.swap01, this.swap02, this.swap23, this.swap13 }; +/* */ +/* */ private boolean dragging; +/* */ private int offsetx; +/* */ private int offsety; +/* */ private int minx; +/* */ private int miny; +/* */ private int maxx; +/* */ private int maxy; +/* */ private int specialTileIndex; +/* */ private Component oneTile; +/* */ +/* */ public FourTilePanel(Component ul, Component ur, Component ll, Component lr, int special) +/* */ { +/* 69 */ setLayout(null); +/* 70 */ this.specialTileIndex = special; +/* 71 */ add(this.comps[0] = ul); +/* 72 */ add(this.comps[1] = ur); +/* 73 */ add(this.comps[2] = ll); +/* 74 */ add(this.comps[3] = lr); +/* 75 */ setBackground(Color.black); +/* */ +/* 77 */ if (GammaFrameState.restoreLayout(this.order, this.divider)) { +/* 78 */ useOneTileMode(); +/* */ } else { +/* 80 */ useFourTileMode(); +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public boolean isOneTileMode() +/* */ { +/* 90 */ return this.oneTile != null; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public void useOneTileMode() +/* */ { +/* 100 */ if (this.oneTile != null) +/* 101 */ return; +/* 102 */ this.oneTile = this.comps[this.specialTileIndex]; +/* */ +/* 104 */ for (int i = 0; i < 4; i++) { +/* 105 */ if (i != this.specialTileIndex) +/* 106 */ remove(this.comps[i]); +/* */ } +/* 108 */ moveComponents(); +/* 109 */ saveLayout(); +/* 110 */ validate(); +/* */ } +/* */ +/* */ +/* */ +/* */ public void useFourTileMode() +/* */ { +/* 117 */ if (this.oneTile == null) +/* 118 */ return; +/* 119 */ this.oneTile = null; +/* */ +/* 121 */ for (int i = 0; i < 4; i++) { +/* 122 */ if (i != this.specialTileIndex) +/* 123 */ add(this.comps[i]); +/* */ } +/* 125 */ moveComponents(); +/* 126 */ saveLayout(); +/* 127 */ validate(); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public void setBounds(int x, int y, int width, int height) +/* */ { +/* 152 */ super.setBounds(x, y, width, height); +/* */ +/* 154 */ if (GammaFrameState.isIconic()) { +/* 155 */ return; +/* */ } +/* 157 */ if (this.prevWidth != width) { +/* 158 */ this.tx = Math.max((int)(this.divider[0] * width), 12); +/* 159 */ this.prevWidth = width; +/* */ } +/* */ +/* 162 */ if (this.prevHeight != height) { +/* 163 */ this.ty = Math.max((int)(this.divider[1] * height), 9); +/* 164 */ this.prevHeight = height; +/* */ } +/* */ +/* 167 */ moveComponents(width, height); +/* */ } +/* */ +/* */ private void saveLayout() +/* */ { +/* 172 */ GammaFrameState.saveLayout(this.order, this.divider, this.oneTile != null); +/* */ } +/* */ +/* */ private void moveComponents() { +/* 176 */ Dimension size = getSize(); +/* 177 */ moveComponents(size.width, size.height); +/* */ } +/* */ +/* */ +/* */ private void moveComponents(int width, int height) +/* */ { +/* 183 */ if (this.oneTile == null) { +/* 184 */ this.comps[this.order[0]].setBounds(3, 3, this.tx - 3, this.ty - 3); +/* 185 */ this.comps[this.order[1]].setBounds(this.tx + 5, 3, width - this.tx - 5 - 3, this.ty - 3); +/* 186 */ this.comps[this.order[2]] +/* 187 */ .setBounds(3, this.ty + 5, this.tx - 3, height - this.ty - 5 - 3); +/* 188 */ this.comps[this.order[3]].setBounds(this.tx + 5, this.ty + 5, width - this.tx - 5 - 3, +/* 189 */ height - this.ty - 5 - 3); +/* */ } else { +/* 191 */ this.oneTile.setBounds(0, 0, width, height); +/* */ } +/* 193 */ repaint(); +/* */ } +/* */ +/* */ public void paint(Graphics g) +/* */ { +/* 198 */ Dimension size = getSize(); +/* */ +/* 200 */ g.setColor(getBackground()); +/* */ +/* */ +/* 203 */ if (this.oneTile != null) { +/* 204 */ return; +/* */ } +/* */ +/* 207 */ g.fillRect(0, 0, 3, size.height); +/* 208 */ g.fillRect(0, 0, size.width, 3); +/* 209 */ g.fillRect(0, size.height - 3, size.width, 3); +/* 210 */ g.fillRect(size.width - 3, 0, 3, size.height); +/* */ +/* */ +/* 213 */ g.fillRect(0, this.ty, size.width, 5); +/* 214 */ g.fillRect(this.tx, 0, 5, size.height); +/* */ +/* 216 */ g.setColor(lineColor); +/* */ +/* */ +/* 219 */ g.drawLine(0, this.ty + 2, size.width, this.ty + 2); +/* 220 */ g.drawLine(this.tx + 2, 0, this.tx + 2, size.height); +/* */ +/* 222 */ g.setColor(widgetColor); +/* */ +/* */ +/* 225 */ g.fillRect(this.tx, this.ty, 5, 5); +/* 226 */ this.moveWidget.setBounds(this.tx, this.ty, 5, 5); +/* */ +/* */ +/* 229 */ int tmp = (this.tx + 2 - 7) / 2; +/* 230 */ g.fillArc(tmp, this.ty - 2, 7, 4, 0, 65356); +/* 231 */ g.fillArc(tmp, this.ty + 5 - 2, 7, 4, 0, 180); +/* 232 */ this.swap02.setBounds(tmp, this.ty, 7, 5); +/* */ +/* */ +/* 235 */ tmp = (this.tx + 2 + size.width - 7) / 2; +/* 236 */ g.fillArc(tmp, this.ty - 2, 7, 4, 0, 65356); +/* 237 */ g.fillArc(tmp, this.ty + 5 - 2, 7, 4, 0, 180); +/* 238 */ this.swap13.setBounds(tmp, this.ty, 7, 5); +/* */ +/* */ +/* 241 */ tmp = (this.ty + 2 - 7) / 2; +/* 242 */ g.fillArc(this.tx - 2, tmp, 4, 7, 90, 65356); +/* 243 */ g.fillArc(this.tx + 5 - 2, tmp, 4, 7, 90, 180); +/* 244 */ this.swap01.setBounds(this.tx, tmp, 5, 7); +/* */ +/* */ +/* 247 */ tmp = (this.ty + 2 + size.height - 7) / 2; +/* 248 */ g.fillArc(this.tx - 2, tmp, 4, 7, 90, 65356); +/* 249 */ g.fillArc(this.tx + 5 - 2, tmp, 4, 7, 90, 180); +/* 250 */ this.swap23.setBounds(this.tx, tmp, 5, 7); +/* */ } +/* */ +/* */ public boolean mouseDrag(Event evt, int x, int y) +/* */ { +/* 255 */ if (this.dragging) { +/* 256 */ this.tx = (x + this.offsetx); +/* 257 */ this.ty = (y + this.offsety); +/* 258 */ this.divider[0] = (this.tx / getSize().width); +/* 259 */ this.divider[1] = (this.ty / getSize().height); +/* 260 */ this.tx = Math.max(this.tx, this.minx); +/* 261 */ this.ty = Math.max(this.ty, this.miny); +/* 262 */ this.tx = Math.min(this.tx, this.maxx); +/* 263 */ this.ty = Math.min(this.ty, this.maxy); +/* 264 */ moveComponents(); +/* */ } +/* 266 */ return true; +/* */ } +/* */ +/* */ public boolean mouseUp(Event evt, int x, int y) +/* */ { +/* 271 */ if (this.dragging) { +/* 272 */ validate(); +/* 273 */ saveLayout(); +/* */ } +/* 275 */ this.dragging = false; +/* 276 */ return true; +/* */ } +/* */ +/* */ +/* */ public boolean mouseDown(Event evt, int x, int y) +/* */ { +/* 282 */ for (int i = 0; i < this.swaps.length; i++) +/* 283 */ if (this.swaps[i].maybeSwap(x, y)) +/* 284 */ return true; +/* 285 */ if (this.moveWidget.contains(x, y)) { +/* 286 */ this.offsetx = (this.tx - x); +/* 287 */ this.offsety = (this.ty - y); +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* 296 */ this.minx = 12; +/* 297 */ this.maxx = (getSize().width - this.minx); +/* 298 */ this.miny = 12; +/* 299 */ this.maxy = (getSize().height - this.miny); +/* 300 */ if ((this.minx < this.maxx) && (this.miny < this.maxy)) +/* 301 */ this.dragging = true; +/* */ } +/* 303 */ return true; +/* */ } +/* */ +/* */ void swap(int c1, int c2) { +/* 307 */ int tmp = this.order[c1]; +/* 308 */ this.order[c1] = this.order[c2]; +/* 309 */ this.order[c2] = tmp; +/* 310 */ moveComponents(); +/* 311 */ validate(); +/* 312 */ saveLayout(); +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\FourTilePanel.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/FourTileSwapper.java b/NET/worlds/console/FourTileSwapper.java new file mode 100644 index 0000000..3e2e031 --- /dev/null +++ b/NET/worlds/console/FourTileSwapper.java @@ -0,0 +1,346 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import java.awt.Rectangle; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ class FourTileSwapper +/* */ extends Rectangle +/* */ { +/* */ private static final long serialVersionUID = 6045056218784091538L; +/* */ private FourTilePanel parent; +/* */ private int c1; +/* */ private int c2; +/* */ +/* */ FourTileSwapper(FourTilePanel parent, int c1, int c2) +/* */ { +/* 328 */ this.parent = parent; +/* 329 */ this.c1 = c1; +/* 330 */ this.c2 = c2; +/* */ } +/* */ +/* */ boolean maybeSwap(int x, int y) { +/* 334 */ if (contains(x, y)) { +/* 335 */ this.parent.swap(this.c1, this.c2); +/* 336 */ return true; +/* */ } +/* 338 */ return false; +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\FourTileSwapper.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/FramePart.java b/NET/worlds/console/FramePart.java new file mode 100644 index 0000000..1630e53 --- /dev/null +++ b/NET/worlds/console/FramePart.java @@ -0,0 +1,22 @@ +package NET.worlds.console; + +import NET.worlds.scape.FrameEvent; +import java.awt.Container; +import java.awt.Event; + +public abstract interface FramePart +{ + public abstract void activate(Console paramConsole1, Container paramContainer, Console paramConsole2); + + public abstract void deactivate(); + + public abstract boolean action(Event paramEvent, Object paramObject); + + public abstract boolean handle(FrameEvent paramFrameEvent); +} + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\FramePart.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/FriendsListPart.java b/NET/worlds/console/FriendsListPart.java new file mode 100644 index 0000000..9ccab8f --- /dev/null +++ b/NET/worlds/console/FriendsListPart.java @@ -0,0 +1,1559 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import NET.worlds.core.IniFile; +/* */ import NET.worlds.core.Std; +/* */ import NET.worlds.network.BuddyListUpdateCmd; +/* */ import NET.worlds.network.Galaxy; +/* */ import NET.worlds.network.InfiniteWaitException; +/* */ import NET.worlds.network.NetUpdate; +/* */ import NET.worlds.network.NetworkObject; +/* */ import NET.worlds.network.PacketTooLargeException; +/* */ import NET.worlds.network.WorldServer; +/* */ import NET.worlds.network.netPacket; +/* */ import NET.worlds.network.whisperCmd; +/* */ import NET.worlds.scape.AnimatedActionManager; +/* */ import NET.worlds.scape.Drone; +/* */ import NET.worlds.scape.FrameEvent; +/* */ import NET.worlds.scape.MouseDownEvent; +/* */ import NET.worlds.scape.Pilot; +/* */ import NET.worlds.scape.PosableDrone; +/* */ import NET.worlds.scape.PosableShape; +/* */ import NET.worlds.scape.Room; +/* */ import NET.worlds.scape.TeleportAction; +/* */ import java.awt.Color; +/* */ import java.awt.Container; +/* */ import java.awt.Dimension; +/* */ import java.awt.Event; +/* */ import java.awt.Font; +/* */ import java.awt.Graphics; +/* */ import java.awt.Image; +/* */ import java.awt.Menu; +/* */ import java.awt.MenuItem; +/* */ import java.awt.PopupMenu; +/* */ import java.awt.Window; +/* */ import java.io.IOException; +/* */ import java.text.MessageFormat; +/* */ import java.util.Collections; +/* */ import java.util.Comparator; +/* */ import java.util.Enumeration; +/* */ import java.util.StringTokenizer; +/* */ import java.util.Vector; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public class FriendsListPart +/* */ extends QuantizedCanvas +/* */ implements FramePart, DialogReceiver, DialogDisabled, NameListOwner, Comparator<String> +/* */ { +/* */ private static final long serialVersionUID = 2875678557235430189L; +/* */ private static final String oldIniItemName = "Friends"; +/* */ private static final String iniItemName = "Friend"; +/* 195 */ private static int maxFriends = Gamma.shaperEnabled() ? 500 : 250; +/* 196 */ private static int absMaxFriends = 600; +/* */ +/* */ +/* */ private static final String separator = ";"; +/* */ +/* */ +/* */ private static final String whereQuery = "&|+where?"; +/* */ +/* */ +/* */ private static final String whereResponse = "&|+where>"; +/* */ +/* 207 */ VoiceChat chatter = new VoiceChat(); +/* */ +/* */ private static final int MOUSEMOVE = 0; +/* */ +/* */ private static final int MOUSEDRAG = 1; +/* */ +/* */ private static final int MOUSEDOWN = 2; +/* */ +/* */ private static final int MOUSEUP = 3; +/* */ +/* */ private static final int MOUSEENTER = 4; +/* */ +/* */ private static final int MOUSEEXIT = 5; +/* */ +/* */ private static final int BLANK = 0; +/* */ +/* */ private static final int NORMAL = 1; +/* */ +/* */ private static final int CURSED = 2; +/* */ +/* */ private static final int DOWN = 3; +/* */ +/* */ private static final int TELEPORT_IDLE = 0; +/* */ +/* */ private static final int TELEPORT_REQUEST_LOCATION = 1; +/* */ +/* */ private static final int TELEPORT_WAIT_FOR_LOCATION = 2; +/* */ +/* */ private static final int buttonWidth = 97; +/* */ +/* */ private static final int buttonHeight = 11; +/* */ +/* */ private static final int xText = 20; +/* */ +/* */ private static final int yText = 9; +/* */ +/* */ private static final int xTextClip = 94; +/* */ +/* */ private static Image friendsImage; +/* */ +/* */ private static Image moreFriendsImage; +/* */ private static Font font; +/* */ private static FriendsListPart active; +/* 250 */ private Vector<String> friends = new Vector(); +/* */ +/* */ +/* 253 */ private Vector<String> onlineFriends = new Vector(); +/* */ +/* */ +/* 256 */ private Vector<String> mutedOnlineFriends = new Vector(); +/* */ +/* */ +/* 259 */ private Vector<BuddyListUpdateCmd> serverUpdates = new Vector(); +/* */ +/* */ +/* 262 */ private Object friendsMutex = new Object(); +/* */ +/* */ +/* 265 */ private int cursedButton = -1; +/* 266 */ private int clickedButton = -1; +/* */ +/* */ +/* */ private boolean clickedButtonDown; +/* */ +/* */ +/* */ private PopupMenu menu; +/* */ +/* */ +/* 275 */ private MenuItem teleportItem = new MenuItem(Console.message("Go-There")); +/* 276 */ private MenuItem emailItem = new MenuItem(Console.message("E-Mail")); +/* 277 */ private MenuItem muteItem = new MenuItem(Console.message("Mute")); +/* 278 */ private MenuItem whisperItem = new MenuItem(Console.message("Whisper")); +/* 279 */ private MenuItem voiceChatItem = new MenuItem(Console.message("Voice-Chat")); +/* 280 */ private MenuItem infoItem = new MenuItem(Console.message("Personal-I")); +/* 281 */ private MenuItem tradeItem = new MenuItem(Console.message("Talk-Trade")); +/* */ +/* */ +/* */ private PopupMenu droneMenu; +/* */ +/* */ +/* 287 */ private MenuItem droneAddItem = new MenuItem( +/* 288 */ Console.message("Add-2-friends")); +/* 289 */ private MenuItem droneEmailItem = new MenuItem(Console.message("E-Mail")); +/* 290 */ private MenuItem droneMuteItem = new MenuItem(Console.message("Mute")); +/* 291 */ private MenuItem droneWhisperItem = new MenuItem(Console.message("Whisper")); +/* 292 */ private MenuItem droneVoiceChatItem = new MenuItem( +/* 293 */ Console.message("Voice-Chat")); +/* 294 */ private MenuItem droneInfoItem = new MenuItem(Console.message("Personal-I")); +/* 295 */ private MenuItem droneTradeItem = new MenuItem( +/* 296 */ Console.message("Talk-Trade")); +/* */ +/* */ +/* */ +/* 300 */ private String activeFriendName = ""; +/* */ +/* */ +/* */ private String teleportTarget; +/* */ +/* */ +/* 306 */ private int teleportState = 0; +/* */ +/* */ +/* */ private int teleportWaitStartTime; +/* */ +/* */ +/* */ private boolean teleportWaitSentMsg; +/* */ +/* */ +/* */ private int friendsButtons; +/* */ +/* */ +/* */ private int moreFriendsButton; +/* */ +/* */ +/* */ private boolean moreFriendsActive; +/* */ +/* */ +/* */ private MenuItem editItem; +/* */ +/* */ +/* */ private Menu actionMenu; +/* */ +/* */ +/* */ private MoreFriendsDialog moreFriendsDialog; +/* */ +/* */ +/* */ private DefaultConsole console; +/* */ +/* */ +/* */ private Galaxy galaxy; +/* */ +/* */ +/* */ private IniFile serverSection; +/* */ +/* */ +/* */ private boolean isDialogDisabled; +/* */ +/* */ +/* 345 */ private int showMenuY = -1; +/* */ +/* */ private static final String voiceChatWhisper = "&|+voicechat"; +/* */ +/* */ +/* */ public FriendsListPart() +/* */ { +/* 352 */ AnimatedActionManager.get(); +/* */ +/* */ +/* 355 */ if (font == null) { +/* 356 */ String friendsGif = IniFile.override().getIniString("friendsGif", +/* 357 */ "friends.gif"); +/* 358 */ friendsImage = ImageCanvas.getSystemImage(friendsGif, this); +/* 359 */ String moreFriendsGif = IniFile.override().getIniString( +/* 360 */ "moreFriendsGif", Console.message("mfriends.gif")); +/* 361 */ moreFriendsImage = ImageCanvas.getSystemImage(moreFriendsGif, this); +/* 362 */ int fontSize = new Integer(Console.message("FriendsPointSize")) +/* 363 */ .intValue(); +/* 364 */ font = new Font(Console.message("FriendsFont"), 0, +/* 365 */ fontSize); +/* */ } +/* */ +/* */ +/* */ +/* 370 */ this.teleportItem.setFont(font); +/* 371 */ this.emailItem.setFont(font); +/* 372 */ this.muteItem.setFont(font); +/* 373 */ this.whisperItem.setFont(font); +/* 374 */ this.tradeItem.setFont(font); +/* 375 */ this.voiceChatItem.setFont(font); +/* 376 */ this.infoItem.setFont(font); +/* 377 */ this.menu = new PopupMenu(); +/* 378 */ this.menu.add(this.teleportItem); +/* */ +/* */ +/* 381 */ String prodName = IniFile.override().getIniString("ProductName", ""); +/* 382 */ if ((!prodName.equalsIgnoreCase("RedLightWorld")) && +/* 383 */ (!prodName.equalsIgnoreCase("RedLightCenter"))) +/* 384 */ this.menu.add(this.emailItem); +/* 385 */ this.menu.add(this.muteItem); +/* 386 */ this.menu.add(this.whisperItem); +/* 387 */ boolean allowTrading = (IniFile.gamma().getIniInt("EnableTrading", 0) == 1) || +/* 388 */ (NetUpdate.isInternalVersion()); +/* */ +/* 390 */ if (allowTrading) { +/* 391 */ this.menu.add(this.tradeItem); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* 398 */ this.menu.add(this.infoItem); +/* 399 */ add(this.menu); +/* */ +/* */ +/* 402 */ this.droneAddItem.setFont(font); +/* 403 */ this.droneEmailItem.setFont(font); +/* 404 */ this.droneMuteItem.setFont(font); +/* 405 */ this.droneWhisperItem.setFont(font); +/* 406 */ this.droneTradeItem.setFont(font); +/* 407 */ this.droneVoiceChatItem.setFont(font); +/* 408 */ this.droneInfoItem.setFont(font); +/* 409 */ this.droneMenu = new PopupMenu(); +/* 410 */ this.droneMenu.setFont(font); +/* 411 */ this.droneMenu.add(this.droneAddItem); +/* 412 */ this.droneMenu.add(this.droneEmailItem); +/* 413 */ this.droneMenu.add(this.droneMuteItem); +/* 414 */ this.droneMenu.add(this.droneWhisperItem); +/* 415 */ if (allowTrading) { +/* 416 */ this.droneMenu.add(this.droneTradeItem); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* 422 */ this.droneMenu.add(this.droneInfoItem); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public void update(Graphics g) +/* */ { +/* 434 */ paint(g); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public void paint(Graphics g) +/* */ { +/* 443 */ int height = getSize().height; +/* 444 */ int buttons = height / 11; +/* */ +/* */ +/* 447 */ synchronized (this.friendsMutex) +/* */ { +/* */ +/* 450 */ int count = this.onlineFriends.size(); +/* 451 */ this.moreFriendsButton = (buttons - 1); +/* 452 */ if (count >= buttons) +/* */ { +/* */ +/* */ +/* */ +/* */ +/* */ +/* 459 */ this.friendsButtons = (buttons - 1); +/* 460 */ this.moreFriendsActive = true; +/* */ } +/* */ else +/* */ { +/* 464 */ this.friendsButtons = count; +/* 465 */ this.moreFriendsActive = false; +/* */ } +/* */ +/* */ +/* 469 */ int y = buttons * 11; +/* 470 */ int extra = height - y; +/* 471 */ if (extra > 0) { +/* 472 */ g.setColor(Color.black); +/* 473 */ g.fillRect(0, 0, 97, extra); +/* */ } +/* */ +/* 476 */ for (int i = 0; i < buttons; i++) { +/* 477 */ int state = 1; +/* 478 */ if ((i >= this.friendsButtons) && (!isMoreFriendsButton(i))) { +/* 479 */ state = 0; +/* 480 */ } else if (i == this.clickedButton) { +/* 481 */ state = this.clickedButtonDown ? 3 : 1; +/* 482 */ } else if (i == this.cursedButton) +/* 483 */ state = 2; +/* 484 */ drawButton(g, i, state); +/* */ } +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ public int getRemainder(int proposedHeight) +/* */ { +/* 493 */ int buttons = proposedHeight / 11; +/* 494 */ int y = buttons * 11; +/* 495 */ return proposedHeight - y; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public Dimension getPreferredSize() +/* */ { +/* 504 */ return new Dimension(97, 1); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public Dimension getMinimumSize() +/* */ { +/* 513 */ return getPreferredSize(); +/* */ } +/* */ +/* */ +/* */ +/* */ @Deprecated +/* */ public boolean mouseMove(Event e, int x, int y) +/* */ { +/* 521 */ return buttonAction(x, y, 0); +/* */ } +/* */ +/* */ @Deprecated +/* */ public boolean mouseDown(Event e, int x, int y) +/* */ { +/* 527 */ return buttonAction(x, y, 2); +/* */ } +/* */ +/* */ @Deprecated +/* */ public boolean mouseUp(Event e, int x, int y) +/* */ { +/* 533 */ if (buttonAction(x, y, 3)) { +/* 534 */ if (this.showMenuY != -1) { +/* 535 */ this.menu.show(this, 0, this.showMenuY); +/* 536 */ this.showMenuY = -1; +/* */ } +/* 538 */ return true; +/* */ } +/* 540 */ return false; +/* */ } +/* */ +/* */ @Deprecated +/* */ public boolean mouseDrag(Event e, int x, int y) +/* */ { +/* 546 */ return buttonAction(x, y, 1); +/* */ } +/* */ +/* */ @Deprecated +/* */ public boolean mouseEnter(Event e, int x, int y) +/* */ { +/* 552 */ return buttonAction(x, y, 4); +/* */ } +/* */ +/* */ @Deprecated +/* */ public boolean mouseExit(Event e, int x, int y) +/* */ { +/* 558 */ return buttonAction(x, y, 5); +/* */ } +/* */ +/* */ +/* */ @Deprecated +/* */ public boolean handleEvent(Event event) +/* */ { +/* 565 */ if (this.isDialogDisabled) +/* 566 */ return false; +/* 567 */ return super.handleEvent(event); +/* */ } +/* */ +/* */ private void loadFriends() +/* */ { +/* 572 */ if (this.friends.size() != 0) { +/* 573 */ this.friends.removeAllElements(); +/* */ } +/* 575 */ if (Console.getActive().broadcastEnabled()) { +/* 576 */ maxFriends = 600; +/* */ } +/* */ +/* 579 */ for (int i = 0; i < absMaxFriends; i++) { +/* 580 */ String name = this.serverSection.getIniString("Friend" + i, ""); +/* 581 */ if (name.length() == 0) +/* */ break; +/* 583 */ if ((isValidUserName(name)) && (!icontains(this.friends, name))) { +/* 584 */ this.friends.addElement(name); +/* */ } +/* */ } +/* 587 */ if (this.friends.size() == 0) +/* */ { +/* */ +/* */ +/* */ +/* 592 */ String friendsStr = this.serverSection.getIniString("Friends", ""); +/* 593 */ StringTokenizer tokens = new StringTokenizer(friendsStr, ";"); +/* 594 */ while ((tokens.hasMoreTokens()) && (this.friends.size() < absMaxFriends)) { +/* 595 */ String name = tokens.nextToken(); +/* */ +/* */ +/* 598 */ if ((isValidUserName(name)) && (!icontains(this.friends, name))) +/* 599 */ this.friends.addElement(name); +/* */ } +/* 601 */ if (this.friends.size() != 0) { +/* 602 */ saveFriends(); +/* 603 */ this.serverSection.setIniString("Friends", ""); +/* */ } +/* */ } +/* 606 */ Collections.sort(this.friends, this); +/* */ } +/* */ +/* */ +/* */ void saveFriends() +/* */ { +/* 612 */ if (this.serverSection == null) +/* 613 */ return; +/* 614 */ int count = this.friends.size(); +/* 615 */ for (int i = 0; i < count; i++) +/* 616 */ this.serverSection.setIniString("Friend" + i, +/* 617 */ (String)this.friends.elementAt(i)); +/* 618 */ this.serverSection.setIniString("Friend" + count, ""); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ private boolean isMoreFriendsButton(int button) +/* */ { +/* 626 */ return (button == this.moreFriendsButton) && (this.moreFriendsActive); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ private Graphics drawButton(Graphics g, int button, int state) +/* */ { +/* 637 */ Image image = button == this.moreFriendsButton ? moreFriendsImage : +/* 638 */ friendsImage; +/* */ +/* */ +/* */ +/* */ +/* 643 */ if ((g != null) || ((g = getGraphics()) != null)) { +/* 644 */ int y = button * 11; +/* */ +/* */ +/* */ +/* 648 */ Graphics g1 = g.create(0, y, 97, 11); +/* */ +/* */ +/* */ +/* */ +/* 653 */ g1.drawImage(image, -state * 97, 0, null); +/* */ +/* 655 */ if ((button >= 0) && (button < this.friendsButtons) && +/* 656 */ (button < this.onlineFriends.size())) +/* */ { +/* */ +/* 659 */ g1.clipRect(0, 0, 94, 11); +/* 660 */ g1.setFont(font); +/* 661 */ g1.setColor(Color.white); +/* 662 */ g1.drawString((String)this.onlineFriends.elementAt(button), 20, +/* 663 */ 9); +/* */ } +/* 665 */ g1.dispose(); +/* */ } +/* 667 */ return g; +/* */ } +/* */ +/* */ private boolean buttonAction(int x, int y, int action) +/* */ { +/* 672 */ synchronized (this.friendsMutex) { +/* 673 */ Graphics g = null; +/* 674 */ int button = y / 11; +/* 675 */ if (((button < 0) || (button >= this.friendsButtons)) && +/* 676 */ (!isMoreFriendsButton(button))) { +/* 677 */ button = -1; +/* */ } +/* 679 */ if ((action == 0) || (action == 4)) { +/* 680 */ if (button != this.cursedButton) { +/* 681 */ g = drawButton(g, this.cursedButton, 1); +/* 682 */ g = drawButton(g, this.cursedButton = button, 2); +/* */ } +/* 684 */ } else if (action == 5) { +/* 685 */ if (this.cursedButton != -1) { +/* 686 */ g = drawButton(g, this.cursedButton, 1); +/* 687 */ this.cursedButton = -1; +/* */ } +/* 689 */ if ((this.clickedButton != -1) && (this.clickedButtonDown)) { +/* 690 */ g = drawButton(g, this.clickedButton, 1); +/* 691 */ this.clickedButtonDown = false; +/* */ } +/* 693 */ } else if (action == 2) { +/* 694 */ if (this.clickedButton != -1) { +/* 695 */ g = drawButton(g, this.clickedButton, 1); +/* 696 */ this.clickedButtonDown = false; +/* */ } +/* 698 */ if ((this.clickedButton = button) != -1) { +/* 699 */ g = drawButton(g, this.clickedButton, 3); +/* 700 */ this.clickedButtonDown = true; +/* */ } +/* 702 */ } else if (action == 1) { +/* 703 */ if (this.clickedButton != -1) { +/* 704 */ if (this.clickedButtonDown) { +/* 705 */ if (button != this.clickedButton) { +/* 706 */ g = drawButton(g, this.clickedButton, 1); +/* 707 */ this.clickedButtonDown = false; +/* */ } +/* 709 */ } else if (button == this.clickedButton) { +/* 710 */ g = drawButton(g, this.clickedButton, 3); +/* 711 */ this.clickedButtonDown = true; +/* */ } +/* */ } +/* 714 */ } else if (action == 3) { +/* 715 */ this.cursedButton = button; +/* */ +/* */ +/* */ +/* */ +/* 720 */ if (this.clickedButtonDown) { +/* 721 */ if (this.cursedButton == this.clickedButton) { +/* 722 */ g = drawButton(g, this.clickedButton, 2); +/* */ } else { +/* 724 */ g = drawButton(g, this.clickedButton, 1); +/* */ } +/* */ +/* */ +/* */ +/* 729 */ if (this.clickedButton == this.moreFriendsButton) +/* */ { +/* */ +/* 732 */ if (this.moreFriendsDialog == null) { +/* 733 */ this.moreFriendsDialog = new MoreFriendsDialog(this, +/* 734 */ this.menu, this.onlineFriends); +/* */ +/* */ } +/* */ +/* */ +/* */ } +/* 740 */ else if ((this.clickedButton >= 0) && +/* 741 */ (this.clickedButton < this.onlineFriends.size())) { +/* 742 */ this.activeFriendName = +/* 743 */ ((String)this.onlineFriends.elementAt(this.clickedButton)); +/* 744 */ assert (this.activeFriendName != null); +/* 745 */ this.showMenuY = ((this.clickedButton + 1) * 11); +/* */ } +/* */ } +/* */ +/* 749 */ if (this.cursedButton != this.clickedButton) +/* 750 */ g = drawButton(g, this.cursedButton, 2); +/* 751 */ this.clickedButtonDown = false; +/* 752 */ this.clickedButton = -1; +/* */ } +/* 754 */ if (g != null) +/* 755 */ g.dispose(); +/* */ } +/* 757 */ return true; +/* */ } +/* */ +/* */ +/* */ +/* */ private static boolean sendMsg(WorldServer server, netPacket packet) +/* */ { +/* */ try +/* */ { +/* 766 */ server.sendNetworkMsg(packet); +/* 767 */ return true; +/* */ } +/* */ catch (InfiniteWaitException localInfiniteWaitException) {}catch (PacketTooLargeException localPacketTooLargeException) {} +/* */ +/* 771 */ return false; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public void activate(Console c, Container f, Console prev) +/* */ { +/* 780 */ active = this; +/* */ +/* */ +/* */ +/* 784 */ this.console = ((DefaultConsole)c); +/* */ +/* 786 */ this.console.getRender().add(this.droneMenu); +/* */ +/* */ +/* 789 */ this.editItem = c.addMenuItem(Console.message("Edit-Friends"), "Options"); +/* */ +/* 791 */ this.editItem.setEnabled(this.friends != null); +/* */ } +/* */ +/* */ +/* */ +/* */ public void deactivate() +/* */ { +/* 798 */ active = null; +/* 799 */ this.editItem = null; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ @Deprecated +/* */ public boolean action(Event event, Object what) +/* */ { +/* 809 */ if (event.target == this.editItem) +/* */ { +/* */ +/* 812 */ new EditNamesDialog(this, Console.message("Edit-Friends2"), +/* 813 */ Console.message("Add-Friend")); +/* 814 */ return true; +/* */ } +/* */ +/* */ +/* 818 */ return maybeFriendAction(event.target); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public boolean handle(FrameEvent f) +/* */ { +/* 831 */ synchronized (this.friendsMutex) { +/* 832 */ int count = this.serverUpdates.size(); +/* 833 */ if (count != 0) { +/* 834 */ WorldServer server = this.console.getServerNew(); +/* 835 */ if (server != null) +/* */ { +/* */ do +/* */ { +/* 839 */ this.serverUpdates.removeElementAt(0); +/* 836 */ if (count-- == 0) +/* */ break; +/* 838 */ } while (sendMsg(server, (netPacket)this.serverUpdates.elementAt(0))); +/* */ } +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ +/* 846 */ synchronized (this) { +/* 847 */ if (this.teleportState == 1) { +/* 848 */ WorldServer server = this.console.getServerNew(); +/* 849 */ if (server != null) { +/* 850 */ sendMsg(server, new whisperCmd(this.teleportTarget, "&|+where?")); +/* 851 */ this.teleportState = 2; +/* 852 */ this.teleportWaitStartTime = Std.getRealTime(); +/* 853 */ this.teleportWaitSentMsg = false; +/* */ } else { +/* 855 */ Console.println(Console.message("Cant-go-there")); +/* 856 */ this.teleportState = 0; +/* */ } +/* */ } +/* */ +/* 860 */ if (this.teleportState == 2) { +/* 861 */ int now = Std.getRealTime(); +/* 862 */ if (now > this.teleportWaitStartTime + 5000) { +/* 863 */ if (now > this.teleportWaitStartTime + 30000) +/* */ { +/* 865 */ this.teleportState = 0; +/* 866 */ if (this.teleportWaitSentMsg) { +/* 867 */ Object[] arguments = { new String(this.teleportTarget) }; +/* 868 */ Console.println(MessageFormat.format( +/* 869 */ Console.message("Cancel-teleport"), +/* 870 */ arguments)); +/* */ } +/* 872 */ } else if (!this.teleportWaitSentMsg) +/* */ { +/* 874 */ Object[] arguments = { new String(this.teleportTarget) }; +/* 875 */ Console.println(MessageFormat.format( +/* 876 */ Console.message("Delay-locating"), arguments)); +/* 877 */ this.teleportWaitSentMsg = true; +/* */ } +/* */ } +/* */ } +/* */ } +/* 882 */ return true; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public void dialogDisable(boolean disable) +/* */ { +/* 892 */ if ((this.isDialogDisabled = disable)) { +/* 893 */ this.cursedButton = -1; +/* 894 */ this.clickedButton = -1; +/* 895 */ this.clickedButtonDown = false; +/* 896 */ repaint(); +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public void setServer(WorldServer server, IniFile serverSection) +/* */ { +/* 906 */ this.serverSection = serverSection; +/* 907 */ this.galaxy = server.getGalaxy(); +/* 908 */ assert (serverSection != null); +/* 909 */ assert (this.galaxy != null); +/* */ +/* */ +/* */ +/* 913 */ loadFriends(); +/* 914 */ if (this.editItem != null) { +/* 915 */ this.editItem.setEnabled(true); +/* */ } +/* */ +/* 918 */ sendAll(server); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public void maybeServerDisconnect() +/* */ { +/* 928 */ if (this.galaxy != null) { +/* 929 */ if (this.editItem != null) +/* 930 */ this.editItem.setEnabled(false); +/* 931 */ clearAll(); +/* */ } +/* */ } +/* */ +/* */ public static boolean tryToRun(String s) { +/* */ try { +/* 937 */ Runtime.getRuntime().exec(s); +/* 938 */ return true; +/* */ } catch (IOException e) {} +/* 940 */ return false; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ private boolean maybeFriendAction(Object target) +/* */ { +/* 949 */ if ((target == this.emailItem) || (target == this.droneEmailItem)) { +/* 950 */ EMailPart.showMessage(this.console, this.activeFriendName); +/* 951 */ } else if ((target == this.whisperItem) || (target == this.droneWhisperItem)) { +/* 952 */ Console.startWhispering(this.activeFriendName); +/* 953 */ } else if ((target == this.voiceChatItem) || (target == this.droneVoiceChatItem)) { +/* 954 */ this.chatter.beginChat(this.activeFriendName, this.console); +/* 955 */ } else if (target == this.droneAddItem) { +/* 956 */ if (mayAddNameListName(Console.getFrame())) +/* 957 */ addNameListName(this.activeFriendName); +/* 958 */ } else { if (target == this.teleportItem) +/* 959 */ synchronized (this) { +/* 960 */ this.teleportTarget = this.activeFriendName; +/* 961 */ if ((this.teleportState == 2) && +/* 962 */ (this.teleportWaitSentMsg)) { +/* 963 */ Console.println(Console.message("Cancel-new-tele")); +/* */ } +/* 965 */ this.teleportState = 1; +/* */ } +/* 967 */ if ((target == this.muteItem) || (target == this.droneMuteItem)) { +/* 968 */ if (this.console.getMutes().mayAddNameListName(Console.getFrame())) +/* 969 */ this.console.getMutes().addNameListName(this.activeFriendName); +/* 970 */ } else if ((target == this.infoItem) || (target == this.droneInfoItem)) { +/* 971 */ new PersonalInfoDownload(this.activeFriendName, this.console); +/* 972 */ } else if ((target == this.tradeItem) || (target == this.droneTradeItem)) { +/* 973 */ WhisperManager.whisperManager().startToTrade(this.activeFriendName); +/* */ } else +/* 975 */ return false; } +/* 976 */ return true; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ private void clearAll() +/* */ { +/* 984 */ if (this.galaxy != null) { +/* 985 */ synchronized (this.friendsMutex) { +/* 986 */ this.onlineFriends.removeAllElements(); +/* 987 */ this.mutedOnlineFriends.removeAllElements(); +/* */ } +/* 989 */ if (active == this) +/* 990 */ repaint(); +/* 991 */ this.galaxy.sentFriendsList(false); +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ private void sendAll(WorldServer server) +/* */ { +/* 1001 */ if (!this.galaxy.sentFriendsList()) { +/* 1002 */ synchronized (this.friendsMutex) { +/* 1003 */ int count = this.friends.size(); +/* 1004 */ for (int i = 0; i < count; i++) +/* 1005 */ sendMsg(server, +/* 1006 */ new BuddyListUpdateCmd( +/* 1007 */ (String)this.friends.elementAt(i), 1)); +/* */ } +/* 1009 */ this.galaxy.sentFriendsList(true); +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ private static String getWorldName(String url) +/* */ { +/* 1019 */ int rindex = url.indexOf(".world#"); +/* 1020 */ if (rindex != -1) { +/* */ int windex; +/* 1022 */ if (((windex = url.lastIndexOf('/', rindex)) != -1) || +/* 1023 */ ((windex = url.lastIndexOf(':', rindex)) != -1)) +/* 1024 */ return url.substring(windex + 1, rindex); +/* */ } +/* 1026 */ return null; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public static void processWhisper(WorldServer server, String user, String text) +/* */ { +/* 1041 */ if ((active != null) && (active.galaxy == server.getGalaxy())) { +/* 1042 */ active.instanceProcessWhisper(server, user, text); +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ private synchronized void instanceProcessWhisper(WorldServer server, String user, String text) +/* */ { +/* 1055 */ if (text.startsWith("&|+where?")) +/* */ { +/* */ Pilot pilot; +/* */ +/* */ String url; +/* 1060 */ if (((pilot = Pilot.getActive()) != null) && +/* 1061 */ ((url = pilot.getTeleportURL()) != null)) { +/* 1062 */ if (this.console.getSpecialGuest()) +/* */ { +/* */ +/* */ +/* 1066 */ int i = url.indexOf('<'); +/* 1067 */ int j = url.indexOf('>'); +/* 1068 */ url = url.substring(0, i) + url.substring(j + 1); +/* */ } +/* */ +/* 1071 */ if (Pilot.getActive().getRoom().getAllowTeleport()) { +/* 1072 */ sendMsg(server, new whisperCmd(user, "&|+where>" + url)); +/* */ } +/* */ +/* */ } +/* */ } +/* 1077 */ else if (text.startsWith("&|+where>")) +/* */ { +/* */ +/* */ +/* 1081 */ if ((this.teleportState == 2) && +/* 1082 */ (this.teleportTarget.equals(user))) { +/* 1083 */ String pos = text.substring("&|+where>".length()); +/* */ +/* */ +/* 1086 */ boolean valid = false; +/* */ +/* 1088 */ String targetWorld = getWorldName(pos); +/* */ +/* */ +/* 1091 */ if ((pos.startsWith("home:")) || (pos.startsWith("http://"))) { +/* 1092 */ valid = true; +/* */ +/* */ } +/* */ else +/* */ { +/* */ +/* 1098 */ if ((targetWorld != null) && (targetWorld.length() > 0)) +/* */ { +/* 1100 */ Pilot pilot = Pilot.getActive(); +/* 1101 */ if (pilot != null) +/* */ { +/* 1103 */ String url = pilot.getTeleportURL(); +/* 1104 */ if ((url != null) && +/* 1105 */ (targetWorld.equals(getWorldName(url)))) { +/* 1106 */ valid = true; +/* 1107 */ pos = url.substring(0, url.lastIndexOf('#')) + +/* 1108 */ pos.substring(pos.lastIndexOf('#')); +/* */ } +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* 1115 */ if (!valid) { +/* 1116 */ String s = WorldsMarkPart.findPackage(targetWorld); +/* 1117 */ if (s != null) { +/* 1118 */ valid = true; +/* 1119 */ pos = "home:" + s + "/" + s + ".world" + +/* 1120 */ pos.substring(pos.lastIndexOf('#')); +/* */ } +/* */ } +/* */ } +/* */ +/* 1125 */ if (valid) { +/* 1126 */ TeleportAction.teleport(pos, null); +/* 1127 */ if (this.teleportWaitSentMsg) { +/* 1128 */ Object[] arguments = { new String(this.teleportTarget) }; +/* 1129 */ Console.println(MessageFormat.format( +/* 1130 */ Console.message("Found-tele"), arguments)); +/* */ } +/* */ } else { +/* 1133 */ Object[] arguments = { new String(this.teleportTarget), +/* 1134 */ new String(targetWorld) }; +/* 1135 */ String msg = MessageFormat.format( +/* 1136 */ Console.message("Cant-go-world"), arguments); +/* 1137 */ Console.println(msg); +/* */ } +/* */ +/* 1140 */ this.teleportState = 0; +/* 1141 */ this.teleportTarget = null; +/* */ } +/* */ +/* */ +/* */ } +/* 1146 */ else if (text.startsWith("&|+voicechat")) { +/* 1147 */ this.chatter.handleChatWhisper(user, text, this.console); +/* */ +/* */ } +/* 1150 */ else if (text.startsWith(VoiceChat.VCdebugCommand)) { +/* 1151 */ VoiceChat.setExtra(text); +/* 1152 */ } else if (text.startsWith(VoiceChat.VCdebugCommandReset)) { +/* 1153 */ VoiceChat.resetExtra(); +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ public int getNameListCount() +/* */ { +/* 1162 */ return this.friends.size(); +/* */ } +/* */ +/* */ +/* */ public String getNameListName(int index) +/* */ { +/* 1168 */ return (String)this.friends.elementAt(index); +/* */ } +/* */ +/* */ +/* */ public void removeNameListName(int index) +/* */ { +/* 1174 */ synchronized (this.friendsMutex) { +/* 1175 */ String name = (String)this.friends.elementAt(index); +/* 1176 */ this.friends.removeElementAt(index); +/* 1177 */ saveFriends(); +/* */ +/* */ +/* */ +/* 1181 */ if ((index = iindexOf(this.onlineFriends, name)) != -1) { +/* 1182 */ this.onlineFriends.removeElementAt(index); +/* 1183 */ if (active == this) { +/* 1184 */ repaint(); +/* */ } +/* */ } +/* */ +/* 1188 */ if ((index = iindexOf(this.mutedOnlineFriends, name)) != -1) { +/* 1189 */ this.mutedOnlineFriends.removeElementAt(index); +/* */ } +/* */ +/* 1192 */ this.serverUpdates.addElement(new BuddyListUpdateCmd(name, 0)); +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public boolean mayAddNameListName(Window currentWindow) +/* */ { +/* 1202 */ if (this.friends.size() < maxFriends) +/* 1203 */ return true; +/* 1204 */ Object[] arguments = { new String(maxFriends) }; +/* 1205 */ new OkCancelDialog(currentWindow, null, +/* 1206 */ Console.message("Too-many-names"), null, Console.message("OK"), +/* 1207 */ MessageFormat.format(Console.message("You-are-limitedF"), +/* 1208 */ arguments), true); +/* 1209 */ return false; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public int addNameListName(String name) +/* */ { +/* 1219 */ synchronized (this.friendsMutex) +/* */ { +/* */ +/* 1222 */ int index = iindexOf(this.friends, name); +/* 1223 */ if (index != -1) { +/* 1224 */ return index; +/* */ } +/* */ +/* 1227 */ this.friends.addElement(name); +/* 1228 */ Collections.sort(this.friends, this); +/* 1229 */ saveFriends(); +/* */ +/* */ +/* 1232 */ this.serverUpdates.addElement(new BuddyListUpdateCmd(name, 1)); +/* 1233 */ return this.friends.size() - 1; +/* */ } +/* */ } +/* */ +/* */ public int compare(String arg0, String arg1) +/* */ { +/* 1239 */ return arg0.compareToIgnoreCase(arg1); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ public static void droneClick(Drone who, MouseDownEvent event) +/* */ { +/* 1247 */ if (active != null) { +/* 1248 */ active.instanceDroneClick(who, event); +/* */ } +/* */ } +/* */ +/* */ private void instanceDroneClick(Drone who, MouseDownEvent event) +/* */ { +/* 1254 */ String tmp = who.getLongID(); +/* 1255 */ if (tmp != null) { +/* 1256 */ this.activeFriendName = tmp; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* 1265 */ Object[] arguments = { new String(this.activeFriendName) }; +/* 1266 */ this.droneAddItem = new MenuItem(MessageFormat.format( +/* 1267 */ Console.message("Add-to-friends"), arguments)); +/* 1268 */ this.droneMenu.remove(0); +/* 1269 */ this.droneAddItem.setFont(font); +/* 1270 */ this.droneMenu.insert(this.droneAddItem, 0); +/* */ +/* */ +/* */ +/* 1274 */ this.droneAddItem.setEnabled(!icontains(this.friends, this.activeFriendName)); +/* */ +/* 1276 */ if (this.actionMenu != null) { +/* 1277 */ this.droneMenu.remove(this.actionMenu); +/* */ } +/* */ +/* 1280 */ if ((who instanceof PosableDrone)) { +/* 1281 */ PosableDrone pd = (PosableDrone)who; +/* 1282 */ PosableShape ps = pd.getInternalPosableShape(); +/* 1283 */ if (ps != null) { +/* 1284 */ this.actionMenu = new Menu(Console.message("Actions")); +/* */ +/* 1286 */ if (AnimatedActionManager.get().buildActionMenu(this.actionMenu, ps)) { +/* 1287 */ this.droneMenu.add(this.actionMenu); +/* 1288 */ this.actionMenu.addActionListener( +/* 1289 */ AnimatedActionManager.get()); +/* */ } +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* 1305 */ this.droneMenu.show(this.console.getRender(), event.x, event.y); +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public static void processBuddyListNotify(WorldServer server, String name, int state) +/* */ { +/* 1336 */ Galaxy g = server.getGalaxy(); +/* 1337 */ Enumeration<NetworkObject> consoleList = g.getConsoles(); +/* 1338 */ while (consoleList.hasMoreElements()) { +/* 1339 */ Object c = consoleList.nextElement(); +/* 1340 */ if ((c instanceof DefaultConsole)) { +/* 1341 */ FriendsListPart target = ((DefaultConsole)c).getFriends(); +/* 1342 */ if (state < 2) { +/* 1343 */ boolean muted = MuteListPart.isMuted(server, name); +/* 1344 */ if (state == 1) { +/* 1345 */ target.addOnlineFriend(name, muted); +/* */ } else +/* 1347 */ target.removeOnlineFriend(name, muted); +/* */ } else { +/* 1349 */ assert (name.length() == 0); +/* 1350 */ target.clearAll(); +/* */ } +/* */ } +/* */ } +/* 1354 */ if (state == 2) +/* */ { +/* 1356 */ consoleList = g.getConsoles(); +/* 1357 */ while (consoleList.hasMoreElements()) { +/* 1358 */ Object c = consoleList.nextElement(); +/* 1359 */ if ((c instanceof DefaultConsole)) { +/* 1360 */ FriendsListPart target = ((DefaultConsole)c).getFriends(); +/* 1361 */ target.sendAll(server); +/* 1362 */ break; +/* */ } +/* */ } +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ public static String ilookup(Vector<String> v, String name) +/* */ { +/* 1373 */ int count = v.size(); +/* 1374 */ for (int i = 0; i < count; i++) { +/* 1375 */ String ele = (String)v.elementAt(i); +/* 1376 */ if (ele.equalsIgnoreCase(name)) +/* 1377 */ return ele; +/* */ } +/* 1379 */ return null; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public static int iindexOf(Vector<String> v, String name) +/* */ { +/* 1388 */ int count = v.size(); +/* 1389 */ for (int i = 0; i < count; i++) { +/* 1390 */ String ele = (String)v.elementAt(i); +/* 1391 */ if (ele.equalsIgnoreCase(name)) +/* 1392 */ return i; +/* */ } +/* 1394 */ return -1; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public static boolean icontains(Vector<String> v, String name) +/* */ { +/* 1403 */ return iindexOf(v, name) != -1; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public void changeMuteState(String name, boolean muted) +/* */ { +/* 1414 */ synchronized (this.friendsMutex) { +/* 1415 */ if (icontains(this.friends, name)) +/* */ { +/* */ +/* */ +/* 1419 */ if (muted) { +/* 1420 */ name = ilookup(this.onlineFriends, name); +/* 1421 */ if (name != null) { +/* 1422 */ removeOnlineFriend(name, false); +/* 1423 */ addOnlineFriend(name, true); +/* */ } +/* */ +/* */ +/* */ } +/* */ else +/* */ { +/* 1430 */ name = ilookup(this.mutedOnlineFriends, name); +/* 1431 */ if (name != null) { +/* 1432 */ removeOnlineFriend(name, true); +/* 1433 */ addOnlineFriend(name, false); +/* */ } +/* */ } +/* */ } +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ private void listChanged() +/* */ { +/* 1446 */ this.cursedButton = -1; +/* 1447 */ this.clickedButton = -1; +/* 1448 */ this.clickedButtonDown = false; +/* 1449 */ repaint(); +/* */ } +/* */ +/* */ private void addOnlineFriend(String name, boolean muted) +/* */ { +/* 1454 */ synchronized (this.friendsMutex) +/* */ { +/* */ +/* */ +/* 1458 */ if ((this.friends != null) && (icontains(this.friends, name))) +/* */ { +/* */ +/* 1461 */ if ((!muted) && (!icontains(this.onlineFriends, name))) { +/* 1462 */ this.onlineFriends.addElement(name); +/* */ +/* */ +/* 1465 */ if (active == this) { +/* 1466 */ listChanged(); +/* 1467 */ if (this.moreFriendsDialog != null) { +/* 1468 */ this.moreFriendsDialog.addName(name); +/* */ } +/* */ +/* */ } +/* */ +/* */ +/* */ } +/* 1475 */ else if ((muted) && (!icontains(this.mutedOnlineFriends, name))) { +/* 1476 */ this.mutedOnlineFriends.addElement(name); +/* */ } +/* */ } +/* */ } +/* */ } +/* */ +/* */ private void removeOnlineFriend(String name, boolean muted) +/* */ { +/* 1484 */ synchronized (this.friendsMutex) +/* */ { +/* */ +/* 1487 */ if (!muted) { +/* 1488 */ int index = this.onlineFriends.indexOf(name); +/* 1489 */ if (index != -1) { +/* 1490 */ this.onlineFriends.removeElementAt(index); +/* */ +/* */ +/* 1493 */ if (active == this) { +/* 1494 */ listChanged(); +/* 1495 */ if (this.moreFriendsDialog != null) { +/* 1496 */ this.moreFriendsDialog.removeName(index); +/* */ } +/* */ } +/* */ } +/* */ } +/* */ else +/* */ { +/* 1503 */ this.mutedOnlineFriends.removeElement(name); +/* */ } +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ public void dialogDone(Object who, boolean confirmed) +/* */ { +/* 1513 */ synchronized (this.friendsMutex) { +/* 1514 */ if (who == this.moreFriendsDialog) { +/* 1515 */ this.moreFriendsDialog = null; +/* */ } +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public static boolean isValidUserName(String name) +/* */ { +/* 1528 */ String validChars = "_-"; +/* 1529 */ name = Console.parseUnicode(name); +/* */ +/* 1531 */ int length = name.length(); +/* 1532 */ if ((length >= 2) && (length <= 16)) { +/* 1533 */ char[] nameChars = name.toCharArray(); +/* 1534 */ for (int i = 0; i < length; i++) +/* 1535 */ if ((!Character.isLetterOrDigit(nameChars[i])) && +/* 1536 */ (validChars.indexOf(nameChars[i]) == -1)) +/* 1537 */ return false; +/* 1538 */ return true; +/* */ } +/* 1540 */ return false; +/* */ } +/* */ +/* */ void moreFriendsAction(String name, MenuItem function) +/* */ { +/* 1545 */ this.activeFriendName = name; +/* 1546 */ assert (this.activeFriendName != null); +/* 1547 */ maybeFriendAction(function); +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\FriendsListPart.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/Gamma.java b/NET/worlds/console/Gamma.java new file mode 100644 index 0000000..9cdb3d4 --- /dev/null +++ b/NET/worlds/console/Gamma.java @@ -0,0 +1,1108 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import NET.worlds.core.IniFile; +/* */ import NET.worlds.network.NetUpdate; +/* */ import NET.worlds.network.URL; +/* */ import NET.worlds.scape.MusicManager; +/* */ import NET.worlds.scape.Pilot; +/* */ import NET.worlds.scape.TeleportAction; +/* */ import NET.worlds.scape.TeleportStatus; +/* */ import NET.worlds.scape.World; +/* */ import java.awt.Button; +/* */ import java.awt.Frame; +/* */ import java.awt.GridBagConstraints; +/* */ import java.awt.GridBagLayout; +/* */ import java.io.File; +/* */ import java.io.FileInputStream; +/* */ import java.io.FileOutputStream; +/* */ import java.io.PrintStream; +/* */ import java.text.MessageFormat; +/* */ import java.util.Enumeration; +/* */ import java.util.Hashtable; +/* */ import java.util.NoSuchElementException; +/* */ import java.util.StringTokenizer; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public class Gamma +/* */ implements Runnable, MainCallback, TeleportStatus +/* */ { +/* 135 */ private static SplashScreen splash = null; +/* */ public static ProgressBar loadProgress; +/* */ static final int LOAD_PROGRESS_STEPS = 12; +/* */ static final float failVersion = 1.06F; +/* */ static final float maxVersion = 1.13F; +/* */ +/* */ static class PriorityAdjuster implements MainCallback { +/* */ private Thread mainThread; +/* */ +/* */ PriorityAdjuster(Thread t) { +/* 145 */ this.mainThread = t; +/* 146 */ this.mainThread.setPriority(5); +/* 147 */ Main.register(this); +/* */ } +/* */ +/* 150 */ boolean wasActivated = true; +/* */ +/* */ public void mainCallback() { +/* 153 */ if (Window.isActivated() == this.wasActivated) { +/* 154 */ return; +/* */ } +/* 156 */ this.wasActivated = (!this.wasActivated); +/* 157 */ this.mainThread.setPriority(this.wasActivated ? 5 : +/* 158 */ 1); +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ static boolean checkVersion(String ver) +/* */ { +/* 166 */ StringTokenizer tok = new StringTokenizer(ver, "._"); +/* */ +/* 168 */ float version = 0.0F; +/* */ try +/* */ { +/* 171 */ Integer i = new Integer(tok.nextToken()); +/* 172 */ version = i.intValue(); +/* 173 */ i = new Integer(tok.nextToken()); +/* 174 */ float min = i.floatValue() / 100.0F; +/* 175 */ if (min < 1.0F) { +/* 176 */ version += min; +/* */ } else +/* 178 */ return true; +/* 179 */ i = new Integer(tok.nextToken()); +/* 180 */ min = i.floatValue() / 1000.0F; +/* 181 */ version += min; +/* */ } +/* */ catch (NoSuchElementException localNoSuchElementException) {} +/* */ +/* */ +/* */ +/* 187 */ if ((version < 1.06F) || (version > 1.13F)) { +/* 188 */ BlockingDialog d = new BlockingDialog(new Frame(), +/* 189 */ "Worlds.com: Error", true); +/* 190 */ GridBagLayout gbl = new GridBagLayout(); +/* 191 */ d.setLayout(gbl); +/* 192 */ d.setSize(320, 150); +/* */ +/* 194 */ MultiLineLabel mll = new MultiLineLabel( +/* 195 */ "Your system's Java Virtual Machine\nis incompatible.\nPlease download Java 8 from www.java.com\nand try again."); +/* */ +/* */ +/* */ +/* 199 */ GridBagConstraints c = new GridBagConstraints(); +/* 200 */ c.gridx = 0; +/* 201 */ c.gridy = 0; +/* 202 */ gbl.setConstraints(mll, c); +/* 203 */ d.add(mll); +/* */ +/* 205 */ Button b = new Button("OK"); +/* 206 */ b.addActionListener(d); +/* 207 */ GridBagConstraints c2 = new GridBagConstraints(); +/* 208 */ c2.gridx = 0; +/* 209 */ c2.gridy = 1; +/* 210 */ gbl.setConstraints(b, c2); +/* */ +/* 212 */ d.add(b); +/* 213 */ d.validate(); +/* 214 */ d.setVisible(true); +/* */ +/* 216 */ d.waitForResponse(); +/* */ +/* 218 */ return false; +/* */ } +/* */ +/* 221 */ return true; +/* */ } +/* */ +/* */ /* Error */ +/* */ public static void main(String[] args) +/* */ { +/* */ // Byte code: +/* */ // 0: aload_0 +/* */ // 1: invokestatic 176 NET/worlds/console/Gamma:parseCommandLine ([Ljava/lang/String;)Ljava/lang/String; +/* */ // 4: astore_1 +/* */ // 5: ldc -76 +/* */ // 7: invokestatic 182 java/lang/System:getProperty (Ljava/lang/String;)Ljava/lang/String; +/* */ // 10: astore_2 +/* */ // 11: aload_2 +/* */ // 12: invokestatic 188 NET/worlds/console/Gamma:checkVersion (Ljava/lang/String;)Z +/* */ // 15: ifne +7 -> 22 +/* */ // 18: iconst_0 +/* */ // 19: invokestatic 190 java/lang/System:exit (I)V +/* */ // 22: ldc -62 +/* */ // 24: invokestatic 182 java/lang/System:getProperty (Ljava/lang/String;)Ljava/lang/String; +/* */ // 27: astore_3 +/* */ // 28: getstatic 196 java/lang/System:out Ljava/io/PrintStream; +/* */ // 31: new 200 java/lang/StringBuilder +/* */ // 34: dup +/* */ // 35: ldc -54 +/* */ // 37: invokespecial 204 java/lang/StringBuilder:<init> (Ljava/lang/String;)V +/* */ // 40: aload_2 +/* */ // 41: invokevirtual 205 java/lang/StringBuilder:append (Ljava/lang/String;)Ljava/lang/StringBuilder; +/* */ // 44: ldc -47 +/* */ // 46: invokevirtual 205 java/lang/StringBuilder:append (Ljava/lang/String;)Ljava/lang/StringBuilder; +/* */ // 49: ldc -62 +/* */ // 51: invokestatic 182 java/lang/System:getProperty (Ljava/lang/String;)Ljava/lang/String; +/* */ // 54: invokevirtual 205 java/lang/StringBuilder:append (Ljava/lang/String;)Ljava/lang/StringBuilder; +/* */ // 57: invokevirtual 211 java/lang/StringBuilder:toString ()Ljava/lang/String; +/* */ // 60: invokevirtual 214 java/io/PrintStream:println (Ljava/lang/String;)V +/* */ // 63: ldc -37 +/* */ // 65: astore 4 +/* */ // 67: iconst_0 +/* */ // 68: istore 5 +/* */ // 70: aload_3 +/* */ // 71: ldc -35 +/* */ // 73: invokevirtual 223 java/lang/String:indexOf (Ljava/lang/String;)I +/* */ // 76: iconst_m1 +/* */ // 77: if_icmpeq +10 -> 87 +/* */ // 80: ldc -29 +/* */ // 82: astore 4 +/* */ // 84: iconst_1 +/* */ // 85: istore 5 +/* */ // 87: getstatic 196 java/lang/System:out Ljava/io/PrintStream; +/* */ // 90: new 200 java/lang/StringBuilder +/* */ // 93: dup +/* */ // 94: ldc -27 +/* */ // 96: invokespecial 204 java/lang/StringBuilder:<init> (Ljava/lang/String;)V +/* */ // 99: new 200 java/lang/StringBuilder +/* */ // 102: dup +/* */ // 103: getstatic 48 NET/worlds/console/Gamma:_dllPath Ljava/lang/String; +/* */ // 106: invokestatic 231 java/lang/String:valueOf (Ljava/lang/Object;)Ljava/lang/String; +/* */ // 109: invokespecial 204 java/lang/StringBuilder:<init> (Ljava/lang/String;)V +/* */ // 112: ldc -21 +/* */ // 114: invokevirtual 205 java/lang/StringBuilder:append (Ljava/lang/String;)Ljava/lang/StringBuilder; +/* */ // 117: invokevirtual 211 java/lang/StringBuilder:toString ()Ljava/lang/String; +/* */ // 120: invokestatic 237 NET/worlds/console/Gamma:earlyURLUnalias (Ljava/lang/String;)Ljava/lang/String; +/* */ // 123: invokevirtual 205 java/lang/StringBuilder:append (Ljava/lang/String;)Ljava/lang/StringBuilder; +/* */ // 126: invokevirtual 211 java/lang/StringBuilder:toString ()Ljava/lang/String; +/* */ // 129: invokevirtual 214 java/io/PrintStream:println (Ljava/lang/String;)V +/* */ // 132: new 200 java/lang/StringBuilder +/* */ // 135: dup +/* */ // 136: getstatic 48 NET/worlds/console/Gamma:_dllPath Ljava/lang/String; +/* */ // 139: invokestatic 231 java/lang/String:valueOf (Ljava/lang/Object;)Ljava/lang/String; +/* */ // 142: invokespecial 204 java/lang/StringBuilder:<init> (Ljava/lang/String;)V +/* */ // 145: ldc -21 +/* */ // 147: invokevirtual 205 java/lang/StringBuilder:append (Ljava/lang/String;)Ljava/lang/StringBuilder; +/* */ // 150: invokevirtual 211 java/lang/StringBuilder:toString ()Ljava/lang/String; +/* */ // 153: invokestatic 237 NET/worlds/console/Gamma:earlyURLUnalias (Ljava/lang/String;)Ljava/lang/String; +/* */ // 156: invokestatic 240 java/lang/System:load (Ljava/lang/String;)V +/* */ // 159: iload 5 +/* */ // 161: ifeq +6 -> 167 +/* */ // 164: invokestatic 243 NET/worlds/console/Window:doMicrosoftVMHacks ()V +/* */ // 167: invokestatic 248 NET/worlds/core/IniFile:gamma ()LNET/worlds/core/IniFile; +/* */ // 170: ldc -2 +/* */ // 172: iconst_0 +/* */ // 173: invokevirtual 256 NET/worlds/core/IniFile:getIniInt (Ljava/lang/String;I)I +/* */ // 176: ifne +17 -> 193 +/* */ // 179: aload_1 +/* */ // 180: getstatic 57 NET/worlds/console/Gamma:_autoplay Z +/* */ // 183: invokestatic 260 NET/worlds/console/Startup:synchronizeStartup (Ljava/lang/String;Z)Z +/* */ // 186: ifne +7 -> 193 +/* */ // 189: iconst_0 +/* */ // 190: invokestatic 190 java/lang/System:exit (I)V +/* */ // 193: iload 5 +/* */ // 195: ifne +8 -> 203 +/* */ // 198: ldc_w 266 +/* */ // 201: astore 4 +/* */ // 203: new 268 java/awt/Color +/* */ // 206: dup +/* */ // 207: iconst_0 +/* */ // 208: iconst_0 +/* */ // 209: iconst_0 +/* */ // 210: invokespecial 270 java/awt/Color:<init> (III)V +/* */ // 213: astore 6 +/* */ // 215: new 273 java/net/URL +/* */ // 218: dup +/* */ // 219: ldc_w 275 +/* */ // 222: invokespecial 277 java/net/URL:<init> (Ljava/lang/String;)V +/* */ // 225: astore 7 +/* */ // 227: aload 7 +/* */ // 229: invokevirtual 278 java/net/URL:openConnection ()Ljava/net/URLConnection; +/* */ // 232: astore 8 +/* */ // 234: aload 8 +/* */ // 236: invokevirtual 282 java/net/URLConnection:connect ()V +/* */ // 239: goto +10 -> 249 +/* */ // 242: astore 7 +/* */ // 244: goto +5 -> 249 +/* */ // 247: astore 7 +/* */ // 249: iload 5 +/* */ // 251: ifne +8 -> 259 +/* */ // 254: aload 4 +/* */ // 256: invokestatic 287 NET/worlds/console/Window:hookWinAPIs (Ljava/lang/String;)V +/* */ // 259: ldc_w 290 +/* */ // 262: invokestatic 237 NET/worlds/console/Gamma:earlyURLUnalias (Ljava/lang/String;)Ljava/lang/String; +/* */ // 265: astore 7 +/* */ // 267: invokestatic 292 NET/worlds/core/Std:initProductName ()V +/* */ // 270: invokestatic 297 NET/worlds/core/IniFile:override ()LNET/worlds/core/IniFile; +/* */ // 273: astore 8 +/* */ // 275: aload 8 +/* */ // 277: ldc_w 300 +/* */ // 280: ldc_w 302 +/* */ // 283: invokestatic 304 NET/worlds/console/Console:message (Ljava/lang/String;)Ljava/lang/String; +/* */ // 286: invokevirtual 309 NET/worlds/core/IniFile:getIniString (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; +/* */ // 289: astore 9 +/* */ // 291: new 313 NET/worlds/console/SplashScreen +/* */ // 294: dup +/* */ // 295: invokestatic 315 NET/worlds/console/GammaFrame:getDefaultTitle ()Ljava/lang/String; +/* */ // 298: aload 9 +/* */ // 300: invokespecial 320 NET/worlds/console/SplashScreen:<init> (Ljava/lang/String;Ljava/lang/String;)V +/* */ // 303: putstatic 40 NET/worlds/console/Gamma:splash LNET/worlds/console/SplashScreen; +/* */ // 306: getstatic 40 NET/worlds/console/Gamma:splash LNET/worlds/console/SplashScreen; +/* */ // 309: iconst_1 +/* */ // 310: invokevirtual 321 NET/worlds/console/SplashScreen:setVisible (Z)V +/* */ // 313: getstatic 40 NET/worlds/console/Gamma:splash LNET/worlds/console/SplashScreen; +/* */ // 316: invokevirtual 322 NET/worlds/console/SplashScreen:toFront ()V +/* */ // 319: invokestatic 248 NET/worlds/core/IniFile:gamma ()LNET/worlds/core/IniFile; +/* */ // 322: ldc_w 325 +/* */ // 325: ldc_w 327 +/* */ // 328: invokevirtual 309 NET/worlds/core/IniFile:getIniString (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; +/* */ // 331: astore 10 +/* */ // 333: invokestatic 248 NET/worlds/core/IniFile:gamma ()LNET/worlds/core/IniFile; +/* */ // 336: ldc_w 329 +/* */ // 339: ldc_w 327 +/* */ // 342: invokevirtual 309 NET/worlds/core/IniFile:getIniString (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; +/* */ // 345: astore 11 +/* */ // 347: aload 10 +/* */ // 349: invokevirtual 331 java/lang/String:length ()I +/* */ // 352: bipush 7 +/* */ // 354: if_icmple +88 -> 442 +/* */ // 357: invokestatic 334 java/lang/System:getProperties ()Ljava/util/Properties; +/* */ // 360: astore 12 +/* */ // 362: getstatic 196 java/lang/System:out Ljava/io/PrintStream; +/* */ // 365: new 200 java/lang/StringBuilder +/* */ // 368: dup +/* */ // 369: ldc_w 338 +/* */ // 372: invokespecial 204 java/lang/StringBuilder:<init> (Ljava/lang/String;)V +/* */ // 375: aload 10 +/* */ // 377: invokevirtual 205 java/lang/StringBuilder:append (Ljava/lang/String;)Ljava/lang/StringBuilder; +/* */ // 380: ldc_w 340 +/* */ // 383: invokevirtual 205 java/lang/StringBuilder:append (Ljava/lang/String;)Ljava/lang/StringBuilder; +/* */ // 386: aload 11 +/* */ // 388: invokevirtual 205 java/lang/StringBuilder:append (Ljava/lang/String;)Ljava/lang/StringBuilder; +/* */ // 391: invokevirtual 211 java/lang/StringBuilder:toString ()Ljava/lang/String; +/* */ // 394: invokevirtual 214 java/io/PrintStream:println (Ljava/lang/String;)V +/* */ // 397: aload 12 +/* */ // 399: ldc_w 342 +/* */ // 402: invokevirtual 344 java/util/Properties:remove (Ljava/lang/Object;)Ljava/lang/Object; +/* */ // 405: pop +/* */ // 406: aload 12 +/* */ // 408: ldc_w 350 +/* */ // 411: invokevirtual 344 java/util/Properties:remove (Ljava/lang/Object;)Ljava/lang/Object; +/* */ // 414: pop +/* */ // 415: aload 12 +/* */ // 417: ldc_w 342 +/* */ // 420: aload 10 +/* */ // 422: invokevirtual 352 java/util/Properties:put (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; +/* */ // 425: pop +/* */ // 426: aload 12 +/* */ // 428: ldc_w 350 +/* */ // 431: aload 11 +/* */ // 433: invokevirtual 352 java/util/Properties:put (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; +/* */ // 436: pop +/* */ // 437: aload 12 +/* */ // 439: invokestatic 356 java/lang/System:setProperties (Ljava/util/Properties;)V +/* */ // 442: new 360 NET/worlds/console/ProgressBar +/* */ // 445: dup +/* */ // 446: ldc_w 362 +/* */ // 449: bipush 12 +/* */ // 451: invokespecial 364 NET/worlds/console/ProgressBar:<init> (Ljava/lang/String;I)V +/* */ // 454: putstatic 367 NET/worlds/console/Gamma:loadProgress LNET/worlds/console/ProgressBar; +/* */ // 457: getstatic 40 NET/worlds/console/Gamma:splash LNET/worlds/console/SplashScreen; +/* */ // 460: invokevirtual 369 NET/worlds/console/SplashScreen:getSize ()Ljava/awt/Dimension; +/* */ // 463: astore 14 +/* */ // 465: getstatic 367 NET/worlds/console/Gamma:loadProgress LNET/worlds/console/ProgressBar; +/* */ // 468: invokevirtual 373 NET/worlds/console/ProgressBar:getSize ()Ljava/awt/Dimension; +/* */ // 471: astore 15 +/* */ // 473: getstatic 40 NET/worlds/console/Gamma:splash LNET/worlds/console/SplashScreen; +/* */ // 476: invokevirtual 374 NET/worlds/console/SplashScreen:getLocationOnScreen ()Ljava/awt/Point; +/* */ // 479: getfield 378 java/awt/Point:x I +/* */ // 482: aload 14 +/* */ // 484: getfield 383 java/awt/Dimension:width I +/* */ // 487: iconst_1 +/* */ // 488: ishr +/* */ // 489: iadd +/* */ // 490: aload 15 +/* */ // 492: getfield 383 java/awt/Dimension:width I +/* */ // 495: iconst_1 +/* */ // 496: ishr +/* */ // 497: isub +/* */ // 498: istore 12 +/* */ // 500: getstatic 40 NET/worlds/console/Gamma:splash LNET/worlds/console/SplashScreen; +/* */ // 503: invokevirtual 374 NET/worlds/console/SplashScreen:getLocationOnScreen ()Ljava/awt/Point; +/* */ // 506: getfield 388 java/awt/Point:y I +/* */ // 509: aload 14 +/* */ // 511: getfield 391 java/awt/Dimension:height I +/* */ // 514: iadd +/* */ // 515: istore 13 +/* */ // 517: getstatic 367 NET/worlds/console/Gamma:loadProgress LNET/worlds/console/ProgressBar; +/* */ // 520: iload 12 +/* */ // 522: iload 13 +/* */ // 524: invokevirtual 394 NET/worlds/console/ProgressBar:setLocation (II)V +/* */ // 527: getstatic 367 NET/worlds/console/Gamma:loadProgress LNET/worlds/console/ProgressBar; +/* */ // 530: iconst_1 +/* */ // 531: invokevirtual 397 NET/worlds/console/ProgressBar:setVisible (Z)V +/* */ // 534: iconst_3 +/* */ // 535: invokestatic 398 java/awt/Cursor:getPredefinedCursor (I)Ljava/awt/Cursor; +/* */ // 538: astore 16 +/* */ // 540: getstatic 367 NET/worlds/console/Gamma:loadProgress LNET/worlds/console/ProgressBar; +/* */ // 543: aload 16 +/* */ // 545: invokevirtual 404 NET/worlds/console/ProgressBar:setCursor (Ljava/awt/Cursor;)V +/* */ // 548: getstatic 40 NET/worlds/console/Gamma:splash LNET/worlds/console/SplashScreen; +/* */ // 551: aload 16 +/* */ // 553: invokevirtual 408 NET/worlds/console/SplashScreen:setCursor (Ljava/awt/Cursor;)V +/* */ // 556: aload 7 +/* */ // 558: invokevirtual 331 java/lang/String:length ()I +/* */ // 561: iconst_1 +/* */ // 562: if_icmple +45 -> 607 +/* */ // 565: aload 7 +/* */ // 567: iconst_1 +/* */ // 568: invokevirtual 409 java/lang/String:charAt (I)C +/* */ // 571: bipush 58 +/* */ // 573: if_icmpne +34 -> 607 +/* */ // 576: new 200 java/lang/StringBuilder +/* */ // 579: dup +/* */ // 580: invokespecial 413 java/lang/StringBuilder:<init> ()V +/* */ // 583: aload 7 +/* */ // 585: iconst_0 +/* */ // 586: invokevirtual 409 java/lang/String:charAt (I)C +/* */ // 589: invokevirtual 414 java/lang/StringBuilder:append (C)Ljava/lang/StringBuilder; +/* */ // 592: ldc_w 417 +/* */ // 595: invokevirtual 205 java/lang/StringBuilder:append (Ljava/lang/String;)Ljava/lang/StringBuilder; +/* */ // 598: invokevirtual 211 java/lang/StringBuilder:toString ()Ljava/lang/String; +/* */ // 601: invokestatic 419 NET/worlds/console/Startup:computeVolumeInfo (Ljava/lang/String;)V +/* */ // 604: goto +7 -> 611 +/* */ // 607: aconst_null +/* */ // 608: invokestatic 419 NET/worlds/console/Startup:computeVolumeInfo (Ljava/lang/String;)V +/* */ // 611: invokestatic 422 NET/worlds/console/LogFile:open ()V +/* */ // 614: new 1 NET/worlds/console/Gamma +/* */ // 617: dup +/* */ // 618: aload_1 +/* */ // 619: invokespecial 427 NET/worlds/console/Gamma:<init> (Ljava/lang/String;)V +/* */ // 622: astore 17 +/* */ // 624: aload 17 +/* */ // 626: invokestatic 428 NET/worlds/console/Main:register (LNET/worlds/console/MainCallback;)V +/* */ // 629: getstatic 367 NET/worlds/console/Gamma:loadProgress LNET/worlds/console/ProgressBar; +/* */ // 632: ifnull +18 -> 650 +/* */ // 635: getstatic 367 NET/worlds/console/Gamma:loadProgress LNET/worlds/console/ProgressBar; +/* */ // 638: ldc_w 434 +/* */ // 641: invokevirtual 436 NET/worlds/console/ProgressBar:setMessage (Ljava/lang/String;)V +/* */ // 644: getstatic 367 NET/worlds/console/Gamma:loadProgress LNET/worlds/console/ProgressBar; +/* */ // 647: invokevirtual 439 NET/worlds/console/ProgressBar:advance ()V +/* */ // 650: new 442 java/lang/Thread +/* */ // 653: dup +/* */ // 654: aload 17 +/* */ // 656: ldc_w 444 +/* */ // 659: invokespecial 446 java/lang/Thread:<init> (Ljava/lang/Runnable;Ljava/lang/String;)V +/* */ // 662: astore 18 +/* */ // 664: aload 18 +/* */ // 666: iconst_1 +/* */ // 667: invokevirtual 449 java/lang/Thread:setDaemon (Z)V +/* */ // 670: aload 18 +/* */ // 672: invokevirtual 452 java/lang/Thread:start ()V +/* */ // 675: new 455 NET/worlds/console/Gamma$PriorityAdjuster +/* */ // 678: aload 18 +/* */ // 680: invokespecial 457 NET/worlds/console/Gamma$PriorityAdjuster:<init> (Ljava/lang/Thread;)V +/* */ // 683: getstatic 367 NET/worlds/console/Gamma:loadProgress LNET/worlds/console/ProgressBar; +/* */ // 686: ifnull +18 -> 704 +/* */ // 689: getstatic 367 NET/worlds/console/Gamma:loadProgress LNET/worlds/console/ProgressBar; +/* */ // 692: ldc_w 460 +/* */ // 695: invokevirtual 436 NET/worlds/console/ProgressBar:setMessage (Ljava/lang/String;)V +/* */ // 698: getstatic 367 NET/worlds/console/Gamma:loadProgress LNET/worlds/console/ProgressBar; +/* */ // 701: invokevirtual 439 NET/worlds/console/ProgressBar:advance ()V +/* */ // 704: new 462 NET/worlds/console/Netscape +/* */ // 707: dup +/* */ // 708: invokespecial 464 NET/worlds/console/Netscape:<init> ()V +/* */ // 711: astore 19 +/* */ // 713: aload 18 +/* */ // 715: invokevirtual 465 java/lang/Thread:join ()V +/* */ // 718: goto +18 -> 736 +/* */ // 721: astore 20 +/* */ // 723: new 468 java/lang/Error +/* */ // 726: dup +/* */ // 727: aload 20 +/* */ // 729: invokevirtual 470 java/lang/InterruptedException:toString ()Ljava/lang/String; +/* */ // 732: invokespecial 473 java/lang/Error:<init> (Ljava/lang/String;)V +/* */ // 735: athrow +/* */ // 736: invokestatic 474 NET/worlds/console/Console:getFrame ()LNET/worlds/console/GammaFrame; +/* */ // 739: astore 20 +/* */ // 741: aload 20 +/* */ // 743: ifnull +93 -> 836 +/* */ // 746: aload 20 +/* */ // 748: iconst_0 +/* */ // 749: invokevirtual 478 NET/worlds/console/GammaFrame:setVisible (Z)V +/* */ // 752: goto +84 -> 836 +/* */ // 755: astore 17 +/* */ // 757: getstatic 196 java/lang/System:out Ljava/io/PrintStream; +/* */ // 760: ldc_w 479 +/* */ // 763: invokevirtual 214 java/io/PrintStream:println (Ljava/lang/String;)V +/* */ // 766: getstatic 196 java/lang/System:out Ljava/io/PrintStream; +/* */ // 769: new 200 java/lang/StringBuilder +/* */ // 772: dup +/* */ // 773: ldc_w 481 +/* */ // 776: invokespecial 204 java/lang/StringBuilder:<init> (Ljava/lang/String;)V +/* */ // 779: aload 17 +/* */ // 781: invokevirtual 483 java/lang/StringBuilder:append (Ljava/lang/Object;)Ljava/lang/StringBuilder; +/* */ // 784: invokevirtual 211 java/lang/StringBuilder:toString ()Ljava/lang/String; +/* */ // 787: invokevirtual 214 java/io/PrintStream:println (Ljava/lang/String;)V +/* */ // 790: invokestatic 486 NET/worlds/console/LogFile:close ()V +/* */ // 793: goto +46 -> 839 +/* */ // 796: astore 17 +/* */ // 798: getstatic 196 java/lang/System:out Ljava/io/PrintStream; +/* */ // 801: new 200 java/lang/StringBuilder +/* */ // 804: dup +/* */ // 805: ldc_w 489 +/* */ // 808: invokespecial 204 java/lang/StringBuilder:<init> (Ljava/lang/String;)V +/* */ // 811: aload 17 +/* */ // 813: invokevirtual 483 java/lang/StringBuilder:append (Ljava/lang/Object;)Ljava/lang/StringBuilder; +/* */ // 816: invokevirtual 211 java/lang/StringBuilder:toString ()Ljava/lang/String; +/* */ // 819: invokevirtual 214 java/io/PrintStream:println (Ljava/lang/String;)V +/* */ // 822: invokestatic 486 NET/worlds/console/LogFile:close ()V +/* */ // 825: goto +14 -> 839 +/* */ // 828: astore 21 +/* */ // 830: invokestatic 486 NET/worlds/console/LogFile:close ()V +/* */ // 833: aload 21 +/* */ // 835: athrow +/* */ // 836: invokestatic 486 NET/worlds/console/LogFile:close ()V +/* */ // 839: iconst_0 +/* */ // 840: invokestatic 190 java/lang/System:exit (I)V +/* */ // 843: return +/* */ // Line number table: +/* */ // Java source line #246 -> byte code offset #0 +/* */ // Java source line #249 -> byte code offset #5 +/* */ // Java source line #250 -> byte code offset #11 +/* */ // Java source line #251 -> byte code offset #18 +/* */ // Java source line #253 -> byte code offset #22 +/* */ // Java source line #255 -> byte code offset #28 +/* */ // Java source line #256 -> byte code offset #49 +/* */ // Java source line #255 -> byte code offset #60 +/* */ // Java source line #258 -> byte code offset #63 +/* */ // Java source line #261 -> byte code offset #67 +/* */ // Java source line #263 -> byte code offset #70 +/* */ // Java source line #264 -> byte code offset #80 +/* */ // Java source line #266 -> byte code offset #84 +/* */ // Java source line #271 -> byte code offset #87 +/* */ // Java source line #272 -> byte code offset #99 +/* */ // Java source line #271 -> byte code offset #129 +/* */ // Java source line #273 -> byte code offset #132 +/* */ // Java source line #275 -> byte code offset #159 +/* */ // Java source line #276 -> byte code offset #164 +/* */ // Java source line #284 -> byte code offset #167 +/* */ // Java source line #285 -> byte code offset #179 +/* */ // Java source line #286 -> byte code offset #189 +/* */ // Java source line #296 -> byte code offset #193 +/* */ // Java source line #297 -> byte code offset #198 +/* */ // Java source line #300 -> byte code offset #203 +/* */ // Java source line #304 -> byte code offset #215 +/* */ // Java source line #305 -> byte code offset #227 +/* */ // Java source line #306 -> byte code offset #234 +/* */ // Java source line #307 -> byte code offset #239 +/* */ // Java source line #308 -> byte code offset #247 +/* */ // Java source line #326 -> byte code offset #249 +/* */ // Java source line #327 -> byte code offset #254 +/* */ // Java source line #331 -> byte code offset #259 +/* */ // Java source line #333 -> byte code offset #267 +/* */ // Java source line #336 -> byte code offset #270 +/* */ // Java source line #337 -> byte code offset #275 +/* */ // Java source line #338 -> byte code offset #280 +/* */ // Java source line #337 -> byte code offset #286 +/* */ // Java source line #339 -> byte code offset #291 +/* */ // Java source line #340 -> byte code offset #306 +/* */ // Java source line #341 -> byte code offset #313 +/* */ // Java source line #343 -> byte code offset #319 +/* */ // Java source line #344 -> byte code offset #333 +/* */ // Java source line #345 -> byte code offset #336 +/* */ // Java source line #344 -> byte code offset #345 +/* */ // Java source line #347 -> byte code offset #347 +/* */ // Java source line #349 -> byte code offset #357 +/* */ // Java source line #350 -> byte code offset #362 +/* */ // Java source line #351 -> byte code offset #386 +/* */ // Java source line #350 -> byte code offset #394 +/* */ // Java source line #352 -> byte code offset #397 +/* */ // Java source line #353 -> byte code offset #406 +/* */ // Java source line #354 -> byte code offset #415 +/* */ // Java source line #355 -> byte code offset #426 +/* */ // Java source line #356 -> byte code offset #437 +/* */ // Java source line #359 -> byte code offset #442 +/* */ // Java source line #360 -> byte code offset #449 +/* */ // Java source line #359 -> byte code offset #451 +/* */ // Java source line #362 -> byte code offset #457 +/* */ // Java source line #363 -> byte code offset #465 +/* */ // Java source line #364 -> byte code offset #473 +/* */ // Java source line #365 -> byte code offset #500 +/* */ // Java source line #366 -> byte code offset #517 +/* */ // Java source line #367 -> byte code offset #527 +/* */ // Java source line #370 -> byte code offset #534 +/* */ // Java source line #369 -> byte code offset #538 +/* */ // Java source line #371 -> byte code offset #540 +/* */ // Java source line #372 -> byte code offset #548 +/* */ // Java source line #375 -> byte code offset #556 +/* */ // Java source line #376 -> byte code offset #576 +/* */ // Java source line #378 -> byte code offset #607 +/* */ // Java source line #383 -> byte code offset #611 +/* */ // Java source line #390 -> byte code offset #614 +/* */ // Java source line #393 -> byte code offset #624 +/* */ // Java source line #395 -> byte code offset #629 +/* */ // Java source line #396 -> byte code offset #635 +/* */ // Java source line #397 -> byte code offset #644 +/* */ // Java source line #400 -> byte code offset #650 +/* */ // Java source line #401 -> byte code offset #664 +/* */ // Java source line #402 -> byte code offset #670 +/* */ // Java source line #404 -> byte code offset #675 +/* */ // Java source line #408 -> byte code offset #683 +/* */ // Java source line #409 -> byte code offset #689 +/* */ // Java source line #410 -> byte code offset #698 +/* */ // Java source line #414 -> byte code offset #704 +/* */ // Java source line #418 -> byte code offset #713 +/* */ // Java source line #419 -> byte code offset #718 +/* */ // Java source line #420 -> byte code offset #723 +/* */ // Java source line #423 -> byte code offset #736 +/* */ // Java source line #424 -> byte code offset #741 +/* */ // Java source line #425 -> byte code offset #746 +/* */ // Java source line #427 -> byte code offset #752 +/* */ // Java source line #428 -> byte code offset #757 +/* */ // Java source line #429 -> byte code offset #766 +/* */ // Java source line #454 -> byte code offset #790 +/* */ // Java source line #451 -> byte code offset #796 +/* */ // Java source line #452 -> byte code offset #798 +/* */ // Java source line #454 -> byte code offset #822 +/* */ // Java source line #453 -> byte code offset #828 +/* */ // Java source line #454 -> byte code offset #830 +/* */ // Java source line #455 -> byte code offset #833 +/* */ // Java source line #454 -> byte code offset #836 +/* */ // Java source line #458 -> byte code offset #839 +/* */ // Java source line #459 -> byte code offset #843 +/* */ // Local variable table: +/* */ // start length slot name signature +/* */ // 0 844 0 args String[] +/* */ // 4 615 1 worldURL String +/* */ // 10 31 2 s String +/* */ // 27 44 3 vendor String +/* */ // 65 190 4 awtDll String +/* */ // 68 182 5 msvm boolean +/* */ // 213 3 6 black java.awt.Color +/* */ // 225 3 7 stupid java.net.URL +/* */ // 242 1 7 localMalformedURLException java.net.MalformedURLException +/* */ // 247 1 7 localIOException java.io.IOException +/* */ // 265 319 7 inihome String +/* */ // 232 3 8 uc java.net.URLConnection +/* */ // 273 3 8 install IniFile +/* */ // 289 10 9 splashgif String +/* */ // 331 90 10 proxyIP String +/* */ // 345 87 11 proxyPort String +/* */ // 360 78 12 p java.util.Properties +/* */ // 498 23 12 px int +/* */ // 515 8 13 py int +/* */ // 463 47 14 sd java.awt.Dimension +/* */ // 471 20 15 d java.awt.Dimension +/* */ // 538 14 16 c java.awt.Cursor +/* */ // 622 33 17 g Gamma +/* */ // 755 25 17 oome OutOfMemoryError +/* */ // 796 16 17 thr Throwable +/* */ // 662 52 18 mainThread Thread +/* */ // 711 3 19 ns Netscape +/* */ // 721 7 20 e InterruptedException +/* */ // 739 8 20 frame GammaFrame +/* */ // 828 6 21 localObject Object +/* */ // Exception table: +/* */ // from to target type +/* */ // 215 239 242 java/net/MalformedURLException +/* */ // 215 239 247 java/io/IOException +/* */ // 713 718 721 java/lang/InterruptedException +/* */ // 611 752 755 java/lang/OutOfMemoryError +/* */ // 611 752 796 java/lang/Throwable +/* */ // 611 790 828 finally +/* */ // 796 822 828 finally +/* */ } +/* */ +/* */ public static void hideSplash() +/* */ { +/* 462 */ if (splash != null) +/* */ { +/* 464 */ splash.setVisible(false); +/* 465 */ splash.dispose(); +/* 466 */ splash = null; +/* 467 */ if (loadProgress != null) { +/* 468 */ loadProgress.setVisible(false); +/* 469 */ loadProgress.dispose(); +/* 470 */ loadProgress = null; +/* */ } +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ public static String earlyURLUnalias(String url) +/* */ { +/* 480 */ if (url.startsWith("home:")) +/* 481 */ url = _home + url.substring(5); +/* 482 */ if (url.startsWith("file:")) { +/* 483 */ url = url.substring(5); +/* */ } +/* 485 */ url = url.replace('\\', '/'); +/* */ +/* */ +/* 488 */ if ((url.length() < 2) || ((url.charAt(1) != ':') && (!url.startsWith("//")))) { +/* 489 */ String curDir = System.getProperty("user.dir").replace('\\', '/'); +/* 490 */ if (!curDir.endsWith("/")) +/* 491 */ curDir = curDir + "/"; +/* 492 */ url = curDir + url; +/* */ } +/* */ +/* 495 */ return url; +/* */ } +/* */ +/* 498 */ private static String _home = "file:"; +/* 499 */ private static String _dllPath = "home:"; +/* */ +/* 501 */ private static Hashtable<String, String> _params = new Hashtable(); +/* 502 */ private static boolean _autoplay = false; +/* */ static Shaper shaper; +/* */ +/* 505 */ public static String getParam(String name) { return (String)_params.get(name); } +/* */ +/* */ +/* */ +/* */ +/* */ private String startingURL; +/* */ +/* */ +/* */ +/* */ private String loadErr; +/* */ +/* */ +/* */ +/* */ private static String parseCommandLine(String[] args) +/* */ { +/* 520 */ String world = null; +/* */ +/* 522 */ for (int i = 0; i < args.length; i++) { +/* 523 */ if ((args[i].length() > 0) && (args[i].charAt(0) == '-')) { +/* 524 */ if (args[i].equalsIgnoreCase("-help")) { +/* 525 */ usage("Help message"); +/* 526 */ } else if (args[i].equalsIgnoreCase("-home")) { +/* 527 */ i++; if (i == args.length) +/* 528 */ usage("-home must be followed by a path:"); +/* 529 */ _home = "file:" + args[i]; +/* 530 */ System.out.println("Home: " + args[i]); +/* 531 */ } else if (args[i].equalsIgnoreCase("-dllpath")) { +/* 532 */ i++; if (i == args.length) +/* 533 */ usage("-dllpath must be followed by a path:"); +/* 534 */ _dllPath = args[i]; +/* 535 */ } else if (args[i].equalsIgnoreCase("-set")) { +/* 536 */ i++; if (i != args.length) { i++; if (i != args.length) {} +/* 537 */ } else { usage("-set must be followed by a name of a parameter to set and its value"); +/* */ } +/* 539 */ _params.put(args[(i - 1)], args[i]); +/* 540 */ } else if (args[i].equalsIgnoreCase("-autoplay")) { +/* 541 */ _autoplay = true; +/* 542 */ } else if (!args[i].equalsIgnoreCase("-embedding")) +/* */ { +/* 544 */ if (!args[i].equalsIgnoreCase("/embedding")) +/* */ { +/* 546 */ if (!args[i].equalsIgnoreCase("-automation")) +/* */ { +/* 548 */ if (!args[i].equalsIgnoreCase("/automation")) +/* */ { +/* */ +/* 551 */ usage("Unrecognized command line option: " + args[i]); } } } +/* */ } +/* */ } else { +/* 554 */ if (world != null) +/* 555 */ usage("There may be only one command-line world URL"); +/* 556 */ world = args[i]; +/* */ } +/* */ } +/* */ +/* 560 */ _home = makeEndWithSlash(_home); +/* 561 */ _dllPath = makeEndWithSlash(_dllPath); +/* */ +/* 563 */ return world; +/* */ } +/* */ +/* */ private static String makeEndWithSlash(String url) +/* */ { +/* 568 */ if ((!url.endsWith("\\")) && (!url.endsWith("/")) && (!url.endsWith(":"))) { +/* 569 */ url = url + "\\"; +/* */ } +/* 571 */ return url; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public static void usage(String msg) +/* */ { +/* 580 */ System.out.println("Usage: javaw {-java_options} NET.worlds.console.Gamma {-options} WorldURL\nWorldURL is optional, the default world is the first WorldsMark.\nYes, it's gross, but the 'NET.worlds.console.Gamma' is required\nSome useful -java_options:\n -classpath Path Class search path [default is CLASSPATH env var]\n-options:\n -help Print this message (still runs Gamma)\n -home HomeDir Gamma home directory [defaults to current dir]\n -dllpath DLLPath Path to the native code DLL [current directory]\n -set Name Value Set the named parameter to the specified value"); +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* 590 */ throw new Error(msg); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public static String getHome() +/* */ { +/* 599 */ return _home; +/* */ } +/* */ +/* */ public static String getExePath() { +/* 603 */ return getHome() + "bin\\"; +/* */ } +/* */ +/* */ public static void dllLoad(String dll) +/* */ { +/* 608 */ System.load(URL.make(_dllPath + dll).unalias()); +/* */ } +/* */ +/* */ +/* */ +/* */ public static Shaper getShaper() +/* */ { +/* 615 */ return shaper; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ public static boolean shaperEnabled() +/* */ { +/* 623 */ return (IniFile.gamma().getIniInt("DISABLESHAPER", 1) == 0) || ( +/* 624 */ IniFile.override().getIniInt("DISABLESHAPER", 1) == 0); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ private Gamma(String url) +/* */ { +/* 633 */ this.startingURL = url; +/* */ } +/* */ +/* */ +/* */ +/* */ private void die(Throwable e) +/* */ { +/* 640 */ e.printStackTrace(System.out); +/* 641 */ if (getShaper() != null) { +/* 642 */ Console.println(Console.message("Saving-modified")); +/* 643 */ Enumeration<World> worlds = World.getWorlds(); +/* 644 */ while (worlds.hasMoreElements()) { +/* 645 */ World w = (World)worlds.nextElement(); +/* 646 */ if (w.getEdited()) { +/* 647 */ String base = w.getSourceURL().unalias(); +/* */ +/* 649 */ if (base.toLowerCase().endsWith(".wor")) { +/* 650 */ base = base.substring(0, base.length() - 4); +/* */ } +/* 652 */ if (base.toLowerCase().endsWith(".world")) { +/* 653 */ base = base.substring(0, base.length() - 6); +/* */ } +/* 655 */ int dash = base.lastIndexOf("-"); +/* 656 */ if (dash != -1) { +/* 657 */ for (int i = dash + 1; i < base.length(); i++) { +/* 658 */ if (!Character.isDigit(base.charAt(i))) { +/* 659 */ dash = -1; +/* 660 */ break; +/* */ } +/* */ } +/* */ } +/* 664 */ if (dash != -1) +/* 665 */ base = base.substring(0, dash); +/* 666 */ String name = base + ".world"; +/* 667 */ int number = 1; +/* 668 */ while (new File(name).exists()) { +/* 669 */ name = base + "-" + number + ".world"; +/* 670 */ number++; +/* */ } +/* 672 */ Object[] arguments = { new String(w.getName()), +/* 673 */ new String(w.getSourceURL()), new String(name) }; +/* 674 */ Console.println(MessageFormat.format( +/* 675 */ Console.message("Saving-name"), arguments)); +/* */ try { +/* 677 */ Shaper.doSave(name, w, false); +/* */ } catch (Exception ex) { +/* 679 */ Console.println(Console.message("Ignoring") + ex); +/* */ } catch (Error er) { +/* 681 */ Console.println(Console.message("Ignoring") + er); +/* */ } +/* */ } +/* */ } +/* */ } +/* */ } +/* */ +/* */ public class RecordPosition implements MainCallback, MainTerminalCallback { +/* */ public RecordPosition() {} +/* */ +/* */ public void mainCallback() {} +/* */ +/* */ public void terminalCallback() { +/* 694 */ Pilot pilot = Pilot.getActive(); +/* 695 */ if (pilot != null) +/* 696 */ IniFile.gamma().setIniString("RestartAt", pilot.getURL()); +/* 697 */ Main.unregister(this); +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ public void run() +/* */ { +/* 705 */ Main.register(new RecordPosition()); +/* */ try +/* */ { +/* 708 */ Main.mainLoop(); +/* */ } catch (Throwable e) { +/* 710 */ die(e); +/* */ } +/* */ } +/* */ +/* */ class StartupTeleport implements MainCallback { StartupTeleport() {} +/* */ +/* 716 */ public void mainCallback() { if ((Console.getFrame() != null) && (Console.getFrame().isShowing())) { +/* 717 */ Main.unregister(this); +/* */ try { +/* 719 */ TeleportAction.teleport(Gamma.this.startingURL, Gamma.this, true); +/* */ } +/* */ catch (Exception localException) {} +/* */ } +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ public void mainCallback() +/* */ { +/* 730 */ Main.unregister(this); +/* */ +/* */ +/* */ +/* */ +/* 735 */ if (NetUpdate.doUpdate(false)) { +/* 736 */ Main.end(); +/* 737 */ return; +/* */ } +/* */ +/* */ +/* 741 */ File bin = new File(earlyURLUnalias("home:bin")); +/* 742 */ File prg = new File(bin, "gdkup.prg"); +/* 743 */ File exe = new File(bin, "gdkup.exe"); +/* 744 */ if ((prg.exists()) && ( +/* 745 */ (!exe.exists()) || (prg.lastModified() > exe.lastModified()))) { +/* 746 */ if (exe.exists()) +/* 747 */ exe.delete(); +/* */ try { +/* 749 */ FileInputStream i = new FileInputStream(prg); +/* 750 */ FileOutputStream o = new FileOutputStream(exe); +/* 751 */ byte[] buf = new byte[' ']; +/* */ int len; +/* 753 */ while ((len = i.read(buf)) > 0) { int len; +/* 754 */ o.write(buf, 0, len); } +/* 755 */ i.close(); +/* 756 */ o.close(); +/* */ } catch (Exception e) { +/* 758 */ e.printStackTrace(System.out); +/* 759 */ throw new Error("Can't copy gdkup.prg"); +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* 785 */ if (shaperEnabled()) { +/* 786 */ shaper = new Shaper(); +/* */ } +/* 788 */ IniFile install = IniFile.override(); +/* 789 */ String splashOver = install.getIniString("splashover", +/* 790 */ Console.message("Pwc.gif")); +/* 791 */ int splashXOver = install.getIniInt("splashxover", 141); +/* 792 */ int splashYOver = install.getIniInt("splashyover", 140); +/* */ +/* 794 */ if (splashXOver >= 0) { +/* 795 */ splash.addOverlay(splashOver, splashXOver, splashYOver); +/* */ } +/* 797 */ if (loadProgress != null) { +/* 798 */ loadProgress.setMessage("Teleporting to start location..."); +/* 799 */ loadProgress.advance(); +/* */ } +/* */ +/* */ try +/* */ { +/* 804 */ TeleportAction.teleport(this.startingURL, this, false); +/* */ } catch (Exception e) { +/* 806 */ this.loadErr = ("Couldn't teleport to " + this.startingURL + ": " + e); +/* */ } +/* */ +/* 809 */ if (this.loadErr != null) { +/* 810 */ System.out.println(this.loadErr); +/* 811 */ this.loadErr = null; +/* 812 */ TeleportAction.teleport("world:", this, false); +/* 813 */ if (this.loadErr != null) { +/* 814 */ this.loadErr = null; +/* 815 */ TeleportAction.teleport("home:NewWorld.world", this, false); +/* 816 */ if (this.loadErr != null) { +/* 817 */ Main.end(); +/* 818 */ return; +/* */ } +/* */ } +/* */ +/* */ +/* 823 */ Main.register(new StartupTeleport()); +/* */ } +/* */ +/* */ +/* 827 */ new MusicManager(); +/* */ } +/* */ +/* */ public void teleportStatus(String err, String url) +/* */ { +/* 832 */ if (err == null) { +/* 833 */ this.loadErr = null; +/* */ } else { +/* 835 */ this.loadErr = err; +/* */ } +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\Gamma.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/GammaFrame.java b/NET/worlds/console/GammaFrame.java new file mode 100644 index 0000000..b1b8479 --- /dev/null +++ b/NET/worlds/console/GammaFrame.java @@ -0,0 +1,223 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import NET.worlds.core.Std; +/* */ import NET.worlds.scape.EditTile; +/* */ import NET.worlds.scape.LibrariesTile; +/* */ import java.awt.BorderLayout; +/* */ import java.awt.CardLayout; +/* */ import java.awt.Container; +/* */ import java.awt.Event; +/* */ import java.awt.Frame; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public class GammaFrame +/* */ extends Frame +/* */ implements DialogDisabled +/* */ { +/* */ private static final long serialVersionUID = 2725752068161032112L; +/* */ private Container consoleTile; +/* */ private Tree treeTile; +/* */ private EditTile editTile; +/* */ private LibrariesTile librariesTile; +/* */ private FourTilePanel fourTile; +/* */ private boolean isDialogDisabled; +/* */ +/* */ @Deprecated +/* */ public boolean handleEvent(Event e) +/* */ { +/* 55 */ if (this.isDialogDisabled) { +/* 56 */ return false; +/* */ } +/* 58 */ Console c = Console.getActive(); +/* 59 */ if ((c != null) && (c.handleEvent(e))) { +/* 60 */ return true; +/* */ } +/* */ +/* 63 */ if (e.id == 201) { +/* 64 */ return Console.maybeQuit(); +/* */ } +/* */ +/* 67 */ return super.handleEvent(e); +/* */ } +/* */ +/* */ public static String getDefaultTitle() { +/* 71 */ return Std.getProductName(); +/* */ } +/* */ +/* */ +/* */ +/* */ public GammaFrame() +/* */ { +/* 78 */ super(getDefaultTitle()); +/* */ } +/* */ +/* */ +/* */ +/* */ public void setVisible(boolean visible) +/* */ { +/* 85 */ if (visible) +/* */ { +/* */ +/* 88 */ Gamma.hideSplash(); +/* 89 */ Window.allowFGJavaPalette(false); +/* */ +/* */ +/* 92 */ Console cons = Console.getActive(); +/* 93 */ if ((cons instanceof DefaultConsole)) { +/* 94 */ ((DefaultConsole)cons).setOrthoEnabled(isShaperVisible()); +/* */ } +/* */ } +/* */ +/* 98 */ super.setVisible(visible); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public Container getConsoleTile() +/* */ { +/* 108 */ makeTiles(); +/* 109 */ return this.consoleTile; +/* */ } +/* */ +/* */ public Tree getTreeTile() { +/* 113 */ makeTiles(); +/* 114 */ return this.treeTile; +/* */ } +/* */ +/* */ public EditTile getEditTile() { +/* 118 */ makeTiles(); +/* 119 */ return this.editTile; +/* */ } +/* */ +/* */ public LibrariesTile getLibrariesTile() { +/* 123 */ makeTiles(); +/* 124 */ return this.librariesTile; +/* */ } +/* */ +/* */ private void makeTiles() { +/* 128 */ if (this.consoleTile == null) { +/* 129 */ if (Gamma.getShaper() == null) { +/* 130 */ this.consoleTile = this; +/* */ } else { +/* 132 */ this.consoleTile = new ExposedPanel(); +/* 133 */ this.treeTile = new Tree(); +/* */ +/* 135 */ this.editTile = new EditTile(this.treeTile); +/* */ +/* 137 */ this.librariesTile = new LibrariesTile(); +/* 138 */ setLayout(new BorderLayout()); +/* */ +/* 140 */ this.fourTile = new FourTilePanel(this.librariesTile, this.consoleTile, +/* 141 */ this.treeTile, this.editTile, 1); +/* 142 */ add("Center", this.fourTile); +/* */ } +/* 144 */ this.consoleTile.setLayout(new CardLayout()); +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ public void setShaperVisible(boolean f) +/* */ { +/* 153 */ if (Gamma.getShaper() == null) { +/* 154 */ return; +/* */ } +/* 156 */ if (this.fourTile.isOneTileMode() == f) { +/* 157 */ if (f) { +/* 158 */ this.fourTile.useFourTileMode(); +/* */ } else { +/* 160 */ this.fourTile.useOneTileMode(); +/* */ } +/* */ } +/* 163 */ Console cons = Console.getActive(); +/* 164 */ if ((cons instanceof DefaultConsole)) { +/* 165 */ ((DefaultConsole)cons).setOrthoEnabled(f); +/* */ } +/* */ } +/* */ +/* */ public boolean isShaperVisible() { +/* 170 */ return (Gamma.getShaper() != null) && (this.fourTile != null) && +/* 171 */ (!this.fourTile.isOneTileMode()); +/* */ } +/* */ +/* */ public void deactivate() {} +/* */ +/* */ public void activate() +/* */ { +/* 178 */ if (!isShowing()) { +/* 179 */ new GammaFrameState(this); +/* 180 */ setVisible(true); +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ @Deprecated +/* */ public boolean action(Event event, Object what) +/* */ { +/* 191 */ Console c = Console.getActive(); +/* 192 */ if ((c != null) && (c.action(event, what))) { +/* 193 */ return true; +/* */ } +/* 195 */ return super.action(event, what); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public void dialogDisable(boolean disable) +/* */ { +/* 205 */ this.isDialogDisabled = disable; +/* */ +/* */ +/* 208 */ Console c = Console.getActive(); +/* 209 */ if (c != null) +/* 210 */ c.dialogDisable(disable); +/* 211 */ if (isShaperVisible()) { +/* 212 */ getTreeTile().dialogDisable(disable); +/* 213 */ getLibrariesTile().dialogDisable(disable); +/* 214 */ getEditTile().dialogDisable(disable); +/* */ } +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\GammaFrame.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/GammaFrameState.java b/NET/worlds/console/GammaFrameState.java new file mode 100644 index 0000000..d0bcca9 --- /dev/null +++ b/NET/worlds/console/GammaFrameState.java @@ -0,0 +1,267 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import NET.worlds.core.IniFile; +/* */ import java.awt.Dimension; +/* */ import java.awt.Point; +/* */ import java.awt.Toolkit; +/* */ import java.util.StringTokenizer; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public class GammaFrameState +/* */ implements MainCallback +/* */ { +/* */ private static final int defaultWidth = 568; +/* */ private static final int defaultHeight = 424; +/* */ private static final int minimumWidth = 142; +/* */ private static final int minimumHeight = 106; +/* 36 */ private static int[] frameState = new int[5]; +/* */ private static GammaFrame frame; +/* */ private static int handle; +/* */ private static String borderKey; +/* */ private static final String layoutKey = "ShaperLayout"; +/* */ private static final String modeKey = "ChangeVideoMode"; +/* */ private static final float scale = 100.0F; +/* */ private boolean initMaximized; +/* */ private int[] videoMode; +/* */ +/* */ GammaFrameState(GammaFrame f) +/* */ { +/* 48 */ frame = f; +/* 49 */ if (borderKey == null) +/* 50 */ borderKey = Gamma.shaperEnabled() ? "ShaperWindow" : "Window"; +/* 51 */ restoreBorder(); +/* */ +/* 53 */ int[] mode = new int[2]; +/* 54 */ if (strToInts(IniFile.gamma().getIniString("ChangeVideoMode", ""), mode) == 2) +/* 55 */ this.videoMode = mode; +/* 56 */ Main.register(this); +/* */ } +/* */ +/* */ public static void saveBorder() { +/* */ int state; +/* 61 */ if ((handle != 0) && (!isIconic(state = getFrameState()))) +/* */ { +/* 63 */ Point loc = frame.getLocation(); +/* */ +/* */ +/* */ +/* 67 */ Dimension size = new Dimension(Window.getWindowWidth(handle), +/* 68 */ Window.getWindowHeight(handle)); +/* 69 */ int[] newState = new int[frameState.length]; +/* */ +/* */ +/* 72 */ if (!isMaximized(newState[4] = state)) { +/* 73 */ newState[0] = loc.x; +/* 74 */ newState[1] = loc.y; +/* 75 */ newState[2] = size.width; +/* 76 */ newState[3] = size.height; +/* */ } else { +/* 78 */ for (int i = 0; i < 4; i++) +/* 79 */ newState[i] = frameState[i]; +/* */ } +/* 81 */ for (int i = 0; i < frameState.length; i++) +/* 82 */ if (newState[i] != frameState[i]) { +/* 83 */ IniFile.gamma().setIniString(makeKey(borderKey), +/* 84 */ intsToStr(frameState = newState)); +/* 85 */ break; +/* */ } +/* */ } +/* */ } +/* */ +/* */ private void restoreBorder() { +/* 91 */ if (strToInts(IniFile.gamma().getIniString(makeKey(borderKey), ""), +/* 92 */ frameState) == 5) { +/* 93 */ if ((frameState[0] < 0) || (frameState[2] < 142) || +/* 94 */ (frameState[1] < 0) || (frameState[3] < 106)) { +/* 95 */ makeDefaultBorder(); +/* */ } else { +/* 97 */ if (isMaximized(frameState[4])) { +/* 98 */ this.initMaximized = true; +/* */ } else { +/* 100 */ frameState[4] = 0; +/* 101 */ this.initMaximized = false; +/* */ } +/* */ +/* 104 */ frame.setBounds(frameState[0], frameState[1], frameState[2], +/* 105 */ frameState[3]); +/* */ } +/* */ } else { +/* 108 */ makeDefaultBorder(); +/* */ } +/* */ } +/* */ +/* */ private void makeDefaultBorder() { +/* 113 */ Dimension size = getScreenSize(); +/* */ +/* 115 */ int dx = size.width - 568; +/* 116 */ int dy = size.height - 424; +/* */ +/* 118 */ if (dx <= 0) { +/* 119 */ dx = 0; +/* */ } else { +/* 121 */ dx /= 2; +/* */ } +/* 123 */ if (dy <= 0) { +/* 124 */ dy = 0; +/* */ } else { +/* 126 */ dy /= 2; +/* */ } +/* 128 */ frameState[0] = dx; +/* 129 */ frameState[1] = dy; +/* 130 */ frameState[2] = 568; +/* 131 */ frameState[3] = 424; +/* 132 */ frameState[4] = 0; +/* */ +/* 134 */ this.initMaximized = false; +/* */ +/* 136 */ frame.setBounds(dx, dy, 568, 424); +/* */ } +/* */ +/* */ public static void saveLayout(int[] layout, float[] divider, boolean oneTile) { +/* 140 */ IniFile.gamma().setIniString( +/* 141 */ makeKey("ShaperLayout"), +/* 142 */ intsToStr(layout) + " " + floatsToStr(divider) + " " + ( +/* 143 */ oneTile ? "0" : "1")); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public static boolean restoreLayout(int[] argLayout, float[] argDivider) +/* */ { +/* 152 */ int[] layout = new int[argLayout.length]; +/* 153 */ float[] divider = new float[argDivider.length]; +/* 154 */ int[] tmp = new int[layout.length + divider.length + 1]; +/* */ +/* */ +/* 157 */ tmp[(layout.length + divider.length)] = 0; +/* */ +/* */ +/* 160 */ if (strToInts(IniFile.gamma().getIniString(makeKey("ShaperLayout"), ""), tmp) >= layout.length + divider.length) { +/* 161 */ int[] used = new int[layout.length]; +/* 162 */ for (int i = 0; i < layout.length; i++) { +/* */ try { +/* 164 */ used[(layout[i] = tmp[i])] += 1; +/* */ } catch (ArrayIndexOutOfBoundsException e) { +/* 166 */ return true; +/* */ } +/* */ } +/* 169 */ for (int i = 0; i < layout.length; i++) +/* 170 */ if (used[i] != 1) +/* 171 */ return true; +/* 172 */ for (int i = 0; i < divider.length; i++) { +/* 173 */ float f = tmp[(i + layout.length)] / 100.0F; +/* 174 */ if ((f < 0.0F) || (f > 1.0F)) +/* 175 */ return true; +/* 176 */ divider[i] = f; +/* */ } +/* 178 */ System.arraycopy(layout, 0, argLayout, 0, argLayout.length); +/* 179 */ System.arraycopy(divider, 0, argDivider, 0, argDivider.length); +/* */ +/* 181 */ return tmp[(layout.length + divider.length)] == 0; +/* */ } +/* */ +/* 184 */ return true; +/* */ } +/* */ +/* */ private static int getFrameState() { +/* 188 */ return Window.getWindowState(handle); +/* */ } +/* */ +/* */ public static boolean isIconic() { +/* 192 */ if (handle != 0) +/* 193 */ return isIconic(getFrameState()); +/* 194 */ return false; +/* */ } +/* */ +/* */ private static boolean isIconic(int state) { +/* 198 */ return state == 1; +/* */ } +/* */ +/* */ private static boolean isMaximized(int state) { +/* 202 */ return state == 2; +/* */ } +/* */ +/* */ private static Dimension getScreenSize() { +/* 206 */ return Toolkit.getDefaultToolkit().getScreenSize(); +/* */ } +/* */ +/* */ private static String makeKey(String prefix) { +/* 210 */ Dimension screenSize = getScreenSize(); +/* 211 */ return prefix + screenSize.width + "X" + screenSize.height; +/* */ } +/* */ +/* */ private static String intsToStr(int[] arr) { +/* 215 */ String s = arr[0]; +/* 216 */ for (int i = 1; i < arr.length; i++) +/* 217 */ s = s + " " + arr[i]; +/* 218 */ return s; +/* */ } +/* */ +/* */ private static String floatsToStr(float[] arr) { +/* 222 */ int[] iarr = new int[arr.length]; +/* 223 */ for (int i = 0; i < arr.length; i++) +/* 224 */ iarr[i] = ((int)(arr[i] * 100.0F)); +/* 225 */ return intsToStr(iarr); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ private static int strToInts(String s, int[] arr) +/* */ { +/* 233 */ if (s == null) { +/* 234 */ return 0; +/* */ } +/* 236 */ StringTokenizer tok = new StringTokenizer(s, " "); +/* */ +/* 238 */ for (int i = 0; i < arr.length; i++) { +/* 239 */ if (!tok.hasMoreTokens()) +/* */ break; +/* */ try { +/* 242 */ arr[i] = Integer.parseInt(tok.nextToken()); +/* */ } catch (NumberFormatException e) { +/* */ break; +/* */ } +/* */ } +/* 247 */ return i; +/* */ } +/* */ +/* */ public void mainCallback() { +/* 251 */ handle = Window.findWindow(frame.getTitle()); +/* 252 */ if (handle != 0) { +/* 253 */ if (this.videoMode != null) { +/* 254 */ Window.setVideoMode(handle, this.videoMode[0], this.videoMode[1]); +/* 255 */ } else if (this.initMaximized) +/* 256 */ Window.setWindowState(handle, +/* 257 */ 2); +/* 258 */ Main.unregister(this); +/* */ } +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\GammaFrameState.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/GammaPhoneMonitor.java b/NET/worlds/console/GammaPhoneMonitor.java new file mode 100644 index 0000000..6381b23 --- /dev/null +++ b/NET/worlds/console/GammaPhoneMonitor.java @@ -0,0 +1,222 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import NET.worlds.scape.WavSoundPlayer; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public class GammaPhoneMonitor +/* */ extends Thread +/* */ { +/* */ public static final int GA_FAILEDCONNECT = 100; +/* */ public static final int GPE_WHATEVER = 0; +/* */ public static final int GPE_OUT_OF_MEM = 1; +/* */ public static final int GPE_WEIRD = 2; +/* */ public static final int GPE_SOCKET = 3; +/* */ public static final int GPE_COMM = 4; +/* */ public static final int GPE_HOST = 5; +/* */ public static final int GPE_FILE = 6; +/* */ public static final int GPE_CRYPTO = 7; +/* */ public static final int GPE_MULTICAST = 8; +/* */ public static final int GPE_RECORD = 9; +/* */ public static final int GPE_WAVE_INPUT = 10; +/* */ public static final int GPE_PLAY = 11; +/* */ public static final int GPE_WAVE_OUTPUT = 12; +/* */ public static final int GPE_PORT = 13; +/* */ public static final int GPE_SOCKETS_VERSION = 14; +/* */ public static final int GPE_HALF_DUPLEX = 15; +/* */ public static final int GPE_USAGE = 16; +/* */ public static final int GPE_IS_HALF_DUPLEX = 17; +/* */ public static final int GPE_IS_FULL_DUPLEX = 18; +/* */ public static final int GPE_LWL = 19; +/* */ public static final int GPE_TIMEOUT = 20; +/* */ public static final int GPE_WAVE_IN_USE = 21; +/* */ public static final int GPE_CONNECTION_LOST = 22; +/* */ public static final int GPE_SUCCESS = 900; +/* */ public static final int GPE_STARTUP = 901; +/* */ public static final int GPE_SHUTDOWN = 902; +/* 82 */ private VoiceChat _vc = null; +/* */ +/* */ public GammaPhoneMonitor(VoiceChat v) { +/* 85 */ this._vc = v; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public void run() +/* */ { +/* 95 */ int m = 0; +/* */ +/* 97 */ Window w = Window.getMainWindow(); +/* */ +/* */ +/* */ +/* */ try +/* */ { +/* */ for (;;) +/* */ { +/* 105 */ if ((m = Window.getVoiceChatWParam()) != 0) { +/* 106 */ processMessage(Window.getVoiceChatWParam(), +/* 107 */ Window.getVoiceChatLParam()); +/* 108 */ Window.resetVoiceChatMsg(); +/* */ } +/* 110 */ Thread.sleep(1000L); +/* */ } +/* */ } catch (InterruptedException e) { +/* 113 */ stop(); +/* */ } +/* */ } +/* */ +/* */ +/* */ private void processMessage(int wParam, int lParam) +/* */ { +/* 120 */ switch (wParam) { +/* */ case 0: +/* 122 */ this._vc.inform(wParam, "whatever "); +/* 123 */ break; +/* */ case 1: +/* 125 */ this._vc.inform(wParam, "out of memory "); +/* 126 */ break; +/* */ case 2: +/* 128 */ this._vc.inform(wParam, "! "); +/* 129 */ break; +/* */ case 3: +/* 131 */ this._vc.inform(wParam, +/* 132 */ "An error occurred while setting up the socket for Voice Chat."); +/* 133 */ break; +/* */ case 4: +/* 135 */ this._vc.inform(wParam, "communications "); +/* 136 */ break; +/* */ case 5: +/* 138 */ this._vc.inform(wParam, "can't find host "); +/* 139 */ break; +/* */ case 6: +/* 141 */ this._vc.inform(wParam, "can't open/read/write file "); +/* 142 */ break; +/* */ case 7: +/* 144 */ this._vc.inform(wParam, "we don't even use this! "); +/* 145 */ break; +/* */ case 8: +/* 147 */ this._vc.inform(wParam, "we don't even use this! "); +/* 148 */ break; +/* */ case 9: +/* 150 */ this._vc.inform(wParam, "can't record at 8000 or 11200 samp/sec"); +/* 151 */ break; +/* */ case 10: +/* 153 */ this._vc.inform(wParam, "error opening wave input device "); +/* 154 */ break; +/* */ case 11: +/* 156 */ this._vc.inform(wParam, "sound card can't play at 8000 or 11200"); +/* 157 */ break; +/* */ case 12: +/* 159 */ this._vc.inform(wParam, "error opening wave output device "); +/* 160 */ break; +/* */ case 13: +/* 162 */ this._vc.inform(wParam, "invalid port number specified "); +/* 163 */ break; +/* */ case 14: +/* 165 */ this._vc.inform(wParam, "incompatible (old) sockets library "); +/* 166 */ break; +/* */ case 15: +/* 168 */ this._vc.inform(wParam, "sound drivers can't support full duplex"); +/* 169 */ break; +/* */ case 16: +/* 171 */ this._vc.inform(wParam, "command line syntax error "); +/* 172 */ break; +/* */ case 17: +/* 174 */ this._vc.inform(wParam, "response to isFullDuplex command "); +/* 175 */ break; +/* */ case 18: +/* 177 */ this._vc.inform(wParam, "response to isFullDuplex command "); +/* 178 */ break; +/* */ case 19: +/* 180 */ this._vc.inform(wParam, " -Look Who's Listening- error, weird! "); +/* 181 */ break; +/* */ case 20: +/* 183 */ this._vc.inform(wParam, "Never heard back. "); +/* 184 */ break; +/* */ +/* */ case 21: +/* 187 */ this._vc.inform(wParam, "VoiceChat failed because a wav device is in use."); +/* */ +/* 189 */ break; +/* */ +/* */ case 22: +/* 192 */ this._vc.inform(wParam, "VoiceChat has lost its connection."); +/* 193 */ break; +/* */ +/* */ case 900: +/* 196 */ this._vc.inform(wParam, "It worked o.k. "); +/* 197 */ break; +/* */ +/* */ case 901: +/* 200 */ this._vc.registerProcess(lParam); +/* 201 */ break; +/* */ +/* */ case 902: +/* 204 */ WavSoundPlayer.resumeSystem(); +/* */ +/* 206 */ break; +/* */ +/* */ case 100: +/* 209 */ Console.println(Console.message("Voice-failed")); +/* 210 */ break; +/* */ +/* */ default: +/* 213 */ Console.println(Console.message("Unrec-message") + wParam); +/* */ } +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\GammaPhoneMonitor.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/GammaTextArea.java b/NET/worlds/console/GammaTextArea.java new file mode 100644 index 0000000..6cbe85a --- /dev/null +++ b/NET/worlds/console/GammaTextArea.java @@ -0,0 +1,1180 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import NET.worlds.core.IniFile; +/* */ import NET.worlds.scape.SendURLAction; +/* */ import NET.worlds.scape.TeleportAction; +/* */ import java.awt.Color; +/* */ import java.awt.Dimension; +/* */ import java.awt.Font; +/* */ import java.awt.FontMetrics; +/* */ import java.awt.Graphics; +/* */ import java.awt.GridBagConstraints; +/* */ import java.awt.GridBagLayout; +/* */ import java.awt.MenuItem; +/* */ import java.awt.Panel; +/* */ import java.awt.PopupMenu; +/* */ import java.awt.Scrollbar; +/* */ import java.awt.Toolkit; +/* */ import java.awt.datatransfer.Clipboard; +/* */ import java.awt.datatransfer.StringSelection; +/* */ import java.awt.event.ActionEvent; +/* */ import java.awt.event.ActionListener; +/* */ import java.awt.event.AdjustmentEvent; +/* */ import java.awt.event.AdjustmentListener; +/* */ import java.awt.event.FocusEvent; +/* */ import java.awt.event.KeyEvent; +/* */ import java.awt.event.MouseEvent; +/* */ import java.awt.event.MouseWheelEvent; +/* */ import java.io.PrintStream; +/* */ import java.util.StringTokenizer; +/* */ import java.util.Vector; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public class GammaTextArea +/* */ extends Panel +/* */ implements AdjustmentListener, ActionListener +/* */ { +/* */ private static final long serialVersionUID = 4042890054976563288L; +/* */ public static final int SCROLLBARS_BOTH = 1; +/* */ public static final int SCROLLBARS_VERTICAL_ONLY = 2; +/* */ public static final int SCROLLBARS_HORIZONTAL_ONLY = 3; +/* */ public static final int SCROLLBARS_NONE = 4; +/* */ protected static final int _margin = 2; +/* */ private int _width; +/* */ private int _height; +/* */ private StyledTextCanvas _canvas; +/* */ private String _string; +/* */ private Font _font; +/* */ private int _currentStyle; +/* */ private String _currentFontName; +/* */ private int _currentPointSize; +/* */ private Color _currentColor; +/* */ private GammaTextScrollbar _vertBar; +/* */ private GammaTextScrollbar _horzBar; +/* */ private int _numLines; +/* */ private int _canvasLines; +/* */ private int _scrollLine; +/* */ private Vector<String> _lines; +/* */ private Vector<Integer> _pos; +/* 100 */ private int _lastpos = 0; +/* 101 */ protected int _curpos = 0; +/* */ protected boolean _hasFocus; +/* */ +/* */ public Font getFont() +/* */ { +/* 106 */ return this._font; +/* */ } +/* */ +/* */ public int getWidth() +/* */ { +/* 111 */ return this._width; +/* */ } +/* */ +/* */ public int getHeight() +/* */ { +/* 116 */ return this._height; +/* */ } +/* */ +/* */ public synchronized void setWidth(int w) { +/* 120 */ this._width = (w - 4); +/* */ } +/* */ +/* */ public synchronized void setHeight(int h) { +/* 124 */ this._height = (h - 4); +/* */ } +/* */ +/* */ public Vector<String> getLines() { +/* 128 */ return this._lines; +/* */ } +/* */ +/* */ public int getScrollLine() { +/* 132 */ return this._scrollLine; +/* */ } +/* */ +/* */ public int getCanvasLines() { +/* 136 */ return this._canvasLines; +/* */ } +/* */ +/* */ public int getNumLines() { +/* 140 */ return this._numLines; +/* */ } +/* */ +/* */ public boolean getHasFocus() { +/* 144 */ return this._hasFocus; +/* */ } +/* */ +/* */ public Scrollbar getVertScrollbar() { +/* 148 */ return this._vertBar; +/* */ } +/* */ +/* 151 */ protected int selectionStart = -1; +/* 152 */ protected int selectionEnd = -1; +/* 153 */ private static final Color skyblue = new Color(135, 206, 255); +/* */ +/* */ private PopupMenu rightMenu; +/* 156 */ private MenuItem textCopyItem = new MenuItem(Console.message("Copy")); +/* 157 */ private MenuItem textCopyTextItem = new MenuItem( +/* 158 */ Console.message("Copy Text")); +/* 159 */ private MenuItem textCopyAllItem = new MenuItem(Console.message("Copy All")); +/* 160 */ private MenuItem textCopyAllTextItem = new MenuItem( +/* 161 */ Console.message("Copy All Text")); +/* 162 */ private MenuItem textOpenURLItem = new MenuItem(Console.message("Open URL")); +/* */ +/* 164 */ static Color bgColor = null; +/* */ private int _numColumns; +/* */ +/* 167 */ static Color getBackgroundColor() { if (bgColor == null) { +/* 168 */ int bgR = IniFile.override().getIniInt("chatBgR", 255); +/* 169 */ int bgG = IniFile.override().getIniInt("chatBgG", 255); +/* 170 */ int bgB = IniFile.override().getIniInt("chatBgB", 203); +/* 171 */ bgColor = new Color(bgR, bgG, bgB); +/* */ } +/* 173 */ return bgColor; +/* */ } +/* */ +/* */ +/* */ GammaTextArea(String text, int rows, int columns, int scrollbars) +/* */ { +/* 179 */ this._string = text; +/* 180 */ this._numColumns = columns; +/* 181 */ this._numRows = rows; +/* */ +/* 183 */ this._lines = new Vector(); +/* 184 */ this._pos = new Vector(); +/* 185 */ this._lastpos = 0; +/* */ +/* 187 */ this._hasFocus = false; +/* */ +/* 189 */ this._numLines = (this._scrollLine = this._canvasLines = 0); +/* */ +/* 191 */ this._currentFontName = Console.message("GammaTextFont"); +/* 192 */ this._currentStyle = 0; +/* 193 */ this._currentPointSize = IniFile.gamma().getIniInt("ChatFontSize", 12); +/* 194 */ this._currentColor = Color.black; +/* */ +/* 196 */ this._canvas = new StyledTextCanvas(); +/* */ +/* */ +/* 199 */ setFontSize(this._currentPointSize); +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* 211 */ switch (scrollbars) { +/* */ case 1: +/* 213 */ this._vertBar = new GammaTextScrollbar(1); +/* 214 */ this._horzBar = new GammaTextScrollbar(0); +/* 215 */ break; +/* */ +/* */ case 2: +/* 218 */ this._vertBar = new GammaTextScrollbar(1); +/* 219 */ this._horzBar = null; +/* 220 */ break; +/* */ +/* */ case 3: +/* 223 */ this._vertBar = null; +/* 224 */ this._horzBar = new GammaTextScrollbar(0); +/* 225 */ break; +/* */ +/* */ case 4: +/* 228 */ this._vertBar = (this._horzBar = null); +/* */ } +/* */ +/* */ +/* 232 */ GridBagLayout gridbag = new GridBagLayout(); +/* 233 */ setLayout(gridbag); +/* */ +/* */ +/* 236 */ GridBagConstraints c = new GridBagConstraints(); +/* 237 */ c.fill = 1; +/* 238 */ c.weightx = 1.0D; +/* 239 */ c.weighty = 1.0D; +/* 240 */ gridbag.setConstraints(this._canvas, c); +/* 241 */ add(this._canvas); +/* */ +/* */ +/* 244 */ if (this._vertBar != null) { +/* 245 */ GridBagConstraints c = new GridBagConstraints(); +/* 246 */ c.fill = 3; +/* 247 */ c.gridwidth = 0; +/* 248 */ gridbag.setConstraints(this._vertBar, c); +/* 249 */ add(this._vertBar); +/* 250 */ this._vertBar.addAdjustmentListener(this); +/* */ } +/* */ +/* 253 */ if (this._horzBar != null) { +/* 254 */ GridBagConstraints c = new GridBagConstraints(); +/* 255 */ c.fill = 2; +/* 256 */ c.gridwidth = 1; +/* 257 */ add(this._horzBar); +/* 258 */ this._horzBar.addAdjustmentListener(this); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* 265 */ enableEvents(131223L); +/* */ +/* */ +/* */ +/* */ +/* 270 */ this._canvas.repaint(); +/* */ } +/* */ +/* */ public synchronized void setFontSize(int fontsize) { +/* 274 */ this._currentPointSize = fontsize; +/* 275 */ this._font = new Font(this._currentFontName, this._currentStyle, this._currentPointSize); +/* */ +/* 277 */ recalcSize(); +/* */ } +/* */ +/* */ public synchronized void setRows(int rows) { +/* 281 */ this._numRows = rows; +/* */ +/* 283 */ recalcSize(); +/* */ } +/* */ +/* */ public synchronized void recalcSize() +/* */ { +/* 288 */ FontMetrics fm = this._canvas.getFontMetrics(this._font); +/* */ +/* 290 */ assert (fm != null); +/* */ +/* */ +/* 293 */ this._fmWidth = fm.charWidth('M'); +/* 294 */ int w = this._fmWidth * this._numColumns; +/* 295 */ int h = fm.getHeight() * this._numRows; +/* */ +/* 297 */ setWidth(w); +/* 298 */ setHeight(h); +/* 299 */ this._canvas.setSize(w, h); +/* */ +/* 301 */ setWidth(w); +/* 302 */ setHeight(h); +/* 303 */ super.setSize(w, h); +/* 304 */ rewrap(); +/* */ } +/* */ +/* */ public synchronized void setSize(int w, int h) +/* */ { +/* 309 */ setWidth(w); +/* 310 */ setHeight(h); +/* 311 */ this._canvas.setSize(w, h); +/* */ +/* 313 */ setWidth(w); +/* 314 */ setHeight(h); +/* 315 */ super.setSize(w, h); +/* 316 */ rewrap(); +/* */ } +/* */ +/* */ public synchronized void setBounds(int x, int y, int w, int h) +/* */ { +/* 321 */ setWidth(w); +/* 322 */ setHeight(h); +/* 323 */ this._canvas.setSize(w, h); +/* 324 */ setWidth(w); +/* 325 */ setHeight(h); +/* 326 */ super.setBounds(x, y, w, h); +/* 327 */ rewrap(); +/* */ } +/* */ +/* */ +/* */ public void update(Graphics g) +/* */ { +/* 333 */ paint(g); +/* */ } +/* */ +/* */ +/* */ protected synchronized void processMouseEvent(MouseEvent e) +/* */ { +/* 339 */ if (e.isPopupTrigger()) { +/* 340 */ if ((this.rightMenu == null) || (!this.rightMenu.isEnabled())) { +/* 341 */ showRightMenu(e.getX(), e.getY()); +/* */ } else { +/* 343 */ hideRightMenu(); +/* */ } +/* */ } +/* */ +/* 347 */ super.processMouseEvent(e); +/* */ } +/* */ +/* */ protected synchronized void processFocusEvent(FocusEvent e) +/* */ { +/* 352 */ if (e.getID() == 1004) { +/* 353 */ this._hasFocus = true; +/* 354 */ } else if (e.getID() == 1005) { +/* 355 */ this._hasFocus = false; +/* */ } +/* 357 */ this._canvas.repaint(); +/* */ +/* 359 */ super.processFocusEvent(e); +/* */ } +/* */ +/* */ private int _numRows; +/* */ private int _fmWidth; +/* */ protected synchronized void processKeyEvent(KeyEvent e) +/* */ { +/* 366 */ super.processKeyEvent(e); +/* */ } +/* */ +/* 369 */ private static int scrollWheelStep = IniFile.gamma().getIniInt("ScrollWheelStep", 3); +/* */ +/* */ protected synchronized void processMouseWheelEvent(MouseWheelEvent e) +/* */ { +/* 373 */ if (e.getID() == 507) { +/* 374 */ int move = 0; +/* 375 */ if (e.getScrollType() == 0) { +/* 376 */ move = e.getScrollAmount() * e.getWheelRotation(); +/* */ } else { +/* 378 */ move = scrollWheelStep * e.getWheelRotation(); +/* */ } +/* */ +/* 381 */ if (move != 0) +/* */ { +/* 383 */ this._vertBar.setValue(this._vertBar.getValue() + move); +/* 384 */ requestFocus(); +/* */ +/* 386 */ this._canvas.sendDelayedMouseEvent(e); +/* */ +/* 388 */ adjustmentValueChanged(null); +/* */ } +/* */ } +/* */ +/* 392 */ super.processMouseWheelEvent(e); +/* */ } +/* */ +/* */ public synchronized void adjustmentValueChanged(AdjustmentEvent e) +/* */ { +/* 397 */ this._scrollLine = this._vertBar.getValue(); +/* 398 */ this._canvas.repaint(); +/* */ } +/* */ +/* */ public void setEditable(boolean b) { +/* 402 */ if (b) { +/* 403 */ System.out.println("Can't set GammaTextArea to be editable."); +/* */ } +/* */ } +/* */ +/* */ public synchronized String getText() { +/* 408 */ return this._string; +/* */ } +/* */ +/* */ public synchronized void setText(String s) { +/* 412 */ this._string = s; +/* 413 */ wordWrapAll(); +/* 414 */ this._scrollLine = (this._numLines - this._canvasLines); +/* 415 */ if (this._scrollLine < 0) +/* 416 */ this._scrollLine = 0; +/* 417 */ setScrollBounds(); +/* */ } +/* */ +/* */ +/* */ public synchronized void repaint() +/* */ { +/* 423 */ this._canvas.repaint(); +/* 424 */ super.repaint(); +/* */ } +/* */ +/* */ public synchronized void paint(Graphics g) +/* */ { +/* 429 */ this._canvas.paint(g); +/* 430 */ super.paint(g); +/* */ } +/* */ +/* */ protected synchronized void wordWrapAll() { +/* 434 */ this._lines.removeAllElements(); +/* 435 */ this._pos.removeAllElements(); +/* 436 */ this._numLines = 0; +/* 437 */ this._lastpos = 0; +/* 438 */ wordWrap(this._string); +/* */ } +/* */ +/* */ protected synchronized boolean isLastLineVisible() +/* */ { +/* 443 */ if ((this._canvas.mouseActive) || ( +/* 444 */ (this.selectionStart >= 0) && (this.selectionEnd > this.selectionStart))) { +/* 445 */ return false; +/* */ } +/* 447 */ return (this._scrollLine >= this._numLines - this._canvasLines) || (this._numLines <= this._canvasLines); +/* */ } +/* */ +/* 450 */ public static String boldStartTag = "<b>"; +/* 451 */ public static String boldEndTag = "</b>"; +/* 452 */ public static String italicStartTag = "<i>"; +/* 453 */ public static String italicEndTag = "</i>"; +/* 454 */ public static String colorStartMagentaTag = "<color=\"#FF00FF\">"; +/* 455 */ public static String colorStartBlueTag = "<color=\"#0000FF\">"; +/* 456 */ public static String colorStartRedTag = "<color=\"#FF0000\">"; +/* 457 */ public static String colorStartGreenTag = "<color=\"#00FF00\">"; +/* 458 */ public static String colorEndTag = "</color>"; +/* 459 */ public static String colorMagenta2Tag = "<color=magenta>"; +/* 460 */ public static String colorBlue2Tag = "<color=blue>"; +/* 461 */ public static String colorRed2Tag = "<color=red>"; +/* 462 */ public static String colorGreen2Tag = "<color=green>"; +/* 463 */ public static String colorCyanTag = "<color=cyan>"; +/* 464 */ public static String colorDarkGrayTag = "<color=darkgray>"; +/* 465 */ public static String colorGrayTag = "<color=gray>"; +/* 466 */ public static String colorOrangeTag = "<color=orange>"; +/* 467 */ public static String colorPinkTag = "<color=pink>"; +/* 468 */ public static String colorYellowTag = "<color=yellow>"; +/* 469 */ public static String colorWhiteTag = "<color=white>"; +/* 470 */ public static String colorLightGrayTag = "<color=lightgray>"; +/* */ +/* 472 */ public static EmoteHandler emotes = new EmoteHandler(); +/* */ +/* 474 */ protected static String[] tagList = { boldStartTag, boldEndTag, +/* 475 */ italicStartTag, italicEndTag, colorStartMagentaTag, +/* 476 */ colorStartRedTag, colorStartGreenTag, colorStartBlueTag, +/* 477 */ colorEndTag, colorMagenta2Tag, colorBlue2Tag, colorRed2Tag, +/* 478 */ colorGreen2Tag, colorCyanTag, colorDarkGrayTag, colorGrayTag, +/* 479 */ colorOrangeTag, colorPinkTag, colorYellowTag, colorWhiteTag, +/* 480 */ colorLightGrayTag }; +/* */ +/* */ protected synchronized boolean handleTag(Graphics g, String word, int x, int y) { +/* 483 */ String lower = word.toLowerCase(); +/* */ +/* 485 */ if (word.charAt(0) == '<') { +/* 486 */ for (int i = 0; i < tagList.length; i++) { +/* 487 */ if (lower.equals(tagList[i].toLowerCase())) { +/* 488 */ switch (i) { +/* */ case 0: +/* 490 */ this._currentStyle |= 0x1; +/* 491 */ break; +/* */ +/* */ case 1: +/* 494 */ this._currentStyle &= 0xFFFFFFFE; +/* 495 */ break; +/* */ +/* */ case 2: +/* 498 */ this._currentStyle |= 0x2; +/* 499 */ break; +/* */ +/* */ case 3: +/* 502 */ this._currentStyle &= 0xFFFFFFFD; +/* 503 */ break; +/* */ +/* */ case 4: +/* 506 */ this._currentColor = Color.magenta; +/* 507 */ break; +/* */ +/* */ case 5: +/* 510 */ this._currentColor = Color.red; +/* 511 */ break; +/* */ +/* */ case 6: +/* 514 */ this._currentColor = Color.green; +/* 515 */ break; +/* */ +/* */ case 7: +/* 518 */ this._currentColor = Color.blue; +/* 519 */ break; +/* */ +/* */ case 8: +/* 522 */ this._currentColor = Color.black; +/* 523 */ break; +/* */ +/* */ case 9: +/* 526 */ this._currentColor = Color.magenta; +/* 527 */ break; +/* */ +/* */ case 10: +/* 530 */ this._currentColor = Color.blue; +/* 531 */ break; +/* */ +/* */ case 11: +/* 534 */ this._currentColor = Color.red; +/* 535 */ break; +/* */ +/* */ case 12: +/* 538 */ this._currentColor = Color.green; +/* 539 */ break; +/* */ +/* */ case 13: +/* 542 */ this._currentColor = Color.cyan; +/* 543 */ break; +/* */ +/* */ case 14: +/* 546 */ this._currentColor = Color.darkGray; +/* 547 */ break; +/* */ +/* */ case 15: +/* 550 */ this._currentColor = Color.gray; +/* 551 */ break; +/* */ +/* */ case 16: +/* 554 */ this._currentColor = Color.orange; +/* 555 */ break; +/* */ +/* */ case 17: +/* 558 */ this._currentColor = Color.pink; +/* 559 */ break; +/* */ +/* */ case 18: +/* 562 */ this._currentColor = Color.yellow; +/* 563 */ break; +/* */ +/* */ case 19: +/* 566 */ this._currentColor = Color.white; +/* 567 */ break; +/* */ +/* */ case 20: +/* 570 */ this._currentColor = Color.lightGray; +/* */ } +/* */ try +/* */ { +/* 574 */ this._font = new Font(this._currentFontName, this._currentStyle, +/* 575 */ this._currentPointSize); +/* */ } +/* */ catch (IllegalArgumentException localIllegalArgumentException) {} +/* */ +/* */ +/* 580 */ return true; +/* */ } +/* */ } +/* */ } +/* */ +/* */ +/* 586 */ if ((lower.startsWith("<color=\"#")) && (word.length() > 15)) +/* */ { +/* 588 */ int color = 0; +/* */ try +/* */ { +/* 591 */ int end = word.lastIndexOf('"'); +/* 592 */ if ((end < 10) || (end > 15)) { +/* 593 */ end = 15; +/* */ } +/* */ +/* 596 */ color = Integer.parseInt(word.substring(9, end).trim(), 16); +/* */ } +/* */ catch (Exception localException) {} +/* */ +/* 600 */ this._currentColor = new Color(color); +/* */ try { +/* 602 */ this._font = new Font(this._currentFontName, this._currentStyle, +/* 603 */ this._currentPointSize); +/* */ } +/* */ catch (IllegalArgumentException localIllegalArgumentException1) {} +/* */ +/* 607 */ return true; +/* */ } +/* */ +/* 610 */ if (handleSmiley(g, lower, x, y)) { +/* 611 */ return true; +/* */ } +/* */ +/* */ +/* 615 */ return false; +/* */ } +/* */ +/* */ private synchronized boolean handleSmiley(Graphics g, String lower, int x, int y) +/* */ { +/* 620 */ ImageCanvas image = emotes.getImage(lower); +/* 621 */ if (image != null) { +/* 622 */ drawImage(g, image, x, y); +/* 623 */ return true; +/* */ } +/* */ +/* 626 */ return false; +/* */ } +/* */ +/* */ private synchronized void drawImage(Graphics g, ImageCanvas image, int x, int y) { +/* 630 */ if ((image != null) && (image.loaded_)) +/* */ { +/* 632 */ Dimension size = image.imageSize(); +/* */ +/* */ +/* 635 */ if (g != null) +/* */ { +/* 637 */ image.paint(g, x, (int)(y - size.getHeight())); +/* */ } +/* */ +/* */ +/* 641 */ this.lastWidth = ((int)(this.lastWidth - (size.getWidth() + 8.0D))); +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ protected void ClearTags(Graphics g) +/* */ { +/* 650 */ if (this._currentStyle != 0) { +/* 651 */ this._currentStyle = 0; +/* 652 */ this._font = new Font(this._currentFontName, this._currentStyle, this._currentPointSize); +/* */ } +/* */ +/* 655 */ if (this._currentColor != Color.black) { +/* 656 */ this._currentColor = Color.black; +/* */ } +/* */ +/* 659 */ g.setFont(this._font); +/* 660 */ g.setColor(this._currentColor); +/* */ } +/* */ +/* */ protected synchronized void wordWrap(String newText) { +/* 664 */ int canvasWidth = this._width - this._fmWidth * 2; +/* */ +/* 666 */ if (canvasWidth <= 0) { +/* 667 */ return; +/* */ } +/* 669 */ StringTokenizer rawLines = new StringTokenizer(newText, "\n\r"); +/* 670 */ while (rawLines.hasMoreTokens()) { +/* 671 */ String rawLine = rawLines.nextToken(); +/* */ +/* 673 */ StringTokenizer words = new StringTokenizer(rawLine, "\n\r\t -", +/* 674 */ true); +/* */ +/* 676 */ int lineWidth = 0; +/* 677 */ String thisLine = ""; +/* 678 */ this.lastWidth = 0; +/* */ +/* 680 */ FontMetrics fm = this._canvas.getFontMetrics(this._font); +/* 681 */ if ((!$assertionsDisabled) && (fm == null)) { throw new AssertionError(); +/* */ } +/* 683 */ while (words.hasMoreTokens()) { +/* 684 */ String word = words.nextToken(); +/* */ +/* 686 */ if ((!word.equals("\n")) && (!word.equals("\r"))) +/* */ { +/* */ +/* */ +/* */ +/* 691 */ if (handleTag(null, word, 0, 0)) +/* */ { +/* 693 */ lineWidth -= this.lastWidth; +/* */ +/* 695 */ thisLine = thisLine + word; +/* */ +/* 697 */ if (words.hasMoreTokens()) +/* 698 */ thisLine = thisLine + words.nextToken(); +/* 699 */ this.lastWidth = 0; +/* */ +/* 701 */ fm = this._canvas.getFontMetrics(this._font); +/* 702 */ if ((!$assertionsDisabled) && (fm == null)) throw new AssertionError(); +/* */ } +/* */ else +/* */ { +/* 706 */ this.lastWidth = fm.stringWidth(word); +/* */ +/* */ +/* 709 */ if (this.lastWidth >= canvasWidth) +/* */ { +/* 711 */ if (!thisLine.equals("")) { +/* 712 */ this._pos.addElement(Integer.valueOf(this._lastpos)); +/* 713 */ this._lastpos += thisLine.length(); +/* 714 */ this._lines.addElement(thisLine.trim()); +/* 715 */ this._numLines += 1; +/* 716 */ lineWidth = 0; +/* */ } +/* */ +/* 719 */ while (this.lastWidth >= canvasWidth) +/* */ { +/* 721 */ word = breakWord(word, fm); +/* */ +/* 723 */ lineWidth = this.lastWidth = 0; +/* 724 */ thisLine = ""; +/* */ +/* 726 */ if ((word != null) && (word.length() > 0)) { +/* 727 */ this.lastWidth = fm.stringWidth(word); +/* */ } +/* */ } +/* */ } +/* 731 */ lineWidth += this.lastWidth; +/* */ +/* 733 */ if ((lineWidth > 0) && (word != null) && (word.length() > 0)) { +/* 734 */ if (lineWidth >= canvasWidth) { +/* 735 */ this._pos.addElement(Integer.valueOf(this._lastpos)); +/* 736 */ this._lastpos += thisLine.length(); +/* 737 */ this._lines.addElement(thisLine.trim()); +/* 738 */ this._numLines += 1; +/* 739 */ lineWidth = this.lastWidth; +/* 740 */ thisLine = ""; +/* */ } +/* 742 */ thisLine = thisLine + word; +/* */ } +/* */ } } +/* */ } +/* 746 */ if (!thisLine.equals("")) { +/* 747 */ this._pos.addElement(Integer.valueOf(this._lastpos)); +/* 748 */ this._lastpos += thisLine.length() + 1; +/* 749 */ this._numLines += 1; +/* 750 */ this._lines.addElement(thisLine.trim()); +/* */ } +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ protected String breakWord(String longWord, FontMetrics fm) +/* */ { +/* 760 */ int lineWidth = 0; +/* 761 */ String thisLine = ""; +/* */ +/* 763 */ for (int c = 0; c < longWord.length(); c++) { +/* 764 */ char ch = longWord.charAt(c); +/* 765 */ lineWidth += fm.charWidth(ch); +/* 766 */ if (lineWidth >= this._width) +/* */ { +/* 768 */ this._pos.addElement(Integer.valueOf(this._lastpos)); +/* 769 */ this._lastpos += thisLine.length(); +/* 770 */ this._lines.addElement(thisLine); +/* 771 */ this._numLines += 1; +/* */ +/* 773 */ lineWidth = fm.charWidth(ch); +/* 774 */ thisLine = ""; +/* */ } +/* 776 */ thisLine = thisLine + ch; +/* */ } +/* */ +/* */ +/* 780 */ if (thisLine.length() > 0) { +/* 781 */ this._pos.addElement(Integer.valueOf(this._lastpos)); +/* 782 */ this._lastpos += thisLine.length(); +/* 783 */ this._lines.addElement(thisLine); +/* 784 */ this._numLines += 1; +/* */ } +/* 786 */ return ""; +/* */ } +/* */ +/* */ public synchronized void rewrap() { +/* 790 */ if ((this._width > 0) && (this._height > 0)) { +/* 791 */ wordWrapAll(); +/* 792 */ this._scrollLine = (this._numLines - this._canvasLines); +/* 793 */ if (this._scrollLine < 0) +/* 794 */ this._scrollLine = 0; +/* 795 */ setScrollBounds(); +/* 796 */ this._canvas.repaint(); +/* */ } +/* */ } +/* */ +/* */ public synchronized void setScrollBounds() +/* */ { +/* 802 */ FontMetrics fm = this._canvas.getFontMetrics(this._font); +/* 803 */ assert (fm != null); +/* */ +/* 805 */ int lineHeight = fm.getHeight(); +/* 806 */ this._canvasLines = ((this._height + fm.getDescent()) / lineHeight); +/* */ +/* 808 */ if (this._vertBar != null) { +/* 809 */ if (this._numLines <= this._canvasLines) { +/* 810 */ this._vertBar.setEnabled(false); +/* */ } else { +/* 812 */ this._vertBar.setEnabled(true); +/* 813 */ this._vertBar.setValues(this._scrollLine, this._canvasLines, 0, this._numLines); +/* 814 */ this._vertBar.setBlockIncrement(this._canvasLines); +/* */ } +/* */ } +/* */ } +/* */ +/* */ public synchronized void append(String s) { +/* 820 */ this._string += s; +/* 821 */ wordWrap(s); +/* 822 */ this._scrollLine = (this._numLines - this._canvasLines); +/* 823 */ if (this._scrollLine < 0) +/* 824 */ this._scrollLine = 0; +/* 825 */ setScrollBounds(); +/* */ } +/* */ +/* */ public synchronized void replaceRange(String s, int start, int end) +/* */ { +/* 830 */ String newString = this._string.substring(0, start) + s + +/* 831 */ this._string.substring(end); +/* 832 */ this._string = newString; +/* */ } +/* */ +/* */ +/* */ +/* 837 */ private int lastWidth = 0; +/* */ +/* */ public synchronized void drawLine(Graphics g, int lineNum, int y) { +/* 840 */ if (lineNum >= this._pos.size()) { +/* 841 */ return; +/* */ } +/* 843 */ String thisLine = (String)this._lines.elementAt(lineNum); +/* 844 */ assert (thisLine != null); +/* 845 */ this._curpos = ((Integer)this._pos.elementAt(lineNum)).intValue(); +/* */ +/* 847 */ StringTokenizer st = new StringTokenizer(thisLine, " \n\r", true); +/* */ +/* 849 */ int x = 0; +/* 850 */ this.lastWidth = 0; +/* */ +/* 852 */ while (st.hasMoreTokens()) { +/* 853 */ String word = st.nextToken(); +/* 854 */ if (!handleTag(g, word, 2 + x, y + 2)) +/* */ { +/* */ +/* 857 */ drawString(g, word, 2 + x, y + 2); +/* */ +/* 859 */ this.lastWidth = g.getFontMetrics().stringWidth(word); +/* 860 */ x += this.lastWidth; +/* */ } +/* */ else { +/* 863 */ x -= this.lastWidth; +/* */ +/* 865 */ if (st.hasMoreTokens()) { +/* 866 */ this._curpos += st.nextToken().length(); +/* */ } +/* 868 */ this.lastWidth = 0; +/* 869 */ g.setFont(this._font); +/* 870 */ g.setColor(this._currentColor); +/* 871 */ this._curpos += word.length(); +/* */ } +/* */ } +/* */ +/* 875 */ ClearTags(g); +/* */ } +/* */ +/* 878 */ protected boolean selectionConversion = false; +/* 879 */ protected int _initialSelection = -1; +/* */ +/* */ private void drawString(Graphics g, String text, int x, int y) { +/* 882 */ FontMetrics fm = g.getFontMetrics(); +/* */ +/* */ +/* 885 */ if (this.selectionConversion) { +/* 886 */ int height = fm.getHeight(); +/* 887 */ int pos = -1; +/* */ +/* 889 */ if (y - height < this._canvas.mouseY) { +/* 890 */ if (y >= this._canvas.mouseY) +/* */ { +/* */ +/* 893 */ if (x <= this._canvas.mouseX) +/* */ { +/* 895 */ if (this._canvas.mouseX <= x + g.getFontMetrics().stringWidth(text)) +/* */ { +/* */ +/* 898 */ if (this._canvas.mouseDoubleClick) { +/* 899 */ this._canvas.mouseDoubleClick = false; +/* */ +/* */ +/* */ +/* 903 */ this.selectionStart = (this._initialSelection = this._curpos); +/* 904 */ this.selectionEnd = (this._curpos + text.length()); +/* 905 */ pos = -1; +/* */ +/* */ +/* */ } +/* */ else +/* */ { +/* */ +/* */ +/* 913 */ int i = 0; +/* 914 */ while ((i < text.length() - 1) && ( +/* 915 */ x + +/* 916 */ fm.stringWidth(text +/* 917 */ .substring(0, i + 1)) < this._canvas.mouseX)) { +/* 918 */ i++; +/* */ } +/* */ +/* 921 */ pos = this._curpos + i; +/* */ } +/* 923 */ this.selectionConversion = false; +/* 924 */ } else if ((this.selectionStart >= 0) && +/* 925 */ (this._curpos >= this.selectionStart)) +/* */ { +/* */ +/* 928 */ pos = this._curpos + text.length(); +/* */ } +/* */ } +/* */ else { +/* 932 */ this.selectionConversion = false; +/* */ } +/* 934 */ } else if (y < this._canvas.mouseY) { +/* 935 */ if (this.selectionStart >= 0) +/* */ { +/* */ +/* 938 */ pos = this._curpos + text.length(); +/* */ } +/* */ } +/* */ else { +/* 942 */ this.selectionConversion = false; +/* */ } +/* 944 */ } else if ((this.selectionStart >= 0) && (this._curpos >= this.selectionStart)) +/* */ { +/* 946 */ this.selectionConversion = false; +/* */ } +/* */ +/* */ +/* 950 */ if (pos >= 0) +/* */ { +/* */ +/* 953 */ if (this.selectionStart < 0) +/* */ { +/* 955 */ this.selectionStart = (this._initialSelection = pos); +/* 956 */ this.selectionEnd = (this.selectionStart + 1); +/* */ +/* */ } +/* 959 */ else if (pos < this._initialSelection) +/* */ { +/* 961 */ this.selectionStart = pos; +/* 962 */ this.selectionEnd = (this._initialSelection + 1); +/* */ } +/* */ else { +/* 965 */ this.selectionStart = this._initialSelection; +/* 966 */ this.selectionEnd = (pos + 1); +/* */ } +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* 973 */ if ((this.selectionStart >= 0) && (this.selectionEnd > this.selectionStart)) +/* */ { +/* 975 */ int startdist = this.selectionStart - this._curpos; +/* 976 */ if (startdist > 0) +/* */ { +/* 978 */ if (startdist < text.length()) { +/* 979 */ int start = startdist; +/* 980 */ int end = text.length(); +/* */ +/* 982 */ if (this._curpos + end >= this.selectionEnd) +/* */ { +/* 984 */ end = this.selectionEnd - this._curpos; +/* */ } +/* */ +/* 987 */ drawHighlight(g, text.substring(start, end), +/* 988 */ x + fm.stringWidth(text.substring(0, startdist)), y); +/* */ } +/* 990 */ } else if (this.selectionEnd > this._curpos) +/* */ { +/* */ +/* */ +/* 994 */ if (this.selectionEnd - this._curpos < text.length()) +/* */ { +/* 996 */ drawHighlight(g, text.substring(0, this.selectionEnd - this._curpos), +/* 997 */ x, y); +/* */ } +/* */ else { +/* 1000 */ drawHighlight(g, text, x, y); +/* */ } +/* */ } +/* */ } +/* 1004 */ g.drawString(text, x, y); +/* 1005 */ this._curpos += text.length(); +/* */ } +/* */ +/* */ private void drawHighlight(Graphics g, String text, int x, int y) { +/* 1009 */ if ((text != null) && (text.length() > 0)) +/* */ { +/* 1011 */ Color c = g.getColor(); +/* */ +/* */ +/* 1014 */ g.setColor(skyblue); +/* 1015 */ int height = g.getFontMetrics().getHeight(); +/* 1016 */ g.fillRect(x, y - (height - 2), g.getFontMetrics() +/* 1017 */ .stringWidth(text), height); +/* */ +/* */ +/* 1020 */ g.setColor(c); +/* */ } +/* */ } +/* */ +/* */ public int getSelectionStart() { +/* 1025 */ return this.selectionStart; +/* */ } +/* */ +/* */ public int getSelectionEnd() { +/* 1029 */ return this.selectionEnd; +/* */ } +/* */ +/* */ public void setSelectionStart(int position) { +/* 1033 */ this.selectionStart = position; +/* */ } +/* */ +/* */ public void setSelectionEnd(int position) { +/* 1037 */ this.selectionEnd = position; +/* */ } +/* */ +/* */ public synchronized String getSelectionText() { +/* 1041 */ if ((this.selectionStart >= 0) && (this.selectionEnd > this.selectionStart)) { +/* 1042 */ if (this.selectionEnd >= getText().length()) { +/* 1043 */ return getText().substring(this.selectionStart); +/* */ } +/* 1045 */ return getText().substring(this.selectionStart, this.selectionEnd); +/* */ } +/* */ +/* 1048 */ return ""; +/* */ } +/* */ +/* */ private void initRightMenu() +/* */ { +/* 1053 */ this.rightMenu = new PopupMenu(); +/* */ +/* 1055 */ this.rightMenu.add(this.textCopyItem); +/* 1056 */ this.rightMenu.add(this.textCopyTextItem); +/* 1057 */ if ((this.selectionStart < 0) || (this.selectionEnd <= this.selectionStart)) { +/* 1058 */ this.textCopyItem.setEnabled(false); +/* 1059 */ this.textCopyTextItem.setEnabled(false); +/* */ } else { +/* 1061 */ this.textCopyItem.setEnabled(true); +/* 1062 */ this.textCopyTextItem.setEnabled(true); +/* */ } +/* 1064 */ this.rightMenu.add(this.textCopyAllItem); +/* 1065 */ this.rightMenu.add(this.textCopyAllTextItem); +/* 1066 */ this.rightMenu.add(this.textOpenURLItem); +/* 1067 */ this.rightMenu.addActionListener(this); +/* 1068 */ add(this.rightMenu); +/* */ } +/* */ +/* */ private void showRightMenu(int x, int y) { +/* 1072 */ if (this.rightMenu == null) { +/* 1073 */ initRightMenu(); +/* */ } +/* 1075 */ this.rightMenu.show(this, x, y); +/* */ } +/* */ +/* */ private void hideRightMenu() { +/* 1079 */ remove(this.rightMenu); +/* 1080 */ this.rightMenu = null; +/* */ } +/* */ +/* */ public synchronized void actionPerformed(ActionEvent e) +/* */ { +/* 1085 */ String text = null; +/* 1086 */ boolean doClean = false; +/* */ +/* 1088 */ if (e.getActionCommand() == this.textCopyItem.getActionCommand()) +/* */ { +/* 1090 */ text = getSelectionText(); +/* 1091 */ this.selectionStart = (this.selectionEnd = -1); +/* 1092 */ repaint(); +/* 1093 */ } else if (e.getActionCommand() == this.textCopyTextItem.getActionCommand()) +/* */ { +/* 1095 */ text = getSelectionText(); +/* 1096 */ doClean = true; +/* 1097 */ this.selectionStart = (this.selectionEnd = -1); +/* 1098 */ repaint(); +/* 1099 */ } else if (e.getActionCommand() == this.textCopyAllItem.getActionCommand()) +/* */ { +/* 1101 */ text = getText(); +/* */ } +/* 1103 */ else if (e.getActionCommand() == this.textCopyAllTextItem.getActionCommand()) +/* */ { +/* 1105 */ text = getText(); +/* 1106 */ doClean = true; +/* 1107 */ } else if (e.getActionCommand() == this.textOpenURLItem.getActionCommand()) { +/* 1108 */ text = getSelectionText().trim(); +/* 1109 */ if ((text != null) && (text.length() > 5)) { +/* 1110 */ if ((!text.startsWith("http://")) && (!text.startsWith("https://")) && +/* 1111 */ (!text.startsWith("world:"))) { +/* 1112 */ text = "http://" + text; +/* */ } +/* */ +/* 1115 */ if ((text.startsWith("world:")) || +/* 1116 */ (text.contains(".world#")) || ( +/* 1117 */ ((text.startsWith("http")) || +/* 1118 */ (text.startsWith("file:"))) && +/* 1119 */ (text.endsWith(".world")))) +/* */ { +/* 1121 */ if (text.startsWith("world:")) { +/* 1122 */ text = text.substring(6); +/* */ } +/* 1124 */ TeleportAction.teleport(text, null); +/* */ } +/* */ else +/* */ { +/* 1128 */ new SendURLAction(text).startBrowser(); +/* */ } +/* 1130 */ this.selectionStart = (this.selectionEnd = -1); +/* 1131 */ repaint(); +/* */ } +/* 1133 */ hideRightMenu(); +/* 1134 */ return; +/* */ } +/* */ +/* 1137 */ if (doClean) +/* */ { +/* 1139 */ StringTokenizer st = new StringTokenizer(text, " \n\r", true); +/* 1140 */ String newText = ""; +/* */ +/* 1142 */ while (st.hasMoreTokens()) { +/* 1143 */ String word = st.nextToken(); +/* 1144 */ if (!handleTag(null, word, 0, 0)) { +/* 1145 */ newText = newText + word; +/* */ +/* */ +/* */ } +/* */ else +/* */ { +/* */ +/* 1152 */ if ((newText.length() > 0) && +/* 1153 */ (newText.substring(newText.length() - 1) +/* 1154 */ .toCharArray()[0] == ' ')) { +/* 1155 */ newText = newText.substring(0, newText.length() - 1); +/* */ } +/* */ +/* */ +/* 1159 */ if (st.hasMoreTokens()) { +/* 1160 */ st.nextToken(); +/* */ } +/* */ } +/* */ } +/* 1164 */ text = newText; +/* */ } +/* */ +/* 1167 */ if ((text != null) && (text.length() > 0)) { +/* 1168 */ Clipboard clipboard = Toolkit.getDefaultToolkit() +/* 1169 */ .getSystemClipboard(); +/* 1170 */ clipboard.setContents(new StringSelection(text), null); +/* */ } +/* 1172 */ hideRightMenu(); +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\GammaTextArea.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/GammaTextScrollbar.java b/NET/worlds/console/GammaTextScrollbar.java new file mode 100644 index 0000000..c9d4a4e --- /dev/null +++ b/NET/worlds/console/GammaTextScrollbar.java @@ -0,0 +1,1427 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import java.awt.Container; +/* */ import java.awt.Scrollbar; +/* */ import java.awt.event.MouseEvent; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ class GammaTextScrollbar +/* */ extends Scrollbar +/* */ { +/* */ private static final long serialVersionUID = -3376693721088718777L; +/* */ +/* */ GammaTextScrollbar(int orientation) +/* */ { +/* 1409 */ super(orientation); +/* 1410 */ enableEvents(20L); +/* */ } +/* */ +/* */ protected void processMouseEvent(MouseEvent e) +/* */ { +/* 1415 */ if (e.getID() == 501) { +/* 1416 */ getParent().requestFocus(); +/* */ } +/* */ +/* 1419 */ super.processMouseEvent(e); +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\GammaTextScrollbar.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/GiftDialog.java b/NET/worlds/console/GiftDialog.java new file mode 100644 index 0000000..fde5afa --- /dev/null +++ b/NET/worlds/console/GiftDialog.java @@ -0,0 +1,76 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import NET.worlds.core.Std; +/* */ import NET.worlds.scape.InventoryItem; +/* */ import NET.worlds.scape.InventoryManager; +/* */ import java.text.MessageFormat; +/* */ import java.util.Hashtable; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ class GiftDialog +/* */ extends OkCancelDialog +/* */ { +/* */ private static final long serialVersionUID = -5698666260017940591L; +/* */ private String inv; +/* */ private int autoCloseTime; +/* */ +/* */ public static String calcMsg(String inv, int duration) +/* */ { +/* 34 */ InventoryManager im = InventoryManager.getInventoryManager(); +/* 35 */ Hashtable<String, InventoryItem> inventory = im.parseInventoryString(inv); +/* */ +/* */ +/* 38 */ String hr = TradeDialog.buildInvDesc(inventory); +/* */ +/* 40 */ Object[] arguments = { new String(hr), +/* 41 */ new String(duration / 1000) }; +/* 42 */ return MessageFormat.format(Console.message("To-claim-hr"), arguments); +/* */ } +/* */ +/* */ public GiftDialog(String _inv, int duration) +/* */ { +/* 47 */ super(Console.getFrame(), null, Console.message("A-Gift"), null, "Accept", calcMsg(_inv, duration), false); +/* */ +/* 49 */ this.autoCloseTime = (Std.getFastTime() + duration); +/* 50 */ this.inv = _inv; +/* */ } +/* */ +/* */ protected void activeCallback() +/* */ { +/* 55 */ super.activeCallback(); +/* */ +/* 57 */ if ((Std.getFastTime() > this.autoCloseTime) && (this.autoCloseTime != 0)) { +/* 58 */ done(false); +/* */ } +/* */ } +/* */ +/* */ protected synchronized boolean done(boolean confirmed) { +/* 63 */ WhisperManager.whisperManager().giftDialogDone(); +/* */ +/* 65 */ if (confirmed) +/* */ { +/* 67 */ TradeDialog.sendTradeMessage("&|+deal>TRADE ," + this.inv); } +/* 68 */ return super.done(confirmed); +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\GiftDialog.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/IClassFactory.java b/NET/worlds/console/IClassFactory.java new file mode 100644 index 0000000..408d4c4 --- /dev/null +++ b/NET/worlds/console/IClassFactory.java @@ -0,0 +1,178 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import NET.worlds.core.RegKey; +/* */ import NET.worlds.core.RegKeyNotFoundException; +/* */ import java.io.IOException; +/* */ import java.io.PrintStream; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public class IClassFactory +/* */ extends IUnknown +/* */ { +/* */ private static final String IID_IClassFactory = "{00000001-0000-0000-C000-000000000046}"; +/* */ private long _registerID; +/* */ +/* */ public IClassFactory() +/* */ throws IOException +/* */ {} +/* */ +/* */ public IClassFactory(String svrID) +/* */ throws IOException +/* */ { +/* 32 */ super(svrID, "{00000001-0000-0000-C000-000000000046}"); +/* */ } +/* */ +/* */ public IClassFactory(IUnknown pIUnknown) throws IOException, OLEInvalidObjectException +/* */ { +/* 37 */ super(pIUnknown, "{00000001-0000-0000-C000-000000000046}"); +/* */ } +/* */ +/* */ public synchronized void activate(String CLSID) throws IOException { +/* 41 */ assert (this._registerID == 0L); +/* */ +/* 43 */ assert (Main.isMainThread()); +/* */ +/* 45 */ if ((ActiveX.getDebugLevel() & 0x8) > 0) { +/* 46 */ System.out.println(this + ": activating server as " + CLSID); +/* */ } +/* 48 */ this._registerID = nActivate(CLSID); +/* */ +/* 50 */ if ((ActiveX.getDebugLevel() & 0x8) > 0) { +/* 51 */ System.out.println(this + ": successful"); +/* */ } +/* */ } +/* */ +/* */ public synchronized void deactivate() throws IOException { +/* 56 */ assert (this._registerID != 0L); +/* 57 */ assert (Main.isMainThread()); +/* */ +/* 59 */ if ((ActiveX.getDebugLevel() & 0x8) > 0) { +/* 60 */ System.out.println(this + ": deactivating server"); +/* */ } +/* 62 */ nDeactivate(this._registerID); +/* */ } +/* */ +/* */ public synchronized void Release() +/* */ throws OLEInvalidObjectException +/* */ { +/* 68 */ if (this._refs == 1) +/* */ { +/* */ +/* 71 */ if (this._registerID != 0L) +/* */ { +/* */ +/* */ +/* 75 */ if ((ActiveX.getDebugLevel() & 0x4) > 0) { +/* 76 */ System.out.println(this + +/* 77 */ ": deactivating before Release"); +/* */ } +/* */ try { +/* 80 */ deactivate(); +/* */ +/* */ } +/* */ catch (IOException e) +/* */ { +/* 85 */ System.out.println("DEBUG: " + this); +/* 86 */ e.printStackTrace(System.out); +/* 87 */ if (!$assertionsDisabled) throw new AssertionError(); +/* */ } +/* 89 */ this._registerID = 0L; +/* */ } +/* */ } +/* 92 */ super.Release(); +/* */ } +/* */ +/* */ public String internalData() +/* */ { +/* 97 */ return "_registerID = " + this._registerID + ", " + super.internalData(); +/* */ } +/* */ +/* */ public String toString() +/* */ { +/* 102 */ return "IClassFactory(" + internalData() + ")"; +/* */ } +/* */ +/* */ public void register(String friendlyName, String CLSID, String VerIndProgID, String ProgID) +/* */ { +/* */ try { +/* 108 */ RegKey root = RegKey.getRootKey(0); +/* */ +/* */ +/* */ +/* 112 */ RegKey gammaKey = new RegKey(root, "world\\shell\\open\\command", +/* 113 */ 0); +/* 114 */ String gammaPath = gammaKey.getStringValue(""); +/* 115 */ int argIndx = gammaPath.indexOf(" \"%1\""); +/* 116 */ gammaPath = gammaPath.substring(0, argIndx); +/* */ +/* */ +/* 119 */ RegKey classKey = new RegKey(root, "CLSID\\" + CLSID, +/* 120 */ 2); +/* 121 */ classKey.setStringValue("", friendlyName, false); +/* */ +/* */ +/* 124 */ RegKey subKey = new RegKey(classKey, "LocalServer32", +/* 125 */ 2); +/* 126 */ subKey.setStringValue("", gammaPath, false); +/* 127 */ subKey.close(); +/* */ +/* */ +/* 130 */ subKey = new RegKey(classKey, "ProgID", 2); +/* 131 */ subKey.setStringValue("", ProgID, false); +/* 132 */ subKey.close(); +/* */ +/* */ +/* 135 */ subKey = new RegKey(classKey, "VersionIndependentProgID", +/* 136 */ 2); +/* 137 */ subKey.setStringValue("", VerIndProgID, false); +/* 138 */ subKey.close(); +/* */ +/* 140 */ classKey.close(); +/* */ +/* */ +/* */ +/* 144 */ RegKey verIndKey = new RegKey(root, VerIndProgID, +/* 145 */ 2); +/* 146 */ verIndKey.setStringValue("", friendlyName, false); +/* 147 */ subKey = new RegKey(verIndKey, "CLSID", 2); +/* 148 */ subKey.setStringValue("", CLSID, false); +/* 149 */ subKey.close(); +/* 150 */ subKey = new RegKey(verIndKey, "CurVer", 2); +/* 151 */ subKey.setStringValue("", ProgID, false); +/* 152 */ subKey.close(); +/* 153 */ verIndKey.close(); +/* */ +/* 155 */ RegKey progKey = new RegKey(root, ProgID, 2); +/* 156 */ progKey.setStringValue("", friendlyName, false); +/* 157 */ subKey = new RegKey(progKey, "CLSID", 2); +/* 158 */ subKey.setStringValue("", CLSID, false); +/* 159 */ subKey.close(); +/* 160 */ progKey.close(); +/* */ } +/* */ catch (RegKeyNotFoundException e) { +/* 163 */ System.out.println("Warning: System Registry not configured properly by Worlds."); +/* */ } +/* */ } +/* */ +/* */ private native long nActivate(String paramString) +/* */ throws IOException; +/* */ +/* */ private native void nDeactivate(long paramLong) +/* */ throws IOException; +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\IClassFactory.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/IDispatch.java b/NET/worlds/console/IDispatch.java new file mode 100644 index 0000000..743134b --- /dev/null +++ b/NET/worlds/console/IDispatch.java @@ -0,0 +1,175 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import java.io.IOException; +/* */ +/* */ public class IDispatch +/* */ extends IUnknown +/* */ { +/* */ private static final String IID_IDispatch = "{00020400-0000-0000-C000-000000000046}"; +/* */ +/* */ /* Error */ +/* */ public IDispatch(String svrID) +/* */ throws IOException +/* */ { +/* */ // Byte code: +/* */ // 0: aload_0 +/* */ // 1: invokespecial 31 NET/worlds/console/IUnknown:<init> ()V +/* */ // 4: aload_0 +/* */ // 5: aload_1 +/* */ // 6: ldc 8 +/* */ // 8: invokevirtual 33 NET/worlds/console/IDispatch:init (Ljava/lang/String;Ljava/lang/String;)V +/* */ // 11: goto +201 -> 212 +/* */ // 14: astore_2 +/* */ // 15: new 3 NET/worlds/console/IUnknown +/* */ // 18: dup +/* */ // 19: aload_1 +/* */ // 20: invokespecial 37 NET/worlds/console/IUnknown:<init> (Ljava/lang/String;)V +/* */ // 23: astore_3 +/* */ // 24: aload_0 +/* */ // 25: aload_3 +/* */ // 26: ldc 8 +/* */ // 28: invokevirtual 39 NET/worlds/console/IDispatch:init (LNET/worlds/console/IUnknown;Ljava/lang/String;)V +/* */ // 31: goto +136 -> 167 +/* */ // 34: astore 4 +/* */ // 36: getstatic 42 java/lang/System:out Ljava/io/PrintStream; +/* */ // 39: new 48 java/lang/StringBuilder +/* */ // 42: dup +/* */ // 43: ldc 50 +/* */ // 45: invokespecial 52 java/lang/StringBuilder:<init> (Ljava/lang/String;)V +/* */ // 48: aload_0 +/* */ // 49: invokevirtual 53 java/lang/StringBuilder:append (Ljava/lang/Object;)Ljava/lang/StringBuilder; +/* */ // 52: invokevirtual 57 java/lang/StringBuilder:toString ()Ljava/lang/String; +/* */ // 55: invokevirtual 61 java/io/PrintStream:println (Ljava/lang/String;)V +/* */ // 58: getstatic 21 NET/worlds/console/IDispatch:$assertionsDisabled Z +/* */ // 61: ifne +11 -> 72 +/* */ // 64: new 66 java/lang/AssertionError +/* */ // 67: dup +/* */ // 68: invokespecial 68 java/lang/AssertionError:<init> ()V +/* */ // 71: athrow +/* */ // 72: aload_3 +/* */ // 73: invokevirtual 69 NET/worlds/console/IUnknown:Release ()V +/* */ // 76: goto +136 -> 212 +/* */ // 79: astore 6 +/* */ // 81: getstatic 42 java/lang/System:out Ljava/io/PrintStream; +/* */ // 84: new 48 java/lang/StringBuilder +/* */ // 87: dup +/* */ // 88: ldc 50 +/* */ // 90: invokespecial 52 java/lang/StringBuilder:<init> (Ljava/lang/String;)V +/* */ // 93: aload_0 +/* */ // 94: invokevirtual 53 java/lang/StringBuilder:append (Ljava/lang/Object;)Ljava/lang/StringBuilder; +/* */ // 97: invokevirtual 57 java/lang/StringBuilder:toString ()Ljava/lang/String; +/* */ // 100: invokevirtual 61 java/io/PrintStream:println (Ljava/lang/String;)V +/* */ // 103: getstatic 21 NET/worlds/console/IDispatch:$assertionsDisabled Z +/* */ // 106: ifne +106 -> 212 +/* */ // 109: new 66 java/lang/AssertionError +/* */ // 112: dup +/* */ // 113: invokespecial 68 java/lang/AssertionError:<init> ()V +/* */ // 116: athrow +/* */ // 117: astore 5 +/* */ // 119: aload_3 +/* */ // 120: invokevirtual 69 NET/worlds/console/IUnknown:Release ()V +/* */ // 123: goto +41 -> 164 +/* */ // 126: astore 6 +/* */ // 128: getstatic 42 java/lang/System:out Ljava/io/PrintStream; +/* */ // 131: new 48 java/lang/StringBuilder +/* */ // 134: dup +/* */ // 135: ldc 50 +/* */ // 137: invokespecial 52 java/lang/StringBuilder:<init> (Ljava/lang/String;)V +/* */ // 140: aload_0 +/* */ // 141: invokevirtual 53 java/lang/StringBuilder:append (Ljava/lang/Object;)Ljava/lang/StringBuilder; +/* */ // 144: invokevirtual 57 java/lang/StringBuilder:toString ()Ljava/lang/String; +/* */ // 147: invokevirtual 61 java/io/PrintStream:println (Ljava/lang/String;)V +/* */ // 150: getstatic 21 NET/worlds/console/IDispatch:$assertionsDisabled Z +/* */ // 153: ifne +11 -> 164 +/* */ // 156: new 66 java/lang/AssertionError +/* */ // 159: dup +/* */ // 160: invokespecial 68 java/lang/AssertionError:<init> ()V +/* */ // 163: athrow +/* */ // 164: aload 5 +/* */ // 166: athrow +/* */ // 167: aload_3 +/* */ // 168: invokevirtual 69 NET/worlds/console/IUnknown:Release ()V +/* */ // 171: goto +41 -> 212 +/* */ // 174: astore 6 +/* */ // 176: getstatic 42 java/lang/System:out Ljava/io/PrintStream; +/* */ // 179: new 48 java/lang/StringBuilder +/* */ // 182: dup +/* */ // 183: ldc 50 +/* */ // 185: invokespecial 52 java/lang/StringBuilder:<init> (Ljava/lang/String;)V +/* */ // 188: aload_0 +/* */ // 189: invokevirtual 53 java/lang/StringBuilder:append (Ljava/lang/Object;)Ljava/lang/StringBuilder; +/* */ // 192: invokevirtual 57 java/lang/StringBuilder:toString ()Ljava/lang/String; +/* */ // 195: invokevirtual 61 java/io/PrintStream:println (Ljava/lang/String;)V +/* */ // 198: getstatic 21 NET/worlds/console/IDispatch:$assertionsDisabled Z +/* */ // 201: ifne +11 -> 212 +/* */ // 204: new 66 java/lang/AssertionError +/* */ // 207: dup +/* */ // 208: invokespecial 68 java/lang/AssertionError:<init> ()V +/* */ // 211: athrow +/* */ // 212: return +/* */ // Line number table: +/* */ // Java source line #21 -> byte code offset #0 +/* */ // Java source line #24 -> byte code offset #4 +/* */ // Java source line #25 -> byte code offset #11 +/* */ // Java source line #32 -> byte code offset #15 +/* */ // Java source line #34 -> byte code offset #24 +/* */ // Java source line #35 -> byte code offset #31 +/* */ // Java source line #37 -> byte code offset #36 +/* */ // Java source line #38 -> byte code offset #58 +/* */ // Java source line #44 -> byte code offset #72 +/* */ // Java source line #45 -> byte code offset #76 +/* */ // Java source line #46 -> byte code offset #81 +/* */ // Java source line #47 -> byte code offset #103 +/* */ // Java source line #39 -> byte code offset #117 +/* */ // Java source line #44 -> byte code offset #119 +/* */ // Java source line #45 -> byte code offset #123 +/* */ // Java source line #46 -> byte code offset #128 +/* */ // Java source line #47 -> byte code offset #150 +/* */ // Java source line #49 -> byte code offset #164 +/* */ // Java source line #44 -> byte code offset #167 +/* */ // Java source line #45 -> byte code offset #171 +/* */ // Java source line #46 -> byte code offset #176 +/* */ // Java source line #47 -> byte code offset #198 +/* */ // Java source line #51 -> byte code offset #212 +/* */ // Local variable table: +/* */ // start length slot name signature +/* */ // 0 213 0 this IDispatch +/* */ // 0 213 1 svrID String +/* */ // 14 2 2 e IOException +/* */ // 23 145 3 tmpUnk IUnknown +/* */ // 34 3 4 e2 OLEInvalidObjectException +/* */ // 117 48 5 localObject Object +/* */ // 79 3 6 e3 OLEInvalidObjectException +/* */ // 126 3 6 e3 OLEInvalidObjectException +/* */ // 174 3 6 e3 OLEInvalidObjectException +/* */ // Exception table: +/* */ // from to target type +/* */ // 4 11 14 java/io/IOException +/* */ // 24 31 34 NET/worlds/console/OLEInvalidObjectException +/* */ // 72 76 79 NET/worlds/console/OLEInvalidObjectException +/* */ // 24 72 117 finally +/* */ // 119 123 126 NET/worlds/console/OLEInvalidObjectException +/* */ // 167 171 174 NET/worlds/console/OLEInvalidObjectException +/* */ } +/* */ +/* */ public IDispatch(IUnknown pIUnknown) +/* */ throws IOException, OLEInvalidObjectException +/* */ { +/* 59 */ super(pIUnknown, "{00020400-0000-0000-C000-000000000046}"); +/* */ } +/* */ +/* */ +/* */ public native void Invoke(String paramString); +/* */ +/* */ +/* */ public String toString() +/* */ { +/* 68 */ return "IDispatch(" + internalData() + ")"; +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\IDispatch.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/IEWebControlImp.java b/NET/worlds/console/IEWebControlImp.java new file mode 100644 index 0000000..8f42842 --- /dev/null +++ b/NET/worlds/console/IEWebControlImp.java @@ -0,0 +1,144 @@ +/* */ package NET.worlds.console; +/* */ +/* */ +/* */ class IEWebControlImp +/* */ extends WebControlImp +/* */ { +/* */ private int nativeIEInstance; +/* */ +/* */ private int m_hwnd; +/* */ +/* */ private boolean detached; +/* */ +/* */ +/* */ private native boolean nativeInit(int paramInt, boolean paramBoolean); +/* */ +/* */ +/* */ private native void nativeDestroy(); +/* */ +/* */ +/* */ private native void nativeSetURL(String paramString1, String paramString2); +/* */ +/* */ private native void nativeGoBack(); +/* */ +/* */ private native void nativeGoForward(); +/* */ +/* */ private native void nativeStop(); +/* */ +/* */ private native void nativeRefresh(); +/* */ +/* */ private native void nativeHome(); +/* */ +/* */ private native void nativePrint(int paramInt1, int paramInt2); +/* */ +/* */ private native void nativeResize(int paramInt1, int paramInt2, int paramInt3, int paramInt4); +/* */ +/* */ private native void nativeAddToolbar(); +/* */ +/* */ private native int nativeGetHWND(); +/* */ +/* */ public IEWebControlImp(int hwnd, boolean toolbar, boolean isBanner) +/* */ throws NoWebControlException +/* */ { +/* 43 */ super(hwnd); +/* 44 */ this.m_hwnd = hwnd; +/* 45 */ this.nativeIEInstance = 0; +/* 46 */ this.detached = false; +/* */ +/* 48 */ if (!nativeInit(hwnd, isBanner)) { +/* 49 */ this.detached = true; +/* 50 */ throw new NoWebControlException("Could not initialize IE control"); +/* */ } +/* */ +/* */ +/* 54 */ if (toolbar) { +/* 55 */ nativeAddToolbar(); +/* */ } +/* */ } +/* */ +/* */ public void finalize() { +/* 60 */ detach(); +/* */ } +/* */ +/* */ public void renderTo(int dc) +/* */ { +/* 65 */ nativePrint(dc, this.m_hwnd); +/* */ } +/* */ +/* */ public boolean setURL(String pURL) +/* */ { +/* 70 */ pURL = processURL(pURL); +/* 71 */ if (pURL == null) { +/* 72 */ return false; +/* */ } +/* 74 */ nativeSetURL(pURL, null); +/* 75 */ return true; +/* */ } +/* */ +/* */ public boolean setURL(String pURL, String pPostData) +/* */ { +/* 80 */ pURL = processURL(pURL); +/* 81 */ if (pURL == null) { +/* 82 */ return false; +/* */ } +/* 84 */ if (pPostData != null) { +/* 85 */ pPostData = processURL(pPostData); +/* 86 */ if (pPostData == null) { +/* 87 */ return false; +/* */ } +/* */ } +/* 90 */ nativeSetURL(pURL, pPostData); +/* 91 */ return true; +/* */ } +/* */ +/* */ public void detach() +/* */ { +/* 96 */ if (!this.detached) { +/* 97 */ nativeDestroy(); +/* 98 */ super.detach(); +/* 99 */ this.nativeIEInstance = 0; +/* 100 */ this.detached = true; +/* */ } +/* */ } +/* */ +/* */ public void resize(int w, int h, int xPer, int yPer) +/* */ { +/* 106 */ nativeResize(w, h, xPer, yPer); +/* */ } +/* */ +/* */ public void goBack() +/* */ { +/* 111 */ nativeGoBack(); +/* */ } +/* */ +/* */ public void goForward() +/* */ { +/* 116 */ nativeGoForward(); +/* */ } +/* */ +/* */ public void stop() +/* */ { +/* 121 */ nativeStop(); +/* */ } +/* */ +/* */ public void refresh() +/* */ { +/* 126 */ nativeRefresh(); +/* */ } +/* */ +/* */ public void home() +/* */ { +/* 131 */ nativeHome(); +/* */ } +/* */ +/* */ public int getHWND() +/* */ { +/* 136 */ return nativeGetHWND(); +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\IEWebControlImp.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/INetscapeRegistry.java b/NET/worlds/console/INetscapeRegistry.java new file mode 100644 index 0000000..7fb2650 --- /dev/null +++ b/NET/worlds/console/INetscapeRegistry.java @@ -0,0 +1,31 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import java.io.IOException; +/* */ +/* */ +/* */ public class INetscapeRegistry +/* */ extends IDispatch +/* */ { +/* */ public INetscapeRegistry() +/* */ throws IOException +/* */ { +/* 12 */ super("Netscape.Registry.1"); +/* */ } +/* */ +/* */ public native boolean RegisterViewer(String paramString1, String paramString2) +/* */ throws IOException; +/* */ +/* */ public native boolean RegisterProtocol(String paramString1, String paramString2) +/* */ throws IOException; +/* */ +/* */ public String toString() +/* */ { +/* 23 */ return "INetscapeRegistry(" + internalData() + ")"; +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\INetscapeRegistry.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/IUnknown.java b/NET/worlds/console/IUnknown.java new file mode 100644 index 0000000..b352d0b --- /dev/null +++ b/NET/worlds/console/IUnknown.java @@ -0,0 +1,250 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import java.io.IOException; +/* */ import java.io.PrintStream; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public class IUnknown +/* */ { +/* 28 */ protected int _pInterface = 0; +/* 29 */ protected int _refs = 0; +/* */ +/* */ +/* */ +/* */ private static final String IID_IUnknown = "{00000000-0000-0000-c000-000000000046}"; +/* */ +/* */ +/* */ +/* */ +/* */ public IUnknown() +/* */ throws IOException +/* */ {} +/* */ +/* */ +/* */ +/* */ protected synchronized void init(int pInterface) +/* */ throws IOException +/* */ { +/* 47 */ assert (pInterface != 0); +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* 54 */ ActiveX.init(this); +/* */ +/* */ +/* */ +/* 58 */ this._pInterface = pInterface; +/* */ +/* */ +/* */ +/* */ +/* */ +/* 64 */ this._refs = 1; +/* */ } +/* */ +/* */ +/* */ +/* */ public IUnknown(String svrID) +/* */ throws IOException +/* */ { +/* 72 */ if ((ActiveX.getDebugLevel() & 0x2) > 0) { +/* 73 */ System.out.println(this + ": constructor: svrID = " + svrID); +/* */ } +/* 75 */ ActiveX.init(this); +/* */ try +/* */ { +/* */ try +/* */ { +/* 80 */ this._pInterface = ActiveX.getClassFClsID(svrID, "{00000000-0000-0000-c000-000000000046}"); +/* 81 */ this._refs += 1; +/* */ } catch (IOException e) { +/* 83 */ this._pInterface = ActiveX.getClassFProgID(svrID, "{00000000-0000-0000-c000-000000000046}"); +/* 84 */ this._refs += 1; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* 95 */ if ((ActiveX.getDebugLevel() & 0x2) <= 0) { +/* */ return; +/* */ } +/* */ } +/* */ catch (IOException e) +/* */ { +/* 91 */ ActiveX.uninit(this); +/* 92 */ throw e; +/* */ } +/* */ +/* */ +/* 96 */ System.out.println("IUnknown: constructed " + this); +/* */ } +/* */ +/* */ public IUnknown(String svrID, String intfID) +/* */ throws IOException +/* */ { +/* 102 */ if ((ActiveX.getDebugLevel() & 0x2) > 0) { +/* 103 */ System.out.println(this + ": constructor: svrID = " + svrID + +/* 104 */ ", intfID = " + intfID); +/* */ } +/* 106 */ init(svrID, intfID); +/* */ +/* 108 */ if ((ActiveX.getDebugLevel() & 0x2) > 0) { +/* 109 */ System.out.println("IUnknown: constructed " + this); +/* */ } +/* */ } +/* */ +/* */ protected synchronized void init(String svrID, String intfID) throws IOException +/* */ { +/* 115 */ ActiveX.init(this); +/* */ try +/* */ { +/* */ try +/* */ { +/* 120 */ this._pInterface = ActiveX.getClassFClsID(svrID, intfID); +/* 121 */ this._refs += 1; +/* */ } catch (IOException e) { +/* 123 */ this._pInterface = ActiveX.getClassFProgID(svrID, intfID); +/* 124 */ this._refs += 1; +/* */ } +/* */ return; +/* */ } +/* */ catch (IOException e) { +/* 129 */ ActiveX.uninit(this); +/* 130 */ throw e; +/* */ } +/* */ } +/* */ +/* */ public IUnknown(IUnknown parent, String intfID) +/* */ throws IOException, OLEInvalidObjectException +/* */ { +/* 137 */ if ((ActiveX.getDebugLevel() & 0x2) > 0) { +/* 138 */ System.out.println(this + ": constructor: parent = " + parent + +/* 139 */ ", intfID = " + intfID); +/* */ } +/* 141 */ init(parent, intfID); +/* */ +/* 143 */ if ((ActiveX.getDebugLevel() & 0x2) > 0) { +/* 144 */ System.out.println("IUnknown: constructed " + this); +/* */ } +/* */ } +/* */ +/* */ protected synchronized void init(IUnknown parent, String intfID) throws IOException, OLEInvalidObjectException +/* */ { +/* 150 */ assert (parent != null); +/* 151 */ ActiveX.init(this); +/* */ try { +/* 153 */ this._pInterface = parent.QueryInterface(intfID); +/* 154 */ this._refs = 1; +/* */ } +/* */ catch (IOException e) { +/* 157 */ ActiveX.uninit(this); +/* 158 */ throw e; +/* */ } catch (OLEInvalidObjectException e) { +/* 160 */ ActiveX.uninit(this); +/* 161 */ throw e; +/* */ } +/* */ } +/* */ +/* */ public synchronized void Release() throws OLEInvalidObjectException +/* */ { +/* 167 */ if ((ActiveX.getDebugLevel() & 0x4) > 0) { +/* 168 */ System.out.println(this + ": Releasing"); +/* */ } +/* 170 */ if (this._pInterface == 0) +/* 171 */ throw new OLEInvalidObjectException(); +/* 172 */ if ((this._pInterface != 0) && (this._refs > 0)) +/* 173 */ true_Release(); +/* 174 */ this._refs -= 1; +/* 175 */ if (this._refs == 0) +/* */ { +/* */ +/* */ +/* 179 */ this._pInterface = 0; +/* 180 */ ActiveX.uninit(this); +/* */ } +/* */ } +/* */ +/* */ public void finalize() +/* */ { +/* 186 */ if (this._pInterface != 0) +/* */ { +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* 195 */ while (this._refs > 0) { +/* */ try { +/* 197 */ Release(); +/* */ } catch (OLEInvalidObjectException e) { +/* 199 */ System.out.println("DEBUG: " + this); +/* 200 */ if (!$assertionsDisabled) throw new AssertionError(); +/* */ } +/* */ } +/* */ } +/* */ } +/* */ +/* */ public synchronized void AddRef() throws OLEInvalidObjectException +/* */ { +/* 208 */ if ((ActiveX.getDebugLevel() & 0x4) > 0) { +/* 209 */ System.out.println(this + ": AddingRef"); +/* */ } +/* 211 */ if (this._pInterface == 0) +/* 212 */ throw new OLEInvalidObjectException(); +/* 213 */ this._refs += 1; +/* 214 */ true_AddRef(); +/* */ } +/* */ +/* */ public native void true_AddRef(); +/* */ +/* */ public native int QueryInterface(String paramString) throws IOException, OLEInvalidObjectException; +/* */ +/* */ public native void true_Release() throws OLEInvalidObjectException; +/* */ +/* */ protected native int getPtr() throws OLEInvalidObjectException; +/* */ +/* */ public String internalData() +/* */ { +/* 227 */ return "_pInterface=" + this._pInterface + ", _refs=" + this._refs; +/* */ } +/* */ +/* */ public String toString() +/* */ { +/* 232 */ return "IUnknown(" + internalData() + ")"; +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\IUnknown.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/IWebBrowserApp.java b/NET/worlds/console/IWebBrowserApp.java new file mode 100644 index 0000000..bda3b65 --- /dev/null +++ b/NET/worlds/console/IWebBrowserApp.java @@ -0,0 +1,38 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import java.io.IOException; +/* */ +/* */ +/* */ public class IWebBrowserApp +/* */ extends IUnknown +/* */ { +/* */ public static final String CLSID_InternetExplorer = "{0002DF01-0000-0000-C000-000000000046}"; +/* */ public static final String IID_IWebBrowserApp = "{0002DF05-0000-0000-C000-000000000046}"; +/* */ +/* */ public IWebBrowserApp() +/* */ throws IOException +/* */ { +/* 15 */ super("{0002DF01-0000-0000-C000-000000000046}", "{0002DF05-0000-0000-C000-000000000046}"); +/* */ } +/* */ +/* */ public IWebBrowserApp(IUnknown parent) throws IOException, OLEInvalidObjectException +/* */ { +/* 20 */ super(parent, "{0002DF05-0000-0000-C000-000000000046}"); +/* */ } +/* */ +/* */ public native void put_Visible(boolean paramBoolean); +/* */ +/* */ public native void put_StatusBar(boolean paramBoolean); +/* */ +/* */ public native void put_MenuBar(boolean paramBoolean); +/* */ +/* */ public native void Navigate(String paramString); +/* */ +/* */ public native void Quit(); +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\IWebBrowserApp.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/IllegalPilotException.java b/NET/worlds/console/IllegalPilotException.java new file mode 100644 index 0000000..4dc90b3 --- /dev/null +++ b/NET/worlds/console/IllegalPilotException.java @@ -0,0 +1,30 @@ +/* */ package NET.worlds.console; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public class IllegalPilotException +/* */ extends Exception +/* */ { +/* */ private static final long serialVersionUID = 421670050791293454L; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ IllegalPilotException(String s) +/* */ { +/* 20 */ super(s); +/* */ } +/* */ +/* */ IllegalPilotException() {} +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\IllegalPilotException.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/ImageButtons.java b/NET/worlds/console/ImageButtons.java new file mode 100644 index 0000000..f2f1022 --- /dev/null +++ b/NET/worlds/console/ImageButtons.java @@ -0,0 +1,556 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import NET.worlds.scape.FrameEvent; +/* */ import java.awt.Container; +/* */ import java.awt.Dimension; +/* */ import java.awt.Event; +/* */ import java.awt.Graphics; +/* */ import java.awt.PopupMenu; +/* */ import java.awt.Rectangle; +/* */ import java.awt.event.MouseEvent; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public class ImageButtons +/* */ extends ImageCanvas +/* */ implements FramePart, DialogDisabled +/* */ { +/* */ private static final long serialVersionUID = -1495360044843592740L; +/* */ protected static final int BLANK = 0; +/* */ protected static final int NORMAL = 1; +/* */ protected static final int CURSED = 2; +/* */ protected static final int DOWN = 3; +/* */ private static final int TITLE = 0; +/* */ private static final int BUTTON = 1; +/* */ private int width; +/* */ private int height; +/* */ private Dimension ghostImageDimension; +/* */ protected Rectangle[] buttons; +/* */ private int[] types; +/* 160 */ private boolean background = false; +/* */ +/* 162 */ private int cursedButton = -1; +/* 163 */ private int clickedButton = -1; +/* */ private boolean clickedButtonDown; +/* */ private ImageButtonsCallback handler; +/* */ private ImageButtonsCallback downUpHandler; +/* */ private PopupMenu menu; +/* */ private boolean isDialogDisabled; +/* */ +/* */ private void initEvents() +/* */ { +/* 172 */ enableEvents(16L); +/* 173 */ enableEvents(32L); +/* */ } +/* */ +/* */ protected ImageButtons() { +/* 177 */ this.buttons = new Rectangle[0]; +/* 178 */ initEvents(); +/* */ } +/* */ +/* */ public ImageButtons(String imageName, int buttonWidth, int buttonHeight, ImageButtonsCallback handler) +/* */ { +/* 183 */ this(imageName, buttonWidth, intToInts(buttonHeight), handler); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public ImageButtons(String imageName, Rectangle[] buttonRects, ImageButtonsCallback handler) +/* */ { +/* 193 */ super(imageName); +/* 194 */ this.handler = handler; +/* 195 */ this.background = true; +/* 196 */ setHotspots(buttonRects); +/* 197 */ initEvents(); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public ImageButtons(String imageName, int buttonWidth, int[] buttonHeights, ImageButtonsCallback handler) +/* */ { +/* 206 */ super(imageName); +/* 207 */ this.handler = handler; +/* 208 */ this.buttons = new Rectangle[buttonHeights.length]; +/* 209 */ this.types = new int[buttonHeights.length]; +/* 210 */ int y = 0; +/* 211 */ for (int i = 0; i < buttonHeights.length; i++) { +/* 212 */ int h = buttonHeights[i]; +/* */ int rh; +/* 214 */ if (h > 0) { +/* 215 */ int rh = h; +/* 216 */ this.types[i] = 1; +/* */ } else { +/* 218 */ rh = -h; +/* 219 */ this.types[i] = 0; +/* */ } +/* 221 */ this.buttons[i] = new Rectangle(0, y, buttonWidth, rh); +/* 222 */ y += rh; +/* */ } +/* 224 */ this.ghostImageDimension = new Dimension(buttonWidth * 4, buttonHeights[0]); +/* 225 */ initEvents(); +/* */ } +/* */ +/* */ public void setHandler(ImageButtonsCallback handler) { +/* 229 */ this.handler = handler; +/* */ } +/* */ +/* */ public void setDownUpHandler(ImageButtonsCallback handler) { +/* 233 */ this.downUpHandler = handler; +/* */ } +/* */ +/* */ protected void setBackground(boolean background) { +/* 237 */ this.background = background; +/* */ } +/* */ +/* */ protected void setWidth(int width) { +/* 241 */ this.width = width; +/* */ } +/* */ +/* */ protected void setHeight(int height) { +/* 245 */ this.height = height; +/* */ } +/* */ +/* */ protected synchronized void setHotspots(Rectangle[] buttonRects) { +/* 249 */ this.buttons = new Rectangle[buttonRects.length]; +/* 250 */ this.types = new int[buttonRects.length]; +/* 251 */ for (int i = 0; i < buttonRects.length; i++) { +/* 252 */ this.types[i] = 1; +/* 253 */ this.buttons[i] = new Rectangle(buttonRects[i]); +/* */ } +/* 255 */ this.cursedButton = -1; +/* 256 */ this.clickedButton = -1; +/* 257 */ this.clickedButtonDown = false; +/* */ } +/* */ +/* */ public synchronized void paint(Graphics g) +/* */ { +/* 262 */ g.clipRect(0, 0, this.width, this.height); +/* 263 */ if ((this.background) && (this.image_ != null)) { +/* 264 */ g.drawImage(this.image_, -1 * this.width, 0, null); +/* */ } +/* 266 */ for (int i = 0; i < this.buttons.length; i++) { +/* 267 */ int state = 1; +/* 268 */ if (i == this.cursedButton) +/* 269 */ state = 2; +/* 270 */ if (i == this.clickedButton) +/* 271 */ state = this.clickedButtonDown ? 3 : 1; +/* 272 */ drawButton(g, i, state); +/* */ } +/* */ } +/* */ +/* */ public Dimension getPreferredSize() +/* */ { +/* 278 */ Dimension d = super.getPreferredSize(); +/* 279 */ if ((d.width == 0) && (d.height == 0) && (this.ghostImageDimension != null)) +/* 280 */ d = this.ghostImageDimension; +/* 281 */ d = new Dimension(this.width = d.width / 4, this.height = d.height); +/* 282 */ return d; +/* */ } +/* */ +/* */ public Dimension getMinimumSize() +/* */ { +/* 287 */ return getPreferredSize(); +/* */ } +/* */ +/* */ public void processMouseMotionEvent(MouseEvent e) +/* */ { +/* 292 */ if (!this.isDialogDisabled) { +/* 293 */ switch (e.getID()) { +/* */ case 503: +/* */ case 506: +/* 296 */ buttonAction(e.getX(), e.getY(), e.getID()); +/* */ } +/* */ +/* */ } +/* */ +/* 301 */ super.processMouseEvent(e); +/* */ } +/* */ +/* */ public void processMouseEvent(MouseEvent e) +/* */ { +/* 306 */ if (!this.isDialogDisabled) { +/* 307 */ switch (e.getID()) { +/* */ case 501: +/* */ case 502: +/* */ case 504: +/* */ case 505: +/* 312 */ buttonAction(e.getX(), e.getY(), e.getID()); +/* */ } +/* */ +/* */ } +/* */ +/* 317 */ super.processMouseEvent(e); +/* */ } +/* */ +/* */ @Deprecated +/* */ public boolean mouseMove(Event e, int x, int y) +/* */ { +/* 323 */ return buttonAction(x, y, 503); +/* */ } +/* */ +/* */ +/* */ @Deprecated +/* */ public boolean mouseDown(Event e, int x, int y) +/* */ { +/* 330 */ if ((e.modifiers & 0xC) != 0) +/* 331 */ return false; +/* 332 */ return buttonAction(x, y, 501); +/* */ } +/* */ +/* */ +/* */ @Deprecated +/* */ public boolean mouseUp(Event e, int x, int y) +/* */ { +/* 339 */ if ((e.modifiers & 0xC) != 0) +/* 340 */ return false; +/* 341 */ return buttonAction(x, y, 502); +/* */ } +/* */ +/* */ @Deprecated +/* */ public boolean mouseDrag(Event e, int x, int y) +/* */ { +/* 347 */ return buttonAction(x, y, 506); +/* */ } +/* */ +/* */ @Deprecated +/* */ public boolean mouseEnter(Event e, int x, int y) +/* */ { +/* 353 */ return buttonAction(x, y, 504); +/* */ } +/* */ +/* */ @Deprecated +/* */ public boolean mouseExit(Event e, int x, int y) +/* */ { +/* 359 */ return buttonAction(x, y, 505); +/* */ } +/* */ +/* */ @Deprecated +/* */ public boolean handleEvent(Event event) +/* */ { +/* 365 */ if (this.isDialogDisabled) +/* 366 */ return false; +/* 367 */ return super.handleEvent(event); +/* */ } +/* */ +/* */ protected Graphics drawButton(Graphics g, int button, int state) { +/* 371 */ if (button != -1) { +/* 372 */ Rectangle r = this.buttons[button]; +/* */ +/* */ +/* */ +/* 376 */ if ((this.image_ != null) && ((g != null) || ((g = getGraphics()) != null))) { +/* 377 */ Graphics g1 = g.create(r.x, r.y, r.width, r.height); +/* 378 */ g1.drawImage(this.image_, -state * this.width - r.x, -r.y, null); +/* 379 */ g1.dispose(); +/* */ } +/* */ } +/* 382 */ return g; +/* */ } +/* */ +/* */ private synchronized boolean buttonAction(int x, int y, int action) { +/* 386 */ return buttonAction(locateButton(x, y), action); +/* */ } +/* */ +/* */ private int locateButton(int x, int y) { +/* 390 */ for (int i = 0; i < this.buttons.length; i++) +/* 391 */ if ((this.types[i] == 1) && (this.buttons[i].contains(x, y))) +/* 392 */ return i; +/* 393 */ return -1; +/* */ } +/* */ +/* */ public void drawFirstButton(int state) { +/* 397 */ if (this.buttons.length > 0) { +/* 398 */ Graphics g = drawButton(null, 0, state); +/* 399 */ if (g != null) +/* 400 */ g.dispose(); +/* */ } +/* */ } +/* */ +/* */ public void drawNormal() { +/* 405 */ drawFirstButton(1); +/* */ } +/* */ +/* */ public void drawCursed() { +/* 409 */ drawFirstButton(2); +/* */ } +/* */ +/* */ public void drawDown() { +/* 413 */ drawFirstButton(3); +/* */ } +/* */ +/* */ boolean buttonAction(int button, int action) { +/* 417 */ Graphics g = null; +/* 418 */ if ((action == 503) || +/* 419 */ (action == 504)) { +/* 420 */ if (button != this.cursedButton) { +/* 421 */ g = drawButton(g, this.cursedButton, 1); +/* 422 */ g = drawButton(g, this.cursedButton = button, 2); +/* */ } +/* */ +/* */ +/* 426 */ if ((this.clickedButton != -1) && (this.clickedButton != button) && +/* 427 */ (this.downUpHandler == null)) { +/* 428 */ g = drawButton(g, this.clickedButton, 1); +/* 429 */ this.clickedButtonDown = false; +/* */ } +/* 431 */ } else if (action == 505) { +/* 432 */ if (this.cursedButton != -1) { +/* 433 */ g = drawButton(g, this.cursedButton, 1); +/* 434 */ this.cursedButton = -1; +/* */ } +/* */ +/* */ +/* 438 */ if ((this.downUpHandler == null) && +/* 439 */ (this.clickedButton != -1) && (this.clickedButtonDown)) { +/* 440 */ g = drawButton(g, this.clickedButton, 1); +/* 441 */ this.clickedButtonDown = false; +/* */ } +/* */ } +/* 444 */ else if (action == 501) +/* */ { +/* 446 */ if (this.clickedButton != -1) { +/* 447 */ g = drawButton(g, this.clickedButton, 1); +/* 448 */ if (this.downUpHandler != null) +/* 449 */ this.downUpHandler.imageButtonsCallback(this, -1); +/* 450 */ this.clickedButtonDown = false; +/* */ } +/* 452 */ if (this.cursedButton != -1) { +/* 453 */ g = drawButton(g, this.cursedButton, 1); +/* 454 */ this.cursedButton = -1; +/* */ } +/* 456 */ if ((this.clickedButton = button) != -1) { +/* 457 */ g = drawButton(g, this.clickedButton, 3); +/* 458 */ this.clickedButtonDown = true; +/* */ +/* */ +/* 461 */ if (this.downUpHandler != null) +/* 462 */ this.downUpHandler.imageButtonsCallback(this, button); +/* */ } +/* 464 */ } else if (action == 506) +/* */ { +/* 466 */ if ((this.downUpHandler == null) && (this.clickedButton != -1)) { +/* 467 */ if (this.clickedButtonDown) { +/* 468 */ if (button != this.clickedButton) { +/* 469 */ g = drawButton(g, this.clickedButton, 1); +/* 470 */ this.clickedButtonDown = false; +/* */ } +/* 472 */ } else if (button == this.clickedButton) { +/* 473 */ g = drawButton(g, this.clickedButton, 3); +/* 474 */ this.clickedButtonDown = true; +/* */ } +/* */ } +/* 477 */ } else if (action == 502) { +/* 478 */ this.cursedButton = button; +/* 479 */ if (this.cursedButton != -1) { +/* 480 */ g = drawButton(g, this.cursedButton, 2); +/* */ } +/* */ +/* 483 */ if (this.clickedButtonDown) +/* */ { +/* 485 */ if (this.cursedButton != this.clickedButton) +/* 486 */ g = drawButton(g, this.clickedButton, 1); +/* 487 */ Object ret = this.handler.imageButtonsCallback(this, this.clickedButton); +/* 488 */ if (((ret instanceof PopupMenu)) && (this.clickedButton != -1)) { +/* 489 */ if (this.menu != null) +/* 490 */ remove(this.menu); +/* 491 */ add(this.menu = (PopupMenu)ret); +/* 492 */ this.menu.show(this, this.buttons[this.clickedButton].x, +/* 493 */ this.buttons[this.clickedButton].y + +/* 494 */ this.buttons[this.clickedButton].height); +/* */ } +/* 496 */ if (this.downUpHandler != null) +/* */ { +/* */ +/* 499 */ if (this.downUpHandler.imageButtonsCallback(this, -1) != null) +/* 500 */ this.cursedButton = -1; +/* */ } +/* 502 */ this.clickedButtonDown = false; +/* 503 */ this.clickedButton = -1; +/* */ } +/* */ } +/* 506 */ if (g != null) { +/* 507 */ g.dispose(); +/* */ } +/* 509 */ return true; +/* */ } +/* */ +/* */ public static int[] intToInts(int value) { +/* 513 */ int[] ret = new int[1]; +/* 514 */ ret[0] = value; +/* 515 */ return ret; +/* */ } +/* */ +/* */ +/* */ +/* */ public void activate(Console c, Container f, Console prev) {} +/* */ +/* */ +/* */ +/* */ public void deactivate() {} +/* */ +/* */ +/* */ +/* */ @Deprecated +/* */ public boolean action(Event event, Object what) +/* */ { +/* 531 */ return false; +/* */ } +/* */ +/* */ public boolean handle(FrameEvent f) +/* */ { +/* 536 */ return false; +/* */ } +/* */ +/* */ +/* */ +/* */ public void dialogDisable(boolean disable) +/* */ { +/* 543 */ if ((this.isDialogDisabled = disable)) { +/* 544 */ this.cursedButton = -1; +/* 545 */ this.clickedButton = -1; +/* 546 */ this.clickedButtonDown = false; +/* 547 */ repaint(); +/* */ } +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\ImageButtons.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/ImageButtonsCallback.java b/NET/worlds/console/ImageButtonsCallback.java new file mode 100644 index 0000000..c811e26 --- /dev/null +++ b/NET/worlds/console/ImageButtonsCallback.java @@ -0,0 +1,14 @@ +package NET.worlds.console; + +import java.awt.Component; + +public abstract interface ImageButtonsCallback +{ + public abstract Object imageButtonsCallback(Component paramComponent, int paramInt); +} + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\ImageButtonsCallback.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/ImageCanvas.java b/NET/worlds/console/ImageCanvas.java new file mode 100644 index 0000000..e9cf62d --- /dev/null +++ b/NET/worlds/console/ImageCanvas.java @@ -0,0 +1,257 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import NET.worlds.network.URL; +/* */ import NET.worlds.scape.BGLoaded; +/* */ import NET.worlds.scape.BackgroundLoader; +/* */ import NET.worlds.scape.Room; +/* */ import java.awt.Component; +/* */ import java.awt.Dimension; +/* */ import java.awt.Graphics; +/* */ import java.awt.Image; +/* */ import java.awt.MediaTracker; +/* */ import java.awt.Toolkit; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public class ImageCanvas +/* */ extends Component +/* */ implements BGLoaded +/* */ { +/* */ private static final long serialVersionUID = 1687513733496926512L; +/* */ protected URL imageURL_; +/* */ protected Image image_; +/* */ protected boolean loaded_; +/* */ protected Dimension dim_; +/* 36 */ protected static final URL defaultImageURL = URL.make("home:..\\default.gif"); +/* */ +/* */ +/* */ +/* */ public ImageCanvas(URL inURL) +/* */ { +/* 42 */ setNewImage(inURL); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ protected ImageCanvas() {} +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public ImageCanvas(String nm) +/* */ { +/* 60 */ loadImage(nm); +/* */ } +/* */ +/* */ private Image loadImage(String nm) { +/* 64 */ this.imageURL_ = URL.make("home:" + nm); +/* 65 */ this.image_ = loadLocalImage(this.imageURL_.unalias()); +/* 66 */ if (this.image_ == null) { +/* 67 */ this.imageURL_ = URL.make("home:..\\" + nm); +/* 68 */ this.image_ = loadLocalImage(this.imageURL_.unalias()); +/* */ } +/* 70 */ if (this.image_ == null) +/* */ { +/* 72 */ setNewImage(URL.make(nm)); +/* */ } +/* */ +/* 75 */ return this.image_; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ public void setNewImage(URL newImageURL, Graphics g) +/* */ { +/* 83 */ setNewImage(newImageURL); +/* */ } +/* */ +/* */ public void setNewImage(URL newImageURL) { +/* 87 */ this.imageURL_ = newImageURL; +/* 88 */ flushImage(); +/* 89 */ this.loaded_ = false; +/* 90 */ loadRemoteImage(); +/* */ } +/* */ +/* */ protected void flushImage() { +/* 94 */ if (this.image_ != null) { +/* 95 */ this.image_.flush(); +/* 96 */ this.image_ = null; +/* */ } +/* */ } +/* */ +/* */ public void update(Graphics g) +/* */ { +/* 102 */ if (g != null) { +/* 103 */ Dimension d = getSize(); +/* 104 */ if ((this.image_ == null) || (d.width > this.dim_.width) || +/* 105 */ (d.height > this.dim_.height)) +/* 106 */ super.update(g); +/* 107 */ paint(g); +/* */ } +/* */ } +/* */ +/* */ public void paint(Graphics g) +/* */ { +/* 113 */ if ((this.image_ != null) && (g != null)) +/* 114 */ g.drawImage(this.image_, 0, 0, this); +/* */ } +/* */ +/* */ public void paint(Graphics g, int x, int y) { +/* 118 */ if ((this.image_ != null) && (g != null)) +/* 119 */ g.drawImage(this.image_, x, y, this); +/* */ } +/* */ +/* */ public Dimension imageSize() { +/* 123 */ if (this.image_ == null) +/* */ { +/* 125 */ this.dim_ = new Dimension(0, 0); +/* */ } else { +/* 127 */ int width = this.image_.getWidth(this); +/* 128 */ int height = this.image_.getHeight(this); +/* 129 */ if ((width != -1) && (height != -1)) { +/* 130 */ this.dim_ = new Dimension(width, height); +/* */ } +/* */ } +/* */ +/* 134 */ return this.dim_; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public Object asyncBackgroundLoad(String localName, URL remoteURL) +/* */ { +/* 148 */ this.image_ = loadLocalImage(localName); +/* 149 */ if (getGraphics() != null) { +/* 150 */ update(getGraphics()); +/* */ } +/* 152 */ return localName; +/* */ } +/* */ +/* */ public boolean syncBackgroundLoad(Object obj, URL remoteURL) +/* */ { +/* 157 */ String localName = (String)obj; +/* 158 */ this.image_ = loadLocalImage(localName); +/* 159 */ if (getGraphics() != null) { +/* 160 */ update(getGraphics()); +/* */ } +/* 162 */ return false; +/* */ } +/* */ +/* */ public Room getBackgroundLoadRoom() { +/* 166 */ return null; +/* */ } +/* */ +/* */ +/* */ private void loadRemoteImage() +/* */ { +/* 172 */ this.image_ = loadLocalImage(defaultImageURL.unalias()); +/* */ +/* */ +/* 175 */ if (this.imageURL_ != defaultImageURL) { +/* 176 */ BackgroundLoader.get(this, this.imageURL_); +/* */ } +/* */ } +/* */ +/* */ private Image loadLocalImage(String fName) { +/* 181 */ Image image = Toolkit.getDefaultToolkit().getImage(fName); +/* */ +/* 183 */ MediaTracker tracker = new MediaTracker(this); +/* 184 */ tracker.addImage(image, 0); +/* */ try { +/* 186 */ tracker.waitForAll(); +/* */ } +/* */ catch (InterruptedException localInterruptedException) {} +/* */ +/* 190 */ if (!tracker.isErrorAny()) { +/* 191 */ this.loaded_ = true; +/* 192 */ return image; +/* */ } +/* */ +/* 195 */ return null; +/* */ } +/* */ +/* */ public static Image loadImage(URL url, Component comp) { +/* 199 */ Image image = Toolkit.getDefaultToolkit().getImage(url.unalias()); +/* */ +/* */ +/* 202 */ MediaTracker tracker = new MediaTracker(comp); +/* 203 */ tracker.addImage(image, 0); +/* */ try { +/* 205 */ tracker.waitForAll(); +/* */ } +/* */ catch (InterruptedException localInterruptedException) {} +/* */ +/* 209 */ if (!tracker.isErrorAny()) { +/* 210 */ return image; +/* */ } +/* 212 */ return null; +/* */ } +/* */ +/* */ +/* */ public static Image getSystemImage(String name, Component comp) +/* */ { +/* 218 */ for (int pass = 0; pass < 2; pass++) { +/* 219 */ Image image = loadImage(URL.make("home:" + name), comp); +/* 220 */ if (image != null) { +/* 221 */ return image; +/* */ } +/* */ +/* 224 */ if (pass == 0) +/* 225 */ name = "..\\" + name; +/* */ } +/* 227 */ return null; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public Dimension getPreferredSize() +/* */ { +/* 244 */ return imageSize(); +/* */ } +/* */ +/* */ public Dimension getMinimumSize() +/* */ { +/* 249 */ return imageSize(); +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\ImageCanvas.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/InsetPanel.java b/NET/worlds/console/InsetPanel.java new file mode 100644 index 0000000..4bf00b5 --- /dev/null +++ b/NET/worlds/console/InsetPanel.java @@ -0,0 +1,2870 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import java.awt.Color; +/* */ import java.awt.Insets; +/* */ import java.awt.LayoutManager; +/* */ import java.awt.Panel; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ class InsetPanel +/* */ extends Panel +/* */ { +/* */ private static final long serialVersionUID = -8045587676805647253L; +/* */ private Insets insets; +/* */ +/* */ InsetPanel(LayoutManager layout, int top, int left, int bottom, int right) +/* */ { +/* 2847 */ super(layout); +/* 2848 */ init(top, left, bottom, right); +/* */ } +/* */ +/* */ InsetPanel(int top, int left, int bottom, int right) { +/* 2852 */ init(top, left, bottom, right); +/* */ } +/* */ +/* */ private void init(int top, int left, int bottom, int right) { +/* 2856 */ this.insets = new Insets(top, left, bottom, right); +/* 2857 */ setBackground(Color.black); +/* */ } +/* */ +/* */ public Insets getInsets() +/* */ { +/* 2862 */ return this.insets; +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\InsetPanel.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/InternetConnectionDialog.java b/NET/worlds/console/InternetConnectionDialog.java new file mode 100644 index 0000000..144ccdb --- /dev/null +++ b/NET/worlds/console/InternetConnectionDialog.java @@ -0,0 +1,132 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import NET.worlds.network.Galaxy; +/* */ import NET.worlds.network.VarErrorException; +/* */ import java.awt.BorderLayout; +/* */ import java.awt.Button; +/* */ import java.awt.Event; +/* */ import java.awt.Font; +/* */ import java.awt.Panel; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public class InternetConnectionDialog +/* */ extends PolledDialog +/* */ { +/* */ private static final long serialVersionUID = 612016940893432560L; +/* */ private String msg; +/* 35 */ private Button okButton = new Button(Console.message("Retry")); +/* 36 */ private Button cancelButton = new Button(Console.message("Single-user")); +/* */ +/* */ private static boolean firstTimeDone; +/* */ private static boolean choseSingleUserMode; +/* 40 */ private static Font bfont = new Font(Console.message("ButtonFont"), +/* 41 */ 0, 12); +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public static boolean isFirstTimeDone() +/* */ { +/* 50 */ return firstTimeDone; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public static boolean choseSingleUserMode() +/* */ { +/* 60 */ return choseSingleUserMode; +/* */ } +/* */ +/* */ +/* */ public InternetConnectionDialog(Galaxy galaxy, VarErrorException ve) +/* */ { +/* 66 */ super(Console.getFrame(), galaxy, Console.message("Internet-Connection"), true); +/* 67 */ setAlignment(1); +/* 68 */ this.msg = ve.getMsg().replace('\n', ' '); +/* 69 */ ready(); +/* */ } +/* */ +/* */ protected boolean done(boolean confirmed) +/* */ { +/* 74 */ boolean ret = super.done(confirmed); +/* 75 */ choseSingleUserMode = !confirmed; +/* 76 */ firstTimeDone = true; +/* 77 */ return ret; +/* */ } +/* */ +/* */ protected void build() +/* */ { +/* 82 */ setLayout(new BorderLayout()); +/* 83 */ Panel txtPanel = new Panel(new BorderLayout()); +/* 84 */ txtPanel.add("Center", new TextCanvas(this.msg, 400)); +/* 85 */ txtPanel.add("North", new Filler(10, 10)); +/* 86 */ txtPanel.add("South", new Filler(10, 10)); +/* 87 */ txtPanel.add("East", new Filler(10, 10)); +/* 88 */ txtPanel.add("West", new Filler(10, 10)); +/* */ +/* 90 */ add("Center", txtPanel); +/* */ +/* 92 */ Panel buttons = new Panel(); +/* 93 */ this.okButton.setFont(bfont); +/* 94 */ this.cancelButton.setFont(bfont); +/* 95 */ buttons.add(this.okButton); +/* 96 */ buttons.add(this.cancelButton); +/* */ +/* 98 */ add("South", buttons); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ @Deprecated +/* */ public boolean action(Event event, Object what) +/* */ { +/* 109 */ Object target = event.target; +/* 110 */ if (target == this.okButton) +/* 111 */ return done(true); +/* 112 */ if (target == this.cancelButton) +/* 113 */ return done(false); +/* 114 */ return false; +/* */ } +/* */ +/* */ @Deprecated +/* */ public boolean keyDown(Event event, int key) +/* */ { +/* 120 */ if (key == 27) +/* 121 */ return done(false); +/* 122 */ if (key == 10) +/* 123 */ return done(true); +/* 124 */ return super.keyDown(event, key); +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\InternetConnectionDialog.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/InternetExplorer.java b/NET/worlds/console/InternetExplorer.java new file mode 100644 index 0000000..8d8e71b --- /dev/null +++ b/NET/worlds/console/InternetExplorer.java @@ -0,0 +1,95 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import NET.worlds.scape.CDAudio; +/* */ import NET.worlds.scape.WavSoundPlayer; +/* */ import java.io.IOException; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public class InternetExplorer +/* */ extends IUnknown +/* */ implements MainCallback, MainTerminalCallback +/* */ { +/* */ WebBrowser _parent; +/* */ +/* */ public InternetExplorer(WebBrowser parent) +/* */ throws IOException +/* */ { +/* 29 */ ActiveX.init(this); +/* 30 */ this._parent = parent; +/* 31 */ this._refs = 1; +/* 32 */ Main.register(this); +/* */ } +/* */ +/* */ public synchronized void Release() throws OLEInvalidObjectException +/* */ { +/* 37 */ if (this._refs <= 0) +/* 38 */ return; +/* 39 */ this._refs -= 1; +/* 40 */ if (this._parent != null) +/* 41 */ this._parent.close(); +/* 42 */ ActiveX.uninit(this); +/* */ } +/* */ +/* */ public String toString() +/* */ { +/* 47 */ return "InternetExplorer(" + internalData() + ")"; +/* */ } +/* */ +/* */ public void mainCallback() { +/* 51 */ boolean justActivated = Window.getActivated(); +/* 52 */ if (justActivated) +/* */ { +/* */ +/* */ +/* 56 */ WebBrowser killMe = WebBrowser.findTag("sound:"); +/* 57 */ if (killMe != null) +/* 58 */ killMe.close(); +/* 59 */ killMe = WebBrowser.findTag("videoMap:"); +/* 60 */ if (killMe != null) +/* 61 */ killMe.close(); +/* 62 */ killMe = WebBrowser.findTag("videoAd:"); +/* 63 */ if (killMe != null) +/* 64 */ killMe.close(); +/* 65 */ killMe = WebBrowser.findTag("zoom:"); +/* 66 */ if (killMe != null) +/* 67 */ killMe.close(); +/* 68 */ killMe = WebBrowser.findTag("zoomLeft:"); +/* 69 */ if (killMe != null) +/* 70 */ killMe.close(); +/* 71 */ killMe = WebBrowser.findTag("outside:"); +/* 72 */ if (killMe != null) { +/* 73 */ killMe.close(); +/* */ } +/* */ try { +/* 76 */ Thread.sleep(1L); +/* */ } +/* */ catch (InterruptedException localInterruptedException) {} +/* */ +/* */ +/* 81 */ WavSoundPlayer.resumeSystem(); +/* 82 */ CDAudio.get().setEnabled(true); +/* */ } +/* */ } +/* */ +/* */ public void terminalCallback() { +/* 87 */ Main.unregister(this); +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\InternetExplorer.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/InventoryPart.java b/NET/worlds/console/InventoryPart.java new file mode 100644 index 0000000..55656a6 --- /dev/null +++ b/NET/worlds/console/InventoryPart.java @@ -0,0 +1,59 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import NET.worlds.scape.FrameEvent; +/* */ import java.awt.Container; +/* */ import java.awt.Event; +/* */ import java.awt.MenuItem; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public class InventoryPart +/* */ implements FramePart +/* */ { +/* */ MenuItem inventoryItem; +/* */ +/* */ public void activate(Console c, Container f, Console prev) +/* */ { +/* 30 */ this.inventoryItem = c.addMenuItem(Console.message("Inventory") + "...", +/* 31 */ "File"); +/* */ } +/* */ +/* */ public void deactivate() { +/* 35 */ this.inventoryItem = null; +/* */ } +/* */ +/* */ public boolean handle(FrameEvent f) { +/* 39 */ return true; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public boolean action(Event event, Object what) +/* */ { +/* 51 */ return false; +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\InventoryPart.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/LanguageManager.java b/NET/worlds/console/LanguageManager.java new file mode 100644 index 0000000..fe6977d --- /dev/null +++ b/NET/worlds/console/LanguageManager.java @@ -0,0 +1,219 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import NET.worlds.core.Std; +/* */ import NET.worlds.network.ProgressDialog; +/* */ import NET.worlds.network.URL; +/* */ import java.io.FileOutputStream; +/* */ import java.io.IOException; +/* */ import java.io.InputStream; +/* */ import java.io.PrintStream; +/* */ import java.util.Enumeration; +/* */ import java.util.Vector; +/* */ import java.util.zip.ZipEntry; +/* */ import java.util.zip.ZipFile; +/* */ +/* */ +/* */ +/* */ +/* */ public class LanguageManager +/* */ implements Runnable +/* */ { +/* */ private String m_Name; +/* */ private String m_FinishName; +/* */ private int m_fSize; +/* */ +/* */ public static void handle(String name, int fSize, String finishName) +/* */ { +/* 27 */ LanguageManager lm = new LanguageManager(name, fSize, finishName); +/* 28 */ Thread t = new Thread(lm); +/* 29 */ t.setDaemon(true); +/* 30 */ t.start(); +/* */ } +/* */ +/* */ +/* */ +/* */ public LanguageManager(String name, int fSize, String finishName) +/* */ { +/* 37 */ this.m_Name = name; +/* 38 */ this.m_fSize = fSize; +/* 39 */ this.m_FinishName = finishName; +/* */ } +/* */ +/* */ public void run() { +/* 43 */ String fName = this.m_Name.substring(this.m_Name.lastIndexOf('/') + 1, +/* 44 */ this.m_Name.length()); +/* */ +/* 46 */ Console.println(Console.message("Downloading-update") + fName); +/* */ +/* */ +/* */ +/* 50 */ Vector<String> names = new Vector(); +/* 51 */ names.addElement(fName); +/* 52 */ Vector<URL> urls = new Vector(); +/* 53 */ urls.addElement(URL.make(this.m_Name)); +/* 54 */ int now = Std.getFastTime(); +/* */ +/* 56 */ ProgressDialog progD = new ProgressDialog(this.m_fSize); +/* */ try +/* */ { +/* 59 */ System.out.println("ProgressDialog start, now = " + now); +/* 60 */ System.out.println("fName = " + fName + ", name = " + this.m_Name); +/* */ +/* */ +/* 63 */ if (!progD.loadFiles(names, urls)) { +/* 64 */ System.out.println("Can't load " + fName); +/* 65 */ return; +/* */ } +/* 67 */ now = Std.getFastTime(); +/* 68 */ System.out.println("ProgressDialog end, now = " + now); +/* */ } +/* */ catch (IOException e) { +/* 71 */ System.out.println("Exception " + e.toString() + " loading file " + +/* 72 */ fName); +/* */ } +/* */ +/* 75 */ finishDownload(this.m_FinishName); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public synchronized boolean finishDownload(String localName) +/* */ { +/* 98 */ String fType = localName.substring(localName.lastIndexOf('.'), +/* 99 */ localName.length()); +/* */ +/* 101 */ System.out.println("Finished Downloading " + localName); +/* 102 */ if (fType.equals(".EXE")) { +/* 103 */ if (tryToRun(localName)) { +/* 104 */ System.out.println(Console.message("Loading2") + localName); +/* */ } else +/* 106 */ Console.println( +/* 107 */ Console.message("Loading2") + localName + " " + Console.message("failed")); +/* 108 */ } else if (fType.equals(".zip")) +/* */ { +/* */ +/* */ try +/* */ { +/* */ +/* 114 */ langZip = new ZipFile(localName); +/* */ } catch (IOException e) { ZipFile langZip; +/* 116 */ System.out.println("Error opening language file " + localName); +/* 117 */ notify(); +/* 118 */ return false; +/* */ } +/* */ ZipFile langZip; +/* 121 */ System.out.println("Expanding language file."); +/* */ +/* 123 */ Enumeration<? extends ZipEntry> enums = langZip.entries(); +/* 124 */ while (enums.hasMoreElements()) { +/* 125 */ ZipEntry ze = (ZipEntry)enums.nextElement(); +/* 126 */ String filename = ze.getName(); +/* */ +/* 128 */ String langFile = filename; +/* */ +/* 130 */ String[] validExtensions = { ".properties", ".jpg", ".bmp", +/* 131 */ ".gif" }; +/* */ +/* 133 */ boolean validFile = false; +/* 134 */ for (int idx = 0; idx < validExtensions.length; idx++) { +/* 135 */ if (langFile.toString().endsWith(validExtensions[idx])) { +/* 136 */ validFile = true; +/* 137 */ break; +/* */ } +/* */ } +/* */ +/* 141 */ if (validFile) { +/* 142 */ CopyLangFile(langZip, ze, langFile); +/* 143 */ System.out.println(langFile); +/* */ } +/* */ } +/* */ +/* */ try +/* */ { +/* 149 */ langZip.close(); +/* */ } +/* */ catch (IOException localIOException1) {} +/* */ } +/* 153 */ notify(); +/* */ +/* 155 */ new OkCancelDialog(Console.getFrame(), null, Console.message("Alert"), +/* 156 */ null, Console.message("OK"), Console.message("Change-exit"), +/* 157 */ true); +/* */ +/* 159 */ return false; +/* */ } +/* */ +/* */ private void CopyLangFile(ZipFile langZip, ZipEntry ze, String langFile) +/* */ { +/* */ try +/* */ { +/* 166 */ is = langZip.getInputStream(ze); +/* */ } catch (IOException e) { +/* */ InputStream is; +/* */ return; +/* */ } +/* */ InputStream is; +/* */ try { +/* 173 */ os = new FileOutputStream(langFile); +/* */ } catch (IOException e) { +/* */ try { FileOutputStream os; +/* 176 */ is.close(); +/* */ } +/* */ catch (IOException localIOException1) {} +/* */ +/* */ return; +/* */ } +/* */ FileOutputStream os; +/* 183 */ byte[] buffer = new byte['Ѐ']; +/* */ try +/* */ { +/* */ for (;;) { +/* 187 */ int bytesRead = is.read(buffer); +/* 188 */ if (bytesRead == -1) { +/* */ break; +/* */ } +/* 191 */ os.write(buffer, 0, bytesRead); +/* */ } +/* */ return; +/* */ } +/* */ catch (IOException localIOException2) +/* */ { +/* */ try +/* */ { +/* 199 */ is.close(); +/* 200 */ os.close(); +/* */ } +/* */ catch (IOException localIOException3) {} +/* */ } +/* */ } +/* */ +/* */ public static boolean tryToRun(String s) { +/* */ try { +/* 208 */ Runtime.getRuntime().exec(s); +/* 209 */ return true; +/* */ } catch (IOException e) {} +/* 211 */ return false; +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\LanguageManager.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/LocationDialog.java b/NET/worlds/console/LocationDialog.java new file mode 100644 index 0000000..6057afb --- /dev/null +++ b/NET/worlds/console/LocationDialog.java @@ -0,0 +1,142 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import java.awt.Button; +/* */ import java.awt.Color; +/* */ import java.awt.Event; +/* */ import java.awt.Font; +/* */ import java.awt.GridBagConstraints; +/* */ import java.awt.GridBagLayout; +/* */ import java.awt.Label; +/* */ import java.awt.Panel; +/* */ import java.awt.TextField; +/* */ import java.awt.Window; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public class LocationDialog +/* */ extends PolledDialog +/* */ { +/* */ private static final long serialVersionUID = -6550771504344935484L; +/* 29 */ private Button okButton = new Button(Console.message("OK")); +/* 30 */ private Button cancelButton = new Button(Console.message("Cancel")); +/* 31 */ private Label label = new Label(Console.message("New-URL")); +/* 32 */ private static Font font = new Font(Console.message("ButtonFont"), +/* 33 */ 0, 12); +/* 34 */ private static Font gfont = new Font(Console.message("GammaTextFont"), +/* 35 */ 0, 12); +/* */ +/* */ +/* */ +/* */ private TextField locationField; +/* */ +/* */ +/* */ +/* */ +/* */ public LocationDialog(Window parent, DialogReceiver receiver, String title, String location) +/* */ { +/* 46 */ super(parent, receiver, title, true); +/* */ +/* 48 */ this.locationField = new TextField(location, 40); +/* 49 */ this.locationField.setFont(gfont); +/* */ +/* 51 */ ready(); +/* */ } +/* */ +/* */ public String getLocationURL() +/* */ { +/* 56 */ return this.locationField.getText(); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ protected void build() +/* */ { +/* 65 */ setBackground(Color.white); +/* */ +/* 67 */ GridBagLayout gbag = new GridBagLayout(); +/* 68 */ setLayout(gbag); +/* 69 */ GridBagConstraints c = new GridBagConstraints(); +/* 70 */ c.weightx = 0.0D; +/* 71 */ c.weighty = 0.0D; +/* 72 */ c.gridheight = 1; +/* 73 */ c.fill = 0; +/* 74 */ c.anchor = 13; +/* 75 */ c.gridwidth = 1; +/* 76 */ this.label.setFont(font); +/* 77 */ add(gbag, this.label, c); +/* */ +/* 79 */ c.weightx = 1.0D; +/* 80 */ c.weighty = 0.0D; +/* 81 */ c.gridwidth = 0; +/* 82 */ c.fill = 2; +/* 83 */ c.anchor = 17; +/* 84 */ this.locationField.setFont(gfont); +/* 85 */ add(gbag, this.locationField, c); +/* */ +/* 87 */ Panel buttons = new Panel(); +/* 88 */ this.okButton.setFont(font); +/* 89 */ this.cancelButton.setFont(font); +/* 90 */ buttons.add(this.okButton); +/* 91 */ buttons.add(this.cancelButton); +/* 92 */ c.gridwidth = 0; +/* 93 */ c.anchor = 10; +/* 94 */ c.fill = 0; +/* 95 */ add(gbag, buttons, c); +/* */ } +/* */ +/* */ +/* */ +/* */ public void setVisible(boolean visible) +/* */ { +/* 102 */ super.setVisible(visible); +/* 103 */ if (visible) { +/* 104 */ this.locationField.requestFocus(); +/* */ } +/* */ } +/* */ +/* */ @Deprecated +/* */ public boolean handleEvent(Event event) +/* */ { +/* 111 */ if (event.id == 201) +/* 112 */ return done(false); +/* 113 */ return super.handleEvent(event); +/* */ } +/* */ +/* */ @Deprecated +/* */ public boolean action(Event event, Object what) +/* */ { +/* 119 */ Object target = event.target; +/* 120 */ if (target == this.cancelButton) +/* 121 */ return done(false); +/* 122 */ if (target == this.okButton) +/* 123 */ return done(true); +/* 124 */ return false; +/* */ } +/* */ +/* */ @Deprecated +/* */ public boolean keyDown(Event event, int key) +/* */ { +/* 130 */ if (key == 27) +/* 131 */ return done(false); +/* 132 */ if (key == 10) +/* 133 */ return done(true); +/* 134 */ return super.keyDown(event, key); +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\LocationDialog.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/LogFile.java b/NET/worlds/console/LogFile.java new file mode 100644 index 0000000..d5b581b --- /dev/null +++ b/NET/worlds/console/LogFile.java @@ -0,0 +1,330 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import NET.worlds.core.IniFile; +/* */ import NET.worlds.core.Std; +/* */ import NET.worlds.core.SystemInfo; +/* */ import java.io.BufferedOutputStream; +/* */ import java.io.BufferedReader; +/* */ import java.io.File; +/* */ import java.io.FileInputStream; +/* */ import java.io.FileOutputStream; +/* */ import java.io.IOException; +/* */ import java.io.InputStream; +/* */ import java.io.InputStreamReader; +/* */ import java.io.PrintStream; +/* */ import java.text.DateFormat; +/* */ import java.util.Date; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public class LogFile +/* */ { +/* 77 */ private static PrintStream out = null; +/* */ +/* */ +/* 80 */ private static String baseName = null; +/* */ +/* */ +/* */ private static final String tempSuffix = ".open"; +/* */ +/* */ +/* */ private static final String mailSuffix = ".mail"; +/* */ +/* */ +/* */ private static final String noCloseTag = ", it terminated unexpectedly.\nPlease fill in the box below with an explanation of which\nfeatures you were exercising at the time, then click the\nReport button to automatically email the report to Worlds.\n"; +/* */ +/* */ +/* */ private static final String errorFoundTag = ", it generated a debugging log.\nPlease fill in the box below with an explanation of anything\nunusual that occurred (if anything), then click the Report\nbutton to automatically email the report to Worlds.\n"; +/* */ +/* */ +/* */ private static final String includeEmail = "Also, please include your email address.\n"; +/* */ +/* */ +/* 98 */ private static String mailReason = "error encountered"; +/* 99 */ private static String mailTag = ", it generated a debugging log.\nPlease fill in the box below with an explanation of anything\nunusual that occurred (if anything), then click the Report\nbutton to automatically email the report to Worlds.\n"; +/* */ +/* */ +/* */ +/* */ private static final String iniFile = "worlds.ini"; +/* */ +/* */ +/* */ +/* */ +/* */ public static void open() +/* */ { +/* 110 */ baseName = IniFile.gamma().getIniString("logfile", ""); +/* 111 */ if (baseName.length() == 0) { +/* 112 */ return; +/* */ } +/* 114 */ baseName = Gamma.earlyURLUnalias("home:" + baseName); +/* */ +/* */ +/* 117 */ File f = new File(baseName + ".open"); +/* 118 */ if (f.isFile()) +/* */ { +/* */ +/* 121 */ if (scanFileForException(f)) { +/* 122 */ mailReason = "logfile not closed--probable crash"; +/* 123 */ mailTag = ", it terminated unexpectedly.\nPlease fill in the box below with an explanation of which\nfeatures you were exercising at the time, then click the\nReport button to automatically email the report to Worlds.\n"; +/* 124 */ File mf = new File(baseName + ".mail"); +/* 125 */ f.renameTo(mf); +/* 126 */ mf = null; +/* */ } else { +/* 128 */ f.delete(); +/* */ } +/* */ } +/* */ +/* 132 */ f = new File(baseName); +/* 133 */ if (f.isFile()) { +/* 134 */ f.delete(); +/* */ } +/* 136 */ f = null; +/* */ +/* */ +/* 139 */ FileOutputStream FOout = null; +/* */ try { +/* 141 */ FOout = new FileOutputStream(baseName + ".open"); +/* */ } catch (IOException e) { +/* 143 */ System.out.println("Error opening logfile \"" + baseName + "\""); +/* 144 */ return; +/* */ } +/* */ +/* 147 */ out = new PrintStream(new BufferedOutputStream(FOout), true); +/* */ +/* */ +/* 150 */ System.setOut(out); +/* 151 */ System.setErr(out); +/* */ +/* */ +/* */ +/* 155 */ out.println("Logfile of " + +/* 156 */ DateFormat.getDateTimeInstance().format(new Date())); +/* 157 */ out.println("Gamma " + +/* 158 */ Std.getVersion() + +/* 159 */ ":" + +/* 160 */ Std.getJavaVersion() + +/* 161 */ ", build " + +/* 162 */ Std.getBuildInfo() + +/* 163 */ " of " + +/* 164 */ DateFormat.getDateTimeInstance().format( +/* 165 */ new Date(Std.getBuildDate()))); +/* 166 */ out.println("system info---------------------------------"); +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* 174 */ SystemInfo.Record(out); +/* */ +/* 176 */ out.println("worlds.ini----------------------------------"); +/* */ +/* */ +/* */ try +/* */ { +/* 181 */ String from = System.getProperty("file.encoding"); +/* 182 */ InputStream in = new FileInputStream("worlds.ini"); +/* 183 */ BufferedReader ini = new BufferedReader(new InputStreamReader(in, +/* 184 */ from)); +/* */ +/* 186 */ for (String s = ini.readLine(); s != null; s = ini.readLine()) +/* 187 */ out.println(s); +/* 188 */ ini.close(); +/* */ } +/* */ catch (IOException localIOException1) {} +/* 191 */ out.println("--------------------------------------------"); +/* */ } +/* */ +/* */ +/* */ public static void close() +/* */ { +/* 197 */ if (out != null) { +/* 198 */ out.println("Logfile closed."); +/* 199 */ out.close(); +/* */ } +/* */ +/* */ +/* */ +/* 204 */ File f = new File(baseName + ".open"); +/* 205 */ if (scanFileForException(f)) { +/* 206 */ File mf = new File(baseName + ".mail"); +/* 207 */ f.renameTo(mf); +/* 208 */ mf = null; +/* */ } else { +/* 210 */ File nf = new File(baseName); +/* 211 */ if (f.isFile()) +/* 212 */ f.renameTo(nf); +/* 213 */ nf = null; +/* */ } +/* 215 */ f = null; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public static void mailLogIfPresent(String server) +/* */ { +/* 225 */ DialogReceiver rcvr = new DialogReceiver() { +/* */ public void dialogDone(Object who, boolean confirmed) { +/* 227 */ LogMailDialog dlg = (LogMailDialog)who; +/* 228 */ File f = new File(LogFile.baseName + ".mail"); +/* 229 */ if (f.isFile()) { +/* 230 */ if (confirmed) { +/* 231 */ LogFile.sendCrashMail(LogFile.this, f, LogFile.mailReason, dlg.getComment()); +/* */ } else { +/* 233 */ f.delete(); +/* */ } +/* */ } +/* */ } +/* 237 */ }; +/* 238 */ File f = new File(baseName + ".mail"); +/* 239 */ if (f.isFile()) +/* */ { +/* 241 */ String tag = "The last time you ran " + Std.getProductName() + +/* 242 */ mailTag; +/* 243 */ if (IniFile.gamma().getIniString("LASTCHATNAME", "").length() == 0) { +/* 244 */ new LogMailDialog(rcvr, tag + "Also, please include your email address.\n"); +/* */ } else { +/* 246 */ new LogMailDialog(rcvr, tag); +/* */ } +/* */ } +/* */ } +/* */ +/* */ private static void sendCrashMail(String server, File logFile, String tagLine, String comment) +/* */ { +/* 253 */ MailMessage msg = new LogFileMailMessage(server, logFile); +/* */ try { +/* 255 */ if (tagLine != null) +/* 256 */ msg.appendBody(" (" + tagLine + ")"); +/* 257 */ msg.appendBody(".\n\n"); +/* 258 */ if (comment != null) { +/* 259 */ msg.appendBody("The user reports:\n"); +/* 260 */ msg.appendParagraphs(comment); +/* 261 */ msg.appendBody("\n\n"); +/* */ } +/* 263 */ msg.appendBody("The log file reads:\n\n"); +/* */ +/* 265 */ String from = System.getProperty("file.encoding"); +/* 266 */ InputStream in = new FileInputStream(logFile); +/* 267 */ BufferedReader log = new BufferedReader(new InputStreamReader(in, +/* 268 */ from)); +/* */ +/* */ +/* 271 */ long fl = logFile.length(); +/* 272 */ if (fl > 64000L) { +/* 273 */ int lc = 0; +/* 274 */ long cc = 0L; +/* */ +/* 276 */ for (String s = log.readLine(); (s != null) && (lc < 2048); s = log +/* 277 */ .readLine()) { +/* 278 */ msg.appendBody(s + "\n"); +/* 279 */ lc++; +/* 280 */ cc += s.length(); +/* */ } +/* */ +/* 283 */ msg.appendBody("-------------------------------------...\n"); +/* 284 */ msg.appendBody(" Log file too long; skipping center\n"); +/* 285 */ msg.appendBody("...-------------------------------------\n"); +/* */ +/* 287 */ log.skip(fl - (cc + 16030L)); +/* 288 */ log.readLine(); +/* 289 */ for (String s = log.readLine(); s != null; s = log.readLine()) +/* 290 */ msg.appendBody(s + "\n"); +/* */ } else { +/* 292 */ for (String s = log.readLine(); s != null; s = log.readLine()) +/* 293 */ msg.appendBody(s + "\n"); +/* */ } +/* 295 */ log.close(); +/* */ } catch (IOException ex) { +/* 297 */ System.out.println("Error writing logfile to mail note: " + ex); +/* */ } +/* 299 */ msg.send(); +/* */ } +/* */ +/* */ private static boolean scanFileForException(File logFile) +/* */ { +/* */ try +/* */ { +/* 306 */ String from = System.getProperty("file.encoding"); +/* 307 */ InputStream in = new FileInputStream(logFile); +/* 308 */ BufferedReader log = new BufferedReader(new InputStreamReader(in, +/* 309 */ from)); +/* 310 */ for (String s = log.readLine(); s != null; s = log.readLine()) { +/* 311 */ if ((s.indexOf("\tat NET.worlds") != -1) || +/* 312 */ (s.indexOf("\tat java.lang") != -1) || +/* 313 */ (s.indexOf("\tat sun.awt") != -1)) { +/* 314 */ log.close(); +/* 315 */ return true; +/* */ } +/* */ } +/* 318 */ log.close(); +/* */ } +/* */ catch (IOException localIOException) {} +/* */ +/* 322 */ return false; +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\LogFile.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/LogFileMailMessage.java b/NET/worlds/console/LogFileMailMessage.java new file mode 100644 index 0000000..cee2e6e --- /dev/null +++ b/NET/worlds/console/LogFileMailMessage.java @@ -0,0 +1,40 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import java.io.File; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ class LogFileMailMessage +/* */ extends MailMessage +/* */ { +/* */ private static final String mailTo = "[email protected]"; +/* */ private File logFile; +/* */ +/* */ LogFileMailMessage(String server, File logFile) +/* */ { +/* 19 */ super(server, "[email protected]", "[email protected]", "Gamma Log: Abnormal Termination", "A Gamma log with potential errors has been detected"); +/* */ +/* 21 */ this.logFile = logFile; +/* */ } +/* */ +/* */ +/* */ +/* */ protected void finished(boolean wasError) +/* */ { +/* 28 */ if (!wasError) { +/* 29 */ this.logFile.delete(); +/* */ } else { +/* 31 */ Console.println(Console.message("Error-mailing")); +/* */ } +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\LogFileMailMessage.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/LogMailDialog.java b/NET/worlds/console/LogMailDialog.java new file mode 100644 index 0000000..b075d3a --- /dev/null +++ b/NET/worlds/console/LogMailDialog.java @@ -0,0 +1,76 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import java.awt.GridBagConstraints; +/* */ import java.awt.TextArea; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ class LogMailDialog +/* */ extends OkCancelDialog +/* */ { +/* */ private static final long serialVersionUID = -6276776216084519247L; +/* */ private TextArea commentArea; +/* */ private String tagString; +/* */ +/* */ public LogMailDialog(DialogReceiver rcvr, String tag) +/* */ { +/* 27 */ super(Console.getFrame(), rcvr, Console.message("Log-Mailer"), Console.message("Dont-Report"), Console.message("Report"), null, false); +/* 28 */ this.tagString = tag; +/* 29 */ this.commentArea = new TextArea("", 5, 60, 1); +/* 30 */ this.commentArea.setEditable(true); +/* 31 */ setConfirmKey(-1); +/* */ } +/* */ +/* */ +/* */ protected void build() +/* */ { +/* 37 */ GridBagConstraints c = new GridBagConstraints(); +/* 38 */ if (this.tagString != null) { +/* 39 */ c.weightx = 1.0D; +/* 40 */ c.weighty = 1.0D; +/* 41 */ c.gridwidth = 0; +/* 42 */ add(this.gbag, new MultiLineLabel(this.tagString, 5, 5), c); +/* */ } +/* */ +/* */ +/* 46 */ c.weightx = 1.0D; +/* 47 */ c.weighty = 1.0D; +/* 48 */ c.gridwidth = 0; +/* 49 */ add(this.gbag, this.commentArea, c); +/* */ +/* */ +/* 52 */ int count = 0; +/* 53 */ if (this.okButton != null) +/* 54 */ count++; +/* 55 */ if (this.cancelButton != null) +/* 56 */ count++; +/* 57 */ c.gridwidth = count; +/* 58 */ c.weightx = 1.0D; +/* 59 */ c.weighty = 0.0D; +/* 60 */ if (this.okButton != null) +/* 61 */ add(this.gbag, this.okButton, c); +/* 62 */ if (this.cancelButton != null) { +/* 63 */ add(this.gbag, this.cancelButton, c); +/* */ } +/* */ } +/* */ +/* */ public String getComment() { +/* 68 */ return this.commentArea.getText(); +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\LogMailDialog.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/LoginWizard.java b/NET/worlds/console/LoginWizard.java new file mode 100644 index 0000000..a566ea5 --- /dev/null +++ b/NET/worlds/console/LoginWizard.java @@ -0,0 +1,1381 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import NET.worlds.core.IniFile; +/* */ import NET.worlds.core.Std; +/* */ import NET.worlds.network.Cache; +/* */ import NET.worlds.network.CacheFile; +/* */ import NET.worlds.network.Galaxy; +/* */ import NET.worlds.network.NetworkObject; +/* */ import NET.worlds.network.RemoteFileConst; +/* */ import NET.worlds.network.URL; +/* */ import NET.worlds.scape.SendURLAction; +/* */ import java.awt.Button; +/* */ import java.awt.CardLayout; +/* */ import java.awt.Checkbox; +/* */ import java.awt.Component; +/* */ import java.awt.Container; +/* */ import java.awt.Dimension; +/* */ import java.awt.Event; +/* */ import java.awt.Font; +/* */ import java.awt.GridBagConstraints; +/* */ import java.awt.GridBagLayout; +/* */ import java.awt.GridLayout; +/* */ import java.awt.Label; +/* */ import java.awt.Panel; +/* */ import java.awt.TextField; +/* */ import java.io.DataInputStream; +/* */ import java.io.FileInputStream; +/* */ import java.io.FileNotFoundException; +/* */ import java.io.IOException; +/* */ import java.io.PrintStream; +/* */ import java.text.MessageFormat; +/* */ import java.util.Enumeration; +/* */ import java.util.Vector; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public class LoginWizard +/* */ extends PolledDialog +/* */ implements DialogReceiver, DialogDisabled, RemoteFileConst +/* */ { +/* */ private static final long serialVersionUID = -1951115972999605117L; +/* */ private static final int HAVE_USERS = 0; +/* */ private static final int ACCOUNT_TYPE = 1; +/* */ private static final int REGWAIT = 2; +/* */ private static final int WELCOME = 3; +/* */ private static final int CODEWORD_WAIT = 4; +/* */ private static final int NEW_USER_INFO = 5; +/* */ private static final int LOGGING_IN = 7; +/* */ private static final int NOT_LOGGED_IN = 8; +/* */ private static final int ERROR = 9; +/* */ private static final int CONNECTION_DIED = 10; +/* */ private static final int AUTO_LOGIN_FAILED = 11; +/* */ private static final int REGWAIT2 = 12; +/* */ private static final int SCREEN_COUNT = 14; +/* */ private static final int STATE_GET_INFO = 0; +/* */ private static final int STATE_SEND_INFO = 1; +/* */ private static final int STATE_WAIT = 2; +/* */ private static final int STATE_AUTO_LOGIN = 3; +/* */ private static final int STATE_LOGGED_IN = 4; +/* 172 */ private static final String defaultRegisterScriptL = "register" + +/* 173 */ Console.message(".pl"); +/* */ +/* */ +/* */ private static final String defaultRegisterScript = "register.pl"; +/* */ +/* 178 */ private static final String nameConstraints = Console.message("n-contain-letters"); +/* */ +/* */ +/* 181 */ private static final String passwordConstraints1 = Console.message("p-contain-letters"); +/* */ +/* */ +/* */ +/* */ private static final int oldMinPasswordLen = 4; +/* */ +/* */ +/* */ +/* */ private static final int newMinPasswordLen = 6; +/* */ +/* */ +/* */ +/* 193 */ private static final String savePasswordText = Console.message("Remember-password"); +/* */ +/* */ +/* 196 */ private static final String passwordMismatchText = Console.message("do-not-match"); +/* */ +/* */ private static final String userNameIniKey = "User"; +/* */ +/* */ private static final String passwordIniKey = "Password"; +/* */ +/* */ private static final String serialNumIniKey = "SNum"; +/* */ private static final String handshakeIDIniKey = "handshakeID"; +/* */ private static final String defaultUserIniKey = "DefaultUser"; +/* */ static final int width = 480; +/* */ static final int height = 280; +/* */ static final int textWidth = 400; +/* */ private Galaxy galaxy; +/* */ private IniFile iniFile; +/* 210 */ private CardLayout cardLayout = new CardLayout(); +/* 211 */ private int currentScreen = -1; +/* 212 */ private int lastScreen = -1; +/* 213 */ private int loginFrom = -1; +/* */ private int errorFrom; +/* 215 */ private Panel[] screens = new Panel[14]; +/* */ +/* */ private boolean queryingServer; +/* */ +/* */ private Button createNewUsernameButton; +/* */ +/* */ private Button alternateBrowserButton; +/* */ private Button signInButton; +/* */ private Button noEmailButton; +/* */ private Button showRegButton; +/* */ private Button pwMailbackButtonKnown; +/* 226 */ private TextField codewordField = null; +/* 227 */ private TextField newUserName = null; +/* 228 */ private TextField newPassword1 = null; +/* 229 */ private TextField newPassword2 = null; +/* 230 */ private TextField typedUsername = null; +/* */ +/* 232 */ private static Font font = new Font(Console.message("GammaTextFont"), +/* 233 */ 0, 12); +/* 234 */ private static Font bfont = new Font(Console.message("ButtonFont"), +/* 235 */ 0, 12); +/* */ +/* 237 */ private TextField knownPassword = null; +/* 238 */ private Checkbox savePassword = new Checkbox(savePasswordText, true); +/* */ +/* 240 */ private Vector<String> users = new Vector(); +/* 241 */ private Vector<String> passwords = new Vector(); +/* */ +/* */ private int defaultUser; +/* */ +/* */ private String loginUserName; +/* */ +/* */ private String loginPassword; +/* */ private String loginSerialNumber; +/* */ private String newSerialNumber; +/* */ private String newHandshakeID; +/* */ private int loginMode; +/* 252 */ private int loginIndex = 0; +/* */ +/* */ private int loginState; +/* */ private String errMsg; +/* */ private boolean isDialogDisabled; +/* */ private Component defComponent; +/* */ private int id; +/* 259 */ private static boolean startUp = true; +/* */ +/* */ +/* */ private static boolean firstTimeDone; +/* */ +/* */ +/* */ private static int seq; +/* */ +/* */ private CacheFile cf; +/* */ +/* */ +/* */ public static boolean isFirstTimeDone() +/* */ { +/* 272 */ return firstTimeDone; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ public boolean safeToQueryServer() +/* */ { +/* 280 */ return this.queryingServer; +/* */ } +/* */ +/* */ public LoginWizard(Galaxy galaxy, IniFile iniFile) +/* */ { +/* 285 */ this(galaxy, iniFile, null); +/* */ } +/* */ +/* */ boolean isAnonServer() { +/* 289 */ return (this.galaxy.getGalaxyType() == 4) || +/* 290 */ (this.galaxy.getGalaxyType() == 2); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public LoginWizard(Galaxy galaxy, IniFile iniFile, String errMsg) +/* */ { +/* 299 */ super(Console.getFrame(), galaxy, "", false); +/* 300 */ this.galaxy = galaxy; +/* 301 */ this.iniFile = iniFile; +/* 302 */ this.errMsg = errMsg; +/* 303 */ this.id = (seq++); +/* */ +/* 305 */ this.queryingServer = false; +/* */ +/* */ +/* 308 */ int userNum = 0; +/* */ for (;;) { +/* 310 */ String user = iniFile.getIniString("User" + userNum, ""); +/* 311 */ if (user.length() == 0) +/* */ break; +/* 313 */ this.users.addElement(user); +/* 314 */ this.passwords.addElement(Console.decode(iniFile.getIniString( +/* 315 */ "Password" + userNum, ""))); +/* 316 */ userNum++; +/* */ } +/* */ +/* */ +/* 320 */ this.defaultUser = iniFile.getIniInt("DefaultUser", 0); +/* 321 */ this.newSerialNumber = iniFile.getIniString("SNum", ""); +/* 322 */ if (this.newSerialNumber.length() == 0) +/* 323 */ this.newSerialNumber = null; +/* 324 */ this.newHandshakeID = iniFile.getIniString("handshakeID", ""); +/* 325 */ if (this.newHandshakeID.length() == 0) { +/* 326 */ this.newHandshakeID = null; +/* */ } +/* */ +/* 329 */ setTitle(Console.message("Logging-in")); +/* 330 */ setLayout(this.cardLayout); +/* */ +/* */ +/* 333 */ this.loginState = 0; +/* 334 */ if (errMsg != null) { +/* 335 */ this.currentScreen = 10; +/* 336 */ } else if ((this.users.size() > 0) || (isAnonServer()) || +/* 337 */ (IniFile.override().getIniInt("nocreateaccount", 0) == 1)) { +/* 338 */ this.currentScreen = 0; +/* */ } else { +/* 340 */ setTitle(Console.message("Setting-Up-Acct")); +/* */ +/* 342 */ if (this.newSerialNumber == null) { +/* 343 */ if (this.newHandshakeID == null) { +/* 344 */ this.currentScreen = 1; +/* */ } else +/* 346 */ this.currentScreen = 12; +/* */ } else { +/* 348 */ this.currentScreen = 5; +/* */ } +/* */ } +/* 351 */ startUp = false; +/* 352 */ if (this.loginState != 3) { +/* 353 */ disableParent(); +/* 354 */ ready(); +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public boolean waitingForConnection() +/* */ { +/* 366 */ return (this.loginState == 3) || (this.loginState == 2); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ public void setConnected() +/* */ { +/* 374 */ int oldState = this.loginState; +/* 375 */ this.loginState = 4; +/* */ +/* */ +/* 378 */ if ((this.loginFrom != 0) || (this.users.size() <= this.loginIndex)) { +/* 379 */ this.users.addElement(this.loginUserName); +/* 380 */ this.passwords.addElement(null); +/* 381 */ this.iniFile.setIniString("User" + this.loginIndex, this.loginUserName); +/* 382 */ if (this.loginFrom == 5) { +/* 383 */ this.iniFile.setIniString("SNum" + this.loginIndex, +/* 384 */ this.loginSerialNumber); +/* */ } +/* */ } +/* 387 */ boolean save = this.savePassword.getState(); +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* 399 */ String pass = this.galaxy.getPassword(); +/* 400 */ if ((this.loginPassword != null) && +/* 401 */ (pass != null) && ( +/* 402 */ (save != isPasswordSaved(this.loginIndex)) || +/* 403 */ (!pass.equals((String)this.passwords.elementAt(this.loginIndex))))) +/* */ { +/* */ +/* */ +/* 407 */ String val = save ? pass : null; +/* 408 */ this.passwords.setElementAt(val, this.loginIndex); +/* 409 */ this.iniFile.setIniString("Password" + this.loginIndex, +/* 410 */ Console.encode(val)); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* 422 */ String name = this.galaxy.getChatname(); +/* 423 */ String nameU = this.galaxy.getUsernameU(); +/* */ +/* 425 */ if ((this.loginFrom != 5) && +/* 426 */ (!name.equals((String)this.users.elementAt(this.loginIndex)))) { +/* 427 */ this.users.setElementAt(name, this.loginIndex); +/* 428 */ this.iniFile.setIniString("User" + this.loginIndex, nameU); +/* */ } +/* 430 */ this.iniFile.setIniInt("DefaultUser", this.loginIndex); +/* 431 */ this.defaultUser = this.loginIndex; +/* */ +/* 433 */ if (this.newSerialNumber != null) +/* */ { +/* 435 */ this.newHandshakeID = null; +/* 436 */ this.newSerialNumber = null; +/* 437 */ this.iniFile.setIniString("handshakeID", ""); +/* 438 */ this.iniFile.setIniString("SNum", ""); +/* */ } +/* */ +/* 441 */ if (this.loginFrom != 0) { +/* 442 */ selectScreen(3); +/* 443 */ } else if (oldState != 3) { +/* 444 */ done(true); +/* */ } +/* */ else +/* */ { +/* 448 */ assert (Main.isMainThread()); +/* 449 */ this.galaxy.dialogDone(this, true); +/* 450 */ firstTimeDone = true; +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ public void loginError(String errMsg) +/* */ { +/* 459 */ removeScreen(8); +/* */ +/* 461 */ if (errMsg == null) { +/* 462 */ errMsg = Console.message("Unknown-error"); +/* */ } +/* 464 */ this.errMsg = errMsg; +/* 465 */ if (this.loginState == 3) { +/* 466 */ this.currentScreen = 11; +/* 467 */ disableParent(); +/* 468 */ ready(); +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ } +/* */ else +/* */ { +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* 485 */ if (this.loginFrom == -1) +/* 486 */ this.loginFrom = 0; +/* 487 */ selectScreen(8); +/* */ } +/* 489 */ this.loginState = 0; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public void setVisible(boolean visible) +/* */ { +/* 498 */ super.setVisible(visible); +/* 499 */ if ((visible) && (this.defComponent != null)) { +/* 500 */ this.defComponent.requestFocus(); +/* */ } +/* */ } +/* */ +/* */ public void dispose() { +/* 505 */ super.dispose(); +/* */ } +/* */ +/* */ protected void activeCallback() { +/* 509 */ if (this.loginState == 1) { +/* 510 */ this.loginState = 2; +/* 511 */ this.galaxy.setAuthInfo(this.loginUserName, null, this.loginPassword, null, +/* 512 */ this.loginSerialNumber, this.loginMode); +/* */ } +/* */ } +/* */ +/* */ protected void build() { +/* 517 */ selectScreen(this.currentScreen); +/* */ } +/* */ +/* */ @Deprecated +/* */ public Dimension size() { +/* 522 */ return new Dimension(480, 280); +/* */ } +/* */ +/* */ private void selectScreen(int which) { +/* 526 */ String name = which; +/* 527 */ if (this.screens[which] == null) +/* 528 */ add(name, this.screens[which] = buildScreen(which)); +/* 529 */ this.cardLayout.show(this, name); +/* */ +/* 531 */ if ((this.lastScreen != which) && (this.lastScreen >= 0) && +/* 532 */ (this.screens[this.lastScreen] != null)) { +/* 533 */ removeScreen(this.lastScreen); +/* */ } +/* */ +/* 536 */ this.currentScreen = which; +/* 537 */ this.lastScreen = which; +/* */ +/* 539 */ if (which == 2) { +/* 540 */ new SendURLAction(getRegisterScriptName()).startBrowser(); +/* 541 */ } else if (which == 4) +/* 542 */ new AwaitCodeword(this.codewordField.getText()); +/* */ } +/* */ +/* */ private Panel buildScreen(int which) { +/* 546 */ GridBagLayout gbag = new GridBagLayout(); +/* 547 */ GridBagConstraints c = new GridBagConstraints(); +/* 548 */ Panel p = new Panel(gbag); +/* 549 */ c.weightx = 1.0D; +/* 550 */ c.weighty = 1.0D; +/* 551 */ c.gridwidth = 0; +/* */ +/* 553 */ switch (which) { +/* */ case 0: +/* 555 */ return buildKnownUsersScreen(p, gbag, c); +/* */ case 1: +/* 557 */ return buildAccountTypeScreen(p, gbag, c); +/* */ case 2: +/* 559 */ return buildRegWait(p, gbag, c); +/* */ case 12: +/* 561 */ return buildRegWait2(p, gbag, c); +/* */ case 4: +/* 563 */ return buildCodewordWaitScreen(p, gbag, c); +/* */ case 5: +/* 565 */ return buildNewUserInfoScreen(p, gbag, c); +/* */ case 7: +/* 567 */ return buildLoggingInScreen(p, gbag, c); +/* */ case 3: +/* 569 */ return buildWelcome(p, gbag, c); +/* */ case 8: +/* */ case 9: +/* */ case 10: +/* */ case 11: +/* 574 */ return buildErrorScreen(p, gbag, c, which); +/* */ } +/* 576 */ return null; +/* */ } +/* */ +/* */ private void removeScreen(int screen) +/* */ { +/* 581 */ if (this.screens[screen] != null) { +/* 582 */ remove(this.screens[screen]); +/* 583 */ this.screens[screen] = null; +/* */ } +/* */ } +/* */ +/* */ private void selectErrorScreen(String msg) { +/* 588 */ this.errMsg = msg; +/* 589 */ this.errorFrom = this.currentScreen; +/* 590 */ selectScreen(9); +/* */ } +/* */ +/* */ private Panel buildKnownUsersScreen(Panel p, GridBagLayout gbag, GridBagConstraints c) +/* */ { +/* 595 */ this.typedUsername = new TextField(16); +/* 596 */ this.knownPassword = new TextField(12); +/* 597 */ this.knownPassword.setEchoChar('*'); +/* */ +/* 599 */ Panel tmp = new Panel(); +/* 600 */ String enterText = Console.message("one-username"); +/* */ +/* 602 */ if (isAnonServer()) { +/* 603 */ enterText = Console.message("a-username"); +/* */ } +/* 605 */ TextCanvas text = new TextCanvas(enterText, 400); +/* */ +/* */ +/* 608 */ tmp.add(text); +/* */ +/* */ +/* 611 */ add(p, tmp, gbag, c); +/* */ +/* 613 */ if (this.createNewUsernameButton == null) +/* 614 */ this.createNewUsernameButton = new Button( +/* 615 */ Console.message("Create-Username")); +/* 616 */ if (this.pwMailbackButtonKnown == null) { +/* 617 */ this.pwMailbackButtonKnown = new Button(Console.message("Remind-Me")); +/* */ } +/* 619 */ if (this.defaultUser < this.users.size()) { +/* 620 */ String pass = (String)this.passwords.elementAt(this.defaultUser); +/* 621 */ boolean knowPassword = pass != null; +/* 622 */ this.knownPassword.setText(knowPassword ? pass : ""); +/* 623 */ this.savePassword.setState(knowPassword); +/* 624 */ this.typedUsername.setText((String)this.users.elementAt(this.defaultUser)); +/* */ } +/* */ +/* 627 */ tmp = new Panel(new GridLayout(2, 2)); +/* 628 */ Label uName = new Label(Console.message("Username"), 1); +/* 629 */ uName.setFont(font); +/* 630 */ this.typedUsername.setFont(font); +/* 631 */ this.knownPassword.setFont(font); +/* 632 */ tmp.add(uName); +/* 633 */ tmp.add(this.typedUsername); +/* 634 */ if (isAnonServer()) { +/* 635 */ this.knownPassword.setText(Console.message("anonymous")); +/* */ +/* 637 */ add(p, tmp, gbag, c); +/* */ } else { +/* 639 */ Label pWord = new Label(Console.message("Password"), 1); +/* 640 */ pWord.setFont(font); +/* 641 */ tmp.add(pWord); +/* 642 */ tmp.add(this.knownPassword); +/* */ +/* 644 */ add(p, tmp, gbag, c); +/* 645 */ this.savePassword.setFont(font); +/* 646 */ add(p, this.savePassword, gbag, c); +/* */ } +/* */ +/* 649 */ tmp = new Panel(); +/* */ +/* */ +/* */ +/* 653 */ String help = Console.message("youve-upgraded"); +/* 654 */ if ((this.iniFile.getIniString("AutoLogin", "").equals("")) && +/* 655 */ (this.iniFile.getIniString("User1", "").equals(""))) { +/* 656 */ help = ""; +/* */ } +/* */ +/* 659 */ String instr = Console.message("first-time-user" + help); +/* */ +/* 661 */ if (isAnonServer()) { +/* 662 */ instr = help; +/* */ } +/* 664 */ text = new TextCanvas(instr, 400); +/* */ +/* 666 */ tmp.add(text); +/* 667 */ add(p, tmp, gbag, c); +/* 668 */ if ((isAnonServer()) || +/* 669 */ (IniFile.override().getIniInt("nocreateaccount", 0) == 1)) { +/* 670 */ addButtons(p, gbag, Console.message("Cancel"), null, null, +/* 671 */ Console.message("Sign-In")); +/* */ } else +/* 673 */ addButtons(p, gbag, +/* 674 */ "<< " + Console.message("Back"), +/* 675 */ this.createNewUsernameButton, this.pwMailbackButtonKnown, +/* 676 */ Console.message("Sign-In")); +/* 677 */ if (this.knownPassword.getText().length() == 0) { +/* 678 */ if (this.typedUsername.getText().length() == 0) { +/* 679 */ this.defComponent = this.typedUsername; +/* */ } else { +/* 681 */ this.defComponent = this.knownPassword; +/* */ } +/* */ } +/* 684 */ return p; +/* */ } +/* */ +/* */ private void validateKnownUserInfo() { +/* 688 */ if ((!acceptLoginUserName(this.typedUsername.getText())) || +/* */ +/* 690 */ (!acceptLoginPassword(this.knownPassword.getText(), this.loginUserName, 4))) +/* 691 */ return; +/* 692 */ this.loginSerialNumber = null; +/* 693 */ this.loginMode = 2; +/* 694 */ this.loginIndex = 0; +/* 695 */ doLogin(); +/* */ } +/* */ +/* */ private Panel buildAccountTypeScreen(Panel p, GridBagLayout gbag, GridBagConstraints c) +/* */ { +/* 700 */ TextCanvas text = new TextCanvas(Console.message("first-time-user2"), +/* 701 */ 400); +/* 702 */ add(p, text, gbag, c); +/* */ +/* 704 */ if (this.alternateBrowserButton == null) +/* 705 */ this.alternateBrowserButton = new Button(Console.message("Alt-Browser")); +/* 706 */ if (this.signInButton == null) { +/* 707 */ this.signInButton = new Button(Console.message("Sign-In")); +/* */ } +/* 709 */ return addButtons(p, gbag, Console.message("Cancel"), this.signInButton, +/* 710 */ this.alternateBrowserButton, Console.message("Next")); +/* */ } +/* */ +/* */ +/* */ private Panel buildRegWaitCommon(Panel p, GridBagLayout gbag, GridBagConstraints c, int which) +/* */ { +/* 716 */ String start = ""; +/* 717 */ if (which == 0) +/* 718 */ start = Console.message("registration"); +/* 719 */ TextCanvas text = new TextCanvas(start + Console.message("completed"), +/* 720 */ 400); +/* 721 */ add(p, text, gbag, c); +/* */ +/* 723 */ Panel tmp = new Panel(new GridLayout()); +/* 724 */ Label code = new Label(Console.message("Codeword"), 1); +/* 725 */ code.setFont(font); +/* 726 */ tmp.add(code); +/* 727 */ this.codewordField = new TextField(10); +/* 728 */ if (this.newSerialNumber != null) +/* 729 */ this.codewordField.setText(this.newSerialNumber); +/* 730 */ this.codewordField.setFont(font); +/* 731 */ tmp.add(this.codewordField); +/* */ +/* 733 */ add(p, tmp, gbag, c); +/* */ +/* */ +/* */ +/* 737 */ String browserSpecific = new String(); +/* 738 */ if (WebBrowser.isDisabled()) { +/* 739 */ if (which == 0) { +/* 740 */ browserSpecific = browserSpecific + Console.message("manually-view"); +/* */ } else +/* 742 */ browserSpecific = browserSpecific + Console.message("just-view"); +/* 743 */ browserSpecific = browserSpecific + getRegisterScriptName(); +/* */ } else { +/* 745 */ browserSpecific = browserSpecific + Console.message("click-Back"); +/* */ } +/* */ +/* */ +/* 749 */ if (this.users.size() == 0) { +/* 750 */ String ifText = Console.message("within-20"); +/* 751 */ if (which == 1) { +/* 752 */ ifText = Console.message("Show-Reg-Form1"); +/* */ } +/* 754 */ text = new TextCanvas(new String(ifText + browserSpecific), +/* 755 */ 400); +/* 756 */ add(p, text, gbag, c); +/* 757 */ } else if (which == 1) { +/* 758 */ text = new TextCanvas(Console.message("Show-Reg-Form1"), 400); +/* 759 */ add(p, text, gbag, c); +/* */ } +/* */ +/* 762 */ if (this.noEmailButton == null) +/* 763 */ this.noEmailButton = new Button(Console.message("Didnt-Get-Email")); +/* 764 */ if (this.showRegButton == null) { +/* 765 */ this.showRegButton = new Button(Console.message("Show-Reg-Form3")); +/* */ } +/* 767 */ Button showReg = which == 0 ? null : this.showRegButton; +/* */ +/* 769 */ return addButtons(p, gbag, "<< " + Console.message("Back"), showReg, +/* 770 */ this.noEmailButton, Console.message("Next") + " >>"); +/* */ } +/* */ +/* */ private Panel buildRegWait(Panel p, GridBagLayout gbag, GridBagConstraints c) { +/* 774 */ return buildRegWaitCommon(p, gbag, c, 0); +/* */ } +/* */ +/* */ private Panel buildRegWait2(Panel p, GridBagLayout gbag, GridBagConstraints c) +/* */ { +/* 779 */ return buildRegWaitCommon(p, gbag, c, 1); +/* */ } +/* */ +/* */ private Panel buildWelcome(Panel p, GridBagLayout gbag, GridBagConstraints c) { +/* 783 */ add(p, new Label(""), gbag, c); +/* */ +/* 785 */ Object[] arguments = { new String(Std.getProductName()) }; +/* 786 */ add(p, new Label(MessageFormat.format( +/* 787 */ Console.message("Youre-signed"), arguments), 1), gbag, c); +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* 794 */ Panel tmp = new Panel(); +/* 795 */ TextCanvas text = new TextCanvas(Console.message("Use-arrow-keys2"), +/* 796 */ 400); +/* 797 */ tmp.add(text); +/* 798 */ add(p, tmp, gbag, c); +/* */ +/* 800 */ add(p, new Label(""), gbag, c); +/* */ +/* 802 */ return addButtons(p, gbag, null, null, null, +/* 803 */ Console.message("Enter-Worlds")); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ class AwaitCodeword +/* */ extends Thread +/* */ { +/* */ public AwaitCodeword(String cw) +/* */ { +/* 821 */ if (cw.length() > 6) { +/* 822 */ LoginWizard.this.selectScreen(5); +/* 823 */ LoginWizard.this.newSerialNumber = cw; +/* 824 */ LoginWizard.this.iniFile.setIniString("SNum", LoginWizard.this.newSerialNumber); +/* */ } +/* */ else { +/* 827 */ LoginWizard.this.cf = Cache.getFile(URL.make(LoginWizard.this.getScriptServer() + +/* 828 */ "codeword.pl?id=" + LoginWizard.this.newHandshakeID + "&codeword=" + +/* 829 */ cw)); +/* */ +/* 831 */ setDaemon(true); +/* 832 */ start(); +/* */ } +/* */ } +/* */ +/* */ public void run() { +/* 837 */ LoginWizard.this.cf.waitUntilLoaded(); +/* */ +/* 839 */ if (LoginWizard.this.cf.isActive()) { +/* 840 */ if (LoginWizard.this.cf.error()) { +/* 841 */ LoginWizard.this.currentScreen = 12; +/* 842 */ LoginWizard.this.selectErrorScreen(Console.message("Error-accessing")); +/* */ } else { +/* 844 */ DataInputStream in = null; +/* */ try { +/* 846 */ in = new DataInputStream(new FileInputStream( +/* 847 */ LoginWizard.this.cf.getLocalName())); +/* 848 */ String line = in.readLine(); +/* */ +/* */ +/* 851 */ if ((line.startsWith("1,0,")) || (line.startsWith("1,1,"))) +/* */ { +/* */ +/* 854 */ LoginWizard.this.newSerialNumber = line.substring(4); +/* 855 */ LoginWizard.this.iniFile.setIniString("SNum", +/* 856 */ LoginWizard.this.newSerialNumber); +/* 857 */ LoginWizard.this.newHandshakeID = null; +/* 858 */ LoginWizard.this.iniFile.setIniString("handshakeID", ""); +/* */ +/* 860 */ LoginWizard.this.selectScreen(5); +/* 861 */ LoginWizard.this.cf.close(); +/* 862 */ return; +/* */ } +/* */ } +/* */ catch (FileNotFoundException localFileNotFoundException) {}catch (IOException localIOException2) {}finally +/* */ { +/* */ try { +/* 868 */ if (in != null) { +/* 869 */ in.close(); +/* */ } +/* */ } +/* */ catch (IOException localIOException4) {} +/* */ } +/* */ try +/* */ { +/* 868 */ if (in != null) { +/* 869 */ in.close(); +/* */ } +/* */ } +/* */ catch (IOException localIOException5) {} +/* */ +/* 874 */ LoginWizard.this.currentScreen = 12; +/* 875 */ LoginWizard.this.selectErrorScreen(Console.message("codeword-no-match")); +/* */ } +/* */ +/* 878 */ LoginWizard.this.cf.close(); +/* */ } +/* */ } +/* */ } +/* */ +/* */ private Panel buildCodewordWaitScreen(Panel p, GridBagLayout gbag, GridBagConstraints c) +/* */ { +/* 885 */ TextCanvas text = new TextCanvas(Console.message("Checking-codeword"), +/* 886 */ 400); +/* 887 */ add(p, text, gbag, c); +/* */ +/* 889 */ return addButtons(p, gbag, Console.message("Cancel"), null, null, null); +/* */ } +/* */ +/* */ private Panel buildNewUserInfoScreen(Panel p, GridBagLayout gbag, GridBagConstraints c) +/* */ { +/* 894 */ this.newUserName = new TextField(16); +/* 895 */ this.newPassword1 = new TextField(12); +/* 896 */ this.newPassword2 = new TextField(12); +/* 897 */ Object[] arguments = { new String(Std.getProductName()) }; +/* 898 */ TextCanvas text = new TextCanvas(MessageFormat.format( +/* 899 */ Console.message("Enter-username"), arguments), 400); +/* 900 */ text.setFont(font); +/* 901 */ add(p, text, gbag, c); +/* */ +/* 903 */ Panel tmp = new Panel(); +/* 904 */ tmp.setFont(font); +/* 905 */ tmp.add(new Label(Console.message("Type-username"))); +/* 906 */ tmp.add(this.newUserName); +/* 907 */ add(p, tmp, gbag, c); +/* */ +/* 909 */ text = new TextCanvas(Console.message("Enter-password"), 400); +/* 910 */ add(p, text, gbag, c); +/* */ +/* 912 */ tmp = new Panel(new GridLayout(2, 2)); +/* 913 */ tmp.setFont(font); +/* 914 */ tmp.add(new Label(Console.message("Type-password"), 1)); +/* 915 */ this.newPassword1.setEchoChar('*'); +/* 916 */ tmp.add(this.newPassword1); +/* 917 */ tmp.add(new Label(Console.message("Re-type-password"), 1)); +/* 918 */ this.newPassword2.setEchoChar('*'); +/* 919 */ tmp.add(this.newPassword2); +/* 920 */ add(p, tmp, gbag, c); +/* 921 */ add(p, this.savePassword, gbag, c); +/* 922 */ return addButtons(p, gbag, +/* */ +/* 924 */ "<< " + Console.message("Back"), null, null, +/* 925 */ Console.message("Next") + " >>"); +/* */ } +/* */ +/* */ private void validateNewUserInfo() { +/* 929 */ if ((!acceptLoginUserName(this.newUserName.getText())) || +/* */ +/* 931 */ (!acceptLoginPassword(this.newPassword1.getText(), this.newUserName.getText(), 6))) +/* 932 */ return; +/* 933 */ if (!this.loginPassword.equals(this.newPassword2.getText())) { +/* 934 */ selectErrorScreen(passwordMismatchText); +/* 935 */ return; +/* */ } +/* 937 */ this.loginMode = 1; +/* 938 */ this.loginSerialNumber = this.newSerialNumber; +/* 939 */ this.loginIndex = 0; +/* 940 */ doLogin(); +/* */ } +/* */ +/* */ private Panel buildLoggingInScreen(Panel p, GridBagLayout gbag, GridBagConstraints c) +/* */ { +/* 945 */ Label logging = new Label(Console.message("Logging-in-wait")); +/* 946 */ logging.setFont(font); +/* 947 */ add(p, logging, gbag, c); +/* 948 */ return p; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ private Panel buildErrorScreen(Panel p, GridBagLayout gbag, GridBagConstraints c, int which) +/* */ { +/* 956 */ this.errMsg = this.errMsg.replace('\n', ' ').replace('\t', '\n'); +/* 957 */ TextCanvas text = new TextCanvas(this.errMsg, 400); +/* 958 */ this.errMsg = null; +/* 959 */ add(p, text, gbag, c); +/* 960 */ return addButtons(p, gbag, +/* 961 */ (which == 9) || (which == 8) ? "<< " + +/* 962 */ Console.message("Back") : Console.message("Continue"), +/* 963 */ null, null, null); +/* */ } +/* */ +/* */ +/* */ +/* */ private boolean acceptLoginPassword(String password, String username, int minLength) +/* */ { +/* */ String text; +/* */ +/* */ +/* 973 */ if ((!FriendsListPart.isValidUserName(password)) || +/* 974 */ (password.length() < minLength)) { +/* 975 */ Object[] arguments = { new String(minLength) }; +/* 976 */ text = Console.message("password-not-valid") + +/* 977 */ MessageFormat.format(passwordConstraints1, arguments); +/* */ } else { +/* 979 */ this.loginPassword = password; +/* 980 */ return true; } +/* */ String text; +/* 982 */ selectErrorScreen(text); +/* 983 */ return false; +/* */ } +/* */ +/* */ private boolean acceptLoginUserName(String name) { +/* 987 */ if (!FriendsListPart.isValidUserName(name)) { +/* 988 */ selectErrorScreen(Console.message("username-not-valid") + +/* 989 */ nameConstraints + " - " + name); +/* 990 */ return false; +/* */ } +/* 992 */ this.loginUserName = name; +/* 993 */ return true; +/* */ } +/* */ +/* */ private void doLogin() { +/* 997 */ this.loginFrom = this.currentScreen; +/* 998 */ selectScreen(7); +/* 999 */ this.loginState = 1; +/* */ } +/* */ +/* */ private boolean isPasswordSaved(int user) { +/* 1003 */ return (user < this.passwords.size()) && (this.passwords.elementAt(user) != null); +/* */ } +/* */ +/* */ private static void add(Container cont, Component comp, GridBagLayout gbag, GridBagConstraints c) +/* */ { +/* 1008 */ gbag.setConstraints(comp, c); +/* 1009 */ cont.add(comp); +/* */ } +/* */ +/* */ private Panel addButtons(Panel p, GridBagLayout gbag, String prev, Button mid1, Button mid2, String next) +/* */ { +/* 1014 */ Panel buttons = new Panel(); +/* 1015 */ buttons.setFont(bfont); +/* 1016 */ if (prev != null) +/* 1017 */ buttons.add(new BackButton(prev)); +/* 1018 */ if (mid1 != null) +/* 1019 */ buttons.add(mid1); +/* 1020 */ if (mid2 != null) +/* 1021 */ buttons.add(mid2); +/* 1022 */ if (next != null) +/* 1023 */ buttons.add(this.defComponent = new ForwardButton(next)); +/* 1024 */ GridBagConstraints c = new GridBagConstraints(); +/* 1025 */ c.anchor = 14; +/* 1026 */ add(p, buttons, gbag, c); +/* 1027 */ return p; +/* */ } +/* */ +/* */ private String getScriptServer() { +/* 1031 */ Enumeration<NetworkObject> e = this.galaxy.getConsoles(); +/* 1032 */ assert (e.hasMoreElements()); +/* 1033 */ this.queryingServer = true; +/* 1034 */ String ret = ((Console)e.nextElement()).getScriptServer(); +/* 1035 */ this.queryingServer = false; +/* 1036 */ System.out.println("Scriptserver is " + ret); +/* 1037 */ return ret; +/* */ } +/* */ +/* */ /* Error */ +/* */ private String getRegisterScriptName() +/* */ { +/* */ // Byte code: +/* */ // 0: aload_0 +/* */ // 1: getfield 321 NET/worlds/console/LoginWizard:newHandshakeID Ljava/lang/String; +/* */ // 4: ifnonnull +69 -> 73 +/* */ // 7: new 836 java/util/Random +/* */ // 10: dup +/* */ // 11: invokestatic 838 NET/worlds/console/Startup:getVolumeInfo ()I +/* */ // 14: i2l +/* */ // 15: bipush 30 +/* */ // 17: lshl +/* */ // 18: invokestatic 843 java/lang/Math:random ()D +/* */ // 21: ldc2_w 849 +/* */ // 24: dmul +/* */ // 25: d2i +/* */ // 26: i2l +/* */ // 27: ladd +/* */ // 28: invokespecial 851 java/util/Random:<init> (J)V +/* */ // 31: invokevirtual 854 java/util/Random:nextInt ()I +/* */ // 34: istore_1 +/* */ // 35: iload_1 +/* */ // 36: ifge +6 -> 42 +/* */ // 39: iload_1 +/* */ // 40: ineg +/* */ // 41: istore_1 +/* */ // 42: aload_0 +/* */ // 43: new 150 java/lang/StringBuilder +/* */ // 46: dup +/* */ // 47: invokespecial 466 java/lang/StringBuilder:<init> ()V +/* */ // 50: iload_1 +/* */ // 51: invokevirtual 292 java/lang/StringBuilder:append (I)Ljava/lang/StringBuilder; +/* */ // 54: invokevirtual 170 java/lang/StringBuilder:toString ()Ljava/lang/String; +/* */ // 57: putfield 321 NET/worlds/console/LoginWizard:newHandshakeID Ljava/lang/String; +/* */ // 60: aload_0 +/* */ // 61: getfield 284 NET/worlds/console/LoginWizard:iniFile LNET/worlds/core/IniFile; +/* */ // 64: ldc 70 +/* */ // 66: aload_0 +/* */ // 67: getfield 321 NET/worlds/console/LoginWizard:newHandshakeID Ljava/lang/String; +/* */ // 70: invokevirtual 359 NET/worlds/core/IniFile:setIniString (Ljava/lang/String;Ljava/lang/String;)V +/* */ // 73: invokestatic 339 NET/worlds/core/IniFile:override ()LNET/worlds/core/IniFile; +/* */ // 76: astore_1 +/* */ // 77: aload_1 +/* */ // 78: ldc -104 +/* */ // 80: ldc -21 +/* */ // 82: invokevirtual 295 NET/worlds/core/IniFile:getIniString (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; +/* */ // 85: astore_2 +/* */ // 86: aload_2 +/* */ // 87: ldc -21 +/* */ // 89: invokevirtual 381 java/lang/String:equals (Ljava/lang/Object;)Z +/* */ // 92: ifeq +172 -> 264 +/* */ // 95: getstatic 174 NET/worlds/console/LoginWizard:defaultRegisterScriptL Ljava/lang/String; +/* */ // 98: astore_2 +/* */ // 99: aload_2 +/* */ // 100: invokestatic 857 NET/worlds/console/Console:wasHttpNoSuchFile (Ljava/lang/String;)Z +/* */ // 103: ifeq +6 -> 109 +/* */ // 106: ldc 51 +/* */ // 108: astore_2 +/* */ // 109: new 296 NET/worlds/core/IniFile +/* */ // 112: dup +/* */ // 113: ldc_w 860 +/* */ // 116: invokespecial 862 NET/worlds/core/IniFile:<init> (Ljava/lang/String;)V +/* */ // 119: astore_1 +/* */ // 120: aload_1 +/* */ // 121: ldc_w 863 +/* */ // 124: ldc -21 +/* */ // 126: invokevirtual 295 NET/worlds/core/IniFile:getIniString (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; +/* */ // 129: astore_3 +/* */ // 130: aload_3 +/* */ // 131: ldc -21 +/* */ // 133: invokevirtual 381 java/lang/String:equals (Ljava/lang/Object;)Z +/* */ // 136: ifne +128 -> 264 +/* */ // 139: new 150 java/lang/StringBuilder +/* */ // 142: dup +/* */ // 143: ldc_w 865 +/* */ // 146: invokespecial 154 java/lang/StringBuilder:<init> (Ljava/lang/String;)V +/* */ // 149: aload_3 +/* */ // 150: invokevirtual 166 java/lang/StringBuilder:append (Ljava/lang/String;)Ljava/lang/StringBuilder; +/* */ // 153: ldc_w 867 +/* */ // 156: invokevirtual 166 java/lang/StringBuilder:append (Ljava/lang/String;)Ljava/lang/StringBuilder; +/* */ // 159: invokevirtual 170 java/lang/StringBuilder:toString ()Ljava/lang/String; +/* */ // 162: invokestatic 869 NET/worlds/network/URL:make (Ljava/lang/String;)LNET/worlds/network/URL; +/* */ // 165: invokevirtual 875 NET/worlds/network/URL:unalias ()Ljava/lang/String; +/* */ // 168: astore 4 +/* */ // 170: aconst_null +/* */ // 171: astore 5 +/* */ // 173: new 878 java/io/DataInputStream +/* */ // 176: dup +/* */ // 177: new 880 java/io/FileInputStream +/* */ // 180: dup +/* */ // 181: aload 4 +/* */ // 183: invokespecial 882 java/io/FileInputStream:<init> (Ljava/lang/String;)V +/* */ // 186: invokespecial 883 java/io/DataInputStream:<init> (Ljava/io/InputStream;)V +/* */ // 189: astore 5 +/* */ // 191: aload 5 +/* */ // 193: invokevirtual 886 java/io/DataInputStream:readLine ()Ljava/lang/String; +/* */ // 196: astore 6 +/* */ // 198: aload 6 +/* */ // 200: ifnull +49 -> 249 +/* */ // 203: aload 6 +/* */ // 205: astore_2 +/* */ // 206: goto +43 -> 249 +/* */ // 209: astore 6 +/* */ // 211: aload 5 +/* */ // 213: ifnull +51 -> 264 +/* */ // 216: aload 5 +/* */ // 218: invokevirtual 889 java/io/DataInputStream:close ()V +/* */ // 221: goto +43 -> 264 +/* */ // 224: astore 8 +/* */ // 226: goto +38 -> 264 +/* */ // 229: astore 7 +/* */ // 231: aload 5 +/* */ // 233: ifnull +13 -> 246 +/* */ // 236: aload 5 +/* */ // 238: invokevirtual 889 java/io/DataInputStream:close ()V +/* */ // 241: goto +5 -> 246 +/* */ // 244: astore 8 +/* */ // 246: aload 7 +/* */ // 248: athrow +/* */ // 249: aload 5 +/* */ // 251: ifnull +13 -> 264 +/* */ // 254: aload 5 +/* */ // 256: invokevirtual 889 java/io/DataInputStream:close ()V +/* */ // 259: goto +5 -> 264 +/* */ // 262: astore 8 +/* */ // 264: new 302 java/lang/String +/* */ // 267: dup +/* */ // 268: new 150 java/lang/StringBuilder +/* */ // 271: dup +/* */ // 272: aload_0 +/* */ // 273: invokespecial 892 NET/worlds/console/LoginWizard:getScriptServer ()Ljava/lang/String; +/* */ // 276: invokestatic 670 java/lang/String:valueOf (Ljava/lang/Object;)Ljava/lang/String; +/* */ // 279: invokespecial 154 java/lang/StringBuilder:<init> (Ljava/lang/String;)V +/* */ // 282: aload_2 +/* */ // 283: invokevirtual 166 java/lang/StringBuilder:append (Ljava/lang/String;)Ljava/lang/StringBuilder; +/* */ // 286: ldc_w 893 +/* */ // 289: invokevirtual 166 java/lang/StringBuilder:append (Ljava/lang/String;)Ljava/lang/StringBuilder; +/* */ // 292: aload_0 +/* */ // 293: getfield 321 NET/worlds/console/LoginWizard:newHandshakeID Ljava/lang/String; +/* */ // 296: invokevirtual 166 java/lang/StringBuilder:append (Ljava/lang/String;)Ljava/lang/StringBuilder; +/* */ // 299: invokevirtual 170 java/lang/StringBuilder:toString ()Ljava/lang/String; +/* */ // 302: invokespecial 695 java/lang/String:<init> (Ljava/lang/String;)V +/* */ // 305: areturn +/* */ // Line number table: +/* */ // Java source line #1041 -> byte code offset #0 +/* */ // Java source line #1044 -> byte code offset #7 +/* */ // Java source line #1045 -> byte code offset #18 +/* */ // Java source line #1044 -> byte code offset #28 +/* */ // Java source line #1045 -> byte code offset #31 +/* */ // Java source line #1044 -> byte code offset #34 +/* */ // Java source line #1047 -> byte code offset #35 +/* */ // Java source line #1048 -> byte code offset #39 +/* */ // Java source line #1049 -> byte code offset #42 +/* */ // Java source line #1051 -> byte code offset #60 +/* */ // Java source line #1054 -> byte code offset #73 +/* */ // Java source line #1055 -> byte code offset #77 +/* */ // Java source line #1056 -> byte code offset #86 +/* */ // Java source line #1058 -> byte code offset #95 +/* */ // Java source line #1059 -> byte code offset #99 +/* */ // Java source line #1060 -> byte code offset #106 +/* */ // Java source line #1062 -> byte code offset #109 +/* */ // Java source line #1063 -> byte code offset #120 +/* */ // Java source line #1064 -> byte code offset #130 +/* */ // Java source line #1065 -> byte code offset #139 +/* */ // Java source line #1066 -> byte code offset #170 +/* */ // Java source line #1068 -> byte code offset #173 +/* */ // Java source line #1069 -> byte code offset #191 +/* */ // Java source line #1070 -> byte code offset #198 +/* */ // Java source line #1071 -> byte code offset #203 +/* */ // Java source line #1072 -> byte code offset #206 +/* */ // Java source line #1075 -> byte code offset #211 +/* */ // Java source line #1076 -> byte code offset #216 +/* */ // Java source line #1077 -> byte code offset #221 +/* */ // Java source line #1073 -> byte code offset #229 +/* */ // Java source line #1075 -> byte code offset #231 +/* */ // Java source line #1076 -> byte code offset #236 +/* */ // Java source line #1077 -> byte code offset #241 +/* */ // Java source line #1079 -> byte code offset #246 +/* */ // Java source line #1075 -> byte code offset #249 +/* */ // Java source line #1076 -> byte code offset #254 +/* */ // Java source line #1077 -> byte code offset #259 +/* */ // Java source line #1083 -> byte code offset #264 +/* */ // Local variable table: +/* */ // start length slot name signature +/* */ // 0 306 0 this LoginWizard +/* */ // 34 17 1 id int +/* */ // 76 45 1 ini IniFile +/* */ // 85 198 2 url String +/* */ // 129 21 3 w String +/* */ // 168 14 4 fn String +/* */ // 171 84 5 in DataInputStream +/* */ // 196 8 6 line String +/* */ // 209 1 6 localIOException IOException +/* */ // 229 18 7 localObject Object +/* */ // 224 1 8 localIOException1 IOException +/* */ // 244 1 8 localIOException2 IOException +/* */ // 262 1 8 localIOException3 IOException +/* */ // Exception table: +/* */ // from to target type +/* */ // 173 206 209 java/io/IOException +/* */ // 211 221 224 java/io/IOException +/* */ // 173 211 229 finally +/* */ // 231 241 244 java/io/IOException +/* */ // 249 259 262 java/io/IOException +/* */ } +/* */ +/* */ @Deprecated +/* */ public boolean action(Event event, Object what) +/* */ { +/* 1088 */ Object target = event.target; +/* 1089 */ if ((target instanceof ForwardButton)) { +/* 1090 */ if (this.currentScreen == 0) { +/* 1091 */ validateKnownUserInfo(); +/* 1092 */ } else if (this.currentScreen == 1) { +/* 1093 */ WebBrowser.setDisabled(false); +/* 1094 */ selectScreen(2); +/* 1095 */ } else if ((this.currentScreen == 2) || (this.currentScreen == 12)) { +/* 1096 */ selectScreen(4); +/* 1097 */ } else if (this.currentScreen == 5) { +/* 1098 */ validateNewUserInfo(); +/* 1099 */ } else if (this.currentScreen == 3) { +/* 1100 */ done(true); +/* 1101 */ } } else if ((target instanceof BackButton)) { +/* 1102 */ if (this.currentScreen == 0) { +/* 1103 */ if (this.users.size() > 0) { +/* 1104 */ done(false); +/* */ } else +/* 1106 */ selectScreen(1); +/* 1107 */ } else if (this.currentScreen == 1) { +/* 1108 */ if (this.users.size() == 0) { +/* 1109 */ done(false); +/* */ } else +/* 1111 */ selectScreen(0); +/* 1112 */ } else if ((this.currentScreen == 2) || (this.currentScreen == 12)) { +/* 1113 */ selectScreen(this.users.size() > 0 ? 0 : 1); +/* 1114 */ } else if (this.currentScreen == 5) { +/* 1115 */ if ((this.newSerialNumber != null) && (this.newSerialNumber.length() > 6) && +/* 1116 */ (this.newHandshakeID != null)) { +/* 1117 */ selectScreen(12); +/* 1118 */ } else if (this.users.size() > 0) { +/* 1119 */ selectScreen(0); +/* */ } else +/* 1121 */ done(false); +/* 1122 */ } else if (this.currentScreen == 4) { +/* 1123 */ if (this.cf != null) +/* 1124 */ this.cf.close(); +/* 1125 */ selectScreen(12); +/* 1126 */ } else if (this.currentScreen == 8) { +/* 1127 */ selectScreen(this.loginFrom); +/* 1128 */ } else if (this.currentScreen == 9) { +/* 1129 */ selectScreen(this.errorFrom); +/* 1130 */ } else if ((this.currentScreen == 11) || +/* 1131 */ (this.currentScreen == 10)) { +/* 1132 */ selectScreen(0); +/* 1133 */ } } else if (target == this.pwMailbackButtonKnown) +/* */ { +/* 1135 */ new SendURLAction(getScriptServer() + "emailback.pl", true).startBrowser(); +/* 1136 */ } else if (target == this.typedUsername) { +/* 1137 */ this.knownPassword.requestFocus(); +/* 1138 */ } else if (target == this.knownPassword) { +/* 1139 */ validateKnownUserInfo(); +/* 1140 */ } else if (target == this.createNewUsernameButton) { +/* 1141 */ String redir = IniFile.override().getIniString( +/* 1142 */ "CreateUserRedirect", "Fred"); +/* 1143 */ if (redir.equals("Fred")) { +/* 1144 */ if (this.newHandshakeID != null) { +/* 1145 */ selectScreen(12); +/* 1146 */ } else if (this.newSerialNumber == null) { +/* 1147 */ selectScreen(2); +/* */ } else +/* 1149 */ selectScreen(5); +/* */ } else { +/* 1151 */ new SendURLAction(URL.make(redir)).startBrowser(); +/* */ } +/* 1153 */ } else if (target == this.alternateBrowserButton) { +/* 1154 */ WebBrowser.setDisabled(true); +/* 1155 */ selectScreen(2); +/* 1156 */ } else if (target == this.signInButton) { +/* 1157 */ selectScreen(0); +/* 1158 */ } else if ((target == this.noEmailButton) || (target == this.showRegButton)) +/* */ { +/* */ +/* 1161 */ selectScreen(2); +/* */ } else { +/* 1163 */ return false; } +/* 1164 */ return true; +/* */ } +/* */ +/* */ @Deprecated +/* */ public boolean keyDown(Event event, int key) { +/* 1169 */ if (key == 10) { +/* 1170 */ action(event, null); +/* 1171 */ return true; +/* */ } +/* */ +/* 1174 */ return super.keyDown(event, key); +/* */ } +/* */ +/* */ @Deprecated +/* */ public boolean handleEvent(Event event) { +/* 1179 */ if (this.isDialogDisabled) +/* 1180 */ return false; +/* 1181 */ if ((event.id == 201) && +/* 1182 */ (this.loginState == 2)) { +/* 1183 */ return true; +/* */ } +/* 1185 */ return super.handleEvent(event); +/* */ } +/* */ +/* */ protected boolean done(boolean confirmed) { +/* 1189 */ boolean ret = super.done(confirmed); +/* 1190 */ firstTimeDone = true; +/* 1191 */ return ret; +/* */ } +/* */ +/* */ public void dialogDone(Object who, boolean confirmed) {} +/* */ +/* */ public void dialogDisable(boolean disable) +/* */ { +/* 1198 */ this.isDialogDisabled = disable; +/* 1199 */ super.dialogDisable(disable); +/* */ } +/* */ +/* */ public String toString() { +/* 1203 */ return "LoginWizard" + this.id; +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\LoginWizard.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/MailDialog.java b/NET/worlds/console/MailDialog.java new file mode 100644 index 0000000..3d9db29 --- /dev/null +++ b/NET/worlds/console/MailDialog.java @@ -0,0 +1,179 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import java.awt.Button; +/* */ import java.awt.Component; +/* */ import java.awt.Font; +/* */ import java.awt.GridBagConstraints; +/* */ import java.awt.GridBagLayout; +/* */ import java.awt.Label; +/* */ import java.awt.TextArea; +/* */ import java.awt.TextField; +/* */ import java.util.StringTokenizer; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ class MailDialog +/* */ extends OkCancelDialog +/* */ { +/* */ private static final long serialVersionUID = -5118823076163262543L; +/* */ private TextField recipientField; +/* */ private TextField subjectField; +/* */ private TextArea bodyTextArea; +/* 43 */ private static Font font = new Font(Console.message("ConsoleFont"), +/* 44 */ 0, 12); +/* */ +/* */ +/* */ +/* */ public MailDialog(Console console) +/* */ { +/* 50 */ super(Console.getFrame(), new MailDialogReceiver(console), Console.message("Mail"), Console.message("Dont-Send"), Console.message("Send"), null, false); +/* 51 */ setConfirmKey(0); +/* 52 */ this.recipientField = new TextField(); +/* 53 */ this.recipientField.setFont(font); +/* */ +/* */ +/* */ +/* 57 */ this.subjectField = new TextField(); +/* 58 */ this.subjectField.setFont(font); +/* 59 */ this.bodyTextArea = new TextArea("", 5, 50, +/* 60 */ 1); +/* 61 */ this.bodyTextArea.setEditable(true); +/* 62 */ this.bodyTextArea.setFont(font); +/* 63 */ setAlignment(1); +/* */ } +/* */ +/* */ public MailDialog(Console console, String recipient) +/* */ { +/* 68 */ this(console); +/* 69 */ this.recipientField.setText(Console.parseExtended(recipient)); +/* 70 */ this.recipientField.setFont(font); +/* */ } +/* */ +/* */ protected void build() +/* */ { +/* 75 */ GridBagConstraints c = new GridBagConstraints(); +/* 76 */ int line = 0; +/* */ +/* */ +/* 79 */ c.fill = 0; +/* 80 */ c.anchor = 13; +/* 81 */ add(this.gbag, new Label(Console.message("To")), c, 0, line, 1, 1, 0, 0); +/* 82 */ c.fill = 2; +/* 83 */ c.anchor = 17; +/* */ +/* 85 */ add(this.gbag, this.recipientField, c, 1, line, 3, 1, 100, 0); +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* 97 */ line++; +/* 98 */ c.fill = 0; +/* 99 */ c.anchor = 13; +/* 100 */ Label subjectLabel = new Label(Console.message("Subject")); +/* 101 */ subjectLabel.setFont(font); +/* 102 */ add(this.gbag, subjectLabel, c, 0, line, 1, 1, 0, 0); +/* 103 */ c.fill = 2; +/* 104 */ c.anchor = 17; +/* 105 */ add(this.gbag, this.subjectField, c, 1, line, 3, 1, 100, 0); +/* */ +/* */ +/* 108 */ line++; +/* 109 */ c.anchor = 10; +/* 110 */ c.fill = 1; +/* */ +/* 112 */ add(this.gbag, this.bodyTextArea, c, 0, line, 4, 1, 100, 100); +/* */ +/* */ +/* 115 */ line++; +/* 116 */ c.fill = 0; +/* 117 */ if (this.okButton != null) { +/* 118 */ this.okButton.setFont(font); +/* 119 */ add(this.gbag, this.okButton, c, 1, line, 1, 1, 100, 0); +/* */ } +/* 121 */ if (this.cancelButton != null) { +/* 122 */ this.cancelButton.setFont(font); +/* 123 */ add(this.gbag, this.cancelButton, c, 2, line, 1, 1, 100, 0); +/* */ } +/* */ } +/* */ +/* */ +/* */ private void add(GridBagLayout gbag, Component comp, GridBagConstraints cont, int x, int y, int w, int h, int wx, int wy) +/* */ { +/* 130 */ cont.gridx = x; +/* 131 */ cont.gridy = y; +/* 132 */ cont.gridwidth = w; +/* 133 */ cont.gridheight = h; +/* 134 */ cont.weightx = wx; +/* 135 */ cont.weighty = wy; +/* 136 */ add(gbag, comp, cont); +/* */ } +/* */ +/* */ public String[] getTo() +/* */ { +/* 141 */ Console console = Console.getActive(); +/* 142 */ String toLine = this.recipientField.getText(); +/* 143 */ StringTokenizer tokenizer = new StringTokenizer(toLine, ","); +/* 144 */ String[] to = new String[tokenizer.countTokens()]; +/* 145 */ for (int i = 0; tokenizer.hasMoreTokens(); i++) { +/* 146 */ to[i] = tokenizer.nextToken().trim(); +/* 147 */ if ((to[i].indexOf("@") == -1) && (console != null)) +/* 148 */ to[i] = (to[i] + "@" + console.getMailDomain()); +/* */ } +/* 150 */ return to; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public String getSubject() +/* */ { +/* 166 */ return this.subjectField.getText(); +/* */ } +/* */ +/* */ public String getBody() +/* */ { +/* 171 */ return this.bodyTextArea.getText(); +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\MailDialog.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/MailDialogReceiver.java b/NET/worlds/console/MailDialogReceiver.java new file mode 100644 index 0000000..f75393b --- /dev/null +++ b/NET/worlds/console/MailDialogReceiver.java @@ -0,0 +1,220 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import java.awt.Font; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ class MailDialogReceiver +/* */ implements DialogReceiver +/* */ { +/* */ Console console; +/* 178 */ private static Font font = new Font(Console.message("ConsoleFont"), +/* 179 */ 0, 12); +/* */ +/* */ public MailDialogReceiver(Console console) +/* */ { +/* 183 */ this.console = console; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public void dialogDone(Object who, boolean confirmed) +/* */ { +/* 192 */ MailDialog dlg = (MailDialog)who; +/* 193 */ dlg.setFont(font); +/* 194 */ if (confirmed) { +/* 195 */ String[] to = dlg.getTo(); +/* 196 */ if (to.length > 0) +/* */ { +/* 198 */ MailMessage msg = new MailMessage(this.console.getSmtpServer(), +/* 199 */ this.console.getLongID() + "@" + this.console.getMailDomain(), +/* 200 */ to[0], dlg.getSubject(), null); +/* */ +/* 202 */ for (int i = 1; i < to.length; i++) { +/* 203 */ msg.addCC(to[i]); +/* */ } +/* */ +/* */ +/* 207 */ msg.appendParagraphs(dlg.getBody()); +/* 208 */ msg.send(); +/* */ } else { +/* 210 */ Console.println(Console.message("No-recipient")); +/* */ } +/* */ } +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\MailDialogReceiver.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/MailMessage.java b/NET/worlds/console/MailMessage.java new file mode 100644 index 0000000..03bca02 --- /dev/null +++ b/NET/worlds/console/MailMessage.java @@ -0,0 +1,613 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import java.io.IOException; +/* */ import java.io.InputStream; +/* */ import java.io.PrintWriter; +/* */ import java.util.Enumeration; +/* */ import java.util.Vector; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public class MailMessage +/* */ extends Thread +/* */ { +/* */ private String server; +/* */ private String from; +/* */ private String to; +/* */ private Vector<String> cc; +/* */ private String subject; +/* */ private Vector<String> body; +/* 43 */ private boolean lock = false; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public MailMessage(String server) +/* */ { +/* 52 */ this(server, null, null, null, null); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public MailMessage(String server, String from, String to) +/* */ { +/* 66 */ this(server, from, to, null, null); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public MailMessage(String server, String from, String to, String subject, String body) +/* */ { +/* 85 */ this.server = server; +/* 86 */ this.from = from; +/* 87 */ this.to = to; +/* 88 */ this.cc = new Vector(); +/* 89 */ this.subject = subject; +/* 90 */ this.body = new Vector(); +/* 91 */ if (body != null) { +/* 92 */ this.body.addElement(body); +/* */ } +/* */ } +/* */ +/* */ public void setFrom(String f) { +/* 97 */ if (!locked()) { +/* 98 */ this.from = f; +/* */ } +/* */ } +/* */ +/* */ public void setTo(String t) { +/* 103 */ if (!locked()) { +/* 104 */ this.to = t; +/* */ } +/* */ } +/* */ +/* */ public void addCC(String c) { +/* 109 */ if (!locked()) { +/* 110 */ this.cc.addElement(c); +/* */ } +/* */ } +/* */ +/* */ public void setSubject(String s) { +/* 115 */ if (!locked()) { +/* 116 */ this.subject = s; +/* */ } +/* */ } +/* */ +/* */ public void setBody(String b) { +/* 121 */ if (!locked()) { +/* 122 */ this.body = new Vector(); +/* 123 */ this.body.addElement(b); +/* */ } +/* */ } +/* */ +/* */ public void appendBody(String b) +/* */ { +/* 129 */ if (!locked()) +/* */ { +/* */ +/* */ +/* 133 */ this.body.addElement(b); +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public void appendParagraphs(String text, String sepStr, int lineLen) +/* */ { +/* 154 */ if (!locked()) { +/* 155 */ String b = ""; +/* 156 */ String white = ""; +/* 157 */ String word = ""; +/* 158 */ boolean startParagraph = false; +/* 159 */ int len = 0; +/* */ +/* 161 */ for (int i = 0; i < text.length(); i++) { +/* 162 */ char c = text.charAt(i); +/* */ +/* */ +/* 165 */ if ((word.length() > 0) && +/* 166 */ (Character.isWhitespace(c))) { +/* 167 */ len += white.length() + word.length(); +/* 168 */ if (len > lineLen) { +/* 169 */ b = b + sepStr; +/* 170 */ len = word.length(); +/* */ } else { +/* 172 */ b = b + white; } +/* 173 */ b = b + word; +/* 174 */ word = ""; +/* 175 */ white = ""; +/* */ } +/* */ +/* */ +/* */ +/* 180 */ if ((c == '\n') || (c == '\r')) { +/* 181 */ if (!startParagraph) { +/* 182 */ len = 0; +/* 183 */ b = b + sepStr; +/* 184 */ b = b + sepStr; +/* 185 */ startParagraph = true; +/* */ } +/* */ } else { +/* 188 */ startParagraph = false; +/* 189 */ if (Character.isWhitespace(c)) { +/* 190 */ white = white + c; +/* */ } else +/* 192 */ word = word + c; +/* */ } +/* */ } +/* 195 */ if (word.length() > 0) { +/* 196 */ b = b + white; +/* 197 */ b = b + word; +/* */ } +/* */ +/* */ +/* 201 */ this.body.addElement(b); +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public void appendParagraphs(String text) +/* */ { +/* 216 */ appendParagraphs(text, "\n", 70); +/* */ } +/* */ +/* */ private synchronized void lockMessage() +/* */ { +/* 221 */ this.lock = true; +/* */ } +/* */ +/* */ private synchronized void unlockMessage() +/* */ { +/* 226 */ this.lock = false; +/* */ } +/* */ +/* */ private synchronized boolean locked() +/* */ { +/* 231 */ return this.lock; +/* */ } +/* */ +/* */ +/* */ +/* */ protected void finished(boolean wasError) {} +/* */ +/* */ +/* */ public void send() +/* */ { +/* 241 */ start(); +/* */ } +/* */ +/* */ +/* */ +/* */ public void run() +/* */ { +/* 248 */ lockMessage(); +/* 249 */ this.from = Console.parseUnicode(this.from); +/* 250 */ this.to = Console.parseUnicode(this.to); +/* 251 */ this.cc = Console.parseUnicode(this.cc); +/* 252 */ this.subject = Console.parseUnicode(this.subject); +/* 253 */ this.body = Console.parseUnicode(this.body); +/* 254 */ boolean wasError = !sendNote(this.server, this.from, this.to, this.cc, this.subject, this.body); +/* 255 */ unlockMessage(); +/* 256 */ finished(wasError); +/* */ } +/* */ +/* */ /* Error */ +/* */ public static synchronized boolean sendNote(String server, String from, String to, Vector<String> cc, String subject, Vector<String> body) +/* */ { +/* */ // Byte code: +/* */ // 0: bipush 25 +/* */ // 2: istore 6 +/* */ // 4: aload_0 +/* */ // 5: bipush 58 +/* */ // 7: invokevirtual 151 java/lang/String:indexOf (I)I +/* */ // 10: istore 7 +/* */ // 12: iload 7 +/* */ // 14: iconst_m1 +/* */ // 15: if_icmpeq +24 -> 39 +/* */ // 18: aload_0 +/* */ // 19: iload 7 +/* */ // 21: iconst_1 +/* */ // 22: iadd +/* */ // 23: invokevirtual 155 java/lang/String:substring (I)Ljava/lang/String; +/* */ // 26: invokestatic 159 java/lang/Integer:parseInt (Ljava/lang/String;)I +/* */ // 29: istore 6 +/* */ // 31: aload_0 +/* */ // 32: iconst_0 +/* */ // 33: iload 7 +/* */ // 35: invokevirtual 165 java/lang/String:substring (II)Ljava/lang/String; +/* */ // 38: astore_0 +/* */ // 39: aconst_null +/* */ // 40: astore 8 +/* */ // 42: new 168 java/net/Socket +/* */ // 45: dup +/* */ // 46: aload_0 +/* */ // 47: invokestatic 170 NET/worlds/network/DNSLookup:lookup (Ljava/lang/String;)Ljava/lang/String; +/* */ // 50: iload 6 +/* */ // 52: invokespecial 175 java/net/Socket:<init> (Ljava/lang/String;I)V +/* */ // 55: astore 8 +/* */ // 57: aload 8 +/* */ // 59: invokevirtual 178 java/net/Socket:getInputStream ()Ljava/io/InputStream; +/* */ // 62: astore 9 +/* */ // 64: new 182 java/io/PrintWriter +/* */ // 67: dup +/* */ // 68: aload 8 +/* */ // 70: invokevirtual 184 java/net/Socket:getOutputStream ()Ljava/io/OutputStream; +/* */ // 73: invokespecial 188 java/io/PrintWriter:<init> (Ljava/io/OutputStream;)V +/* */ // 76: astore 10 +/* */ // 78: aload 9 +/* */ // 80: invokestatic 191 NET/worlds/console/MailMessage:getReply (Ljava/io/InputStream;)Z +/* */ // 83: ifeq +332 -> 415 +/* */ // 86: aload 10 +/* */ // 88: ldc -61 +/* */ // 90: invokestatic 197 NET/worlds/console/MailMessage:print (Ljava/io/PrintWriter;Ljava/lang/String;)Z +/* */ // 93: ifeq +322 -> 415 +/* */ // 96: aload 9 +/* */ // 98: invokestatic 191 NET/worlds/console/MailMessage:getReply (Ljava/io/InputStream;)Z +/* */ // 101: ifeq +314 -> 415 +/* */ // 104: aload 10 +/* */ // 106: new 88 java/lang/StringBuilder +/* */ // 109: dup +/* */ // 110: ldc -55 +/* */ // 112: invokespecial 94 java/lang/StringBuilder:<init> (Ljava/lang/String;)V +/* */ // 115: aload_1 +/* */ // 116: invokevirtual 96 java/lang/StringBuilder:append (Ljava/lang/String;)Ljava/lang/StringBuilder; +/* */ // 119: ldc -53 +/* */ // 121: invokevirtual 96 java/lang/StringBuilder:append (Ljava/lang/String;)Ljava/lang/StringBuilder; +/* */ // 124: invokevirtual 100 java/lang/StringBuilder:toString ()Ljava/lang/String; +/* */ // 127: invokestatic 197 NET/worlds/console/MailMessage:print (Ljava/io/PrintWriter;Ljava/lang/String;)Z +/* */ // 130: ifeq +285 -> 415 +/* */ // 133: aload 9 +/* */ // 135: invokestatic 191 NET/worlds/console/MailMessage:getReply (Ljava/io/InputStream;)Z +/* */ // 138: ifeq +277 -> 415 +/* */ // 141: aload 10 +/* */ // 143: new 88 java/lang/StringBuilder +/* */ // 146: dup +/* */ // 147: ldc -51 +/* */ // 149: invokespecial 94 java/lang/StringBuilder:<init> (Ljava/lang/String;)V +/* */ // 152: aload_2 +/* */ // 153: invokevirtual 96 java/lang/StringBuilder:append (Ljava/lang/String;)Ljava/lang/StringBuilder; +/* */ // 156: ldc -53 +/* */ // 158: invokevirtual 96 java/lang/StringBuilder:append (Ljava/lang/String;)Ljava/lang/StringBuilder; +/* */ // 161: invokevirtual 100 java/lang/StringBuilder:toString ()Ljava/lang/String; +/* */ // 164: invokestatic 197 NET/worlds/console/MailMessage:print (Ljava/io/PrintWriter;Ljava/lang/String;)Z +/* */ // 167: ifeq +248 -> 415 +/* */ // 170: aload 9 +/* */ // 172: invokestatic 191 NET/worlds/console/MailMessage:getReply (Ljava/io/InputStream;)Z +/* */ // 175: ifeq +240 -> 415 +/* */ // 178: aload 10 +/* */ // 180: aload 9 +/* */ // 182: aload_3 +/* */ // 183: invokestatic 207 NET/worlds/console/MailMessage:printCCcmd (Ljava/io/PrintWriter;Ljava/io/InputStream;Ljava/util/Vector;)Z +/* */ // 186: ifeq +229 -> 415 +/* */ // 189: aload 10 +/* */ // 191: ldc -45 +/* */ // 193: invokestatic 197 NET/worlds/console/MailMessage:print (Ljava/io/PrintWriter;Ljava/lang/String;)Z +/* */ // 196: ifeq +219 -> 415 +/* */ // 199: aload 9 +/* */ // 201: invokestatic 191 NET/worlds/console/MailMessage:getReply (Ljava/io/InputStream;)Z +/* */ // 204: ifeq +211 -> 415 +/* */ // 207: aload 10 +/* */ // 209: ldc -43 +/* */ // 211: invokestatic 197 NET/worlds/console/MailMessage:print (Ljava/io/PrintWriter;Ljava/lang/String;)Z +/* */ // 214: ifeq +201 -> 415 +/* */ // 217: aload 10 +/* */ // 219: ldc -41 +/* */ // 221: invokestatic 197 NET/worlds/console/MailMessage:print (Ljava/io/PrintWriter;Ljava/lang/String;)Z +/* */ // 224: ifeq +191 -> 415 +/* */ // 227: aload 10 +/* */ // 229: new 88 java/lang/StringBuilder +/* */ // 232: dup +/* */ // 233: ldc -39 +/* */ // 235: invokespecial 94 java/lang/StringBuilder:<init> (Ljava/lang/String;)V +/* */ // 238: aload_1 +/* */ // 239: invokevirtual 96 java/lang/StringBuilder:append (Ljava/lang/String;)Ljava/lang/StringBuilder; +/* */ // 242: ldc -37 +/* */ // 244: invokevirtual 96 java/lang/StringBuilder:append (Ljava/lang/String;)Ljava/lang/StringBuilder; +/* */ // 247: invokevirtual 100 java/lang/StringBuilder:toString ()Ljava/lang/String; +/* */ // 250: invokestatic 197 NET/worlds/console/MailMessage:print (Ljava/io/PrintWriter;Ljava/lang/String;)Z +/* */ // 253: ifeq +162 -> 415 +/* */ // 256: aload 10 +/* */ // 258: new 88 java/lang/StringBuilder +/* */ // 261: dup +/* */ // 262: ldc -35 +/* */ // 264: invokespecial 94 java/lang/StringBuilder:<init> (Ljava/lang/String;)V +/* */ // 267: aload_2 +/* */ // 268: invokevirtual 96 java/lang/StringBuilder:append (Ljava/lang/String;)Ljava/lang/StringBuilder; +/* */ // 271: ldc -37 +/* */ // 273: invokevirtual 96 java/lang/StringBuilder:append (Ljava/lang/String;)Ljava/lang/StringBuilder; +/* */ // 276: invokevirtual 100 java/lang/StringBuilder:toString ()Ljava/lang/String; +/* */ // 279: invokestatic 197 NET/worlds/console/MailMessage:print (Ljava/io/PrintWriter;Ljava/lang/String;)Z +/* */ // 282: ifeq +133 -> 415 +/* */ // 285: aload 10 +/* */ // 287: aload_3 +/* */ // 288: invokestatic 223 NET/worlds/console/MailMessage:printCCline (Ljava/io/PrintWriter;Ljava/util/Vector;)Z +/* */ // 291: ifeq +124 -> 415 +/* */ // 294: aload 10 +/* */ // 296: new 88 java/lang/StringBuilder +/* */ // 299: dup +/* */ // 300: ldc -29 +/* */ // 302: invokespecial 94 java/lang/StringBuilder:<init> (Ljava/lang/String;)V +/* */ // 305: aload 4 +/* */ // 307: invokevirtual 96 java/lang/StringBuilder:append (Ljava/lang/String;)Ljava/lang/StringBuilder; +/* */ // 310: ldc -27 +/* */ // 312: invokevirtual 96 java/lang/StringBuilder:append (Ljava/lang/String;)Ljava/lang/StringBuilder; +/* */ // 315: invokevirtual 100 java/lang/StringBuilder:toString ()Ljava/lang/String; +/* */ // 318: invokestatic 197 NET/worlds/console/MailMessage:print (Ljava/io/PrintWriter;Ljava/lang/String;)Z +/* */ // 321: ifeq +94 -> 415 +/* */ // 324: aload 10 +/* */ // 326: aload 5 +/* */ // 328: invokestatic 231 NET/worlds/console/MailMessage:print (Ljava/io/PrintWriter;Ljava/util/Vector;)Z +/* */ // 331: ifeq +84 -> 415 +/* */ // 334: aload 10 +/* */ // 336: ldc -23 +/* */ // 338: invokestatic 197 NET/worlds/console/MailMessage:print (Ljava/io/PrintWriter;Ljava/lang/String;)Z +/* */ // 341: ifeq +74 -> 415 +/* */ // 344: aload 9 +/* */ // 346: invokestatic 191 NET/worlds/console/MailMessage:getReply (Ljava/io/InputStream;)Z +/* */ // 349: pop +/* */ // 350: goto +65 -> 415 +/* */ // 353: astore 9 +/* */ // 355: getstatic 235 java/lang/System:out Ljava/io/PrintStream; +/* */ // 358: new 88 java/lang/StringBuilder +/* */ // 361: dup +/* */ // 362: ldc -15 +/* */ // 364: invokespecial 94 java/lang/StringBuilder:<init> (Ljava/lang/String;)V +/* */ // 367: aload 9 +/* */ // 369: invokevirtual 243 java/lang/StringBuilder:append (Ljava/lang/Object;)Ljava/lang/StringBuilder; +/* */ // 372: invokevirtual 100 java/lang/StringBuilder:toString ()Ljava/lang/String; +/* */ // 375: invokevirtual 246 java/io/PrintStream:println (Ljava/lang/String;)V +/* */ // 378: aload 8 +/* */ // 380: ifnull +13 -> 393 +/* */ // 383: aload 8 +/* */ // 385: invokevirtual 251 java/net/Socket:close ()V +/* */ // 388: goto +5 -> 393 +/* */ // 391: astore 12 +/* */ // 393: iconst_0 +/* */ // 394: ireturn +/* */ // 395: astore 11 +/* */ // 397: aload 8 +/* */ // 399: ifnull +13 -> 412 +/* */ // 402: aload 8 +/* */ // 404: invokevirtual 251 java/net/Socket:close ()V +/* */ // 407: goto +5 -> 412 +/* */ // 410: astore 12 +/* */ // 412: aload 11 +/* */ // 414: athrow +/* */ // 415: aload 8 +/* */ // 417: ifnull +13 -> 430 +/* */ // 420: aload 8 +/* */ // 422: invokevirtual 251 java/net/Socket:close ()V +/* */ // 425: goto +5 -> 430 +/* */ // 428: astore 12 +/* */ // 430: getstatic 235 java/lang/System:out Ljava/io/PrintStream; +/* */ // 433: ldc -2 +/* */ // 435: invokevirtual 246 java/io/PrintStream:println (Ljava/lang/String;)V +/* */ // 438: iconst_1 +/* */ // 439: ireturn +/* */ // Line number table: +/* */ // Java source line #277 -> byte code offset #0 +/* */ // Java source line #278 -> byte code offset #4 +/* */ // Java source line #279 -> byte code offset #12 +/* */ // Java source line #280 -> byte code offset #18 +/* */ // Java source line #281 -> byte code offset #31 +/* */ // Java source line #283 -> byte code offset #39 +/* */ // Java source line #286 -> byte code offset #42 +/* */ // Java source line #287 -> byte code offset #57 +/* */ // Java source line #288 -> byte code offset #64 +/* */ // Java source line #291 -> byte code offset #78 +/* */ // Java source line #292 -> byte code offset #86 +/* */ // Java source line #293 -> byte code offset #96 +/* */ // Java source line #294 -> byte code offset #104 +/* */ // Java source line #295 -> byte code offset #133 +/* */ // Java source line #296 -> byte code offset #141 +/* */ // Java source line #297 -> byte code offset #170 +/* */ // Java source line #298 -> byte code offset #178 +/* */ // Java source line #299 -> byte code offset #189 +/* */ // Java source line #300 -> byte code offset #199 +/* */ // Java source line #301 -> byte code offset #207 +/* */ // Java source line #302 -> byte code offset #217 +/* */ // Java source line #303 -> byte code offset #219 +/* */ // Java source line #302 -> byte code offset #221 +/* */ // Java source line #303 -> byte code offset #224 +/* */ // Java source line #304 -> byte code offset #227 +/* */ // Java source line #305 -> byte code offset #256 +/* */ // Java source line #306 -> byte code offset #285 +/* */ // Java source line #307 -> byte code offset #294 +/* */ // Java source line #308 -> byte code offset #324 +/* */ // Java source line #309 -> byte code offset #344 +/* */ // Java source line #313 -> byte code offset #350 +/* */ // Java source line #314 -> byte code offset #355 +/* */ // Java source line #318 -> byte code offset #378 +/* */ // Java source line #319 -> byte code offset #383 +/* */ // Java source line #320 -> byte code offset #388 +/* */ // Java source line #315 -> byte code offset #393 +/* */ // Java source line #316 -> byte code offset #395 +/* */ // Java source line #318 -> byte code offset #397 +/* */ // Java source line #319 -> byte code offset #402 +/* */ // Java source line #320 -> byte code offset #407 +/* */ // Java source line #322 -> byte code offset #412 +/* */ // Java source line #318 -> byte code offset #415 +/* */ // Java source line #319 -> byte code offset #420 +/* */ // Java source line #320 -> byte code offset #425 +/* */ // Java source line #323 -> byte code offset #430 +/* */ // Java source line #324 -> byte code offset #438 +/* */ // Local variable table: +/* */ // start length slot name signature +/* */ // 0 440 0 server String +/* */ // 0 440 1 from String +/* */ // 0 440 2 to String +/* */ // 0 440 3 cc Vector<String> +/* */ // 0 440 4 subject String +/* */ // 0 440 5 body Vector<String> +/* */ // 2 49 6 port int +/* */ // 10 24 7 cindex int +/* */ // 40 381 8 smtpSocket java.net.Socket +/* */ // 62 283 9 smtpIn InputStream +/* */ // 353 15 9 ex IOException +/* */ // 76 259 10 smtpOut PrintWriter +/* */ // 395 18 11 localObject Object +/* */ // 391 1 12 localIOException1 IOException +/* */ // 410 1 12 localIOException2 IOException +/* */ // 428 1 12 localIOException3 IOException +/* */ // Exception table: +/* */ // from to target type +/* */ // 42 350 353 java/io/IOException +/* */ // 378 388 391 java/io/IOException +/* */ // 42 378 395 finally +/* */ // 397 407 410 java/io/IOException +/* */ // 415 425 428 java/io/IOException +/* */ } +/* */ +/* */ private static boolean print(PrintWriter out, String text) +/* */ { +/* 329 */ out.print(text); +/* 330 */ return !out.checkError(); +/* */ } +/* */ +/* */ private static boolean print(PrintWriter out, Vector<String> text) +/* */ { +/* 335 */ int size = text.size(); +/* 336 */ for (int i = 0; i < size; i++) { +/* 337 */ out.print((String)text.elementAt(i)); +/* 338 */ if (out.checkError()) +/* 339 */ return false; +/* */ } +/* 341 */ return true; +/* */ } +/* */ +/* */ +/* */ private static boolean printCCcmd(PrintWriter out, InputStream in, Vector<String> cc) +/* */ { +/* 347 */ if (cc.size() > 0) { +/* 348 */ Enumeration<String> en = cc.elements(); +/* 349 */ while (en.hasMoreElements()) { +/* 350 */ String rcp = (String)en.nextElement(); +/* 351 */ if (!print(out, "RCPT TO:<" + rcp + ">\r\n")) +/* 352 */ return false; +/* 353 */ if (!getReply(in)) +/* 354 */ return false; +/* */ } +/* */ } +/* 357 */ return true; +/* */ } +/* */ +/* */ private static boolean printCCline(PrintWriter out, Vector<String> cc) +/* */ { +/* 362 */ int num = cc.size(); +/* 363 */ if (num > 0) { +/* 364 */ if (!print(out, "cc: ")) +/* 365 */ return false; +/* 366 */ Enumeration<String> en = cc.elements(); +/* 367 */ while (en.hasMoreElements()) { +/* 368 */ String rcp = (String)en.nextElement(); +/* 369 */ if (num-- > 1) +/* 370 */ rcp = rcp + ", "; +/* 371 */ if (!print(out, rcp)) { +/* 372 */ return false; +/* */ } +/* */ } +/* 375 */ if (!print(out, "\r\n")) +/* 376 */ return false; +/* */ } +/* 378 */ return true; +/* */ } +/* */ +/* */ private static boolean getReply(InputStream in) +/* */ { +/* */ try { +/* */ int result; +/* */ do { +/* 386 */ if ((result = in.read()) < 0) break; } while (result != 10); +/* */ } +/* */ catch (IOException ie) +/* */ { +/* 390 */ return false; +/* */ } +/* */ +/* 393 */ return true; +/* */ } +/* */ +/* */ +/* */ +/* */ public static void main(String[] args) +/* */ { +/* 400 */ Vector<String> body = new Vector(); +/* 401 */ body.addElement("Looks like it worked...\n"); +/* */ +/* */ +/* 404 */ sendNote("www.3dcd.com:25", "Gamma Mail Service", +/* 405 */ "[email protected]", new Vector(), +/* 406 */ "this is a test", body); +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\MailMessage.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/Main.java b/NET/worlds/console/Main.java new file mode 100644 index 0000000..d2375ae --- /dev/null +++ b/NET/worlds/console/Main.java @@ -0,0 +1,279 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import NET.worlds.core.IniFile; +/* */ import NET.worlds.core.Std; +/* */ import java.io.PrintStream; +/* */ import java.util.Vector; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public class Main +/* */ { +/* 111 */ public static int profile = IniFile.gamma().getIniInt( +/* 112 */ "Profile", 0); +/* */ +/* */ +/* */ private static Thread mainThread; +/* */ +/* */ +/* */ +/* */ public static void mainLoop() +/* */ { +/* 121 */ mainThread = Thread.currentThread(); +/* */ +/* 123 */ while (!stopFlag) +/* */ { +/* */ +/* */ +/* */ +/* */ +/* 129 */ MainCallback cb = getNextCallback(); +/* */ +/* 131 */ if (cb != null) { +/* 132 */ if (profile != 0) { +/* 133 */ int start = Std.getRealTime(); +/* 134 */ long startBytes = Runtime.getRuntime().freeMemory(); +/* 135 */ cb.mainCallback(); +/* 136 */ int dur = Std.getRealTime() - start; +/* 137 */ long used = startBytes - Runtime.getRuntime().freeMemory(); +/* 138 */ if ((dur > profile) && (!(cb instanceof Console))) { +/* 139 */ System.out.println("Took " + dur + "ms and " + used + +/* 140 */ " bytes to call mainCallback " + cb); +/* */ } +/* */ } else { +/* 143 */ cb.mainCallback(); +/* */ } +/* */ } +/* */ +/* 147 */ Thread.yield(); +/* */ } +/* */ +/* */ +/* */ +/* */ MainCallback cb; +/* */ +/* */ +/* */ +/* 156 */ while ((cb = getNextCallback()) != null) { MainCallback cb; +/* 157 */ if ((cb instanceof MainTerminalCallback)) { +/* 158 */ ((MainTerminalCallback)cb).terminalCallback(); +/* */ +/* 160 */ Thread.yield(); +/* */ } +/* */ else +/* */ { +/* 164 */ unregister(cb); +/* */ } +/* */ } +/* */ +/* 168 */ mainThread = null; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public static void end() +/* */ { +/* 179 */ stopFlag = true; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public static boolean isMainThread() +/* */ { +/* 190 */ return Thread.currentThread() == mainThread; +/* */ } +/* */ +/* */ +/* 194 */ private static boolean stopFlag = false; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* 203 */ private static Vector<MainCallback> v = new Vector(); +/* */ +/* */ public static int queueLength() { +/* 206 */ return v.size(); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* 216 */ private static int lastAt = -1; +/* */ +/* */ +/* */ +/* */ +/* */ private static MainCallback getNextCallback() +/* */ { +/* */ MainCallback cb; +/* */ +/* */ +/* */ +/* 227 */ synchronized (v) { +/* 228 */ int n = v.size(); +/* 229 */ MainCallback cb; if (n == 0) { +/* 230 */ lastAt = -1; +/* 231 */ cb = null; +/* */ } else { +/* 233 */ if (++lastAt >= n) +/* 234 */ lastAt = 0; +/* 235 */ cb = (MainCallback)v.elementAt(lastAt); +/* */ } +/* */ } +/* */ MainCallback cb; +/* 239 */ return cb; +/* */ } +/* */ +/* */ public static void register(MainCallback x) +/* */ { +/* 244 */ v.addElement(x); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public static void unregister(MainCallback x) +/* */ { +/* 264 */ synchronized (v) { +/* 265 */ int i = v.indexOf(x); +/* 266 */ v.removeElementAt(i); +/* */ +/* 268 */ if (lastAt >= i) { +/* 269 */ lastAt -= 1; +/* */ } +/* */ } +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\Main.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/MainCallback.java b/NET/worlds/console/MainCallback.java new file mode 100644 index 0000000..63980ac --- /dev/null +++ b/NET/worlds/console/MainCallback.java @@ -0,0 +1,12 @@ +package NET.worlds.console; + +public abstract interface MainCallback +{ + public abstract void mainCallback(); +} + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\MainCallback.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/MainTerminalCallback.java b/NET/worlds/console/MainTerminalCallback.java new file mode 100644 index 0000000..e3664db --- /dev/null +++ b/NET/worlds/console/MainTerminalCallback.java @@ -0,0 +1,12 @@ +package NET.worlds.console; + +public abstract interface MainTerminalCallback +{ + public abstract void terminalCallback(); +} + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\MainTerminalCallback.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/MapFrame.java b/NET/worlds/console/MapFrame.java new file mode 100644 index 0000000..52a90b8 --- /dev/null +++ b/NET/worlds/console/MapFrame.java @@ -0,0 +1,37 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import java.awt.FlowLayout; +/* */ import java.awt.Frame; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public class MapFrame +/* */ extends Frame +/* */ { +/* */ private static final long serialVersionUID = 1756423575260176209L; +/* */ MapTile mp; +/* */ +/* */ public MapFrame() +/* */ { +/* 23 */ super(Console.message("Map-Tile")); +/* 24 */ setLayout(new FlowLayout()); +/* 25 */ this.mp = new MapTile(); +/* 26 */ add(this.mp); +/* 27 */ setSize(325, 300); +/* 28 */ validate(); +/* 29 */ setVisible(true); +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\MapFrame.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/MapPart.java b/NET/worlds/console/MapPart.java new file mode 100644 index 0000000..8cfe038 --- /dev/null +++ b/NET/worlds/console/MapPart.java @@ -0,0 +1,280 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import NET.worlds.network.URL; +/* */ import NET.worlds.scape.BGLoaded; +/* */ import NET.worlds.scape.BackgroundLoader; +/* */ import NET.worlds.scape.FrameEvent; +/* */ import NET.worlds.scape.Pilot; +/* */ import NET.worlds.scape.Room; +/* */ import NET.worlds.scape.SendURLAction; +/* */ import NET.worlds.scape.TeleportAction; +/* */ import NET.worlds.scape.World; +/* */ import java.awt.Component; +/* */ import java.awt.Container; +/* */ import java.awt.Dimension; +/* */ import java.awt.Event; +/* */ import java.awt.Graphics; +/* */ import java.awt.Image; +/* */ import java.awt.Rectangle; +/* */ import java.io.DataInputStream; +/* */ import java.io.FileInputStream; +/* */ import java.io.IOException; +/* */ import java.util.StringTokenizer; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public class MapPart +/* */ extends ImageButtons +/* */ implements FramePart, ImageButtonsCallback, BGLoaded +/* */ { +/* */ private static final long serialVersionUID = 1886153221201046188L; +/* */ private static final int width = 158; +/* */ private static final int height = 124; +/* */ private URL lastURL; +/* */ private URL mapURL; +/* */ private URL infURL; +/* */ private int filesLoaded; +/* */ private Rectangle[] hotspots; +/* */ private String[] names; +/* */ private String[] locations; +/* */ private int cursedButton; +/* */ private DefaultConsole console; +/* */ +/* */ public MapPart() +/* */ { +/* 83 */ setHandler(this); +/* 84 */ setBackground(true); +/* 85 */ setWidth(158); +/* 86 */ setHeight(124); +/* */ } +/* */ +/* */ private synchronized void changeURL(URL url) { +/* 90 */ this.lastURL = url; +/* 91 */ String path = url.getAbsolute(); +/* 92 */ path = path.substring(0, path.lastIndexOf('.')); +/* 93 */ this.filesLoaded = 0; +/* 94 */ setHotspots(new Rectangle[0]); +/* 95 */ this.console.exploreButton.setVisible(true); +/* 96 */ this.console.relayoutMap(); +/* 97 */ this.locations = null; +/* 98 */ repaint(); +/* 99 */ BackgroundLoader.get(this, this.mapURL = URL.make(path + "-map.gif"), true); +/* 100 */ BackgroundLoader.get(this, this.infURL = URL.make(path + "-map.inf"), true); +/* */ } +/* */ +/* */ private boolean readInfo(String localName) { +/* 104 */ DataInputStream in = null; +/* */ try { +/* 106 */ in = new DataInputStream(new FileInputStream(localName)); +/* */ +/* 108 */ int item = -1; +/* 109 */ String line; while ((line = in.readLine()) != null) { +/* 110 */ String line = line.trim(); +/* 111 */ if (item == -1) { +/* 112 */ int count = Integer.parseInt(line); +/* 113 */ this.hotspots = new Rectangle[count]; +/* 114 */ this.names = new String[count]; +/* 115 */ this.locations = new String[count]; +/* */ } else { +/* 117 */ StringTokenizer tok = new StringTokenizer(line); +/* 118 */ this.hotspots[item] = new Rectangle(Integer.parseInt(tok +/* 119 */ .nextToken()), Integer.parseInt(tok.nextToken()), +/* 120 */ Integer.parseInt(tok.nextToken()), +/* 121 */ Integer.parseInt(tok.nextToken())); +/* 122 */ this.names[item] = tok.nextToken().replace('_', ' '); +/* 123 */ this.locations[item] = tok.nextToken(); +/* 124 */ for (; tok.hasMoreTokens(); +/* 125 */ tmp167_162[tmp167_165] = (tmp167_162[tmp167_165] + " " + tok.nextToken())) {} +/* */ } +/* 127 */ item++; +/* */ } +/* 129 */ return true; +/* */ } +/* */ catch (Exception localException) {}finally { +/* */ try { +/* 133 */ if (in != null) { +/* 134 */ in.close(); +/* */ } +/* */ } catch (IOException localIOException2) {} +/* */ } +/* 138 */ return false; +/* */ } +/* */ +/* */ private int hasLink(String name) +/* */ { +/* 143 */ if (this.locations != null) { +/* 144 */ for (int i = 0; i < this.locations.length; i++) +/* 145 */ if (name.equals(this.locations[i])) +/* 146 */ return i; +/* */ } +/* 148 */ return -1; +/* */ } +/* */ +/* */ +/* */ +/* */ public synchronized void paint(Graphics g) +/* */ { +/* 155 */ if (this.filesLoaded == 2) { +/* 156 */ super.paint(g); +/* */ } +/* */ } +/* */ +/* */ @Deprecated +/* */ public synchronized boolean handleEvent(Event event) +/* */ { +/* 163 */ return super.handleEvent(event); +/* */ } +/* */ +/* */ public Dimension getPreferredSize() +/* */ { +/* 168 */ return new Dimension(158, 124); +/* */ } +/* */ +/* */ +/* */ +/* */ protected Graphics drawButton(Graphics g, int button, int state) +/* */ { +/* 175 */ Graphics ret = super.drawButton(g, button, state); +/* 176 */ if ((state == 2) || (state == 3)) { +/* 177 */ this.cursedButton = button; +/* 178 */ if ((button != -1) && (this.console != null)) +/* 179 */ this.console.overrideStatusMsg(this.names[button]); +/* 180 */ } else if ((state == 1) && (button == this.cursedButton)) { +/* 181 */ this.cursedButton = -1; +/* 182 */ if (this.console != null) +/* 183 */ this.console.overrideStatusMsg(null); +/* */ } +/* 185 */ return ret; +/* */ } +/* */ +/* */ +/* */ public synchronized Object imageButtonsCallback(Component who, int which) +/* */ { +/* 191 */ String loc = this.locations[which]; +/* 192 */ if (loc.startsWith("pnm:")) { +/* 193 */ new SendURLAction(loc).startBrowser(); +/* 194 */ return null; } +/* 195 */ if (loc.equals("system:universe")) { +/* 196 */ this.console.toggleUniverseMode(); +/* 197 */ return null; } +/* 198 */ if (loc.charAt(0) == '-') { +/* 199 */ loc = loc.substring(1); +/* */ } else +/* 201 */ loc = this.lastURL.getAbsolute() + "#" + loc; +/* 202 */ TeleportAction.teleport(loc, null); +/* 203 */ return null; +/* */ } +/* */ +/* */ +/* */ +/* */ public void activate(Console c, Container f, Console prev) +/* */ { +/* 210 */ this.console = ((DefaultConsole)c); +/* */ } +/* */ +/* */ +/* */ public void deactivate() {} +/* */ +/* */ +/* */ public synchronized boolean handle(FrameEvent f) +/* */ { +/* 219 */ Pilot pilot = Pilot.getActive(); +/* 220 */ if (pilot != null) { +/* 221 */ World world = pilot.getWorld(); +/* 222 */ if (world != null) { +/* 223 */ URL sourceURL = world.getSourceURL(); +/* 224 */ if ((sourceURL != this.lastURL) && (sourceURL != null)) +/* 225 */ changeURL(sourceURL); +/* */ } +/* */ } +/* 228 */ return true; +/* */ } +/* */ +/* */ +/* */ +/* */ public Object asyncBackgroundLoad(String localName, URL remoteURL) +/* */ { +/* 235 */ boolean success = false; +/* 236 */ if (localName != null) { +/* 237 */ if (remoteURL == this.mapURL) { +/* 238 */ this.image_ = loadImage(URL.make(localName), this); +/* 239 */ success = this.image_ != null; +/* 240 */ if (success) { +/* 241 */ setWidth(this.image_.getWidth(null) / 4); +/* 242 */ setHeight(this.image_.getHeight(null)); +/* */ } +/* */ } else { +/* 245 */ success = readInfo(localName); +/* */ +/* */ int link; +/* 248 */ if ((link = hasLink("system:universe")) >= 0) { +/* 249 */ this.console.exploreButton.setVisible(false); +/* 250 */ this.console.relayoutMap(); +/* */ } +/* */ } +/* */ } +/* 254 */ if (success) { +/* 255 */ synchronized (this) { +/* 256 */ if (++this.filesLoaded == 2) { +/* 257 */ setHotspots(this.hotspots); +/* 258 */ repaint(); +/* */ } +/* */ } +/* */ } +/* 262 */ return null; +/* */ } +/* */ +/* */ public boolean syncBackgroundLoad(Object obj, URL remoteURL) +/* */ { +/* 267 */ return false; +/* */ } +/* */ +/* */ public Room getBackgroundLoadRoom() +/* */ { +/* 272 */ return null; +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\MapPart.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/MapTile.java b/NET/worlds/console/MapTile.java new file mode 100644 index 0000000..f298b39 --- /dev/null +++ b/NET/worlds/console/MapTile.java @@ -0,0 +1,15 @@ +package NET.worlds.console; + +import java.awt.Canvas; + +public class MapTile + extends Canvas +{ + private static final long serialVersionUID = -7698366766402434599L; +} + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\MapTile.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/MoreFriendsDialog.java b/NET/worlds/console/MoreFriendsDialog.java new file mode 100644 index 0000000..97edb56 --- /dev/null +++ b/NET/worlds/console/MoreFriendsDialog.java @@ -0,0 +1,1741 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import java.awt.Button; +/* */ import java.awt.Event; +/* */ import java.awt.Font; +/* */ import java.awt.GridBagConstraints; +/* */ import java.awt.GridBagLayout; +/* */ import java.awt.List; +/* */ import java.awt.Menu; +/* */ import java.awt.MenuItem; +/* */ import java.util.Vector; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ class MoreFriendsDialog +/* */ extends PolledDialog +/* */ { +/* */ private static final long serialVersionUID = -2543183536371825585L; +/* 1563 */ private List listbox = new List(10); +/* 1564 */ private Button cancelButton = new Button(Console.message("Close")); +/* */ private FriendsListPart friends; +/* */ private Menu menu; +/* 1567 */ private Vector<Button> buttons = new Vector(); +/* 1568 */ private static Font font = new Font(Console.message("MenuFont"), +/* 1569 */ 0, 12); +/* 1570 */ private static Font bfont = new Font(Console.message("ButtonFont"), +/* 1571 */ 0, 12); +/* */ +/* */ +/* 1574 */ private Object listMutex = new Object(); +/* */ +/* */ +/* */ MoreFriendsDialog(FriendsListPart friends, Menu menu, Vector<String> online) +/* */ { +/* 1579 */ super(Console.getFrame(), friends, Console.message("Friends-Online"), false); +/* 1580 */ setAlignment(1); +/* 1581 */ this.friends = friends; +/* 1582 */ this.menu = menu; +/* */ +/* */ +/* 1585 */ for (int i = 0; i < online.size(); i++) +/* 1586 */ this.listbox.add((String)online.elementAt(i)); +/* 1587 */ ready(); +/* */ } +/* */ +/* */ +/* */ +/* */ protected void build() +/* */ { +/* 1594 */ int buttonCount = this.menu.getItemCount(); +/* 1595 */ GridBagLayout gbag = new GridBagLayout(); +/* 1596 */ setLayout(gbag); +/* 1597 */ GridBagConstraints c = new GridBagConstraints(); +/* 1598 */ c.fill = 1; +/* 1599 */ c.weightx = 1.0D; +/* 1600 */ c.weighty = 1.0D; +/* 1601 */ c.gridwidth = 2; +/* 1602 */ c.gridheight = (buttonCount + 1); +/* 1603 */ this.listbox.setFont(font); +/* 1604 */ add(gbag, this.listbox, c); +/* 1605 */ c.weightx = 0.0D; +/* 1606 */ c.weighty = 0.0D; +/* 1607 */ c.gridwidth = 0; +/* 1608 */ c.gridheight = 1; +/* 1609 */ c.fill = 2; +/* 1610 */ for (int i = 0; i < buttonCount; i++) { +/* 1611 */ String item = this.menu.getItem(i).getLabel(); +/* 1612 */ Button button = new Button(item); +/* 1613 */ button.setFont(bfont); +/* 1614 */ this.buttons.addElement(button); +/* 1615 */ add(gbag, button, c); +/* */ } +/* 1617 */ c.weighty = 1.0D; +/* 1618 */ c.anchor = 15; +/* 1619 */ this.cancelButton.setFont(bfont); +/* 1620 */ add(gbag, this.cancelButton, c); +/* */ } +/* */ +/* */ void addName(String name) +/* */ { +/* 1625 */ synchronized (this.listMutex) { +/* 1626 */ this.listbox.add(name); +/* */ +/* */ +/* 1629 */ if (this.listbox.getItemCount() == 1) { +/* 1630 */ this.listbox.select(0); +/* 1631 */ select(true); +/* */ } +/* */ } +/* */ } +/* */ +/* */ void removeName(int index) +/* */ { +/* 1638 */ synchronized (this.listMutex) { +/* 1639 */ int selIndex = this.listbox.getSelectedIndex(); +/* 1640 */ this.listbox.remove(index); +/* 1641 */ if (selIndex == index) +/* */ { +/* */ +/* 1644 */ int count = this.listbox.getItemCount(); +/* 1645 */ if (index < count - 1) { +/* 1646 */ this.listbox.select(index); +/* 1647 */ } else if (count > 0) { +/* 1648 */ this.listbox.select(count - 1); +/* */ } else { +/* 1650 */ select(false); +/* 1651 */ this.listbox.requestFocus(); +/* */ } +/* */ } +/* */ } +/* */ } +/* */ +/* */ private void select(boolean state) +/* */ { +/* 1659 */ for (int i = 0; i < this.buttons.size(); i++) { +/* 1660 */ Button button = (Button)this.buttons.elementAt(i); +/* 1661 */ button.setEnabled(state); +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ public void setVisible(boolean visible) +/* */ { +/* 1670 */ super.setVisible(visible); +/* 1671 */ if (visible) { +/* 1672 */ synchronized (this.listMutex) +/* */ { +/* */ +/* 1675 */ if (this.listbox.getItemCount() != 0) { +/* 1676 */ this.listbox.select(0); +/* 1677 */ select(true); +/* */ } else { +/* 1679 */ select(false); +/* */ } } +/* 1681 */ this.listbox.requestFocus(); +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ @Deprecated +/* */ public boolean handleEvent(Event event) +/* */ { +/* 1690 */ if (event.id == 701) { +/* 1691 */ select(true); +/* 1692 */ } else if (event.id == 702) { +/* 1693 */ select(false); +/* */ } +/* */ +/* 1696 */ return super.handleEvent(event); +/* */ } +/* */ +/* */ +/* */ @Deprecated +/* */ public boolean action(Event event, Object what) +/* */ { +/* 1703 */ Object target = event.target; +/* 1704 */ if (target == this.cancelButton) { +/* 1705 */ return done(false); +/* */ } +/* */ +/* */ +/* 1709 */ int index = this.buttons.indexOf(target); +/* 1710 */ if (index != -1) +/* */ { +/* */ +/* */ +/* 1714 */ MenuItem function = this.menu.getItem(index); +/* */ String selectedFriend; +/* 1716 */ synchronized (this.listMutex) { +/* 1717 */ selectedFriend = this.listbox.getSelectedItem(); } +/* */ String selectedFriend; +/* 1719 */ if (selectedFriend != null) { +/* 1720 */ this.friends.moreFriendsAction(selectedFriend, function); +/* 1721 */ return true; +/* */ } +/* */ } +/* 1724 */ return false; +/* */ } +/* */ +/* */ +/* */ @Deprecated +/* */ public boolean keyDown(Event event, int key) +/* */ { +/* 1731 */ if ((key == 27) || (key == 10)) +/* 1732 */ return done(false); +/* 1733 */ return super.keyDown(event, key); +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\MoreFriendsDialog.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/MoveablePolygon.java b/NET/worlds/console/MoveablePolygon.java new file mode 100644 index 0000000..a44f69d --- /dev/null +++ b/NET/worlds/console/MoveablePolygon.java @@ -0,0 +1,420 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import java.awt.Graphics; +/* */ import java.awt.Polygon; +/* */ import java.awt.Rectangle; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ class MoveablePolygon +/* */ extends Polygon +/* */ { +/* */ private static final long serialVersionUID = 8800634603983512717L; +/* */ private int xOffset; +/* */ private int yOffset; +/* 365 */ private Rectangle boundingBox = new Rectangle(); +/* */ +/* */ public MoveablePolygon() {} +/* */ +/* */ public MoveablePolygon(int[] xpoints, int[] ypoints) +/* */ { +/* 371 */ super(xpoints, ypoints, xpoints.length); +/* */ } +/* */ +/* */ public void moveTo(int x, int y) { +/* 375 */ if ((x != this.xOffset) || (y != this.yOffset)) { +/* 376 */ int xdelta = x - this.xOffset; +/* 377 */ int ydelta = y - this.yOffset; +/* 378 */ this.xOffset = x; +/* 379 */ this.yOffset = y; +/* 380 */ for (int i = 0; i < this.npoints; i++) { +/* 381 */ this.xpoints[i] += xdelta; +/* 382 */ this.ypoints[i] += ydelta; +/* */ } +/* */ } +/* */ } +/* */ +/* */ public void drawFilled(Graphics g, int x, int y) { +/* 388 */ moveTo(x, y); +/* 389 */ g.fillPolygon(this); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ public Rectangle getBoundingBox() +/* */ { +/* 397 */ int boundsMinX = Integer.MAX_VALUE; +/* 398 */ int boundsMinY = Integer.MAX_VALUE; +/* 399 */ int boundsMaxX = Integer.MIN_VALUE; +/* 400 */ int boundsMaxY = Integer.MIN_VALUE; +/* */ +/* 402 */ for (int i = 0; i < this.npoints; i++) { +/* 403 */ int x = this.xpoints[i]; +/* 404 */ boundsMinX = Math.min(boundsMinX, x); +/* 405 */ boundsMaxX = Math.max(boundsMaxX, x); +/* 406 */ int y = this.ypoints[i]; +/* 407 */ boundsMinY = Math.min(boundsMinY, y); +/* 408 */ boundsMaxY = Math.max(boundsMaxY, y); +/* */ } +/* 410 */ this.boundingBox.setBounds(boundsMinX, boundsMinY, boundsMaxX - boundsMinX, +/* 411 */ boundsMaxY - boundsMinY); +/* 412 */ return this.boundingBox; +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\MoveablePolygon.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/MultiLineLabel.java b/NET/worlds/console/MultiLineLabel.java new file mode 100644 index 0000000..7260afd --- /dev/null +++ b/NET/worlds/console/MultiLineLabel.java @@ -0,0 +1,215 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import java.awt.Canvas; +/* */ import java.awt.Color; +/* */ import java.awt.Dimension; +/* */ import java.awt.Font; +/* */ import java.awt.FontMetrics; +/* */ import java.awt.Graphics; +/* */ import java.util.StringTokenizer; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public class MultiLineLabel +/* */ extends Canvas +/* */ { +/* */ private static final long serialVersionUID = -3840151921412552795L; +/* */ public static final int LEFT = 0; +/* */ public static final int CENTER = 1; +/* */ public static final int RIGHT = 2; +/* */ protected String[] lines; +/* */ protected int num_lines; +/* */ protected int margin_width; +/* */ protected int margin_height; +/* */ protected int line_height; +/* */ protected int line_ascent; +/* */ protected int[] line_widths; +/* */ protected int max_width; +/* 39 */ protected int alignment = 0; +/* */ +/* */ +/* */ protected void newLabel(String label) +/* */ { +/* 44 */ StringTokenizer t = new StringTokenizer(label, "\n"); +/* 45 */ this.num_lines = t.countTokens(); +/* 46 */ this.lines = new String[this.num_lines]; +/* 47 */ this.line_widths = new int[this.num_lines]; +/* 48 */ for (int i = 0; i < this.num_lines; i++) { +/* 49 */ this.lines[i] = t.nextToken(); +/* */ } +/* */ } +/* */ +/* */ protected void measure() +/* */ { +/* 55 */ FontMetrics fm = getFontMetrics(getFont()); +/* */ +/* 57 */ if (fm == null) { +/* 58 */ return; +/* */ } +/* 60 */ this.line_height = fm.getHeight(); +/* 61 */ this.line_ascent = fm.getAscent(); +/* 62 */ this.max_width = 0; +/* 63 */ for (int i = 0; i < this.num_lines; i++) { +/* 64 */ this.line_widths[i] = fm.stringWidth(this.lines[i]); +/* 65 */ if (this.line_widths[i] > this.max_width) { +/* 66 */ this.max_width = this.line_widths[i]; +/* */ } +/* */ } +/* */ } +/* */ +/* */ +/* */ public MultiLineLabel(String label, int margin_width, int margin_height, int alignment) +/* */ { +/* 74 */ newLabel(label); +/* 75 */ this.margin_width = margin_width; +/* 76 */ this.margin_height = margin_height; +/* 77 */ this.alignment = alignment; +/* */ } +/* */ +/* */ public MultiLineLabel(String label, int margin_width, int margin_height) { +/* 81 */ this(label, margin_width, margin_height, 0); +/* */ } +/* */ +/* */ public MultiLineLabel(String label, int alignment) { +/* 85 */ this(label, 10, 10, alignment); +/* */ } +/* */ +/* */ public MultiLineLabel(String label) { +/* 89 */ this(label, 10, 10, 0); +/* */ } +/* */ +/* */ public MultiLineLabel() { +/* 93 */ this("", 10, 10, 0); +/* */ } +/* */ +/* */ public void setLabel(String label) +/* */ { +/* 98 */ newLabel(label); +/* 99 */ measure(); +/* 100 */ repaint(); +/* */ } +/* */ +/* */ public String getLabel() { +/* 104 */ if (this.lines.length == 0) { +/* 105 */ return ""; +/* */ } +/* 107 */ String s = this.lines[0]; +/* 108 */ for (int i = 1; i < this.lines.length; i++) { +/* 109 */ s = s + "\n" + this.lines[i]; +/* */ } +/* 111 */ return s; +/* */ } +/* */ +/* */ public void setFont(Font f) +/* */ { +/* 116 */ super.setFont(f); +/* 117 */ measure(); +/* 118 */ repaint(); +/* */ } +/* */ +/* */ public void setForeground(Color c) +/* */ { +/* 123 */ super.setForeground(c); +/* 124 */ repaint(); +/* */ } +/* */ +/* */ public void setAlignment(int a) { +/* 128 */ this.alignment = a; +/* 129 */ repaint(); +/* */ } +/* */ +/* */ public void setMarginWidth(int mw) { +/* 133 */ this.margin_width = mw; +/* 134 */ repaint(); +/* */ } +/* */ +/* */ public void setMarginHeight(int mh) { +/* 138 */ this.margin_height = mh; +/* 139 */ repaint(); +/* */ } +/* */ +/* */ public int getAlignment() { +/* 143 */ return this.alignment; +/* */ } +/* */ +/* */ public int getMarginWidth() { +/* 147 */ return this.margin_width; +/* */ } +/* */ +/* */ public int getMarginHeight() { +/* 151 */ return this.margin_height; +/* */ } +/* */ +/* */ public int getLines() { +/* 155 */ return this.num_lines; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public void addNotify() +/* */ { +/* 165 */ super.addNotify(); +/* 166 */ measure(); +/* */ } +/* */ +/* */ +/* */ +/* */ public Dimension getPreferredSize() +/* */ { +/* 173 */ return new Dimension(this.max_width + 2 * this.margin_width, this.num_lines * +/* 174 */ this.line_height + 2 * this.margin_height); +/* */ } +/* */ +/* */ +/* */ +/* */ public Dimension getMinimumSize() +/* */ { +/* 181 */ return getPreferredSize(); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public void paint(Graphics g) +/* */ { +/* 191 */ Dimension d = getSize(); +/* 192 */ int y = this.line_ascent + (d.height - this.num_lines * this.line_height) / 2; +/* 193 */ for (int i = 0; i < this.num_lines; y += this.line_height) { int x; +/* 194 */ int x; int x; switch (this.alignment) { +/* */ case 0: +/* 196 */ x = this.margin_width; +/* 197 */ break; +/* */ case 1: +/* */ default: +/* 200 */ x = (d.width - this.line_widths[i]) / 2; +/* 201 */ break; +/* */ case 2: +/* 203 */ x = d.width - this.margin_width - this.line_widths[i]; +/* */ } +/* */ +/* 206 */ g.drawString(this.lines[i], x, y);i++; +/* */ } +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\MultiLineLabel.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/MuteListPart.java b/NET/worlds/console/MuteListPart.java new file mode 100644 index 0000000..8ad7232 --- /dev/null +++ b/NET/worlds/console/MuteListPart.java @@ -0,0 +1,357 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import NET.worlds.core.IniFile; +/* */ import NET.worlds.network.Galaxy; +/* */ import NET.worlds.network.NetworkObject; +/* */ import NET.worlds.network.ObjID; +/* */ import NET.worlds.network.WorldServer; +/* */ import NET.worlds.scape.Drone; +/* */ import NET.worlds.scape.FrameEvent; +/* */ import java.awt.Container; +/* */ import java.awt.Event; +/* */ import java.awt.MenuItem; +/* */ import java.awt.Window; +/* */ import java.text.MessageFormat; +/* */ import java.util.Enumeration; +/* */ import java.util.StringTokenizer; +/* */ import java.util.Vector; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public class MuteListPart +/* */ implements FramePart, NameListOwner +/* */ { +/* */ private static final String oldIniItemName = "Mutes"; +/* */ private static final String iniItemName = "Mute"; +/* */ private static final int maxMutes = 50; +/* */ private static final String separator = ";"; +/* */ private static MuteListPart active; +/* */ private Vector<String> mutes; +/* 58 */ private Vector<String> syncMutes = new Vector(); +/* */ +/* */ +/* */ +/* */ private MenuItem editItem; +/* */ +/* */ +/* */ private MenuItem disableWhisperItem; +/* */ +/* */ +/* */ private boolean rejectWhispers; +/* */ +/* */ +/* */ private DefaultConsole console; +/* */ +/* */ +/* */ private Galaxy galaxy; +/* */ +/* */ +/* */ private IniFile serverSection; +/* */ +/* */ +/* 80 */ private Object mutesMutex = new Object(); +/* */ +/* */ +/* */ +/* 84 */ private Vector<String> updates = new Vector(); +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ private void loadMutes() +/* */ { +/* 92 */ this.mutes = new Vector(); +/* */ +/* */ +/* 95 */ for (int i = 0; i < 50; i++) { +/* 96 */ String name = this.serverSection.getIniString("Mute" + i, ""); +/* 97 */ if (name.length() == 0) +/* */ break; +/* 99 */ if ((FriendsListPart.isValidUserName(name)) && +/* 100 */ (!FriendsListPart.icontains(this.mutes, name))) { +/* 101 */ this.mutes.addElement(name); +/* */ } +/* */ } +/* 104 */ if (this.mutes.size() == 0) +/* */ { +/* */ +/* */ +/* */ +/* 109 */ String mutesStr = this.serverSection.getIniString("Mutes", ""); +/* 110 */ StringTokenizer tokens = new StringTokenizer(mutesStr, ";"); +/* 111 */ while ((tokens.hasMoreTokens()) && (this.mutes.size() < 50)) { +/* 112 */ String name = tokens.nextToken(); +/* */ +/* */ +/* 115 */ if ((FriendsListPart.isValidUserName(name)) && +/* 116 */ (!FriendsListPart.icontains(this.mutes, name))) +/* 117 */ this.mutes.addElement(name); +/* */ } +/* 119 */ if (this.mutes.size() != 0) { +/* 120 */ saveMutes(); +/* 121 */ this.serverSection.setIniString("Mutes", ""); +/* */ } +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ void saveMutes() +/* */ { +/* 130 */ int count = this.mutes.size(); +/* 131 */ for (int i = 0; i < count; i++) +/* 132 */ this.serverSection.setIniString("Mute" + i, +/* 133 */ (String)this.mutes.elementAt(i)); +/* 134 */ this.serverSection.setIniString("Mute" + count, ""); +/* */ } +/* */ +/* */ private void setDisableWhisper() +/* */ { +/* 139 */ this.rejectWhispers = (IniFile.gamma().getIniInt("RejectWhispers", 0) == 1); +/* 140 */ if (this.rejectWhispers) { +/* 141 */ this.disableWhisperItem.setLabel(Console.message("Accept-Whispers")); +/* */ } else { +/* 143 */ this.disableWhisperItem.setLabel(Console.message("Reject-Whispers")); +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ public void activate(Console c, Container f, Console prev) +/* */ { +/* 151 */ active = this; +/* */ +/* */ +/* */ +/* 155 */ this.console = ((DefaultConsole)c); +/* */ +/* */ +/* 158 */ this.editItem = c.addMenuItem(Console.message("Edit-Mute-List"), "Options"); +/* 159 */ this.editItem.setEnabled(this.mutes != null); +/* */ +/* */ +/* 162 */ this.disableWhisperItem = c.addMenuItem(Console.message("Reject-Whispers"), +/* 163 */ "Options"); +/* 164 */ setDisableWhisper(); +/* */ } +/* */ +/* */ +/* */ public void deactivate() +/* */ { +/* 170 */ active = null; +/* 171 */ this.editItem = null; +/* */ } +/* */ +/* */ +/* */ +/* */ public boolean action(Event event, Object what) +/* */ { +/* 178 */ if (event.target == this.editItem) +/* */ { +/* */ +/* */ +/* 182 */ new EditNamesDialog(this, Console.message("Edit-Mute-List"), +/* 183 */ Console.message("Add-Mute-List")); +/* 184 */ return true; } +/* 185 */ if (event.target == this.disableWhisperItem) +/* */ { +/* 187 */ IniFile.gamma().setIniInt("RejectWhispers", this.rejectWhispers ? 0 : 1); +/* 188 */ setDisableWhisper(); +/* */ } +/* */ +/* 191 */ return false; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public boolean handle(FrameEvent f) +/* */ { +/* 200 */ synchronized (this.mutesMutex) { +/* 201 */ int count = this.updates.size(); +/* 202 */ if (count != 0) { +/* 203 */ WorldServer server = this.console.getServerNew(); +/* 204 */ if (server != null) { +/* 205 */ for (int i = 0; i < count; i++) { +/* 206 */ String name = (String)this.updates.elementAt(i); +/* 207 */ boolean muted = this.mutes.contains(name); +/* */ +/* */ +/* */ +/* 211 */ NetworkObject obj = server.getObject(new ObjID(name)); +/* 212 */ if ((obj instanceof Drone)) { +/* 213 */ Drone d = (Drone)obj; +/* 214 */ d.muteStateChanged(); +/* */ } +/* */ +/* */ +/* 218 */ this.console.getFriends().changeMuteState(name, muted); +/* */ } +/* */ +/* */ +/* 222 */ this.updates.removeAllElements(); +/* */ +/* */ +/* 225 */ this.syncMutes = ((Vector)this.mutes.clone()); +/* */ } +/* */ } +/* */ } +/* 229 */ return true; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public void setServer(WorldServer server, IniFile serverSection) +/* */ { +/* 240 */ this.serverSection = serverSection; +/* 241 */ this.galaxy = server.getGalaxy(); +/* */ +/* */ +/* */ +/* 245 */ loadMutes(); +/* 246 */ if (this.editItem != null) +/* 247 */ this.editItem.setEnabled(true); +/* */ } +/* */ +/* */ public static boolean isMuted(WorldServer server, String name) { +/* 251 */ if ((server != null) && (name != null)) { +/* 252 */ Galaxy g = server.getGalaxy(); +/* 253 */ Enumeration<NetworkObject> consoleList = g.getConsoles(); +/* 254 */ while (consoleList.hasMoreElements()) { +/* 255 */ Object c = consoleList.nextElement(); +/* 256 */ if ((c instanceof DefaultConsole)) { +/* 257 */ MuteListPart target = ((DefaultConsole)c).getMutes(); +/* 258 */ if (target.mutes != null) +/* 259 */ return FriendsListPart.icontains(target.mutes, name); +/* */ } +/* */ } +/* */ } +/* 263 */ return false; +/* */ } +/* */ +/* */ public static boolean isRejecting(WorldServer server) { +/* 267 */ if (server != null) { +/* 268 */ Galaxy g = server.getGalaxy(); +/* 269 */ Enumeration<NetworkObject> consoleList = g.getConsoles(); +/* 270 */ while (consoleList.hasMoreElements()) { +/* 271 */ Object c = consoleList.nextElement(); +/* 272 */ if ((c instanceof DefaultConsole)) { +/* 273 */ MuteListPart target = ((DefaultConsole)c).getMutes(); +/* 274 */ if (target.rejectWhispers) +/* 275 */ return true; +/* */ } +/* */ } +/* */ } +/* 279 */ return false; +/* */ } +/* */ +/* */ +/* */ +/* */ public int getNameListCount() +/* */ { +/* 286 */ return this.mutes.size(); +/* */ } +/* */ +/* */ public String getNameListName(int index) +/* */ { +/* 291 */ return (String)this.mutes.elementAt(index); +/* */ } +/* */ +/* */ public void removeNameListName(int index) +/* */ { +/* 296 */ synchronized (this.mutesMutex) { +/* 297 */ String name = (String)this.mutes.elementAt(index); +/* 298 */ this.mutes.removeElementAt(index); +/* 299 */ saveMutes(); +/* */ +/* */ +/* 302 */ if (!this.updates.contains(name)) { +/* 303 */ this.updates.addElement(name); +/* */ } +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ public boolean mayAddNameListName(Window currentWindow) +/* */ { +/* 312 */ if (this.mutes.size() < 50) +/* 313 */ return true; +/* 314 */ Object[] arguments = { new String("50") }; +/* 315 */ new OkCancelDialog(currentWindow, null, +/* 316 */ Console.message("Too-many-names"), null, Console.message("OK"), +/* 317 */ MessageFormat.format(Console.message("You-are-limitedM"), +/* 318 */ arguments), true); +/* */ +/* */ +/* 321 */ return false; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public int addNameListName(String name) +/* */ { +/* 330 */ synchronized (this.mutesMutex) +/* */ { +/* 332 */ if (name.toLowerCase().startsWith("host")) { +/* 333 */ return -1; +/* */ } +/* */ +/* 336 */ int index = FriendsListPart.iindexOf(this.mutes, name); +/* 337 */ if (index != -1) { +/* 338 */ return index; +/* */ } +/* */ +/* 341 */ this.mutes.addElement(name); +/* 342 */ saveMutes(); +/* */ +/* */ +/* 345 */ if (!this.updates.contains(name)) { +/* 346 */ this.updates.addElement(name); +/* */ } +/* 348 */ return this.mutes.size() - 1; +/* */ } +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\MuteListPart.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/NSProtocolHandler.java b/NET/worlds/console/NSProtocolHandler.java new file mode 100644 index 0000000..a486371 --- /dev/null +++ b/NET/worlds/console/NSProtocolHandler.java @@ -0,0 +1,65 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import NET.worlds.scape.TeleportAction; +/* */ import java.io.IOException; +/* */ import java.io.PrintStream; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public class NSProtocolHandler +/* */ extends IClassFactory +/* */ { +/* */ public static final String CLSID_GammaProtocol1 = "{f8535c80-f5ee-11d2-a6ac-0050041a1735}"; +/* */ +/* */ public NSProtocolHandler() +/* */ throws IOException +/* */ { +/* 26 */ init(createLocal()); +/* */ } +/* */ +/* */ public void activate() throws IOException +/* */ { +/* 31 */ super.activate("{f8535c80-f5ee-11d2-a6ac-0050041a1735}"); +/* */ } +/* */ +/* */ public void register() { +/* 35 */ super.register("Gamma Protocol Handler", "{f8535c80-f5ee-11d2-a6ac-0050041a1735}", +/* 36 */ "Gamma.Protocol", "Gamma.Protocol.1"); +/* */ } +/* */ +/* */ +/* */ public static void newURL(String url) +/* */ { +/* 42 */ if ((ActiveX.getDebugLevel() & 0x10) > 0) { +/* 43 */ System.out.println("OLEDEBUG: Netscape URL: " + url); +/* */ } +/* */ +/* 46 */ TeleportAction.teleport(url, null, true); +/* */ +/* */ +/* 49 */ GammaFrame frame = Console.getFrame(); +/* 50 */ int handle = Window.findWindow(frame.getTitle()); +/* 51 */ if (handle != 0) { +/* 52 */ Window.setWindowState(handle, 0); +/* 53 */ Window.setForegroundWindow(handle); +/* */ } +/* */ } +/* */ +/* */ public static native int createLocal() +/* */ throws IOException; +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\NSProtocolHandler.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/NameListOwner.java b/NET/worlds/console/NameListOwner.java new file mode 100644 index 0000000..ff4c457 --- /dev/null +++ b/NET/worlds/console/NameListOwner.java @@ -0,0 +1,22 @@ +package NET.worlds.console; + +import java.awt.Window; + +public abstract interface NameListOwner +{ + public abstract int getNameListCount(); + + public abstract String getNameListName(int paramInt); + + public abstract void removeNameListName(int paramInt); + + public abstract boolean mayAddNameListName(Window paramWindow); + + public abstract int addNameListName(String paramString); +} + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\NameListOwner.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/Netscape.java b/NET/worlds/console/Netscape.java new file mode 100644 index 0000000..f43de44 --- /dev/null +++ b/NET/worlds/console/Netscape.java @@ -0,0 +1,208 @@ +/* */ package NET.worlds.console; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public class Netscape +/* */ implements MainCallback, MainTerminalCallback +/* */ { +/* 19 */ private INetscapeRegistry _registry = null; +/* 20 */ private NSProtocolHandler _protocolHandler = null; +/* */ +/* */ +/* */ +/* */ public Netscape() +/* */ { +/* 26 */ Main.register(this); +/* */ } +/* */ +/* */ /* Error */ +/* */ public void mainCallback() +/* */ { +/* */ // Byte code: +/* */ // 0: aload_0 +/* */ // 1: invokestatic 33 NET/worlds/console/Main:unregister (LNET/worlds/console/MainCallback;)V +/* */ // 4: aload_0 +/* */ // 5: new 36 NET/worlds/console/INetscapeRegistry +/* */ // 8: dup +/* */ // 9: invokespecial 38 NET/worlds/console/INetscapeRegistry:<init> ()V +/* */ // 12: putfield 18 NET/worlds/console/Netscape:_registry LNET/worlds/console/INetscapeRegistry; +/* */ // 15: invokestatic 39 NET/worlds/console/ActiveX:getDebugLevel ()I +/* */ // 18: bipush 16 +/* */ // 20: iand +/* */ // 21: ifle +11 -> 32 +/* */ // 24: getstatic 45 java/lang/System:out Ljava/io/PrintStream; +/* */ // 27: ldc 51 +/* */ // 29: invokevirtual 53 java/io/PrintStream:println (Ljava/lang/String;)V +/* */ // 32: aload_0 +/* */ // 33: new 59 NET/worlds/console/NSProtocolHandler +/* */ // 36: dup +/* */ // 37: invokespecial 61 NET/worlds/console/NSProtocolHandler:<init> ()V +/* */ // 40: putfield 20 NET/worlds/console/Netscape:_protocolHandler LNET/worlds/console/NSProtocolHandler; +/* */ // 43: aload_0 +/* */ // 44: getfield 20 NET/worlds/console/Netscape:_protocolHandler LNET/worlds/console/NSProtocolHandler; +/* */ // 47: invokevirtual 62 NET/worlds/console/NSProtocolHandler:activate ()V +/* */ // 50: invokestatic 39 NET/worlds/console/ActiveX:getDebugLevel ()I +/* */ // 53: bipush 16 +/* */ // 55: iand +/* */ // 56: ifle +11 -> 67 +/* */ // 59: getstatic 45 java/lang/System:out Ljava/io/PrintStream; +/* */ // 62: ldc 65 +/* */ // 64: invokevirtual 53 java/io/PrintStream:println (Ljava/lang/String;)V +/* */ // 67: aload_0 +/* */ // 68: getfield 20 NET/worlds/console/Netscape:_protocolHandler LNET/worlds/console/NSProtocolHandler; +/* */ // 71: invokevirtual 67 NET/worlds/console/NSProtocolHandler:register ()V +/* */ // 74: aload_0 +/* */ // 75: getfield 18 NET/worlds/console/Netscape:_registry LNET/worlds/console/INetscapeRegistry; +/* */ // 78: ldc 69 +/* */ // 80: ldc 71 +/* */ // 82: invokevirtual 73 NET/worlds/console/INetscapeRegistry:RegisterProtocol (Ljava/lang/String;Ljava/lang/String;)Z +/* */ // 85: istore_1 +/* */ // 86: invokestatic 39 NET/worlds/console/ActiveX:getDebugLevel ()I +/* */ // 89: bipush 16 +/* */ // 91: iand +/* */ // 92: ifle +115 -> 207 +/* */ // 95: getstatic 45 java/lang/System:out Ljava/io/PrintStream; +/* */ // 98: ldc 77 +/* */ // 100: invokevirtual 53 java/io/PrintStream:println (Ljava/lang/String;)V +/* */ // 103: goto +104 -> 207 +/* */ // 106: astore_1 +/* */ // 107: invokestatic 39 NET/worlds/console/ActiveX:getDebugLevel ()I +/* */ // 110: bipush 16 +/* */ // 112: iand +/* */ // 113: ifle +28 -> 141 +/* */ // 116: getstatic 45 java/lang/System:out Ljava/io/PrintStream; +/* */ // 119: new 79 java/lang/StringBuilder +/* */ // 122: dup +/* */ // 123: ldc 81 +/* */ // 125: invokespecial 83 java/lang/StringBuilder:<init> (Ljava/lang/String;)V +/* */ // 128: aload_1 +/* */ // 129: invokevirtual 85 java/io/IOException:getMessage ()Ljava/lang/String; +/* */ // 132: invokevirtual 91 java/lang/StringBuilder:append (Ljava/lang/String;)Ljava/lang/StringBuilder; +/* */ // 135: invokevirtual 95 java/lang/StringBuilder:toString ()Ljava/lang/String; +/* */ // 138: invokevirtual 53 java/io/PrintStream:println (Ljava/lang/String;)V +/* */ // 141: aload_0 +/* */ // 142: getfield 18 NET/worlds/console/Netscape:_registry LNET/worlds/console/INetscapeRegistry; +/* */ // 145: ifnull +92 -> 237 +/* */ // 148: aload_0 +/* */ // 149: getfield 18 NET/worlds/console/Netscape:_registry LNET/worlds/console/INetscapeRegistry; +/* */ // 152: invokevirtual 98 NET/worlds/console/INetscapeRegistry:Release ()V +/* */ // 155: goto +11 -> 166 +/* */ // 158: astore_3 +/* */ // 159: aload_3 +/* */ // 160: getstatic 45 java/lang/System:out Ljava/io/PrintStream; +/* */ // 163: invokevirtual 101 NET/worlds/console/OLEInvalidObjectException:printStackTrace (Ljava/io/PrintStream;)V +/* */ // 166: aload_0 +/* */ // 167: aconst_null +/* */ // 168: putfield 18 NET/worlds/console/Netscape:_registry LNET/worlds/console/INetscapeRegistry; +/* */ // 171: goto +66 -> 237 +/* */ // 174: astore_2 +/* */ // 175: aload_0 +/* */ // 176: getfield 18 NET/worlds/console/Netscape:_registry LNET/worlds/console/INetscapeRegistry; +/* */ // 179: ifnull +26 -> 205 +/* */ // 182: aload_0 +/* */ // 183: getfield 18 NET/worlds/console/Netscape:_registry LNET/worlds/console/INetscapeRegistry; +/* */ // 186: invokevirtual 98 NET/worlds/console/INetscapeRegistry:Release ()V +/* */ // 189: goto +11 -> 200 +/* */ // 192: astore_3 +/* */ // 193: aload_3 +/* */ // 194: getstatic 45 java/lang/System:out Ljava/io/PrintStream; +/* */ // 197: invokevirtual 101 NET/worlds/console/OLEInvalidObjectException:printStackTrace (Ljava/io/PrintStream;)V +/* */ // 200: aload_0 +/* */ // 201: aconst_null +/* */ // 202: putfield 18 NET/worlds/console/Netscape:_registry LNET/worlds/console/INetscapeRegistry; +/* */ // 205: aload_2 +/* */ // 206: athrow +/* */ // 207: aload_0 +/* */ // 208: getfield 18 NET/worlds/console/Netscape:_registry LNET/worlds/console/INetscapeRegistry; +/* */ // 211: ifnull +26 -> 237 +/* */ // 214: aload_0 +/* */ // 215: getfield 18 NET/worlds/console/Netscape:_registry LNET/worlds/console/INetscapeRegistry; +/* */ // 218: invokevirtual 98 NET/worlds/console/INetscapeRegistry:Release ()V +/* */ // 221: goto +11 -> 232 +/* */ // 224: astore_3 +/* */ // 225: aload_3 +/* */ // 226: getstatic 45 java/lang/System:out Ljava/io/PrintStream; +/* */ // 229: invokevirtual 101 NET/worlds/console/OLEInvalidObjectException:printStackTrace (Ljava/io/PrintStream;)V +/* */ // 232: aload_0 +/* */ // 233: aconst_null +/* */ // 234: putfield 18 NET/worlds/console/Netscape:_registry LNET/worlds/console/INetscapeRegistry; +/* */ // 237: return +/* */ // Line number table: +/* */ // Java source line #30 -> byte code offset #0 +/* */ // Java source line #50 -> byte code offset #4 +/* */ // Java source line #54 -> byte code offset #15 +/* */ // Java source line #55 -> byte code offset #24 +/* */ // Java source line #59 -> byte code offset #32 +/* */ // Java source line #60 -> byte code offset #43 +/* */ // Java source line #62 -> byte code offset #50 +/* */ // Java source line #63 -> byte code offset #59 +/* */ // Java source line #67 -> byte code offset #67 +/* */ // Java source line #72 -> byte code offset #74 +/* */ // Java source line #73 -> byte code offset #80 +/* */ // Java source line #72 -> byte code offset #82 +/* */ // Java source line #78 -> byte code offset #86 +/* */ // Java source line #79 -> byte code offset #95 +/* */ // Java source line #80 -> byte code offset #98 +/* */ // Java source line #82 -> byte code offset #103 +/* */ // Java source line #84 -> byte code offset #107 +/* */ // Java source line #85 -> byte code offset #116 +/* */ // Java source line #86 -> byte code offset #128 +/* */ // Java source line #85 -> byte code offset #138 +/* */ // Java source line #89 -> byte code offset #141 +/* */ // Java source line #94 -> byte code offset #148 +/* */ // Java source line #95 -> byte code offset #155 +/* */ // Java source line #97 -> byte code offset #159 +/* */ // Java source line #99 -> byte code offset #166 +/* */ // Java source line #88 -> byte code offset #174 +/* */ // Java source line #89 -> byte code offset #175 +/* */ // Java source line #94 -> byte code offset #182 +/* */ // Java source line #95 -> byte code offset #189 +/* */ // Java source line #97 -> byte code offset #193 +/* */ // Java source line #99 -> byte code offset #200 +/* */ // Java source line #101 -> byte code offset #205 +/* */ // Java source line #89 -> byte code offset #207 +/* */ // Java source line #94 -> byte code offset #214 +/* */ // Java source line #95 -> byte code offset #221 +/* */ // Java source line #97 -> byte code offset #225 +/* */ // Java source line #99 -> byte code offset #232 +/* */ // Java source line #102 -> byte code offset #237 +/* */ // Local variable table: +/* */ // start length slot name signature +/* */ // 0 238 0 this Netscape +/* */ // 85 2 1 reg boolean +/* */ // 106 23 1 e java.io.IOException +/* */ // 174 32 2 localObject Object +/* */ // 158 2 3 e OLEInvalidObjectException +/* */ // 192 2 3 e OLEInvalidObjectException +/* */ // 224 2 3 e OLEInvalidObjectException +/* */ // Exception table: +/* */ // from to target type +/* */ // 4 103 106 java/io/IOException +/* */ // 148 155 158 NET/worlds/console/OLEInvalidObjectException +/* */ // 4 141 174 finally +/* */ // 182 189 192 NET/worlds/console/OLEInvalidObjectException +/* */ // 214 221 224 NET/worlds/console/OLEInvalidObjectException +/* */ } +/* */ +/* */ public void terminalCallback() +/* */ { +/* 105 */ Main.unregister(this); +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\Netscape.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/NewSharedTextArea.java b/NET/worlds/console/NewSharedTextArea.java new file mode 100644 index 0000000..95289a0 --- /dev/null +++ b/NET/worlds/console/NewSharedTextArea.java @@ -0,0 +1,415 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import NET.worlds.core.IniFile; +/* */ import java.awt.AWTEvent; +/* */ import java.awt.Component; +/* */ import java.awt.event.FocusEvent; +/* */ import java.io.BufferedReader; +/* */ import java.io.File; +/* */ import java.io.FileNotFoundException; +/* */ import java.io.FileReader; +/* */ import java.io.FileWriter; +/* */ import java.io.IOException; +/* */ import java.io.PrintStream; +/* */ import java.io.PrintWriter; +/* */ import java.text.DateFormat; +/* */ import java.util.Date; +/* */ import java.util.Observer; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ class NewSharedTextArea +/* */ extends GammaTextArea +/* */ implements SharedTextArea +/* */ { +/* */ private static final long serialVersionUID = 6732411958099438561L; +/* */ private static String sharedText; +/* */ private boolean isShared; +/* */ private String unsharedText; +/* 138 */ private String unaddedText = null; +/* */ +/* */ +/* */ private PrintWriter logFile; +/* */ +/* */ private String logFileName; +/* */ +/* */ private static final long oneMeg = 1048576L; +/* */ +/* */ private static final long logLengthLimit = 524288L; +/* */ +/* */ +/* */ public NewSharedTextArea(int rows, int cols, boolean isShared) +/* */ { +/* 152 */ super("", rows, cols, 2); +/* 153 */ this.isShared = isShared; +/* 154 */ setEditable(false); +/* */ } +/* */ +/* */ +/* */ public void finalize() +/* */ { +/* 160 */ disableLogging(); +/* */ } +/* */ +/* */ public Component getComponent() +/* */ { +/* 165 */ return this; +/* */ } +/* */ +/* */ public synchronized void validate() +/* */ { +/* 170 */ super.validate(); +/* 171 */ String text = this.isShared ? sharedText : this.unsharedText; +/* 172 */ if (text != null) +/* */ { +/* */ +/* 175 */ setText(text); +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public synchronized void enableLogging(String fileName, String title, boolean append) +/* */ { +/* 192 */ if (this.logFile != null) +/* */ { +/* 194 */ if (this.logFileName.equals(fileName)) { +/* 195 */ return; +/* */ } +/* 197 */ this.logFile.close(); +/* */ } +/* */ try { +/* 200 */ if ((append) && (new File(fileName).exists())) { +/* 201 */ truncateIfExceeds(fileName, title, 524288L); +/* 202 */ this.logFile = new PrintWriter(new FileWriter(fileName, true)); +/* */ } else { +/* 204 */ this.logFile = new PrintWriter(new FileWriter(fileName, false)); +/* 205 */ obsLogFile.setChanged(true); +/* 206 */ this.logFile.println("<html>"); +/* 207 */ this.logFile.println("<head>"); +/* 208 */ this.logFile.println("<title>" + title + "</title>"); +/* 209 */ this.logFile.println("</head>"); +/* 210 */ this.logFile.println("<body>"); +/* */ } +/* 212 */ this.logFileName = fileName; +/* 213 */ this.logFile.println("<hr>"); +/* 214 */ this.logFile.println("<h3>Conversation of " + +/* 215 */ DateFormat.getDateTimeInstance().format(new Date()) + +/* 216 */ "</h3>"); +/* 217 */ this.logFile.flush(); +/* 218 */ obsLogFile.notifyObservers(this); +/* */ } catch (IOException ex) { +/* 220 */ System.out.println("Log file not opened: " + ex); +/* */ } +/* */ } +/* */ +/* */ +/* 225 */ private static PublicObservable obsLogFile = new PublicObservable(); +/* */ +/* */ +/* */ +/* */ +/* */ public static void addLogObserver(Observer o) +/* */ { +/* 232 */ obsLogFile.addObserver(o); +/* */ } +/* */ +/* */ public static void deleteLogObserver(Observer o) +/* */ { +/* 237 */ obsLogFile.deleteObserver(o); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ private void truncateIfExceeds(String fileName, String title, long lengthLimit) +/* */ { +/* 247 */ File f = new File(fileName); +/* 248 */ if (f.length() > lengthLimit) { +/* 249 */ File tf = new File(fileName + ".temp"); +/* */ +/* */ try +/* */ { +/* 253 */ BufferedReader in = new BufferedReader(new FileReader(f)); +/* 254 */ PrintWriter out = new PrintWriter(new FileWriter(tf)); +/* 255 */ out.println("<html>"); +/* 256 */ out.println("<head>"); +/* 257 */ out.println("<title>" + title + "</title>"); +/* 258 */ out.println("</head>"); +/* 259 */ out.println("<body>"); +/* 260 */ in.skip(f.length() - lengthLimit / 2L); +/* 261 */ String line = in.readLine(); +/* 262 */ line = in.readLine(); +/* 263 */ while (line != null) { +/* 264 */ out.println(line); +/* 265 */ line = in.readLine(); +/* */ } +/* 267 */ in.close(); +/* 268 */ out.close(); +/* */ +/* */ +/* 271 */ f.delete(); +/* 272 */ f = new File(fileName); +/* 273 */ tf.renameTo(f); +/* */ } catch (FileNotFoundException ex) { +/* 275 */ System.out.println("DuplexPart fatal: " + ex); +/* */ } catch (IOException ex) { +/* 277 */ System.out.println("DuplexPart: Unable to write, " + ex); +/* */ } +/* */ } +/* */ } +/* */ +/* */ +/* */ public synchronized void disableLogging() +/* */ { +/* 285 */ if (this.logFile != null) { +/* 286 */ this.logFile.close(); +/* 287 */ this.logFile = null; +/* */ } +/* */ } +/* */ +/* 291 */ private static int autoScrollLimit = IniFile.gamma().getIniInt("AutoScrollLimit", 0); +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public boolean canAddText() +/* */ { +/* 302 */ if (getText().length() < 3) { +/* 303 */ return true; +/* */ } +/* */ +/* */ +/* 307 */ if ((autoScrollLimit > 0) && (autoScrollLimit < this.unaddedText.length())) { +/* 308 */ return true; +/* */ } +/* 310 */ return isLastLineVisible(); +/* */ } +/* */ +/* 313 */ public static int chatLengthLimit = IniFile.gamma().getIniInt("ChatLengthLimit", 20000); +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public synchronized void println(String msg) +/* */ { +/* 323 */ if ((this.logFile != null) && (msg != null)) { +/* 324 */ this.logFile.println(DuplexPart.toHtml(msg) + "<br>"); +/* 325 */ this.logFile.flush(); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* 331 */ if (this.unaddedText == null) { +/* 332 */ this.unaddedText = msg; +/* 333 */ } else if (msg != null) { +/* 334 */ this.unaddedText = (this.unaddedText + "\n" + msg); +/* */ } +/* 336 */ if ((this.unaddedText == null) || (!canAddText())) { +/* 337 */ return; +/* */ } +/* 339 */ if (getText().length() == 0) { +/* 340 */ append(this.unaddedText); +/* */ } else +/* 342 */ append("\n" + this.unaddedText); +/* 343 */ this.unaddedText = null; +/* */ +/* */ +/* 346 */ String text = getText(); +/* 347 */ if (text.length() > chatLengthLimit) { +/* 348 */ int linePos = text.indexOf('\n', chatLengthLimit / 2 - 80); +/* 349 */ if (linePos >= 0) { +/* 350 */ text = text.substring(linePos + 1); +/* */ +/* */ +/* 353 */ linePos = text.lastIndexOf('\n'); +/* 354 */ if (linePos > 0) { +/* 355 */ setText(text.substring(0, linePos)); +/* 356 */ append(text.substring(linePos)); +/* */ } +/* */ } +/* */ } +/* 360 */ if (this.isShared) { +/* 361 */ sharedText = text; +/* */ } else { +/* 363 */ this.unsharedText = text; +/* */ } +/* 365 */ repaint(); +/* */ } +/* */ +/* */ +/* */ public synchronized void scrollToBottom() +/* */ { +/* 371 */ String text = getText(); +/* 372 */ setText(""); +/* 373 */ append(text); +/* 374 */ repaint(); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ protected void processFocusEvent(FocusEvent e) +/* */ { +/* 384 */ super.processFocusEvent(e); +/* */ } +/* */ +/* */ protected void processEvent(AWTEvent e) +/* */ { +/* 389 */ poll(); +/* */ +/* 391 */ super.processEvent(e); +/* */ } +/* */ +/* */ +/* */ public synchronized void poll() +/* */ { +/* 397 */ if (this.unaddedText != null) { +/* 398 */ println(null); +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ public boolean isFocusTraversable() +/* */ { +/* 407 */ return false; +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\NewSharedTextArea.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/NoWebControlException.java b/NET/worlds/console/NoWebControlException.java new file mode 100644 index 0000000..6882c6e --- /dev/null +++ b/NET/worlds/console/NoWebControlException.java @@ -0,0 +1,26 @@ +/* */ package NET.worlds.console; +/* */ +/* */ +/* */ +/* */ public class NoWebControlException +/* */ extends Exception +/* */ { +/* */ private static final long serialVersionUID = 8391822026004106330L; +/* */ +/* */ +/* */ +/* */ NoWebControlException() {} +/* */ +/* */ +/* */ +/* */ NoWebControlException(String s) +/* */ { +/* 18 */ super(s); +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\NoWebControlException.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/OLEInvalidObjectException.java b/NET/worlds/console/OLEInvalidObjectException.java new file mode 100644 index 0000000..35f1419 --- /dev/null +++ b/NET/worlds/console/OLEInvalidObjectException.java @@ -0,0 +1,33 @@ +/* */ package NET.worlds.console; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public class OLEInvalidObjectException +/* */ extends Exception +/* */ { +/* */ private static final long serialVersionUID = -8603974556147263692L; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public OLEInvalidObjectException() {} +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public OLEInvalidObjectException(String msg) +/* */ { +/* 25 */ super(msg); +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\OLEInvalidObjectException.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/OkCancelDialog.java b/NET/worlds/console/OkCancelDialog.java new file mode 100644 index 0000000..3894f9f --- /dev/null +++ b/NET/worlds/console/OkCancelDialog.java @@ -0,0 +1,190 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import java.awt.Button; +/* */ import java.awt.Event; +/* */ import java.awt.Font; +/* */ import java.awt.GridBagConstraints; +/* */ import java.awt.GridBagLayout; +/* */ import java.awt.Window; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public class OkCancelDialog +/* */ extends PolledDialog +/* */ { +/* */ private static final long serialVersionUID = -232374191442133438L; +/* 38 */ protected Button okButton = new Button(Console.message("OK")); +/* 39 */ protected Button cancelButton = new Button(Console.message("Cancel")); +/* 40 */ protected GridBagLayout gbag = new GridBagLayout(); +/* */ +/* */ private String prompt; +/* */ +/* 44 */ protected int cancelKey = 27; +/* 45 */ protected int confirmKey = 10; +/* */ +/* 47 */ protected static Font font = new Font(Console.message("GammaTextFont"), +/* 48 */ 0, 12); +/* 49 */ protected static Font bfont = new Font(Console.message("ButtonFont"), +/* 50 */ 0, 12); +/* */ +/* */ protected OkCancelDialog(Window parent, String title) +/* */ { +/* 54 */ this(parent, (DialogReceiver)parent, title); +/* */ } +/* */ +/* */ protected OkCancelDialog(Window parent, String title, String cancel, String ok) +/* */ { +/* 59 */ this(parent, (DialogReceiver)parent, title, cancel, ok); +/* */ } +/* */ +/* */ protected OkCancelDialog(Window parent, DialogReceiver target, String title) +/* */ { +/* 64 */ this(parent, target, title, true); +/* */ } +/* */ +/* */ protected OkCancelDialog(Window parent, DialogReceiver target, String title, boolean modal) +/* */ { +/* 69 */ super(parent, target, title, modal); +/* 70 */ setLayout(this.gbag); +/* */ } +/* */ +/* */ protected OkCancelDialog(Window parent, DialogReceiver target, String title, String cancel, String ok) +/* */ { +/* 75 */ this(parent, target, title, cancel, ok, true); +/* */ } +/* */ +/* */ protected OkCancelDialog(Window parent, DialogReceiver target, String title, String cancel, String ok, boolean modal) +/* */ { +/* 80 */ this(parent, target, title, modal); +/* 81 */ if (ok != null) { +/* 82 */ this.okButton.setFont(bfont); +/* 83 */ this.okButton.setLabel(ok); +/* */ } else { +/* 85 */ this.okButton = null; +/* */ } +/* 87 */ if (cancel != null) { +/* 88 */ this.cancelButton.setFont(bfont); +/* 89 */ this.cancelButton.setLabel(cancel); +/* */ } else { +/* 91 */ this.cancelButton = null; +/* */ } +/* */ } +/* */ +/* */ public OkCancelDialog(Window parent, DialogReceiver target, String title, String cancel, String ok, String prompt) { +/* 96 */ this(parent, target, title, cancel, ok, prompt, true); +/* */ } +/* */ +/* */ public OkCancelDialog(Window parent, DialogReceiver target, String title, String cancel, String ok, String prompt, boolean modal) +/* */ { +/* 101 */ this(parent, target, title, cancel, ok, modal); +/* 102 */ this.prompt = prompt; +/* 103 */ ready(); +/* */ } +/* */ +/* */ +/* */ public OkCancelDialog(Window parent, DialogReceiver target, String title, String cancel, String ok, String prompt, boolean modal, int alignment) +/* */ { +/* 109 */ this(parent, target, title, cancel, ok, modal); +/* 110 */ this.prompt = prompt; +/* 111 */ setAlignment(alignment); +/* 112 */ ready(); +/* */ } +/* */ +/* */ protected void build() +/* */ { +/* 117 */ GridBagConstraints c = new GridBagConstraints(); +/* 118 */ if (this.prompt != null) { +/* 119 */ c.weightx = 1.0D; +/* 120 */ c.weighty = 1.0D; +/* 121 */ c.gridwidth = 0; +/* 122 */ MultiLineLabel mll = new MultiLineLabel(this.prompt, 5, 5); +/* 123 */ mll.setFont(font); +/* 124 */ add(this.gbag, mll, c); +/* */ } +/* 126 */ int count = 0; +/* 127 */ if (this.okButton != null) +/* 128 */ count++; +/* 129 */ if (this.cancelButton != null) +/* 130 */ count++; +/* 131 */ c.gridwidth = count; +/* 132 */ c.weightx = 1.0D; +/* 133 */ c.weighty = 0.0D; +/* 134 */ if (this.okButton != null) { +/* 135 */ this.okButton.setFont(bfont); +/* 136 */ add(this.gbag, this.okButton, c); +/* */ } +/* 138 */ if (this.cancelButton != null) { +/* 139 */ this.cancelButton.setFont(bfont); +/* 140 */ add(this.gbag, this.cancelButton, c); +/* */ } +/* */ } +/* */ +/* */ @Deprecated +/* */ public boolean action(Event event, Object what) +/* */ { +/* 147 */ Object target = event.target; +/* 148 */ if ((target == this.okButton) && (setValue())) +/* 149 */ return done(true); +/* 150 */ if (target == this.cancelButton) +/* 151 */ return done(false); +/* 152 */ return false; +/* */ } +/* */ +/* */ protected boolean setValue() { +/* 156 */ return true; +/* */ } +/* */ +/* */ public void setCancelKey(int key) { +/* 160 */ this.cancelKey = key; +/* */ } +/* */ +/* */ public void setConfirmKey(int key) { +/* 164 */ this.confirmKey = key; +/* */ } +/* */ +/* */ @Deprecated +/* */ public boolean keyDown(Event event, int key) +/* */ { +/* 170 */ if (key == this.cancelKey) +/* 171 */ return done(false); +/* 172 */ if (key == this.confirmKey) +/* */ { +/* */ +/* */ +/* 176 */ if (this.okButton != null) { +/* 177 */ if (setValue()) +/* 178 */ return done(true); +/* */ } else +/* 180 */ return done(false); +/* */ } +/* 182 */ return super.keyDown(event, key); +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\OkCancelDialog.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/Overlay.java b/NET/worlds/console/Overlay.java new file mode 100644 index 0000000..f56229a --- /dev/null +++ b/NET/worlds/console/Overlay.java @@ -0,0 +1,248 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import java.awt.Component; +/* */ import java.awt.Dimension; +/* */ import java.awt.Graphics; +/* */ import java.awt.Image; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ class Overlay +/* */ { +/* */ private String name; +/* */ private int x; +/* */ private int y; +/* */ private Image image; +/* */ private Dimension dim; +/* */ +/* */ public Overlay(String name, int x, int y) +/* */ { +/* 209 */ this.name = name; +/* 210 */ this.x = x; +/* 211 */ this.y = y; +/* 212 */ this.image = null; +/* */ } +/* */ +/* */ public void paint(Graphics g, Component c) { +/* 216 */ if (this.image != null) +/* 217 */ g.drawImage(this.image, this.x, this.y, c); +/* */ } +/* */ +/* */ public Dimension imageSize(Component c) { +/* 221 */ if (this.image == null) { +/* 222 */ this.image = SplashCanvas.getEarlyImage(this.name, c); +/* 223 */ if (this.image != null) { +/* 224 */ int width = this.image.getWidth(c); +/* 225 */ int height = this.image.getHeight(c); +/* 226 */ if ((width != -1) && (height != -1)) +/* 227 */ return this.dim = new Dimension(width, height); +/* */ } +/* 229 */ this.dim = new Dimension(0, 0); +/* */ } +/* 231 */ return this.dim; +/* */ } +/* */ +/* */ public boolean matches(String name, int x, int y) { +/* 235 */ return (x == this.x) && (y == this.y) && (name.equals(this.name)); +/* */ } +/* */ +/* */ public void flush() { +/* 239 */ this.image.flush(); +/* 240 */ this.image = null; +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\Overlay.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/PersonalInfoDialog.java b/NET/worlds/console/PersonalInfoDialog.java new file mode 100644 index 0000000..cdee597 --- /dev/null +++ b/NET/worlds/console/PersonalInfoDialog.java @@ -0,0 +1,1950 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import java.awt.Button; +/* */ import java.awt.Event; +/* */ import java.awt.Font; +/* */ import java.awt.GridBagConstraints; +/* */ import java.awt.GridBagLayout; +/* */ import java.awt.Label; +/* */ import java.awt.TextArea; +/* */ import java.util.StringTokenizer; +/* */ import java.util.Vector; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ class PersonalInfoDialog +/* */ extends PolledDialog +/* */ { +/* */ private static final long serialVersionUID = 1200424099007473332L; +/* */ private Vector<String> info; +/* 1836 */ private Button okButton = new Button(Console.message("OK")); +/* 1837 */ private static Font font = new Font(Console.message("MenuFont"), +/* 1838 */ 0, 12); +/* 1839 */ private static Font bfont = new Font(Console.message("ButtonFont"), +/* 1840 */ 0, 12); +/* */ +/* */ public PersonalInfoDialog(String name, Vector<String> info) +/* */ { +/* 1844 */ super(Console.getFrame(), null, Console.message("Personal-Info") + name, false); +/* 1845 */ this.info = info; +/* 1846 */ ready(); +/* */ } +/* */ +/* */ protected void build() +/* */ { +/* 1851 */ GridBagLayout gbag = new GridBagLayout(); +/* 1852 */ setLayout(gbag); +/* 1853 */ GridBagConstraints c = new GridBagConstraints(); +/* */ try { +/* 1855 */ int count = this.info.size(); +/* 1856 */ for (int i = 0; i < count;) { +/* 1857 */ StringTokenizer tok = new StringTokenizer( +/* 1858 */ (String)this.info.elementAt(i++), ":"); +/* 1859 */ String heading = tok.nextToken(); +/* 1860 */ c.gridwidth = -1; +/* 1861 */ c.gridheight = 1; +/* 1862 */ c.fill = 1; +/* 1863 */ Label lHead = new Label(heading, 1); +/* 1864 */ lHead.setFont(font); +/* 1865 */ add(gbag, lHead, c); +/* 1866 */ int totalLines = Integer.parseInt(tok.nextToken()); +/* 1867 */ int displayLines = Math.max(Math.min(3, totalLines), 1); +/* 1868 */ int maxLine = 0; +/* 1869 */ for (int j = 0; j < totalLines; j++) +/* 1870 */ maxLine = Math.max(maxLine, +/* 1871 */ ((String)this.info.elementAt(i + j)).length()); +/* 1872 */ int scrollFlags = 3; +/* 1873 */ if (maxLine > 40) { +/* 1874 */ displayLines++; +/* 1875 */ if (totalLines > displayLines) { +/* 1876 */ scrollFlags = 0; +/* */ } else +/* 1878 */ scrollFlags = 2; +/* 1879 */ } else if (totalLines > displayLines) { +/* 1880 */ scrollFlags = 1; } +/* 1881 */ TextArea t = new TextArea("", displayLines, 40, scrollFlags); +/* 1882 */ t.setFont(font); +/* 1883 */ for (int j = 0; j < totalLines; j++) { +/* 1884 */ if (j > 0) +/* 1885 */ t.append("\n"); +/* 1886 */ t.append((String)this.info.elementAt(i++)); +/* */ } +/* */ +/* 1889 */ c.fill = 0; +/* 1890 */ c.gridwidth = 0; +/* 1891 */ c.gridheight = displayLines; +/* 1892 */ t.setEditable(false); +/* 1893 */ add(gbag, t, c); +/* */ } +/* */ } catch (Exception e) { +/* 1896 */ removeAll(); +/* 1897 */ c.fill = 0; +/* 1898 */ c.gridwidth = 0; +/* 1899 */ c.gridheight = 1; +/* 1900 */ Label lFormat = new Label(Console.message("Format-error")); +/* 1901 */ lFormat.setFont(font); +/* 1902 */ add(gbag, lFormat, c); +/* */ } +/* 1904 */ c.fill = 0; +/* 1905 */ c.gridwidth = 0; +/* 1906 */ c.gridheight = 1; +/* 1907 */ this.okButton.setFont(bfont); +/* 1908 */ add(gbag, this.okButton, c); +/* */ } +/* */ +/* */ @Deprecated +/* */ public boolean action(Event event, Object what) +/* */ { +/* 1914 */ if (event.target == this.okButton) { +/* 1915 */ this.info.clear(); +/* 1916 */ this.info = null; +/* 1917 */ return done(false); } +/* 1918 */ if (event.id == 201) { +/* 1919 */ this.info.clear(); +/* 1920 */ this.info = null; +/* 1921 */ return done(false); +/* */ } +/* */ +/* 1924 */ return super.handleEvent(event); +/* */ } +/* */ +/* */ @Deprecated +/* */ public boolean keyDown(Event event, int key) +/* */ { +/* 1930 */ if ((key == 27) || (key == 10)) +/* 1931 */ return done(false); +/* 1932 */ return super.keyDown(event, key); +/* */ } +/* */ +/* */ +/* */ +/* */ public void setVisible(boolean visible) +/* */ { +/* 1939 */ super.setVisible(visible); +/* 1940 */ if (visible) { +/* 1941 */ this.okButton.requestFocus(); +/* */ } +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\PersonalInfoDialog.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/PersonalInfoDownload.java b/NET/worlds/console/PersonalInfoDownload.java new file mode 100644 index 0000000..5143b2f --- /dev/null +++ b/NET/worlds/console/PersonalInfoDownload.java @@ -0,0 +1,1986 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import NET.worlds.network.Cache; +/* */ import NET.worlds.network.CacheFile; +/* */ import NET.worlds.network.URL; +/* */ import java.awt.Font; +/* */ import java.awt.GridBagConstraints; +/* */ import java.awt.Label; +/* */ import java.text.MessageFormat; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ class PersonalInfoDownload +/* */ extends OkCancelDialog +/* */ implements Runnable +/* */ { +/* */ private static final long serialVersionUID = -198244581766521022L; +/* */ private String name; +/* */ private CacheFile cf; +/* 1747 */ private static Font font = new Font(Console.message("MenuFont"), +/* 1748 */ 0, 12); +/* */ +/* */ public PersonalInfoDownload(String name, Console console) +/* */ { +/* 1752 */ super(Console.getFrame(), null, Console.message("Downloading2"), Console.message("Cancel"), null, false); +/* 1753 */ this.name = name; +/* */ +/* 1755 */ String cfS = console.getScriptServer() + "profile" + +/* 1756 */ Console.message(".pl") + "?" + name; +/* */ +/* 1758 */ this.cf = Cache.getFile(URL.make(cfS), true); +/* 1759 */ this.cf.load(); +/* */ +/* 1761 */ if (Console.wasHttpNoSuchFile(cfS)) { +/* 1762 */ this.cf = Cache.getFile(URL.make(console.getScriptServer() + +/* 1763 */ "profile.pl?" + name)); +/* */ } +/* 1765 */ setFont(new Font(Console.message("FriendsFont"), 0, 12)); +/* 1766 */ Thread t = new Thread(this); +/* 1767 */ t.setDaemon(true); +/* 1768 */ t.start(); +/* */ } +/* */ +/* */ protected void build() +/* */ { +/* 1773 */ GridBagConstraints c = new GridBagConstraints(); +/* 1774 */ c.weightx = 1.0D; +/* 1775 */ c.weighty = 1.0D; +/* 1776 */ c.gridwidth = 0; +/* 1777 */ Object[] arguments = { new String(this.name) }; +/* 1778 */ Label lDown = new Label(MessageFormat.format( +/* 1779 */ Console.message("Downloading"), arguments)); +/* 1780 */ lDown.setFont(font); +/* 1781 */ add(this.gbag, lDown, c); +/* 1782 */ Label lWait = new Label(Console.message("Please-wait")); +/* 1783 */ lWait.setFont(font); +/* 1784 */ add(this.gbag, lWait, c); +/* 1785 */ super.build(); +/* */ } +/* */ +/* */ /* Error */ +/* */ public void run() +/* */ { +/* */ // Byte code: +/* */ // 0: aload_0 +/* */ // 1: invokevirtual 186 NET/worlds/console/PersonalInfoDownload:readySetGo ()V +/* */ // 4: aload_0 +/* */ // 5: getfield 93 NET/worlds/console/PersonalInfoDownload:cf LNET/worlds/network/CacheFile; +/* */ // 8: invokevirtual 189 NET/worlds/network/CacheFile:waitUntilLoaded ()V +/* */ // 11: aload_0 +/* */ // 12: getfield 93 NET/worlds/console/PersonalInfoDownload:cf LNET/worlds/network/CacheFile; +/* */ // 15: invokevirtual 192 NET/worlds/network/CacheFile:isActive ()Z +/* */ // 18: ifne +4 -> 22 +/* */ // 21: return +/* */ // 22: aload_0 +/* */ // 23: iconst_1 +/* */ // 24: invokevirtual 196 NET/worlds/console/PersonalInfoDownload:done (Z)Z +/* */ // 27: pop +/* */ // 28: aload_0 +/* */ // 29: getfield 93 NET/worlds/console/PersonalInfoDownload:cf LNET/worlds/network/CacheFile; +/* */ // 32: invokevirtual 200 NET/worlds/network/CacheFile:error ()Z +/* */ // 35: ifeq +81 -> 116 +/* */ // 38: iconst_1 +/* */ // 39: anewarray 151 java/lang/Object +/* */ // 42: dup +/* */ // 43: iconst_0 +/* */ // 44: new 60 java/lang/String +/* */ // 47: dup +/* */ // 48: aload_0 +/* */ // 49: getfield 51 NET/worlds/console/PersonalInfoDownload:name Ljava/lang/String; +/* */ // 52: invokespecial 153 java/lang/String:<init> (Ljava/lang/String;)V +/* */ // 55: aastore +/* */ // 56: astore_1 +/* */ // 57: new 3 NET/worlds/console/OkCancelDialog +/* */ // 60: invokestatic 40 NET/worlds/console/Console:getFrame ()LNET/worlds/console/GammaFrame; +/* */ // 63: aconst_null +/* */ // 64: ldc -53 +/* */ // 66: invokestatic 25 NET/worlds/console/Console:message (Ljava/lang/String;)Ljava/lang/String; +/* */ // 69: aconst_null +/* */ // 70: ldc -51 +/* */ // 72: invokestatic 25 NET/worlds/console/Console:message (Ljava/lang/String;)Ljava/lang/String; +/* */ // 75: ldc -49 +/* */ // 77: invokestatic 25 NET/worlds/console/Console:message (Ljava/lang/String;)Ljava/lang/String; +/* */ // 80: aload_1 +/* */ // 81: invokestatic 158 java/text/MessageFormat:format (Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String; +/* */ // 84: iconst_0 +/* */ // 85: invokespecial 209 NET/worlds/console/OkCancelDialog:<init> (Ljava/awt/Window;LNET/worlds/console/DialogReceiver;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Z)V +/* */ // 88: getstatic 212 java/lang/System:out Ljava/io/PrintStream; +/* */ // 91: new 53 java/lang/StringBuilder +/* */ // 94: dup +/* */ // 95: ldc -38 +/* */ // 97: invokespecial 65 java/lang/StringBuilder:<init> (Ljava/lang/String;)V +/* */ // 100: aload_0 +/* */ // 101: getfield 51 NET/worlds/console/PersonalInfoDownload:name Ljava/lang/String; +/* */ // 104: invokevirtual 70 java/lang/StringBuilder:append (Ljava/lang/String;)Ljava/lang/StringBuilder; +/* */ // 107: invokevirtual 78 java/lang/StringBuilder:toString ()Ljava/lang/String; +/* */ // 110: invokevirtual 220 java/io/PrintStream:println (Ljava/lang/String;)V +/* */ // 113: goto +131 -> 244 +/* */ // 116: new 225 java/util/Vector +/* */ // 119: dup +/* */ // 120: invokespecial 227 java/util/Vector:<init> ()V +/* */ // 123: astore_1 +/* */ // 124: aconst_null +/* */ // 125: astore_2 +/* */ // 126: new 228 java/io/DataInputStream +/* */ // 129: dup +/* */ // 130: new 230 java/io/FileInputStream +/* */ // 133: dup +/* */ // 134: aload_0 +/* */ // 135: getfield 93 NET/worlds/console/PersonalInfoDownload:cf LNET/worlds/network/CacheFile; +/* */ // 138: invokevirtual 232 NET/worlds/network/CacheFile:getLocalName ()Ljava/lang/String; +/* */ // 141: invokespecial 235 java/io/FileInputStream:<init> (Ljava/lang/String;)V +/* */ // 144: invokespecial 236 java/io/DataInputStream:<init> (Ljava/io/InputStream;)V +/* */ // 147: astore_2 +/* */ // 148: goto +8 -> 156 +/* */ // 151: aload_1 +/* */ // 152: aload_3 +/* */ // 153: invokevirtual 239 java/util/Vector:addElement (Ljava/lang/Object;)V +/* */ // 156: aload_2 +/* */ // 157: invokevirtual 243 java/io/DataInputStream:readLine ()Ljava/lang/String; +/* */ // 160: dup +/* */ // 161: astore_3 +/* */ // 162: ifnonnull -11 -> 151 +/* */ // 165: new 246 NET/worlds/console/PersonalInfoDialog +/* */ // 168: aload_0 +/* */ // 169: getfield 51 NET/worlds/console/PersonalInfoDownload:name Ljava/lang/String; +/* */ // 172: aload_1 +/* */ // 173: invokespecial 248 NET/worlds/console/PersonalInfoDialog:<init> (Ljava/lang/String;Ljava/util/Vector;)V +/* */ // 176: goto +55 -> 231 +/* */ // 179: astore_3 +/* */ // 180: aload_2 +/* */ // 181: ifnull +63 -> 244 +/* */ // 184: aload_2 +/* */ // 185: invokevirtual 251 java/io/DataInputStream:close ()V +/* */ // 188: goto +56 -> 244 +/* */ // 191: astore 5 +/* */ // 193: goto +51 -> 244 +/* */ // 196: astore_3 +/* */ // 197: aload_2 +/* */ // 198: ifnull +46 -> 244 +/* */ // 201: aload_2 +/* */ // 202: invokevirtual 251 java/io/DataInputStream:close ()V +/* */ // 205: goto +39 -> 244 +/* */ // 208: astore 5 +/* */ // 210: goto +34 -> 244 +/* */ // 213: astore 4 +/* */ // 215: aload_2 +/* */ // 216: ifnull +12 -> 228 +/* */ // 219: aload_2 +/* */ // 220: invokevirtual 251 java/io/DataInputStream:close ()V +/* */ // 223: goto +5 -> 228 +/* */ // 226: astore 5 +/* */ // 228: aload 4 +/* */ // 230: athrow +/* */ // 231: aload_2 +/* */ // 232: ifnull +12 -> 244 +/* */ // 235: aload_2 +/* */ // 236: invokevirtual 251 java/io/DataInputStream:close ()V +/* */ // 239: goto +5 -> 244 +/* */ // 242: astore 5 +/* */ // 244: aload_0 +/* */ // 245: getfield 93 NET/worlds/console/PersonalInfoDownload:cf LNET/worlds/network/CacheFile; +/* */ // 248: invokevirtual 254 NET/worlds/network/CacheFile:close ()V +/* */ // 251: return +/* */ // Line number table: +/* */ // Java source line #1791 -> byte code offset #0 +/* */ // Java source line #1793 -> byte code offset #4 +/* */ // Java source line #1795 -> byte code offset #11 +/* */ // Java source line #1796 -> byte code offset #21 +/* */ // Java source line #1798 -> byte code offset #22 +/* */ // Java source line #1799 -> byte code offset #28 +/* */ // Java source line #1800 -> byte code offset #38 +/* */ // Java source line #1801 -> byte code offset #57 +/* */ // Java source line #1802 -> byte code offset #64 +/* */ // Java source line #1803 -> byte code offset #75 +/* */ // Java source line #1804 -> byte code offset #80 +/* */ // Java source line #1803 -> byte code offset #81 +/* */ // Java source line #1804 -> byte code offset #84 +/* */ // Java source line #1801 -> byte code offset #85 +/* */ // Java source line #1805 -> byte code offset #88 +/* */ // Java source line #1806 -> byte code offset #113 +/* */ // Java source line #1807 -> byte code offset #116 +/* */ // Java source line #1808 -> byte code offset #124 +/* */ // Java source line #1810 -> byte code offset #126 +/* */ // Java source line #1812 -> byte code offset #148 +/* */ // Java source line #1813 -> byte code offset #151 +/* */ // Java source line #1812 -> byte code offset #156 +/* */ // Java source line #1814 -> byte code offset #165 +/* */ // Java source line #1815 -> byte code offset #176 +/* */ // Java source line #1819 -> byte code offset #180 +/* */ // Java source line #1820 -> byte code offset #184 +/* */ // Java source line #1821 -> byte code offset #188 +/* */ // Java source line #1816 -> byte code offset #196 +/* */ // Java source line #1819 -> byte code offset #197 +/* */ // Java source line #1820 -> byte code offset #201 +/* */ // Java source line #1821 -> byte code offset #205 +/* */ // Java source line #1817 -> byte code offset #213 +/* */ // Java source line #1819 -> byte code offset #215 +/* */ // Java source line #1820 -> byte code offset #219 +/* */ // Java source line #1821 -> byte code offset #223 +/* */ // Java source line #1823 -> byte code offset #228 +/* */ // Java source line #1819 -> byte code offset #231 +/* */ // Java source line #1820 -> byte code offset #235 +/* */ // Java source line #1821 -> byte code offset #239 +/* */ // Java source line #1826 -> byte code offset #244 +/* */ // Java source line #1827 -> byte code offset #251 +/* */ // Local variable table: +/* */ // start length slot name signature +/* */ // 0 252 0 this PersonalInfoDownload +/* */ // 56 25 1 arguments Object[] +/* */ // 123 50 1 data java.util.Vector<String> +/* */ // 125 111 2 in java.io.DataInputStream +/* */ // 151 2 3 line String +/* */ // 161 2 3 line String +/* */ // 179 1 3 localFileNotFoundException java.io.FileNotFoundException +/* */ // 196 1 3 localIOException1 java.io.IOException +/* */ // 213 16 4 localObject Object +/* */ // 191 1 5 localIOException java.io.IOException +/* */ // 208 1 5 localIOException2 java.io.IOException +/* */ // 226 1 5 localIOException3 java.io.IOException +/* */ // 242 1 5 localIOException4 java.io.IOException +/* */ // Exception table: +/* */ // from to target type +/* */ // 126 176 179 java/io/FileNotFoundException +/* */ // 180 188 191 java/io/IOException +/* */ // 126 176 196 java/io/IOException +/* */ // 197 205 208 java/io/IOException +/* */ // 126 180 213 finally +/* */ // 196 197 213 finally +/* */ // 215 223 226 java/io/IOException +/* */ // 231 239 242 java/io/IOException +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\PersonalInfoDownload.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/PolledDialog.java b/NET/worlds/console/PolledDialog.java new file mode 100644 index 0000000..6fe68bd --- /dev/null +++ b/NET/worlds/console/PolledDialog.java @@ -0,0 +1,402 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import java.awt.Component; +/* */ import java.awt.Container; +/* */ import java.awt.Dialog; +/* */ import java.awt.Dimension; +/* */ import java.awt.Event; +/* */ import java.awt.Frame; +/* */ import java.awt.GridBagConstraints; +/* */ import java.awt.GridBagLayout; +/* */ import java.awt.Point; +/* */ import java.awt.Toolkit; +/* */ import java.io.PrintStream; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public abstract class PolledDialog +/* */ extends Dialog +/* */ implements MainCallback, DialogDisabled +/* */ { +/* */ private static final long serialVersionUID = -2608298148446880055L; +/* */ public static final int CENTER = 0; +/* */ public static final int BOTTOM = 1; +/* */ public static final int RIGHT = 2; +/* */ public static final int LEFT = 3; +/* */ private boolean active; +/* */ private boolean built; +/* */ private boolean restarting; +/* */ private boolean confirmed; +/* */ private boolean killed; +/* */ private boolean disableParent; +/* */ private boolean toBeDisposed; +/* */ private java.awt.Window parent; +/* */ private DialogReceiver receiver; +/* 89 */ private int alignment = 0; +/* 90 */ private Point initialOffset = new Point(0, 0); +/* */ +/* */ +/* */ private Object startupWaiter; +/* */ +/* */ private boolean started; +/* */ +/* */ +/* */ protected PolledDialog(java.awt.Window parent, DialogReceiver receiver, String title, boolean disableParent) +/* */ { +/* 100 */ super(findFrame(parent), title, false); +/* 101 */ this.parent = parent; +/* 102 */ this.receiver = receiver; +/* */ +/* */ +/* */ +/* */ +/* 107 */ if (disableParent) { +/* 108 */ disableParent(); +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ protected void disableParent() +/* */ { +/* 116 */ this.disableParent = (this.parent instanceof DialogDisabled); +/* */ +/* 118 */ if (this.disableParent) { +/* 119 */ ((DialogDisabled)this.parent).dialogDisable(true); +/* */ } +/* */ } +/* */ +/* */ protected void ready() { +/* 124 */ this.killed = false; +/* 125 */ if ((this.built) && (!this.active)) +/* 126 */ this.restarting = true; +/* 127 */ Main.register(this); +/* 128 */ setResizable(true); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ protected void readySetGo() +/* */ { +/* 136 */ this.startupWaiter = new Object(); +/* 137 */ this.started = false; +/* 138 */ synchronized (this.startupWaiter) { +/* 139 */ ready(); +/* 140 */ while (!this.started) { +/* */ try { +/* 142 */ this.startupWaiter.wait(); +/* */ } +/* */ catch (InterruptedException localInterruptedException) {} +/* */ } +/* */ } +/* 147 */ this.startupWaiter = null; +/* 148 */ this.started = false; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ protected void setAlignment(int alignment) +/* */ { +/* 158 */ setAlignment(alignment, 0, 0); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ protected void setAlignment(int alignment, int offsetX, int offsetY) +/* */ { +/* 172 */ this.alignment = alignment; +/* 173 */ this.initialOffset.x = offsetX; +/* 174 */ this.initialOffset.y = offsetY; +/* */ } +/* */ +/* */ private static Frame findFrame(Container container) { +/* 178 */ while ((!(container instanceof Frame)) && (container != null)) +/* 179 */ container = container.getParent(); +/* 180 */ return (Frame)container; +/* */ } +/* */ +/* */ protected abstract void build(); +/* */ +/* */ public final synchronized void mainCallback() +/* */ { +/* 187 */ if (!this.killed) { +/* 188 */ if (!this.built) { +/* */ try { +/* 190 */ build(); +/* 191 */ pack(); +/* 192 */ restoreFrame(); +/* 193 */ position(); +/* 194 */ setVisible(true); +/* 195 */ this.built = true; +/* 196 */ this.active = true; +/* */ } catch (Exception e) { +/* 198 */ System.out.println("Caught exception building dialog " + +/* 199 */ toString() + " " + e.getMessage()); +/* */ } +/* 201 */ } else if (this.restarting) { +/* 202 */ restoreFrame(); +/* 203 */ setVisible(true); +/* 204 */ this.restarting = false; +/* 205 */ this.active = true; +/* */ } +/* */ } +/* */ +/* */ +/* 210 */ if ((this.killed) || (!this.active)) { +/* 211 */ if (this.toBeDisposed) +/* */ { +/* */ +/* 214 */ setVisible(false); +/* */ +/* */ +/* 217 */ this.parent.requestFocus(); +/* */ +/* */ +/* 220 */ if (!isDisplayable()) { +/* 221 */ dispose(); +/* */ } +/* 223 */ this.toBeDisposed = false; +/* */ } +/* 225 */ Main.unregister(this); +/* */ +/* */ +/* 228 */ if (this.receiver != null) +/* 229 */ this.receiver.dialogDone(this, this.confirmed); +/* */ } else { +/* 231 */ activeCallback(); +/* */ } +/* */ } +/* */ +/* */ protected void activeCallback() {} +/* */ +/* */ private void restoreFrame() +/* */ { +/* 239 */ int handle = Window.getFrameHandle(); +/* 240 */ if ((handle != 0) && (Window.getWindowState(handle) == 1)) { +/* 241 */ Window.setWindowState(handle, 0); +/* */ } +/* */ } +/* */ +/* */ +/* */ public void setVisible(boolean visible) +/* */ { +/* */ try +/* */ { +/* 250 */ super.setVisible(visible); +/* */ } catch (Exception e) { +/* 252 */ System.out.println("Caught exception in PolledDialog::setVisible: " + +/* 253 */ e.getMessage()); +/* */ } +/* */ +/* 256 */ if ((visible) && (this.startupWaiter != null)) { +/* 257 */ synchronized (this.startupWaiter) { +/* 258 */ this.started = true; +/* 259 */ this.startupWaiter.notify(); +/* */ } +/* */ } +/* */ } +/* */ +/* */ public void closeIt(boolean state) { +/* 265 */ done(state); +/* */ } +/* */ +/* */ protected synchronized boolean done(boolean confirmed) +/* */ { +/* 270 */ if ((!this.killed) && (this.disableParent)) { +/* 271 */ ((DialogDisabled)this.parent).dialogDisable(false); +/* */ } +/* 273 */ this.killed = true; +/* */ +/* */ +/* */ +/* */ +/* 278 */ this.toBeDisposed = true; +/* */ +/* 280 */ if (this.active) +/* */ { +/* 282 */ savePosAndSize(new PolledDialogSaver(this)); +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* 291 */ this.active = false; +/* */ } +/* 293 */ this.confirmed = confirmed; +/* 294 */ return true; +/* */ } +/* */ +/* */ public boolean isActive() +/* */ { +/* 299 */ return this.active; +/* */ } +/* */ +/* */ protected void add(GridBagLayout gbag, Component comp, GridBagConstraints c) { +/* 303 */ if ((comp != null) && (c != null)) { +/* 304 */ gbag.setConstraints(comp, c); +/* 305 */ add(comp); +/* */ } +/* */ else { +/* 308 */ System.out.println("Bad parameter passed to PolledDialog::add, how bizarre."); +/* */ } +/* */ } +/* */ +/* */ +/* */ @Deprecated +/* */ public boolean handleEvent(Event event) +/* */ { +/* 316 */ if (event.id == 201) { +/* 317 */ return done(false); +/* */ } +/* */ +/* 320 */ if ((event.id == 401) || (event.id == 501)) +/* 321 */ Console.wake(); +/* 322 */ return super.handleEvent(event); +/* */ } +/* */ +/* */ public void dialogDisable(boolean disable) { +/* 326 */ setVisible(!disable); +/* */ } +/* */ +/* */ public boolean getConfirmed() +/* */ { +/* 331 */ return this.confirmed; +/* */ } +/* */ +/* */ protected void position() { +/* 335 */ Dimension mySize = getSize(); +/* 336 */ initialSize(mySize.width, mySize.height); +/* */ } +/* */ +/* */ +/* */ protected void initialSize(int width, int height) +/* */ { +/* 342 */ if (!PolledDialogSaver.restorePosAndSize(restorePosAndSize(), this)) { +/* 343 */ Point loc = this.parent.getLocation(); +/* 344 */ Dimension size = null; +/* 345 */ if ((this.parent instanceof Frame)) +/* */ { +/* 347 */ int hwnd = Window.getFrameHandle(); +/* 348 */ if (hwnd != 0) { +/* 349 */ size = new Dimension( +/* 350 */ Window.getWindowWidth(hwnd), +/* 351 */ Window.getWindowHeight(hwnd)); +/* */ } +/* */ } +/* 354 */ if (size == null) +/* 355 */ size = this.parent.getSize(); +/* */ int x; +/* */ int x; +/* 358 */ if (this.alignment == 2) { +/* 359 */ x = loc.x + this.initialOffset.x + size.width; } else { int x; +/* 360 */ if (this.alignment == 3) { +/* 361 */ x = loc.x + this.initialOffset.x - width; +/* */ } else +/* 363 */ x = loc.x + this.initialOffset.x + (size.width - width) / 2; } +/* */ int y; +/* */ int y; +/* 366 */ if (this.alignment == 1) { +/* 367 */ y = loc.y + this.initialOffset.y + size.height - height; +/* */ } +/* */ else { +/* 370 */ y = loc.y + this.initialOffset.y + (size.height - height) / 2; +/* */ } +/* 372 */ Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize(); +/* 373 */ if (y + height > screenSize.height) +/* 374 */ y = screenSize.height - height; +/* 375 */ if (y < 0) +/* 376 */ y = 0; +/* 377 */ if (x + width > screenSize.width) +/* 378 */ x = screenSize.width - width; +/* 379 */ if (x < 0) { +/* 380 */ x = 0; +/* */ } +/* 382 */ setBounds(x, y, width, height); +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ public void savePosAndSize(Object o) {} +/* */ +/* */ +/* */ +/* */ public Object restorePosAndSize() +/* */ { +/* 394 */ return null; +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\PolledDialog.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/PolledDialogSaver.java b/NET/worlds/console/PolledDialogSaver.java new file mode 100644 index 0000000..12ad0e1 --- /dev/null +++ b/NET/worlds/console/PolledDialogSaver.java @@ -0,0 +1,424 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import java.awt.Dialog; +/* */ import java.awt.Dimension; +/* */ import java.awt.Point; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ class PolledDialogSaver +/* */ { +/* */ int x; +/* */ int y; +/* */ int w; +/* */ int h; +/* */ +/* */ PolledDialogSaver(Dialog dbox) +/* */ { +/* 402 */ Point loc = dbox.getLocation(); +/* 403 */ Dimension size = dbox.getSize(); +/* 404 */ this.x = loc.x; +/* 405 */ this.y = loc.y; +/* 406 */ this.w = size.width; +/* 407 */ this.h = size.height; +/* */ } +/* */ +/* */ static boolean restorePosAndSize(Object o, PolledDialog d) { +/* 411 */ if (o != null) { +/* 412 */ PolledDialogSaver t = (PolledDialogSaver)o; +/* 413 */ d.setBounds(t.x, t.y, t.w, t.h); +/* 414 */ return true; +/* */ } +/* 416 */ return false; +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\PolledDialogSaver.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/ProgressBar.java b/NET/worlds/console/ProgressBar.java new file mode 100644 index 0000000..b8a458f --- /dev/null +++ b/NET/worlds/console/ProgressBar.java @@ -0,0 +1,227 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import NET.worlds.network.CacheEntry; +/* */ import java.awt.Button; +/* */ import java.awt.Canvas; +/* */ import java.awt.Color; +/* */ import java.awt.Event; +/* */ import java.awt.Font; +/* */ import java.awt.FontMetrics; +/* */ import java.awt.Frame; +/* */ import java.awt.Graphics; +/* */ import java.awt.GridLayout; +/* */ import java.awt.Image; +/* */ import java.awt.Label; +/* */ import java.awt.Panel; +/* */ import java.awt.TextField; +/* */ import java.awt.event.ActionEvent; +/* */ import java.awt.event.ActionListener; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public class ProgressBar +/* */ extends Frame +/* */ implements ActionListener +/* */ { +/* */ private static final long serialVersionUID = -5057984821909220829L; +/* */ private int _total; +/* 44 */ private int _current = 0; +/* */ +/* */ +/* 47 */ private boolean _offline = false; +/* */ +/* */ +/* */ +/* */ private Canvas _barCanvas; +/* */ +/* */ +/* */ +/* */ private Label _header; +/* */ +/* */ +/* */ +/* */ private TextField _message; +/* */ +/* */ +/* */ +/* */ private Button _offlineButton; +/* */ +/* */ +/* */ +/* */ private static final int BAR_WIDTH = 250; +/* */ +/* */ +/* */ +/* */ private static final int BAR_HEIGHT = 20; +/* */ +/* */ +/* */ +/* */ private static final int BORDER = 10; +/* */ +/* */ +/* */ +/* */ public ProgressBar(String header, int total) +/* */ { +/* 81 */ this._header = new Label(header); +/* 82 */ this._total = total; +/* 83 */ if (this._total < 1) +/* 84 */ this._total = 1; +/* 85 */ build(); +/* 86 */ setTitle("Loading Progress"); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public void advance() +/* */ { +/* 95 */ this._current += 1; +/* 96 */ if (this._current > this._total) +/* 97 */ this._current = this._total; +/* 98 */ paintBar(); +/* */ } +/* */ +/* */ public int current() +/* */ { +/* 103 */ return this._current; +/* */ } +/* */ +/* */ public int total() +/* */ { +/* 108 */ return this._total; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ public int percentComplete() +/* */ { +/* 116 */ return this._current * 100 / this._total; +/* */ } +/* */ +/* */ public boolean offline() +/* */ { +/* 121 */ return this._offline; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ public void setMessage(String m) +/* */ { +/* 129 */ this._message.setText(m); +/* 130 */ update(getGraphics()); +/* */ } +/* */ +/* */ protected int pixelsComplete() +/* */ { +/* 135 */ return this._current * 250 / this._total; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ protected void build() +/* */ { +/* 144 */ setLayout(new GridLayout(3, 1, 10, 0)); +/* 145 */ this._barCanvas = new Canvas(); +/* 146 */ this._barCanvas.setSize(270, 40); +/* 147 */ add(this._barCanvas); +/* */ +/* 149 */ this._message = new TextField("Working..."); +/* 150 */ this._message.setEditable(false); +/* 151 */ add(this._message); +/* */ +/* */ +/* */ +/* 155 */ Panel buttonPanel = new Panel(); +/* 156 */ this._offlineButton = new Button("Go Offline"); +/* 157 */ this._offlineButton.addActionListener(this); +/* 158 */ buttonPanel.add(this._offlineButton); +/* 159 */ add(buttonPanel); +/* */ +/* 161 */ pack(); +/* */ } +/* */ +/* */ +/* */ public void paint(Graphics g) +/* */ { +/* 167 */ paintBar(); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public void actionPerformed(ActionEvent ae) +/* */ { +/* 176 */ if (ae.getSource() == this._offlineButton) { +/* 177 */ this._offline = true; +/* 178 */ CacheEntry.setOffline(); +/* 179 */ this._offlineButton.setEnabled(false); +/* */ } +/* */ } +/* */ +/* */ @Deprecated +/* */ public boolean handleEvent(Event e) +/* */ { +/* 186 */ if (e.id == 201) { +/* 187 */ setVisible(false); +/* 188 */ dispose(); +/* 189 */ Main.end(); +/* 190 */ throw new Error("User cancelled startup."); +/* */ } +/* */ +/* 193 */ return super.handleEvent(e); +/* */ } +/* */ +/* */ protected void paintBar() +/* */ { +/* 198 */ Graphics g = this._barCanvas.getGraphics(); +/* 199 */ Image off = createImage(270, 40); +/* 200 */ Graphics offG = off.getGraphics(); +/* 201 */ offG.setColor(getBackground()); +/* 202 */ offG.fillRect(0, 0, 270, 40); +/* 203 */ offG.setColor(Color.gray); +/* 204 */ offG.fillRect(10, 10, pixelsComplete(), 20); +/* 205 */ offG.setColor(Color.darkGray); +/* 206 */ offG.draw3DRect(11, 11, pixelsComplete() - 1, +/* 207 */ 18, true); +/* 208 */ offG.setColor(Color.black); +/* 209 */ offG.drawRect(10, 10, 250, 20); +/* 210 */ String perString = Integer.toString(percentComplete()) + "% Complete"; +/* 211 */ g.setFont(new Font("Times Roman", 0, 12)); +/* 212 */ FontMetrics fm = g.getFontMetrics(); +/* 213 */ int halfHeight = fm.getHeight() / 2; +/* 214 */ int halfWidth = fm.stringWidth(perString) / 2; +/* 215 */ offG.drawString(perString, 135 - halfWidth, 20 + +/* 216 */ halfHeight); +/* 217 */ g.drawImage(off, 0, 0, null); +/* 218 */ offG.dispose(); +/* 219 */ off.flush(); +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\ProgressBar.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/ProxyServerDialog.java b/NET/worlds/console/ProxyServerDialog.java new file mode 100644 index 0000000..adc62f0 --- /dev/null +++ b/NET/worlds/console/ProxyServerDialog.java @@ -0,0 +1,91 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import NET.worlds.core.IniFile; +/* */ import java.awt.Button; +/* */ import java.awt.GridBagConstraints; +/* */ import java.awt.Label; +/* */ import java.awt.TextField; +/* */ import java.util.Properties; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ class ProxyServerDialog +/* */ extends OkCancelDialog +/* */ { +/* */ private static final long serialVersionUID = 8421990344972629940L; +/* 23 */ private Label ipLabel = new Label("Proxy IP"); +/* 24 */ private TextField ipText = new TextField("", 15); +/* 25 */ private Label portLabel = new Label("Proxy Port"); +/* 26 */ private TextField portText = new TextField("", 3); +/* */ +/* */ public ProxyServerDialog() +/* */ { +/* 30 */ super(Console.getFrame(), null, Console.message("Proxy-Server"), "Cancel", "Ok", "", false); +/* 31 */ this.ipText.setText(IniFile.gamma().getIniString("Proxy Server IP", "")); +/* 32 */ this.portText.setText(IniFile.gamma().getIniString("Proxy Server Port", "")); +/* */ } +/* */ +/* */ protected synchronized boolean done(boolean confirmed) +/* */ { +/* 37 */ if (confirmed) { +/* 38 */ Properties p = System.getProperties(); +/* 39 */ IniFile.gamma().setIniString("Proxy Server IP", this.ipText.getText()); +/* 40 */ IniFile.gamma().setIniString("Proxy Server Port", +/* 41 */ this.portText.getText()); +/* 42 */ p.remove("socksProxyHost"); +/* 43 */ p.remove("socksProxyPort"); +/* 44 */ p.put("socksProxyHost", this.ipText.getText()); +/* 45 */ p.put("socksProxyPort", this.portText.getText()); +/* 46 */ System.setProperties(p); +/* */ } +/* */ +/* 49 */ return super.done(confirmed); +/* */ } +/* */ +/* */ public void build() +/* */ { +/* 54 */ GridBagConstraints c = new GridBagConstraints(); +/* */ +/* 56 */ c.gridx = 1; +/* 57 */ c.gridy = 1; +/* 58 */ c.weightx = 1.0D; +/* 59 */ c.weighty = 1.0D; +/* */ +/* 61 */ add(this.gbag, this.ipLabel, c); +/* */ +/* 63 */ c.gridy = 2; +/* 64 */ add(this.gbag, this.portLabel, c); +/* */ +/* 66 */ c.gridx = 2; +/* 67 */ c.gridy = 1; +/* 68 */ c.weightx = 3.0D; +/* 69 */ add(this.gbag, this.ipText, c); +/* */ +/* 71 */ c.gridy = 2; +/* 72 */ add(this.gbag, this.portText, c); +/* */ +/* 74 */ this.okButton.setFont(bfont); +/* 75 */ this.cancelButton.setFont(bfont); +/* */ +/* 77 */ c.gridx = 1; +/* 78 */ c.gridy = 3; +/* 79 */ c.weightx = 1.0D; +/* 80 */ add(this.gbag, this.okButton, c); +/* */ +/* 82 */ c.gridx = 4; +/* 83 */ add(this.gbag, this.cancelButton, c); +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\ProxyServerDialog.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/PublicObservable.java b/NET/worlds/console/PublicObservable.java new file mode 100644 index 0000000..18bb0e4 --- /dev/null +++ b/NET/worlds/console/PublicObservable.java @@ -0,0 +1,1098 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import java.util.Observable; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ class PublicObservable +/* */ extends Observable +/* */ { +/* */ public void setChanged(boolean changed) +/* */ { +/* 1086 */ if (changed) { +/* 1087 */ setChanged(); +/* */ } else { +/* 1089 */ clearChanged(); +/* */ } +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\PublicObservable.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/QuantizedCanvas.java b/NET/worlds/console/QuantizedCanvas.java new file mode 100644 index 0000000..0869860 --- /dev/null +++ b/NET/worlds/console/QuantizedCanvas.java @@ -0,0 +1,17 @@ +package NET.worlds.console; + +import java.awt.Canvas; + +public abstract class QuantizedCanvas + extends Canvas +{ + private static final long serialVersionUID = 5574577104641386073L; + + abstract int getRemainder(int paramInt); +} + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\QuantizedCanvas.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/QuantizedStackedLayout.java b/NET/worlds/console/QuantizedStackedLayout.java new file mode 100644 index 0000000..2c97837 --- /dev/null +++ b/NET/worlds/console/QuantizedStackedLayout.java @@ -0,0 +1,3067 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import java.awt.Component; +/* */ import java.awt.Container; +/* */ import java.awt.Dimension; +/* */ import java.awt.Insets; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ class QuantizedStackedLayout +/* */ extends StackedLayout +/* */ { +/* */ ColorFiller m_filler; +/* */ +/* */ public QuantizedStackedLayout(ColorFiller filler) +/* */ { +/* 3004 */ this.m_filler = filler; +/* */ } +/* */ +/* */ public void layoutContainer(Container target) +/* */ { +/* 3009 */ int count = target.getComponentCount(); +/* 3010 */ Insets insets = target.getInsets(); +/* 3011 */ Dimension size = target.getSize(); +/* */ +/* 3013 */ int width = size.width - insets.left - insets.right; +/* 3014 */ int height = size.height - insets.top - insets.bottom; +/* */ +/* 3016 */ int fillerHeight = 0; +/* */ +/* */ +/* */ +/* 3020 */ for (int i = 0; i < count; i++) { +/* 3021 */ Component c = target.getComponent(i); +/* */ +/* 3023 */ if (c != this.m_filler) +/* */ { +/* */ +/* 3026 */ int h = c.getPreferredSize().height; +/* 3027 */ if (i == count - 1) { +/* 3028 */ h = Math.max(h, height); +/* */ } else +/* 3030 */ h = Math.min(h, height); +/* 3031 */ h = Math.max(0, h); +/* 3032 */ height -= h; +/* */ +/* 3034 */ if ((c instanceof QuantizedCanvas)) { +/* 3035 */ QuantizedCanvas qc = (QuantizedCanvas)c; +/* 3036 */ fillerHeight += qc.getRemainder(h); +/* */ } +/* */ } +/* */ } +/* */ +/* 3041 */ this.m_filler.setHeight(fillerHeight); +/* */ +/* */ +/* 3044 */ int x = insets.left; +/* 3045 */ int y = insets.top; +/* 3046 */ height = size.height - insets.top - insets.bottom; +/* */ +/* 3048 */ for (int i = 0; i < count; i++) { +/* 3049 */ Component c = target.getComponent(i); +/* 3050 */ int h = c.getPreferredSize().height; +/* 3051 */ if (i == count - 1) { +/* 3052 */ h = Math.max(h, height); +/* */ } else +/* 3054 */ h = Math.min(h, height); +/* 3055 */ h = Math.max(0, h); +/* 3056 */ c.setBounds(x, y, width, h); +/* 3057 */ height -= h; +/* 3058 */ y += h; +/* */ } +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\QuantizedStackedLayout.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/QuitDialog.java b/NET/worlds/console/QuitDialog.java new file mode 100644 index 0000000..6095075 --- /dev/null +++ b/NET/worlds/console/QuitDialog.java @@ -0,0 +1,70 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import NET.worlds.core.IniFile; +/* */ import java.awt.Component; +/* */ import java.awt.Event; +/* */ import java.awt.Rectangle; +/* */ import java.awt.Window; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public class QuitDialog +/* */ extends PolledDialog +/* */ implements ImageButtonsCallback +/* */ { +/* */ private static final long serialVersionUID = 2648594609846911429L; +/* */ private ImageButtons ib; +/* */ +/* */ public QuitDialog(Window parent, DialogReceiver receiver) +/* */ { +/* 27 */ super(parent, receiver, Console.message("Quit"), true); +/* 28 */ Rectangle[] rects = new Rectangle[2]; +/* 29 */ int yesX = IniFile.override().getIniInt("quitYesX", 141); +/* 30 */ int yesY = IniFile.override().getIniInt("quitYesY", 76); +/* 31 */ int yesW = IniFile.override().getIniInt("quitYesW", 78); +/* 32 */ int yesH = IniFile.override().getIniInt("quitYesH", 22); +/* 33 */ rects[0] = new Rectangle(yesX, yesY, yesW, yesH); +/* 34 */ int noX = IniFile.override().getIniInt("quitNoX", 141); +/* 35 */ int noY = IniFile.override().getIniInt("quitNoY", 114); +/* 36 */ int noW = IniFile.override().getIniInt("quitNoW", 78); +/* 37 */ int noH = IniFile.override().getIniInt("quitNoH", 22); +/* 38 */ rects[1] = new Rectangle(noX, noY, noW, noH); +/* 39 */ String quitGif = IniFile.override().getIniString("quitDlg", +/* 40 */ Console.message("DYRWTQ.GIF")); +/* 41 */ this.ib = new ImageButtons(quitGif, rects, this); +/* 42 */ ready(); +/* */ } +/* */ +/* */ protected void build() +/* */ { +/* 47 */ add("Center", this.ib); +/* */ } +/* */ +/* */ public Object imageButtonsCallback(Component who, int which) { +/* 51 */ done(which == 0); +/* 52 */ return null; +/* */ } +/* */ +/* */ @Deprecated +/* */ public boolean keyDown(Event event, int key) +/* */ { +/* 58 */ if (key == 27) +/* 59 */ return done(false); +/* 60 */ if (key == 10) +/* 61 */ return done(true); +/* 62 */ return super.keyDown(event, key); +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\QuitDialog.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/RealG2.java b/NET/worlds/console/RealG2.java new file mode 100644 index 0000000..1c8f4c1 --- /dev/null +++ b/NET/worlds/console/RealG2.java @@ -0,0 +1,370 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import NET.worlds.core.IniFile; +/* */ import NET.worlds.scape.CDAudio; +/* */ import java.awt.Dimension; +/* */ import java.awt.Rectangle; +/* */ import java.io.IOException; +/* */ import java.util.Enumeration; +/* */ import java.util.Vector; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public class RealG2 +/* */ implements Runnable, MainCallback, MainTerminalCallback +/* */ { +/* 51 */ private static RealG2 instance = new RealG2(); +/* */ private Thread realThread; +/* */ +/* */ public class RG2Request +/* */ { +/* 56 */ private String url = null; +/* 57 */ private Rectangle position = null; +/* */ +/* */ public RG2Request(String u, Rectangle r) { +/* 60 */ this.url = u; +/* 61 */ this.position = r; +/* */ } +/* */ +/* */ public Rectangle getPosition() { +/* 65 */ return this.position; +/* */ } +/* */ +/* */ public String getURL() { +/* 69 */ return this.url; +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ +/* 76 */ private Vector<RG2Request> requestList = new Vector(2, 1); +/* */ +/* */ private boolean cancel; +/* */ +/* */ private RealG2() +/* */ { +/* 82 */ this.realThread = new Thread(this); +/* 83 */ this.realThread.start(); +/* */ } +/* */ +/* */ public static RealG2 get() { +/* 87 */ return instance; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public void run() +/* */ { +/* 98 */ boolean initerror = false; +/* 99 */ this.cancel = false; +/* 100 */ Main.register(this); +/* */ +/* 102 */ while (!this.cancel) { +/* 103 */ if (!this.requestList.isEmpty()) +/* 104 */ CDAudio.get().setEnabled(false); +/* 105 */ while (!this.requestList.isEmpty()) { +/* 106 */ startPlaying(); +/* */ try { +/* 108 */ initRealG2(); +/* */ } catch (IOException ie) { +/* 110 */ this.cancel = true; +/* 111 */ initerror = true; +/* */ } +/* 113 */ while (!this.requestList.isEmpty()) { +/* 114 */ RG2Request request = +/* 115 */ (RG2Request)this.requestList.firstElement(); +/* 116 */ this.requestList.removeElementAt(0); +/* */ try { +/* 118 */ browse(request.getURL(), request.getPosition()); +/* */ } +/* */ catch (IOException localIOException1) {} +/* */ } +/* 122 */ if (!initerror) +/* 123 */ closeRealG2(); +/* 124 */ stopPlaying(); +/* 125 */ if (this.requestList.isEmpty()) +/* 126 */ CDAudio.get().setEnabled(true); +/* */ } +/* 128 */ if (!this.cancel) +/* 129 */ timedWait(15); +/* */ } +/* 131 */ Main.unregister(this); +/* */ } +/* */ +/* */ private synchronized void timedWait(int secs) +/* */ { +/* 136 */ if (!this.cancel) { +/* */ try { +/* 138 */ wait(secs * 1000); +/* */ } +/* */ catch (InterruptedException localInterruptedException) {} +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* 146 */ private boolean isPlaying = false; +/* */ +/* */ private synchronized void startPlaying() { +/* 149 */ this.isPlaying = true; +/* */ } +/* */ +/* */ private synchronized void stopPlaying() { +/* 153 */ this.isPlaying = false; +/* */ } +/* */ +/* */ public synchronized boolean playing() { +/* 157 */ return this.isPlaying; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public void pleaseStopNow() +/* */ { +/* 166 */ if (playing()) { +/* 167 */ setPlayInterrupt(); +/* 168 */ while (playing()) { +/* */ try { +/* 170 */ wait(500L); +/* */ } +/* */ catch (InterruptedException localInterruptedException) {} +/* */ } +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ public void pleaseStop() +/* */ { +/* 182 */ setPlayInterrupt(); +/* */ } +/* */ +/* */ public static boolean isInstalled() +/* */ { +/* 187 */ IniFile ini = new IniFile("RealPlayer"); +/* 188 */ return ini.getIniInt("HasReal", 0) != 0; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public void play(String urlin) +/* */ throws IOException +/* */ { +/* 200 */ play(urlin, null); +/* */ } +/* */ +/* */ +/* */ +/* */ public void play(String urlin, Rectangle placementin) +/* */ throws IOException +/* */ { +/* 208 */ if (!isInstalled()) { +/* 209 */ throw new IOException(); +/* */ } +/* 211 */ RG2Request r = new RG2Request(urlin, placementin); +/* 212 */ this.requestList.addElement(r); +/* 213 */ setPlayInterrupt(); +/* 214 */ this.realThread.interrupt(); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ private Rectangle getAdPartPlacement() +/* */ { +/* 242 */ Rectangle placement = null; +/* */ +/* 244 */ Console c = Console.getActive(); +/* 245 */ if (c != null) { +/* 246 */ AdPart ap = null; +/* 247 */ for (Enumeration<FramePart> e = c.getParts(); e.hasMoreElements();) { +/* 248 */ Object o = e.nextElement(); +/* 249 */ if ((o instanceof AdPart)) { +/* 250 */ ap = (AdPart)o; +/* 251 */ break; +/* */ } +/* */ } +/* 254 */ if (ap != null) { +/* 255 */ placement = new Rectangle(ap.getLocationOnScreen(), +/* 256 */ new Dimension(ap.getWindow().fullWidth(), ap +/* 257 */ .getWindow().fullHeight())); +/* */ } +/* */ } +/* 260 */ return placement; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ private Rectangle getMapPartPlacement() +/* */ { +/* 268 */ Rectangle placement = null; +/* */ +/* 270 */ Console c = Console.getActive(); +/* 271 */ if (c != null) { +/* 272 */ MapPart ap = null; +/* 273 */ for (Enumeration<FramePart> e = c.getParts(); e.hasMoreElements();) { +/* 274 */ Object o = e.nextElement(); +/* 275 */ if ((o instanceof MapPart)) { +/* 276 */ ap = (MapPart)o; +/* 277 */ break; +/* */ } +/* */ } +/* 280 */ if (ap != null) { +/* 281 */ placement = new Rectangle(ap.getLocationOnScreen(), +/* 282 */ ap.getSize()); +/* */ } +/* */ } +/* 285 */ return placement; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ public void browse(String url, Rectangle placement) +/* */ throws IOException +/* */ { +/* 294 */ int x = -1; +/* 295 */ int y = -1; +/* 296 */ int w = -1; +/* 297 */ int h = -1; +/* */ +/* 299 */ if (placement != null) { +/* 300 */ x = placement.x; +/* 301 */ y = placement.y; +/* 302 */ w = placement.width; +/* 303 */ h = placement.height; +/* 304 */ } else if ((placement = getMapPartPlacement()) != null) { +/* 305 */ x = placement.x - 18; +/* 306 */ y = placement.y - 34; +/* 307 */ w = placement.width; +/* 308 */ h = placement.height; +/* */ } +/* */ try +/* */ { +/* 312 */ browse(url, x, y, w, h); +/* */ } catch (IOException ioe) { +/* 314 */ close(); +/* 315 */ throw ioe; +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ public void mainCallback() {} +/* */ +/* */ +/* */ +/* */ public void terminalCallback() +/* */ { +/* 327 */ close(); +/* */ } +/* */ +/* */ +/* */ +/* */ public void close() +/* */ { +/* 334 */ this.cancel = true; +/* 335 */ playInterrupt(); +/* 336 */ this.realThread.interrupt(); +/* */ } +/* */ +/* */ +/* */ +/* */ private static native void browse(String paramString, int paramInt1, int paramInt2, int paramInt3, int paramInt4) +/* */ throws IOException; +/* */ +/* */ +/* */ +/* */ private static native void initRealG2() +/* */ throws IOException; +/* */ +/* */ +/* */ +/* */ private static native void closeRealG2(); +/* */ +/* */ +/* */ +/* */ private static native void playInterrupt(); +/* */ +/* */ +/* */ public synchronized void setPlayInterrupt() +/* */ { +/* 360 */ if (playing()) { +/* 361 */ playInterrupt(); +/* */ } +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\RealG2.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/RemoveHandler.java b/NET/worlds/console/RemoveHandler.java new file mode 100644 index 0000000..058abdd --- /dev/null +++ b/NET/worlds/console/RemoveHandler.java @@ -0,0 +1,119 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import NET.worlds.scape.BumpEventTemp; +/* */ import NET.worlds.scape.BumpHandler; +/* */ import NET.worlds.scape.NoSuchPropertyException; +/* */ import NET.worlds.scape.Portal; +/* */ import NET.worlds.scape.Restorer; +/* */ import NET.worlds.scape.Room; +/* */ import NET.worlds.scape.Saver; +/* */ import NET.worlds.scape.SuperRoot; +/* */ import NET.worlds.scape.TooNewException; +/* */ import NET.worlds.scape.VectorProperty; +/* */ import java.io.IOException; +/* */ import java.util.Enumeration; +/* */ import java.util.Vector; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public class RemoveHandler +/* */ extends SuperRoot +/* */ implements BumpHandler +/* */ { +/* 39 */ private Vector<Object> handlers = new Vector(1); +/* */ +/* */ public RemoveHandler() {} +/* */ +/* */ public RemoveHandler(SuperRoot oldhandler) +/* */ { +/* 45 */ this.handlers.addElement(oldhandler); +/* */ } +/* */ +/* */ public boolean handle(BumpEventTemp e) { +/* 49 */ Room sc = ((Portal)e.target).getRoom(); +/* 50 */ assert (((sc instanceof Staircase)) || ((sc instanceof Stair))); +/* 51 */ Enumeration<Object> enh = this.handlers.elements(); +/* 52 */ while (enh.hasMoreElements()) { +/* 53 */ SuperRoot handler = (SuperRoot)enh.nextElement(); +/* 54 */ if (sc.hasHandler(handler)) +/* 55 */ sc.removeHandler(handler); +/* */ } +/* 57 */ return true; +/* */ } +/* */ +/* 60 */ private static Object classCookie = new Object(); +/* */ +/* */ public void saveState(Saver s) throws IOException +/* */ { +/* 64 */ s.saveVersion(2, classCookie); +/* 65 */ super.saveState(s); +/* 66 */ s.saveVector(this.handlers); +/* */ } +/* */ +/* */ public void restoreState(Restorer r) throws IOException, TooNewException +/* */ { +/* 71 */ switch (r.restoreVersion(classCookie)) { +/* */ case 2: +/* 73 */ super.restoreState(r); +/* 74 */ this.handlers = r.restoreVector(); +/* 75 */ break; +/* */ case 1: +/* 77 */ super.restoreState(r); +/* */ +/* */ case 0: +/* 80 */ if (r.restoreBoolean()) +/* 81 */ this.handlers.addElement(r.restore()); +/* 82 */ break; +/* */ default: +/* 84 */ throw new TooNewException(); +/* */ } +/* */ +/* */ } +/* */ +/* */ +/* */ +/* */ public Object properties(int index, int offset, int mode, Object value) +/* */ throws NoSuchPropertyException +/* */ { +/* 94 */ Object ret = null; +/* */ +/* 96 */ switch (index - offset) { +/* */ case 0: +/* 98 */ if (mode == 0) { +/* 99 */ ret = new VectorProperty(this, index, "Handlers to Remove"); +/* 100 */ } else if (mode == 1) { +/* 101 */ ret = this.handlers.clone(); +/* 102 */ } else if (mode == 4) { +/* 103 */ this.handlers.removeElement(value); +/* 104 */ } else if (mode == 3) +/* 105 */ this.handlers.addElement(value); +/* 106 */ break; +/* */ default: +/* 108 */ ret = super.properties(index, offset + 1, mode, value); +/* */ } +/* */ +/* 111 */ return ret; +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\RemoveHandler.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/RenderCanvas.java b/NET/worlds/console/RenderCanvas.java new file mode 100644 index 0000000..5d23a21 --- /dev/null +++ b/NET/worlds/console/RenderCanvas.java @@ -0,0 +1,396 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import NET.worlds.scape.Camera; +/* */ import NET.worlds.scape.EventQueue; +/* */ import NET.worlds.scape.FrameEvent; +/* */ import NET.worlds.scape.LibraryDropTarget; +/* */ import NET.worlds.scape.Pilot; +/* */ import NET.worlds.scape.ToolTipManager; +/* */ import java.awt.Canvas; +/* */ import java.awt.Container; +/* */ import java.awt.Dimension; +/* */ import java.awt.Graphics; +/* */ import java.awt.IllegalComponentStateException; +/* */ import java.awt.Point; +/* */ import java.util.Enumeration; +/* */ import java.util.Vector; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public class RenderCanvas +/* */ extends Canvas +/* */ implements FramePart, LibraryDropTarget +/* */ { +/* */ private static final long serialVersionUID = -811200590685352009L; +/* */ DefaultConsole universeConsole; +/* */ private Window w; +/* */ private Dimension dim; +/* */ private Camera camera; +/* */ private int xRenderExtent; +/* */ private int yRenderExtent; +/* */ +/* */ public RenderCanvas(Dimension d) +/* */ { +/* 83 */ this(null, d); +/* */ } +/* */ +/* */ public RenderCanvas(DefaultConsole dc, Dimension d) { +/* 87 */ this.universeConsole = dc; +/* 88 */ this.dim = d; +/* */ +/* 90 */ this.overlays = new Vector(); +/* */ } +/* */ +/* */ +/* */ +/* */ public void drive() +/* */ { +/* 97 */ if ((this.w != null) && (Pilot.getActiveRoom() != null)) +/* 98 */ this.w.setDeltaMode(true); +/* */ } +/* */ +/* */ public boolean getDeltaMode() { +/* 102 */ if (this.w == null) { +/* 103 */ return false; +/* */ } +/* 105 */ return this.w.getDeltaMode(); +/* */ } +/* */ +/* */ +/* */ +/* */ public void activate(Console c, Container f, Console prev) {} +/* */ +/* */ +/* */ +/* */ public void deactivate() {} +/* */ +/* */ +/* */ public void setCamera(Camera cam) +/* */ { +/* 119 */ this.camera = cam; +/* 120 */ if (cam != null) { +/* 121 */ cam.setCanvas(this); +/* */ } +/* */ } +/* */ +/* */ public Camera getCamera() { +/* 126 */ return this.camera; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public Window getWindow() +/* */ { +/* 135 */ return this.w; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public void update(Graphics g) {} +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public void paint(Graphics g) {} +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public void setBounds(int x, int y, int width, int height) +/* */ { +/* 178 */ super.setBounds(x, y, width, height); +/* */ +/* */ +/* */ +/* 182 */ this.mayNeedToResize = true; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ public Dimension getMinimumSize() +/* */ { +/* 190 */ return this.dim; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ public Dimension getPreferredSize() +/* */ { +/* 198 */ return this.dim; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public void addOverlay(RenderCanvasOverlay overlay) +/* */ { +/* 208 */ assert (this.overlays != null); +/* 209 */ this.overlays.addElement(overlay); +/* 210 */ this.mayNeedToResize = true; +/* */ } +/* */ +/* */ public void removeOverlay(RenderCanvasOverlay overlay) { +/* 214 */ assert (this.overlays != null); +/* 215 */ this.overlays.removeElement(overlay); +/* 216 */ this.mayNeedToResize = true; +/* */ } +/* */ +/* */ private void computeOverlayDimensions() { +/* */ int minYPer; +/* 221 */ int minXPer = minYPer = 100; +/* 222 */ this.fullScreenOverlay = false; +/* */ +/* 224 */ Dimension size = getSize(); +/* */ +/* 226 */ if (this.overlays != null) { +/* 227 */ Enumeration<RenderCanvasOverlay> e = this.overlays.elements(); +/* 228 */ while (e.hasMoreElements()) { +/* 229 */ RenderCanvasOverlay o = (RenderCanvasOverlay)e.nextElement(); +/* */ +/* */ +/* */ +/* 233 */ o.canvasResized(size.width, size.height); +/* */ +/* 235 */ if (o.isFullscreen()) +/* */ { +/* */ +/* */ +/* 239 */ this.fullScreenOverlay = true; +/* 240 */ minXPer = minYPer = 0; +/* */ } +/* */ +/* 243 */ int ox = 100 - o.getXPercent(); +/* 244 */ int oy = 100 - o.getYPercent(); +/* */ +/* 246 */ if (ox < minXPer) +/* 247 */ minXPer = ox; +/* 248 */ if (oy < minYPer) { +/* 249 */ minYPer = oy; +/* */ } +/* */ } +/* */ } +/* */ +/* 254 */ if ((minXPer == 0) && (minYPer == 0)) +/* */ { +/* 256 */ this.xRenderExtent = (this.yRenderExtent = 0); +/* 257 */ } else if (minXPer == 0) +/* */ { +/* 259 */ this.xRenderExtent = size.width; +/* 260 */ this.yRenderExtent = ((int)(size.height * minYPer * 0.01D)); +/* 261 */ } else if (minYPer == 0) +/* */ { +/* 263 */ this.xRenderExtent = ((int)(size.width * minXPer * 0.01D)); +/* 264 */ this.yRenderExtent = size.height; +/* */ } +/* */ else { +/* 267 */ this.xRenderExtent = size.width; +/* 268 */ this.yRenderExtent = size.height; +/* */ } +/* */ } +/* */ +/* */ +/* 273 */ private boolean fullScreenOverlay = false; +/* */ +/* */ +/* */ private boolean mayNeedToResize; +/* */ +/* */ +/* */ private Vector<RenderCanvasOverlay> overlays; +/* */ +/* */ +/* */ public boolean handle(FrameEvent f) +/* */ { +/* 284 */ if (this.camera == null) { +/* 285 */ return true; +/* */ } +/* 287 */ if (!checkForWindow(true)) { +/* 288 */ return true; +/* */ } +/* 290 */ EventQueue.pollForEvents(this.camera); +/* */ +/* */ +/* 293 */ if (this.w == null) { +/* 294 */ return true; +/* */ } +/* 296 */ if (this.mayNeedToResize) { +/* 297 */ computeOverlayDimensions(); +/* */ +/* */ +/* 300 */ this.w.maybeResize(this.xRenderExtent, this.yRenderExtent); +/* */ +/* 302 */ if (Window.usingMicrosoftVMHacks()) +/* */ { +/* */ +/* 305 */ Point pt = getLocationOnScreen(); +/* 306 */ Dimension dim = getSize(); +/* 307 */ this.w.reShape(pt.x, pt.y, dim.width, dim.height); +/* */ } +/* */ +/* 310 */ this.mayNeedToResize = false; +/* */ } +/* */ +/* 313 */ if (this.camera != null) +/* 314 */ doRender(); +/* 315 */ return true; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public boolean checkForWindow(boolean interceptEvents) +/* */ { +/* 329 */ if (this.w == null) { +/* 330 */ String title = Console.getFrame().getTitle(); +/* 331 */ if (title == null) +/* 332 */ return false; +/* */ try { +/* 334 */ this.w = new Window(title, getLocationOnScreen(), getSize(), this.camera, +/* 335 */ interceptEvents); +/* */ } catch (IllegalComponentStateException e) { +/* 337 */ return false; +/* */ } catch (WindowNotFoundException e) { +/* 339 */ return false; +/* */ } +/* */ +/* 342 */ this.mayNeedToResize = false; +/* */ } +/* */ +/* 345 */ return true; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ private synchronized void doRender() +/* */ { +/* 353 */ if ((this.universeConsole != null) && (this.universeConsole.isUniverseMode())) { +/* 354 */ ToolTipManager.toolTipManager().killToolTip(); +/* 355 */ if (this.w != null) +/* 356 */ this.w.hideNativeWindow(); +/* 357 */ return; +/* */ } +/* */ +/* 360 */ ToolTipManager.toolTipManager().heartbeat(); +/* */ +/* 362 */ this.w.showNativeWindow(); +/* */ +/* */ +/* 365 */ if (this.fullScreenOverlay) { +/* 366 */ ToolTipManager.toolTipManager().killToolTip(); +/* 367 */ return; +/* */ } +/* */ +/* 370 */ this.camera.renderToCanvas(); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public void removeNotify() +/* */ { +/* 384 */ if (this.w != null) { +/* 385 */ this.w.dispose(); +/* 386 */ this.w = null; +/* */ } +/* 388 */ super.removeNotify(); +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\RenderCanvas.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/RenderCanvasOverlay.java b/NET/worlds/console/RenderCanvasOverlay.java new file mode 100644 index 0000000..b1b265c --- /dev/null +++ b/NET/worlds/console/RenderCanvasOverlay.java @@ -0,0 +1,155 @@ +/* */ package NET.worlds.console; +/* */ +/* */ +/* */ public abstract class RenderCanvasOverlay +/* */ { +/* */ private RenderCanvas canvas; +/* */ +/* */ private int xPercent; +/* */ +/* */ private int yPercent; +/* */ +/* */ private int xFixed; +/* */ +/* */ private int yFixed; +/* */ +/* */ private boolean isFixed; +/* */ private boolean fullscreen; +/* */ private int hwnd; +/* */ private boolean allowFocus; +/* */ +/* */ public RenderCanvasOverlay(RenderCanvas pCanvas, int pX, int pY, boolean pIsFixed, boolean pAllowFocus) +/* */ throws NoWebControlException +/* */ { +/* 24 */ assert ((pX > 0) || (pY > 0)); +/* */ +/* 26 */ if ((pCanvas == null) || (pCanvas.getWindow() == null)) { +/* 27 */ throw new NoWebControlException("RenderCanvas does not exist"); +/* */ } +/* 29 */ this.canvas = pCanvas; +/* 30 */ this.isFixed = pIsFixed; +/* 31 */ this.allowFocus = pAllowFocus; +/* */ +/* 33 */ if (this.isFixed) { +/* 34 */ this.xFixed = pX; +/* 35 */ this.yFixed = pY; +/* 36 */ this.xPercent = (this.yPercent = 1); +/* */ } else { +/* 38 */ this.xPercent = pX; +/* 39 */ this.yPercent = pY; +/* */ } +/* */ +/* */ +/* 43 */ this.fullscreen = false; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public RenderCanvasOverlay(RenderCanvas pCanvas) +/* */ { +/* 53 */ assert (pCanvas != null); +/* */ +/* 55 */ this.canvas = pCanvas; +/* 56 */ this.xPercent = (this.yPercent = 100); +/* 57 */ this.isFixed = false; +/* 58 */ this.allowFocus = true; +/* */ +/* 60 */ this.fullscreen = true; +/* */ +/* */ +/* 63 */ this.hwnd = this.canvas.getWindow().getHwnd(); +/* */ } +/* */ +/* */ public void activate() { +/* 67 */ this.canvas.addOverlay(this); +/* */ } +/* */ +/* */ int getNativeWindowHandle() { +/* 71 */ assert (this.canvas.getWindow() != null); +/* */ +/* 73 */ if (this.hwnd == 0) { +/* 74 */ if (this.fullscreen) { +/* 75 */ this.hwnd = this.canvas.getWindow().getHwnd(); +/* */ } else { +/* 77 */ this.hwnd = nativeMakeChild(this.canvas.getWindow().getHwnd(), this.xPercent, +/* 78 */ this.yPercent, this.allowFocus); +/* */ } +/* */ } +/* 81 */ return this.hwnd; +/* */ } +/* */ +/* */ int getXPercent() { +/* 85 */ return this.xPercent; +/* */ } +/* */ +/* */ int getYPercent() { +/* 89 */ return this.yPercent; +/* */ } +/* */ +/* */ int getFixedWidth() { +/* 93 */ return this.xFixed; +/* */ } +/* */ +/* */ int getFixedHeight() { +/* 97 */ return this.yFixed; +/* */ } +/* */ +/* */ +/* 101 */ boolean getIsFixedSize() { return this.isFixed; } +/* */ +/* */ void canvasResized(int parentX, int parentY) { +/* */ int w; +/* */ int h; +/* 106 */ if (this.isFixed) { +/* 107 */ int w = this.xFixed; +/* 108 */ int h = this.yFixed; +/* 109 */ if (w > parentX) +/* 110 */ w = parentX; +/* 111 */ if (h > parentY) +/* 112 */ h = parentY; +/* 113 */ this.xPercent = +/* 114 */ ((int)Math.ceil(w / parentX * 100.0D)); +/* 115 */ this.yPercent = +/* 116 */ ((int)Math.ceil(h / parentY * 100.0D)); +/* */ } else { +/* 118 */ w = (int)(parentX * this.xPercent * 0.01D); +/* 119 */ h = (int)(parentY * this.yPercent * 0.01D); +/* */ } +/* */ +/* 122 */ if (this.hwnd != 0) { +/* 123 */ nativeResizeChild(this.hwnd, w, h); +/* */ } +/* */ } +/* */ +/* */ boolean isFullscreen() { +/* 128 */ return (this.fullscreen) || ((!this.isFixed) && (this.xPercent == 100) && (this.yPercent == 100)); +/* */ } +/* */ +/* */ +/* */ +/* */ protected abstract void handleCommand(int paramInt); +/* */ +/* */ +/* */ void detach() +/* */ { +/* 138 */ this.canvas.removeOverlay(this); +/* 139 */ if ((!this.fullscreen) && (this.hwnd != 0)) { +/* 140 */ nativeKillChild(this.hwnd); +/* */ } +/* */ } +/* */ +/* */ private native int nativeMakeChild(long paramLong, int paramInt1, int paramInt2, boolean paramBoolean); +/* */ +/* */ private native void nativeKillChild(long paramLong); +/* */ +/* */ private native void nativeResizeChild(int paramInt1, int paramInt2, int paramInt3); +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\RenderCanvasOverlay.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/RightMenu.java b/NET/worlds/console/RightMenu.java new file mode 100644 index 0000000..536c5d2 --- /dev/null +++ b/NET/worlds/console/RightMenu.java @@ -0,0 +1,160 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import NET.worlds.scape.Action; +/* */ import NET.worlds.scape.EditTile; +/* */ import NET.worlds.scape.RunningActionHandler; +/* */ import NET.worlds.scape.WObject; +/* */ import java.util.Enumeration; +/* */ import java.util.Hashtable; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public class RightMenu +/* */ implements MainCallback +/* */ { +/* 26 */ private static RightMenu _current = null; +/* */ +/* */ +/* */ +/* */ private WObject _obj; +/* */ +/* */ +/* */ private Enumeration<Action> _acts; +/* */ +/* */ +/* 36 */ private Hashtable<Integer, Action> _inttobuttons = new Hashtable(); +/* */ +/* 38 */ private int _edit = 0; +/* */ +/* */ +/* 41 */ private int _pm = 0; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public RightMenu(WObject obj, Enumeration<Action> acts) +/* */ { +/* 51 */ this._obj = obj; +/* 52 */ this._acts = acts; +/* 53 */ Main.register(this); +/* */ } +/* */ +/* 56 */ private int _lastID = 0; +/* */ +/* */ private int add(String label) { +/* 59 */ if (this._lastID == 0) { +/* 60 */ this._lastID = 100; +/* */ } +/* 62 */ int id = this._lastID++; +/* 63 */ assert (this._lastID < 200); +/* */ +/* 65 */ nativeAdd(label, id, this._pm); +/* 66 */ return id; +/* */ } +/* */ +/* */ +/* */ +/* */ private static native int create(); +/* */ +/* */ +/* */ private static native void nativeAdd(String paramString, int paramInt1, int paramInt2); +/* */ +/* */ +/* */ private static native void addSeparator(int paramInt); +/* */ +/* */ +/* */ private static native void show(int paramInt1, int paramInt2); +/* */ +/* */ +/* */ private static native void discard(int paramInt); +/* */ +/* */ +/* */ private static native int checkPressed(); +/* */ +/* */ +/* */ private void build(Enumeration<Action> acts) +/* */ { +/* 91 */ if (_current != null) { +/* 92 */ _current.close(); +/* */ } +/* 94 */ _current = this; +/* 95 */ int rows = 0; +/* 96 */ Hashtable<String, Action> buttons = new Hashtable(); +/* 97 */ while (acts.hasMoreElements()) { +/* 98 */ Action act = (Action)acts.nextElement(); +/* 99 */ String label = act.rightMenuLabel; +/* 100 */ if ((label != null) && (label != "")) { +/* 101 */ buttons.put(label, act); +/* 102 */ rows++; +/* */ } +/* */ } +/* 105 */ if ((rows > 0) || (Gamma.getShaper() != null)) { +/* 106 */ this._pm = create(); +/* 107 */ if (Gamma.getShaper() != null) +/* */ { +/* 109 */ this._edit = add("Edit Properties..."); +/* 110 */ if (rows > 0) +/* 111 */ addSeparator(this._pm); +/* */ } +/* 113 */ for (Enumeration<String> en = buttons.keys(); en.hasMoreElements();) { +/* 114 */ String label = (String)en.nextElement(); +/* 115 */ this._inttobuttons.put(new Integer(add(label)), (Action)buttons.get(label)); +/* */ } +/* 117 */ show(Window.getHWnd(), this._pm); +/* */ } else { +/* 119 */ close(); +/* */ } +/* */ } +/* */ +/* 123 */ private void close() { discard(this._pm); +/* 124 */ this._pm = 0; +/* 125 */ Main.unregister(this); +/* 126 */ _current = null; +/* */ } +/* */ +/* */ private void checkButton() { +/* 130 */ int pressed = checkPressed(); +/* 131 */ if (pressed == 0) +/* 132 */ return; +/* 133 */ if (pressed == this._edit) { +/* 134 */ Console.getFrame().getEditTile().viewProperties(this._obj); +/* */ } else { +/* 136 */ Action action = (Action)this._inttobuttons.get(new Integer(pressed)); +/* 137 */ RunningActionHandler.trigger(action, this._obj.getWorld(), null); +/* */ } +/* 139 */ close(); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ public void mainCallback() +/* */ { +/* 147 */ if (this._acts != null) { +/* 148 */ build(this._acts); +/* 149 */ this._acts = null; +/* */ } else { +/* 151 */ checkButton(); +/* */ } +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\RightMenu.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/SavedAvAddDialog.java b/NET/worlds/console/SavedAvAddDialog.java new file mode 100644 index 0000000..d11699f --- /dev/null +++ b/NET/worlds/console/SavedAvAddDialog.java @@ -0,0 +1,377 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import java.awt.Button; +/* */ import java.awt.Event; +/* */ import java.awt.Font; +/* */ import java.awt.GridBagConstraints; +/* */ import java.awt.GridBagLayout; +/* */ import java.awt.Label; +/* */ import java.awt.Panel; +/* */ import java.awt.TextField; +/* */ import java.awt.Window; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ class SavedAvAddDialog +/* */ extends PolledDialog +/* */ { +/* */ private static final long serialVersionUID = 6413925837010864629L; +/* */ private TextField nameField; +/* */ private Button okButton; +/* */ private Button cancelButton; +/* */ private String newName; +/* 300 */ private static Font font = new Font(Console.message("MenuFont"), +/* 301 */ 0, 12); +/* 302 */ private static Font bfont = new Font(Console.message("ButtonFont"), +/* 303 */ 0, 12); +/* */ +/* */ public SavedAvAddDialog(Window parent, SavedAvPart avatars) { +/* 306 */ super(parent, avatars, Console.message("Save-Avatar"), true); +/* 307 */ this.nameField = new TextField(40); +/* 308 */ this.okButton = new Button(Console.message("OK")); +/* 309 */ this.cancelButton = new Button(Console.message("Cancel")); +/* 310 */ ready(); +/* */ } +/* */ +/* */ protected void build() +/* */ { +/* 315 */ GridBagLayout gbag = new GridBagLayout(); +/* 316 */ setLayout(gbag); +/* 317 */ GridBagConstraints c = new GridBagConstraints(); +/* 318 */ c.fill = 0; +/* 319 */ c.weightx = 1.0D; +/* 320 */ c.weighty = 1.0D; +/* 321 */ c.gridwidth = 2; +/* 322 */ c.gridheight = 1; +/* 323 */ add(gbag, new Label(Console.message("Name")), c); +/* 324 */ c.gridwidth = 0; +/* 325 */ c.fill = 2; +/* 326 */ this.nameField.setFont(font); +/* 327 */ add(gbag, this.nameField, c); +/* 328 */ Panel buttons = new Panel(); +/* 329 */ this.okButton.setFont(bfont); +/* 330 */ this.cancelButton.setFont(bfont); +/* 331 */ buttons.add(this.okButton); +/* 332 */ buttons.add(this.cancelButton); +/* 333 */ c.gridwidth = 0; +/* 334 */ c.fill = 0; +/* 335 */ add(gbag, buttons, c); +/* */ } +/* */ +/* */ @Deprecated +/* */ public boolean action(Event event, Object what) +/* */ { +/* 341 */ Object target = event.target; +/* 342 */ if ((target == this.okButton) && (mayConfirm())) +/* 343 */ return done(true); +/* 344 */ if (target == this.cancelButton) +/* 345 */ return done(false); +/* 346 */ return false; +/* */ } +/* */ +/* */ public String getName() +/* */ { +/* 351 */ return this.newName; +/* */ } +/* */ +/* */ private boolean mayConfirm() +/* */ { +/* 356 */ this.newName = this.nameField.getText().trim(); +/* 357 */ return this.newName.length() != 0; +/* */ } +/* */ +/* */ @Deprecated +/* */ public boolean keyDown(Event event, int key) +/* */ { +/* 363 */ if (key == 27) +/* 364 */ return done(false); +/* 365 */ if ((key == 10) && +/* 366 */ (mayConfirm())) { +/* 367 */ return done(true); +/* */ } +/* 369 */ return super.keyDown(event, key); +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\SavedAvAddDialog.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/SavedAvDeleteDialog.java b/NET/worlds/console/SavedAvDeleteDialog.java new file mode 100644 index 0000000..572aca7 --- /dev/null +++ b/NET/worlds/console/SavedAvDeleteDialog.java @@ -0,0 +1,294 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import java.awt.Button; +/* */ import java.awt.Event; +/* */ import java.awt.GridBagConstraints; +/* */ import java.awt.GridBagLayout; +/* */ import java.awt.Label; +/* */ import java.awt.List; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ class SavedAvDeleteDialog +/* */ extends PolledDialog +/* */ { +/* */ private static final long serialVersionUID = 1L; +/* 176 */ private List listbox = new List(10); +/* 177 */ private Button delButton = new Button(Console.message("Delete")); +/* 178 */ private Button cancelButton = new Button(Console.message("Done")); +/* */ private SavedAvPart avatars; +/* */ +/* */ SavedAvDeleteDialog(SavedAvPart avatars) { +/* 182 */ super(Console.getFrame(), null, Console.message("Delete-Avatar"), true); +/* 183 */ this.avatars = avatars; +/* 184 */ ready(); +/* */ } +/* */ +/* */ protected void build() { +/* 188 */ int count = SavedAvPart.getAvatarCount(); +/* 189 */ for (int i = 0; i < count; i++) +/* 190 */ this.listbox.add(SavedAvPart.getAvatarName(i)); +/* 191 */ Label caption = new Label(Console.message("Choose-Avatar")); +/* */ +/* 193 */ GridBagLayout gbag = new GridBagLayout(); +/* 194 */ setLayout(gbag); +/* 195 */ GridBagConstraints c = new GridBagConstraints(); +/* */ +/* 197 */ c.fill = 2; +/* 198 */ c.gridwidth = 0; +/* 199 */ c.gridheight = 1; +/* 200 */ c.weightx = 1.0D; +/* 201 */ c.weighty = 0.0D; +/* 202 */ add(gbag, caption, c); +/* */ +/* 204 */ c.fill = 1; +/* 205 */ c.gridwidth = 0; +/* 206 */ c.gridheight = 6; +/* 207 */ c.weightx = 1.0D; +/* 208 */ c.weighty = 1.0D; +/* 209 */ add(gbag, this.listbox, c); +/* */ +/* 211 */ c.fill = 0; +/* 212 */ c.gridwidth = -1; +/* 213 */ c.gridheight = 0; +/* 214 */ c.anchor = 14; +/* 215 */ c.weightx = 0.45D; +/* 216 */ c.weighty = 0.0D; +/* 217 */ add(gbag, this.delButton, c); +/* 218 */ c.gridwidth = 0; +/* 219 */ c.anchor = 16; +/* 220 */ c.weightx = 0.55D; +/* 221 */ add(gbag, this.cancelButton, c); +/* */ } +/* */ +/* */ private void select(boolean state) { +/* 225 */ this.delButton.setEnabled(state); +/* */ } +/* */ +/* */ +/* */ +/* */ public void setVisible(boolean visible) +/* */ { +/* 232 */ super.setVisible(visible); +/* 233 */ if (visible) { +/* 234 */ if (this.listbox.getItemCount() != 0) { +/* 235 */ this.listbox.select(0); +/* 236 */ select(true); +/* */ } else { +/* 238 */ select(false); } +/* 239 */ this.listbox.requestFocus(); +/* */ } +/* */ } +/* */ +/* */ @Deprecated +/* */ public boolean handleEvent(Event event) +/* */ { +/* 246 */ if (event.id == 701) { +/* 247 */ select(true); +/* 248 */ } else if (event.id == 702) +/* 249 */ select(false); +/* 250 */ return super.handleEvent(event); +/* */ } +/* */ +/* */ @Deprecated +/* */ public boolean action(Event event, Object what) +/* */ { +/* 256 */ Object target = event.target; +/* 257 */ if (target == this.cancelButton) +/* 258 */ return done(false); +/* 259 */ if (target == this.delButton) { +/* 260 */ int index = this.listbox.getSelectedIndex(); +/* 261 */ if (index != -1) { +/* 262 */ this.listbox.remove(index); +/* 263 */ this.avatars.removeAvatar(index); +/* */ +/* */ +/* 266 */ int count = this.listbox.getItemCount(); +/* 267 */ if (index < count - 1) { +/* 268 */ this.listbox.select(index); +/* 269 */ } else if (count > 0) { +/* 270 */ this.listbox.select(count - 1); +/* */ } else { +/* 272 */ select(false); +/* 273 */ this.listbox.requestFocus(); +/* */ } +/* */ } +/* 276 */ return true; +/* */ } +/* 278 */ return false; +/* */ } +/* */ +/* */ @Deprecated +/* */ public boolean keyDown(Event event, int key) +/* */ { +/* 284 */ if ((key == 27) || (key == 10)) +/* 285 */ return done(false); +/* 286 */ return super.keyDown(event, key); +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\SavedAvDeleteDialog.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/SavedAvMenuItem.java b/NET/worlds/console/SavedAvMenuItem.java new file mode 100644 index 0000000..4e1bbf2 --- /dev/null +++ b/NET/worlds/console/SavedAvMenuItem.java @@ -0,0 +1,68 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import NET.worlds.scape.Persister; +/* */ import NET.worlds.scape.Restorer; +/* */ import NET.worlds.scape.Saver; +/* */ import NET.worlds.scape.TooNewException; +/* */ import java.awt.CheckboxMenuItem; +/* */ import java.io.IOException; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public class SavedAvMenuItem +/* */ extends CheckboxMenuItem +/* */ implements Persister +/* */ { +/* */ private static final long serialVersionUID = 4876455058245955809L; +/* */ private String avatar; +/* */ +/* */ public SavedAvMenuItem(String name, String avatar) +/* */ { +/* 27 */ super(name); +/* 28 */ this.avatar = avatar; +/* */ } +/* */ +/* */ public SavedAvMenuItem() {} +/* */ +/* */ public String getAvatar() +/* */ { +/* 35 */ return this.avatar; +/* */ } +/* */ +/* */ public void setAvatar(String av) { +/* 39 */ this.avatar = av; +/* */ } +/* */ +/* 42 */ private static Object classCookie = new Object(); +/* */ +/* */ public void saveState(Saver s) throws IOException { +/* 45 */ s.saveVersion(1, classCookie); +/* 46 */ s.saveString(getLabel()); +/* 47 */ s.saveString(this.avatar); +/* */ } +/* */ +/* */ public void restoreState(Restorer r) throws IOException, TooNewException { +/* 51 */ switch (r.restoreVersion(classCookie)) { +/* */ case 1: +/* 53 */ setLabel(r.restoreString()); +/* 54 */ this.avatar = r.restoreString(); +/* 55 */ break; +/* */ default: +/* 57 */ throw new TooNewException(); +/* */ } +/* */ } +/* */ +/* */ public void postRestore(int version) {} +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\SavedAvMenuItem.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/SavedAvPart.java b/NET/worlds/console/SavedAvPart.java new file mode 100644 index 0000000..85948e3 --- /dev/null +++ b/NET/worlds/console/SavedAvPart.java @@ -0,0 +1,175 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import NET.worlds.network.URL; +/* */ import NET.worlds.scape.FrameEvent; +/* */ import NET.worlds.scape.Restorer; +/* */ import NET.worlds.scape.Saver; +/* */ import java.awt.CheckboxMenuItem; +/* */ import java.awt.Container; +/* */ import java.awt.Event; +/* */ import java.awt.Font; +/* */ import java.awt.Menu; +/* */ import java.awt.MenuItem; +/* */ import java.util.Vector; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public class SavedAvPart +/* */ extends Menu +/* */ implements FramePart, DialogReceiver +/* */ { +/* */ private static final long serialVersionUID = -3931139364330871273L; +/* */ private static final int firstUserItem = 3; +/* */ private static final String avsFileName = "Gamma.avatars"; +/* 44 */ private static URL savedAvsURL = URL.make("home:Gamma.avatars"); +/* */ +/* */ private static Vector<Object> savedAvatars; +/* 47 */ private static Font font = new Font(Console.message("MenuFont"), +/* 48 */ 0, 12); +/* */ +/* */ +/* 51 */ private MenuItem saveItem = new MenuItem(Console.message("Save-Avatar")); +/* 52 */ private MenuItem deleteItem = new MenuItem(Console.message("Delete-Avatar")); +/* */ private DefaultConsole console; +/* */ +/* */ public SavedAvPart() { +/* 56 */ super(Console.message("Saved-Avatars")); +/* 57 */ if (savedAvatars == null) +/* 58 */ loadAvatars(); +/* */ } +/* */ +/* */ private static void loadAvatars() { +/* */ try { +/* 63 */ Restorer r = new Restorer(savedAvsURL); +/* 64 */ savedAvatars = r.restoreVector(); +/* 65 */ r.done(); +/* */ } catch (Exception ex) { +/* 67 */ savedAvatars = new Vector(); +/* */ } +/* */ } +/* */ +/* */ private static void saveAvatars() { +/* */ try { +/* 73 */ Saver s = new Saver(savedAvsURL); +/* 74 */ s.saveVector(savedAvatars); +/* 75 */ s.done(); +/* */ } +/* */ catch (Exception localException) {} +/* */ } +/* */ +/* */ static int getAvatarCount() { +/* 81 */ return savedAvatars.size(); +/* */ } +/* */ +/* */ private static SavedAvMenuItem getAvatar(int index) { +/* 85 */ return (SavedAvMenuItem)savedAvatars.elementAt(index); +/* */ } +/* */ +/* */ static String getAvatarName(int index) { +/* 89 */ return getAvatar(index).getLabel(); +/* */ } +/* */ +/* */ static String getAvatarAvatar(int index) { +/* 93 */ return getAvatar(index).getAvatar(); +/* */ } +/* */ +/* */ private SavedAvMenuItem addAvatar(String name, String avatar) { +/* 97 */ SavedAvMenuItem item = new SavedAvMenuItem(name, avatar); +/* 98 */ item.setFont(font); +/* 99 */ add(item); +/* 100 */ savedAvatars.addElement(item); +/* 101 */ saveAvatars(); +/* 102 */ return item; +/* */ } +/* */ +/* */ void removeAvatar(int index) { +/* 106 */ Object item = savedAvatars.elementAt(index); +/* 107 */ savedAvatars.removeElementAt(index); +/* 108 */ remove(index + 3); +/* 109 */ saveAvatars(); +/* 110 */ this.console.deletedSavedAvatar((CheckboxMenuItem)item); +/* */ } +/* */ +/* */ public void dialogDone(Object who, boolean confirmed) { +/* 114 */ if (confirmed) { +/* 115 */ SavedAvAddDialog adder = (SavedAvAddDialog)who; +/* 116 */ URL avName = this.console.getDefaultAvatarURL(); +/* 117 */ if (avName != null) +/* 118 */ this.console.setCurrentAvatarItem(addAvatar(adder.getName(), +/* 119 */ avName.getAbsolute())); +/* */ } +/* */ } +/* */ +/* */ public void activate(Console c, Container f, Console prev) { +/* 124 */ this.console = ((DefaultConsole)c); +/* 125 */ this.saveItem.setFont(font); +/* 126 */ this.deleteItem.setFont(font); +/* 127 */ add(this.saveItem); +/* 128 */ add(this.deleteItem); +/* 129 */ addSeparator(); +/* 130 */ for (int i = 0; i < savedAvatars.size(); i++) { +/* 131 */ MenuItem item = (MenuItem)savedAvatars.elementAt(i); +/* 132 */ item.setFont(font); +/* 133 */ add(item); +/* */ } +/* */ } +/* */ +/* */ public void deactivate() { +/* 138 */ removeAll(); +/* */ } +/* */ +/* */ public boolean action(Event event, Object what) { +/* 142 */ Object target = event.target; +/* 143 */ if (target == this.saveItem) { +/* 144 */ new SavedAvAddDialog(Console.getFrame(), this); +/* 145 */ } else if (target == this.deleteItem) { +/* 146 */ new SavedAvDeleteDialog(this); +/* 147 */ } else if ((target instanceof SavedAvMenuItem)) { +/* 148 */ SavedAvMenuItem item = (SavedAvMenuItem)target; +/* 149 */ this.console.setNextAvatar(URL.make(item.getAvatar()), item); +/* */ } else { +/* 151 */ return false; } +/* 152 */ return true; +/* */ } +/* */ +/* */ public boolean handle(FrameEvent f) { +/* 156 */ return true; +/* */ } +/* */ +/* */ public CheckboxMenuItem findMenuItem(URL url) { +/* 160 */ String name = url.getAbsolute(); +/* 161 */ int count = getAvatarCount(); +/* 162 */ for (int i = 0; i < count; i++) { +/* 163 */ SavedAvMenuItem item = getAvatar(i); +/* 164 */ if (item.getAvatar().equals(name)) +/* 165 */ return item; +/* */ } +/* 167 */ return null; +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\SavedAvPart.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/ScapePicCanvas.java b/NET/worlds/console/ScapePicCanvas.java new file mode 100644 index 0000000..74da0ee --- /dev/null +++ b/NET/worlds/console/ScapePicCanvas.java @@ -0,0 +1,87 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import java.awt.Canvas; +/* */ import java.awt.Container; +/* */ import java.awt.Dimension; +/* */ import java.awt.Frame; +/* */ import java.awt.Point; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public class ScapePicCanvas +/* */ extends Canvas +/* */ { +/* */ private static final long serialVersionUID = 927951584800056826L; +/* */ private int hWnd; +/* */ +/* */ public void drawScapePicImage(ScapePicImage image, int xDst, int yDst, int xSrc, int ySrc, int width, int height) +/* */ { +/* 48 */ if (this.hWnd == 0) { +/* 49 */ Point loc = locationInWindow(); +/* 50 */ Dimension size = getSize(); +/* 51 */ String title = getFrameTitle(); +/* 52 */ assert (title != null); +/* 53 */ int hWndParent = Window.findWindow(title); +/* 54 */ assert (hWndParent != 0); +/* 55 */ this.hWnd = Window.findChildWindow(hWndParent, loc.x, loc.y, size.width, +/* 56 */ size.height); +/* 57 */ assert (this.hWnd != 0); +/* */ } +/* 59 */ bitBlt(this.hWnd, image.getDIB(), xDst, yDst, xSrc, ySrc, width, height); +/* */ } +/* */ +/* */ private String getFrameTitle() +/* */ { +/* 64 */ for (Container c = getParent(); c != null; c = c.getParent()) +/* 65 */ if ((c instanceof Frame)) +/* 66 */ return ((Frame)c).getTitle(); +/* 67 */ return null; +/* */ } +/* */ +/* */ private Point locationInWindow() +/* */ { +/* 72 */ Point offset = getLocation(); +/* 73 */ for (Container c = getParent(); c != null; c = c.getParent()) { +/* 74 */ Point move = c.getLocation(); +/* 75 */ offset.translate(move.x, move.y); +/* */ } +/* 77 */ return offset; +/* */ } +/* */ +/* */ public static native void bitBlt(int paramInt1, int paramInt2, int paramInt3, int paramInt4, int paramInt5, int paramInt6, int paramInt7, int paramInt8); +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\ScapePicCanvas.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/ScapePicImage.java b/NET/worlds/console/ScapePicImage.java new file mode 100644 index 0000000..820d72d --- /dev/null +++ b/NET/worlds/console/ScapePicImage.java @@ -0,0 +1,73 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import NET.worlds.network.URL; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public class ScapePicImage +/* */ { +/* */ private int hDIB; +/* */ private int width; +/* */ private int height; +/* */ +/* */ public ScapePicImage(URL url) +/* */ { +/* 25 */ nativeInit(); +/* 26 */ loadImage(url.unalias()); +/* */ } +/* */ +/* */ public int getWidth() +/* */ { +/* 31 */ return this.width; +/* */ } +/* */ +/* */ public int getHeight() +/* */ { +/* 36 */ return this.height; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public native void flush(); +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public void finalize() +/* */ { +/* 52 */ flush(); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ int getDIB() +/* */ { +/* 61 */ return this.hDIB; +/* */ } +/* */ +/* */ private native void loadImage(String paramString); +/* */ +/* */ public static native void nativeInit(); +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\ScapePicImage.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/ScapePicPanel.java b/NET/worlds/console/ScapePicPanel.java new file mode 100644 index 0000000..f376329 --- /dev/null +++ b/NET/worlds/console/ScapePicPanel.java @@ -0,0 +1,239 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import java.awt.Container; +/* */ import java.awt.Dimension; +/* */ import java.awt.Frame; +/* */ import java.awt.Graphics; +/* */ import java.awt.Panel; +/* */ import java.awt.Point; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public class ScapePicPanel +/* */ extends Panel +/* */ { +/* */ private static final long serialVersionUID = -1019314311757410999L; +/* */ private static final int QUARTERED = 0; +/* */ private static final int UPPERLEFT = 1; +/* 43 */ private ScapePicImage image = null; +/* */ +/* */ private int hWnd; +/* */ +/* 47 */ private int drawMode = 0; +/* */ +/* */ +/* */ +/* */ public ScapePicPanel() +/* */ { +/* 53 */ this(null); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public ScapePicPanel(ScapePicImage image) +/* */ { +/* 64 */ setImage(image); +/* */ } +/* */ +/* */ +/* */ +/* */ public void setImage(ScapePicImage image) +/* */ { +/* 71 */ this.image = image; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ public void paint(Graphics g) +/* */ { +/* 79 */ drawBackground(); +/* */ +/* 81 */ super.paint(g); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public void update(Graphics g) +/* */ { +/* 90 */ paint(g); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public void setQuartered() +/* */ { +/* 102 */ this.drawMode = 0; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public void setUpperLeft() +/* */ { +/* 113 */ this.drawMode = 1; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ private void drawBackground() +/* */ { +/* 121 */ assert ((this.drawMode == 1) || (this.drawMode == 0)); +/* */ +/* 123 */ if (this.image == null) { +/* 124 */ return; +/* */ } +/* 126 */ Dimension size = getSize(); +/* */ +/* */ +/* 129 */ assert (size != null); +/* 130 */ assert ((size.height >= 0) && (size.width >= 0)); +/* */ +/* */ +/* 133 */ if (this.drawMode == 1) { +/* 134 */ for (int j = 0; j < size.height; j += this.image.getHeight()) { +/* 135 */ for (int i = 0; i < size.width; i += this.image.getWidth()) { +/* 136 */ drawScapePicImage(this.image, i, j, 0, 0, this.image.getWidth(), +/* 137 */ this.image.getHeight()); +/* */ } +/* */ } +/* */ } +/* */ +/* */ +/* 143 */ if (this.drawMode == 0) { +/* 144 */ int cx = size.width / 2; +/* 145 */ int cy = size.height / 2; +/* */ +/* 147 */ for (int j = 0; j < cy; j += this.image.getHeight()) { +/* 148 */ for (int i = 0; i < cx; i += this.image.getWidth()) { +/* 149 */ int endX = Math.min(cx - i, this.image.getWidth()); +/* 150 */ int endY = Math.min(cy - j, this.image.getHeight()); +/* 151 */ drawScapePicImage(this.image, i, j, 0, 0, endX, endY); +/* */ } +/* */ } +/* */ +/* 155 */ for (int j = 0; j < cy; j += this.image.getHeight()) { +/* 156 */ for (int i = size.width; i > cx; i -= this.image.getWidth()) { +/* 157 */ int startX = Math.max(i - this.image.getWidth(), cx); +/* 158 */ int imageStartX = this.image.getWidth() - (i - startX); +/* 159 */ int endY = Math.min(cy - j, this.image.getHeight()); +/* 160 */ drawScapePicImage(this.image, startX, j, imageStartX, 0, i - +/* 161 */ startX, endY); +/* */ } +/* */ } +/* */ +/* 165 */ for (int j = size.height; j > cy; j -= this.image.getHeight()) { +/* 166 */ for (int i = 0; i < cx; i += this.image.getWidth()) { +/* 167 */ int endX = Math.min(cx - i, this.image.getWidth()); +/* 168 */ int startY = Math.max(j - this.image.getHeight(), cy); +/* 169 */ int imageStartY = this.image.getHeight() - (j - startY); +/* 170 */ drawScapePicImage(this.image, i, startY, 0, imageStartY, endX, j - +/* 171 */ startY); +/* */ } +/* */ } +/* */ +/* 175 */ for (int j = size.height; j > cy; j -= this.image.getHeight()) { +/* 176 */ for (int i = size.width; i > cx; i -= this.image.getWidth()) { +/* 177 */ int startX = Math.max(i - this.image.getWidth(), cx); +/* 178 */ int imageStartX = this.image.getWidth() - (i - startX); +/* 179 */ int startY = Math.max(j - this.image.getHeight(), cy); +/* 180 */ int imageStartY = this.image.getHeight() - (j - startY); +/* 181 */ drawScapePicImage(this.image, startX, startY, imageStartX, +/* 182 */ imageStartY, i - startX, j - startY); +/* */ } +/* */ } +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public void drawScapePicImage(ScapePicImage image, int xDst, int yDst, int xSrc, int ySrc, int width, int height) +/* */ { +/* 201 */ if (this.hWnd == 0) { +/* 202 */ Point loc = locationInWindow(); +/* 203 */ Dimension size = getSize(); +/* 204 */ String title = getFrameTitle(); +/* 205 */ assert (title != null); +/* 206 */ int hWndParent = Window.findWindow(title); +/* 207 */ assert (hWndParent != 0); +/* 208 */ this.hWnd = Window.findChildWindow(hWndParent, loc.x, loc.y, size.width, +/* 209 */ size.height); +/* 210 */ assert (this.hWnd != 0); +/* */ } +/* 212 */ ScapePicCanvas.bitBlt(this.hWnd, image.getDIB(), xDst, yDst, xSrc, ySrc, +/* 213 */ width, height); +/* */ } +/* */ +/* */ private String getFrameTitle() +/* */ { +/* 218 */ for (Container c = getParent(); c != null; c = c.getParent()) +/* 219 */ if ((c instanceof Frame)) +/* 220 */ return ((Frame)c).getTitle(); +/* 221 */ return null; +/* */ } +/* */ +/* */ private Point locationInWindow() +/* */ { +/* 226 */ Point offset = getLocation(); +/* 227 */ for (Container c = getParent(); c != null; c = c.getParent()) { +/* 228 */ Point move = c.getLocation(); +/* 229 */ offset.translate(move.x, move.y); +/* */ } +/* 231 */ return offset; +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\ScapePicPanel.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/SetNumVisibleAvs.java b/NET/worlds/console/SetNumVisibleAvs.java new file mode 100644 index 0000000..6227e6a --- /dev/null +++ b/NET/worlds/console/SetNumVisibleAvs.java @@ -0,0 +1,174 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import NET.worlds.core.IniFile; +/* */ import NET.worlds.network.Galaxy; +/* */ import java.awt.BorderLayout; +/* */ import java.awt.Button; +/* */ import java.awt.Checkbox; +/* */ import java.awt.CheckboxGroup; +/* */ import java.awt.Event; +/* */ import java.awt.Font; +/* */ import java.awt.GridLayout; +/* */ import java.awt.Label; +/* */ import java.awt.Panel; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public class SetNumVisibleAvs +/* */ extends PolledDialog +/* */ { +/* */ private static final long serialVersionUID = -1189914406658113132L; +/* 29 */ private Button okButton = new Button( +/* 30 */ Console.message("Apply-Vis")); +/* 31 */ CheckboxGroup numAvsChoice = new CheckboxGroup(); +/* 32 */ CheckboxGroup fullAvsChoice = new CheckboxGroup(); +/* 33 */ private static Font font = new Font( +/* 34 */ Console.message("MenuFont"), 0, 12); +/* */ +/* */ public SetNumVisibleAvs() +/* */ { +/* 38 */ super(Console.getFrame(), null, Console.message("Num-Visible"), true); +/* 39 */ ready(); +/* */ } +/* */ +/* */ protected void build() +/* */ { +/* 44 */ setLayout(new BorderLayout()); +/* 45 */ add("North", new Filler(5, 5)); +/* 46 */ add("South", new Filler(10, 10)); +/* 47 */ add("East", new Filler(5, 5)); +/* 48 */ add("West", new Filler(5, 5)); +/* */ +/* 50 */ Panel main = new Panel(new BorderLayout()); +/* 51 */ main.setFont(font); +/* */ +/* 53 */ main.add("North", new MultiLineLabel( +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* 60 */ Console.message("sel-max-av"), 5, 5)); +/* */ +/* 62 */ Panel choices = new Panel(new GridLayout(10, 2)); +/* */ +/* 64 */ int numAvs = IniFile.gamma().getIniInt("avatars", 24); +/* */ +/* */ +/* 67 */ choices.add(new Label("")); +/* 68 */ choices.add(new Label(Console.message("Max-Avs"))); +/* */ +/* */ +/* 71 */ choices.add(new Label(Console.message("Slower"), +/* 72 */ 1)); +/* 73 */ choices.add(new Checkbox("100", this.numAvsChoice, numAvs == 100)); +/* */ +/* */ +/* 76 */ choices.add(new Label("")); +/* 77 */ choices.add(new Checkbox("80", this.numAvsChoice, numAvs == 80)); +/* */ +/* */ +/* 80 */ choices.add(new Label("")); +/* 81 */ choices.add(new Checkbox("60", this.numAvsChoice, numAvs == 60)); +/* */ +/* */ +/* 84 */ choices.add(new Label("")); +/* 85 */ choices.add(new Checkbox("40", this.numAvsChoice, numAvs == 40)); +/* */ +/* */ +/* 88 */ choices.add(new Label("")); +/* 89 */ choices.add(new Checkbox("32", this.numAvsChoice, numAvs == 32)); +/* */ +/* */ +/* 92 */ choices.add(new Label("")); +/* 93 */ choices.add(new Checkbox("24", this.numAvsChoice, numAvs == 24)); +/* */ +/* */ +/* 96 */ choices.add(new Label("")); +/* 97 */ choices.add(new Checkbox("16", this.numAvsChoice, numAvs == 16)); +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* 104 */ choices.add(new Label("")); +/* 105 */ choices.add(new Checkbox("8", this.numAvsChoice, numAvs == 8)); +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* 116 */ choices.add(new Label(Console.message("Faster"), +/* 117 */ 1)); +/* 118 */ choices.add(new Checkbox("4", this.numAvsChoice, numAvs == 4)); +/* */ +/* */ +/* */ +/* 122 */ main.add("Center", choices); +/* */ +/* 124 */ main.add("South", this.okButton); +/* */ +/* 126 */ add("Center", main); +/* */ } +/* */ +/* */ public boolean action(Event event, Object what) +/* */ { +/* 131 */ Object target = event.target; +/* 132 */ if (target == this.okButton) { +/* 133 */ done(true); +/* */ } else +/* 135 */ return false; +/* 136 */ return true; +/* */ } +/* */ +/* */ protected boolean done(boolean confirmed) +/* */ { +/* 141 */ if (confirmed) +/* */ { +/* 143 */ Checkbox c = this.numAvsChoice.getSelectedCheckbox(); +/* 144 */ if (c != null) { +/* */ try { +/* 146 */ IniFile.gamma().setIniInt("avatars", +/* 147 */ Integer.parseInt(c.getLabel())); +/* */ } +/* */ catch (NumberFormatException localNumberFormatException) {} +/* */ } +/* */ +/* 152 */ c = this.fullAvsChoice.getSelectedCheckbox(); +/* 153 */ if (c != null) { +/* */ try { +/* 155 */ String s = c.getLabel(); +/* 156 */ s = s.substring(0, s.length() - 1); +/* 157 */ IniFile.gamma().setIniInt("fullavpercent", +/* 158 */ Integer.parseInt(s)); +/* */ } +/* */ catch (NumberFormatException localNumberFormatException1) {} +/* */ } +/* */ +/* 163 */ Galaxy.forceOffline(true); +/* */ } +/* */ +/* 166 */ return super.done(confirmed); +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\SetNumVisibleAvs.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/Shaper.java b/NET/worlds/console/Shaper.java new file mode 100644 index 0000000..7c18da0 --- /dev/null +++ b/NET/worlds/console/Shaper.java @@ -0,0 +1,394 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import NET.worlds.network.URL; +/* */ import NET.worlds.scape.EditTile; +/* */ import NET.worlds.scape.LibrariesTile; +/* */ import NET.worlds.scape.LoadedURLSelf; +/* */ import NET.worlds.scape.Manifest; +/* */ import NET.worlds.scape.Pilot; +/* */ import NET.worlds.scape.Saver; +/* */ import NET.worlds.scape.TeleportAction; +/* */ import NET.worlds.scape.URLSelf; +/* */ import NET.worlds.scape.World; +/* */ import java.awt.Container; +/* */ import java.awt.Event; +/* */ import java.awt.Menu; +/* */ import java.awt.MenuItem; +/* */ import java.io.IOException; +/* */ import java.util.Enumeration; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public class Shaper +/* */ implements MainCallback, DialogReceiver, LoadedURLSelf +/* */ { +/* */ MenuItem newItem; +/* */ MenuItem openItem; +/* */ MenuItem saveItem; +/* */ MenuItem propItem; +/* */ MenuItem consolePropItem; +/* */ MenuItem pilotPropItem; +/* */ MenuItem undoItem; +/* */ MenuItem cutItem; +/* */ MenuItem copyItem; +/* */ MenuItem pasteItem; +/* */ MenuItem sortAttributesItem; +/* */ MenuItem snapToolItem; +/* */ MenuItem newLibraryItem; +/* */ MenuItem newLibraryEntryItem; +/* */ MenuItem iconsVisibleLibraryItem; +/* */ Menu worldsMenu; +/* */ MenuItem shaperVisibleItem; +/* */ private World newWorldTemplate; +/* */ +/* */ public Shaper() +/* */ { +/* 76 */ Main.register(this); +/* */ } +/* */ +/* */ +/* */ +/* */ public void activate(Console c, Container f, Console prev) +/* */ { +/* 83 */ this.newItem = c.addMenuItem(Console.message("New"), "File", 78, +/* 84 */ false); +/* 85 */ this.openItem = c.addMenuItem(Console.message("Open"), "File", +/* 86 */ 79, false); +/* 87 */ this.saveItem = c.addMenuItem(Console.message("Save"), "File", +/* 88 */ 83, false); +/* 89 */ this.propItem = c.addMenuItem(Console.message("World-Prop"), "File"); +/* 90 */ this.consolePropItem = c +/* 91 */ .addMenuItem(Console.message("Console-Prop"), "File"); +/* 92 */ this.pilotPropItem = c.addMenuItem(Console.message("Pilot-Prop"), "File"); +/* */ +/* 94 */ this.undoItem = c.addMenuItem(Console.message("Undo"), "Edit", +/* 95 */ 90, false); +/* 96 */ c.getMenu("Edit").addSeparator(); +/* 97 */ this.cutItem = c.addMenuItem(Console.message("Cut"), "Edit", 88, +/* 98 */ false); +/* 99 */ this.copyItem = c.addMenuItem(Console.message("Copy"), "Edit", +/* 100 */ 67, false); +/* 101 */ this.pasteItem = c.addMenuItem(Console.message("Paste"), "Edit", +/* 102 */ 86, false); +/* 103 */ this.sortAttributesItem = c.addMenuItem(Console.message("Sort-Attributes"), +/* 104 */ "Edit"); +/* 105 */ this.snapToolItem = c.addMenuItem(Console.message("Snap-Tool-Settings"), +/* 106 */ "Edit"); +/* */ +/* */ +/* 109 */ this.newLibraryItem = c.addMenuItem(Console.message("New-Library"), +/* 110 */ "Libraries"); +/* 111 */ this.newLibraryEntryItem = c.addMenuItem( +/* 112 */ Console.message("New-Library-Entry"), "Libraries"); +/* 113 */ this.iconsVisibleLibraryItem = c.addMenuItem( +/* 114 */ Console.message("Icons-On-Off"), "Libraries", 73, +/* 115 */ false); +/* */ +/* 117 */ this.worldsMenu = c.getMenu("Worlds"); +/* 118 */ worldListChange(); +/* */ +/* 120 */ this.shaperVisibleItem = c.addMenuItem(Console.message("Shaper-On-Off"), +/* 121 */ "Options"); +/* */ } +/* */ +/* */ +/* */ +/* */ public void deactivate() +/* */ { +/* 128 */ this.worldsMenu = null; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ public boolean action(Event event, Object what) +/* */ { +/* 136 */ GammaFrame f = Console.getFrame(); +/* */ +/* 138 */ if (event.target == this.newItem) { +/* 139 */ this.makeNew = true; +/* 140 */ } else if (event.target == this.openItem) { +/* 141 */ new FileSysDialog(f, this, Console.message("Open-World"), +/* 142 */ 0, "World Save Files|*.world|World Class Files|*.class|World Files|*.class;*.world", +/* */ +/* 144 */ "", true); +/* 145 */ } else if (event.target == this.saveItem) { +/* 146 */ new FileSysDialog(f, this, Console.message("Save-World"), +/* 147 */ 1, "World Save Files|*.world|World Manifest (text) Files|*.mft", +/* */ +/* 149 */ getSaveName(), true); +/* 150 */ } else if (event.target == this.propItem) { +/* 151 */ if (Pilot.getActiveRoom() != null) +/* 152 */ f.getEditTile().viewProperties(Pilot.getActiveWorld()); +/* 153 */ } else if (event.target == this.consolePropItem) { +/* 154 */ f.getEditTile().viewProperties(Console.getActive()); +/* 155 */ } else if (event.target == this.pilotPropItem) { +/* 156 */ f.getEditTile().viewProperties(Pilot.getActive()); +/* 157 */ } else if (event.target == this.sortAttributesItem) { +/* 158 */ new AttributeSortPanel(f); +/* 159 */ } else if (event.target == this.snapToolItem) { +/* 160 */ new SnapToolPanel(f); +/* 161 */ } else if (event.target == this.undoItem) { +/* 162 */ f.getEditTile().undo(); +/* 163 */ } else if (event.target == this.cutItem) { +/* 164 */ f.getEditTile().cut(); +/* 165 */ } else if (event.target == this.copyItem) { +/* 166 */ f.getEditTile().copy(); +/* 167 */ } else if (event.target == this.pasteItem) { +/* 168 */ f.getEditTile().paste(); +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ } +/* 176 */ else if (event.target == this.newLibraryItem) { +/* 177 */ f.getLibrariesTile().addLibrary(); +/* 178 */ } else if (event.target == this.newLibraryEntryItem) { +/* 179 */ f.getLibrariesTile().addElement(); +/* 180 */ } else if (event.target == this.iconsVisibleLibraryItem) { +/* 181 */ f.getLibrariesTile().setIconsVisible( +/* 182 */ !f.getLibrariesTile().isIconsVisible()); +/* 183 */ } else if (event.target == this.shaperVisibleItem) { +/* 184 */ f.setShaperVisible(!f.isShaperVisible()); +/* */ +/* */ } +/* */ else +/* */ { +/* 189 */ int i = this.worldsMenu.getItemCount(); +/* 190 */ do { if (this.worldsMenu.getItem(i) == event.target) { +/* */ break; +/* */ } +/* 189 */ i--; } while (i >= 0); +/* */ +/* */ +/* */ +/* 193 */ if (i < 0) { +/* 194 */ return false; +/* */ } +/* 196 */ String url = (String)what; +/* 197 */ if (url.endsWith(" (changed)")) +/* 198 */ url = url.substring(0, url.length() - 10); +/* 199 */ TeleportAction.teleport(url, null); +/* */ } +/* */ +/* 202 */ return true; +/* */ } +/* */ +/* */ public String getSaveName() { +/* 206 */ return getSaveName(Pilot.getActive().getWorld()); +/* */ } +/* */ +/* */ public static String getSaveName(World w) { +/* 210 */ URL url = w.getSourceURL(); +/* 211 */ String name = url.unalias(); +/* */ +/* 213 */ int index = name.indexOf(':'); +/* 214 */ if ((index == -1) || (index == 1)) { +/* 215 */ return name.replace('/', '\\'); +/* */ } +/* 217 */ return url.getBase(); +/* */ } +/* */ +/* */ public void dialogDone(Object who, boolean confirmed) { +/* 221 */ if (confirmed) { +/* 222 */ FileSysDialog fileDialog = (FileSysDialog)who; +/* 223 */ String name = fileDialog.fileName(); +/* 224 */ if (fileDialog.getMode() == 0) { +/* 225 */ TeleportAction.teleport(name, null, true); +/* */ } else { +/* 227 */ doSave(name); +/* */ } +/* */ } +/* */ } +/* */ +/* */ +/* */ public void loadedURLSelf(URLSelf o, URL url, String err) +/* */ { +/* 235 */ this.newWorldTemplate = ((World)o); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* 241 */ private boolean makeNew = true; +/* */ +/* 243 */ private static URL newworld = URL.make("home:NewWorld.world"); +/* */ private boolean quitFlag; +/* */ private FileSaver fileSaver; +/* */ +/* */ public void mainCallback() +/* */ { +/* 249 */ if (this.quitFlag) { +/* 250 */ if (this.fileSaver == null) +/* 251 */ this.fileSaver = new FileSaver(); +/* 252 */ switch (this.fileSaver.getState()) { +/* */ case 0: +/* 254 */ GammaFrameState.saveBorder(); +/* 255 */ Main.end(); +/* 256 */ break; +/* */ case 2: +/* 258 */ this.quitFlag = false; +/* 259 */ this.fileSaver = null; +/* */ } +/* */ +/* */ } +/* */ +/* */ +/* 265 */ if (this.newWorldTemplate != null) { +/* 266 */ this.newWorldTemplate.incRef(); +/* */ } +/* 268 */ if (this.makeNew) { +/* 269 */ this.makeNew = false; +/* */ +/* */ +/* */ +/* 273 */ if (this.newWorldTemplate == null) { +/* 274 */ World.load(newworld, this, true); +/* */ } else { +/* 276 */ World w = (World)this.newWorldTemplate.clone(); +/* 277 */ w.setEdited(true); +/* 278 */ TeleportAction.teleport(w.getSourceURL().getAbsolute(), null); +/* */ } +/* */ } +/* */ +/* 282 */ if (this.worldListHasChanged) { +/* 283 */ this.worldListHasChanged = false; +/* */ +/* 285 */ rebuildWorldsMenu(); +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public void maybeQuit() +/* */ { +/* 300 */ this.quitFlag = true; +/* */ } +/* */ +/* 303 */ private boolean worldListHasChanged = false; +/* */ +/* */ +/* */ +/* */ +/* */ public void worldListChange() +/* */ { +/* 310 */ this.worldListHasChanged = true; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ private void rebuildWorldsMenu() +/* */ { +/* 319 */ if (this.worldsMenu == null) { +/* 320 */ return; +/* */ } +/* */ +/* 323 */ while (this.worldsMenu.getItemCount() > 0) { +/* 324 */ this.worldsMenu.remove(0); +/* */ } +/* */ +/* 327 */ for (Enumeration<World> e = World.getWorlds(); e.hasMoreElements();) { +/* 328 */ World w = (World)e.nextElement(); +/* 329 */ URL url = w.getSourceURL(); +/* */ String name; +/* */ String name; +/* 332 */ if (url == null) { +/* 333 */ name = w.getName(); +/* */ } else { +/* 335 */ name = url.getAbsolute(); +/* */ +/* 337 */ if (url.equals(newworld)) { +/* */ continue; +/* */ } +/* */ } +/* 341 */ if (w.getEdited()) +/* 342 */ name = name + " (changed)"; +/* 343 */ this.worldsMenu.add(new MenuItem(name)); +/* */ } +/* */ } +/* */ +/* */ public void doSave(String name) { +/* 348 */ doSave(name, Pilot.getActive().getWorld(), true); +/* */ } +/* */ +/* */ public static boolean doSave(String name, World world, boolean allowManifest) { +/* 352 */ if ((allowManifest) && (name.endsWith(".mft"))) +/* */ { +/* */ try { +/* 355 */ Manifest mft = new Manifest(name); +/* 356 */ mft.saveProps(world); +/* 357 */ mft.done(); +/* 358 */ return true; +/* */ } catch (IOException ioe) { +/* 360 */ Console.println( +/* 361 */ Console.message("Error-manifest") + ioe.toString()); +/* */ } +/* */ } +/* */ else { +/* 365 */ if (name.toLowerCase().endsWith(".wor")) { +/* 366 */ name = name.substring(0, name.length() - 4); +/* */ } +/* 368 */ if (!name.toLowerCase().endsWith(".world")) { +/* 369 */ name = name + ".world"; +/* */ } +/* */ try { +/* 372 */ Saver saver = new Saver(new URL(URL.getCurDir(), name)); +/* 373 */ saver.save(world); +/* 374 */ saver.done(); +/* 375 */ world.setEdited(false); +/* 376 */ return true; +/* */ } catch (IOException ioe) { +/* 378 */ Console.println( +/* 379 */ Console.message("Error-saving") + ioe.toString()); +/* */ } +/* */ } +/* 382 */ return false; +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\Shaper.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/SharedTextArea.java b/NET/worlds/console/SharedTextArea.java new file mode 100644 index 0000000..d334cd0 --- /dev/null +++ b/NET/worlds/console/SharedTextArea.java @@ -0,0 +1,46 @@ +package NET.worlds.console; + +import java.awt.Color; +import java.awt.Component; +import java.awt.Dimension; +import java.awt.Font; +import java.awt.Point; + +abstract interface SharedTextArea +{ + public abstract void validate(); + + public abstract void enableLogging(String paramString1, String paramString2, boolean paramBoolean); + + public abstract void disableLogging(); + + public abstract boolean canAddText(); + + public abstract void println(String paramString); + + public abstract void scrollToBottom(); + + public abstract void poll(); + + public abstract void setBackground(Color paramColor); + + public abstract void repaint(); + + public abstract Component getComponent(); + + public abstract void setForeground(Color paramColor); + + public abstract Font getFont(); + + public abstract void setFont(Font paramFont); + + public abstract Point getLocationOnScreen(); + + public abstract Dimension getSize(); +} + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\SharedTextArea.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/SnapTool.java b/NET/worlds/console/SnapTool.java new file mode 100644 index 0000000..028f6a5 --- /dev/null +++ b/NET/worlds/console/SnapTool.java @@ -0,0 +1,127 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import NET.worlds.core.IniFile; +/* */ import NET.worlds.scape.Point2; +/* */ import NET.worlds.scape.Point3Temp; +/* */ import java.io.PrintStream; +/* */ +/* */ +/* */ +/* */ +/* */ public class SnapTool +/* */ { +/* 13 */ private static SnapTool theSnapTool = null; +/* */ +/* 15 */ private int snapX = 1; +/* 16 */ private int snapY = 1; +/* 17 */ private int snapZ = 1; +/* */ +/* 19 */ private boolean useSnap = false; +/* */ +/* */ public static SnapTool snapTool() { +/* 22 */ if (theSnapTool == null) { +/* 23 */ theSnapTool = new SnapTool(); +/* */ } +/* 25 */ return theSnapTool; +/* */ } +/* */ +/* */ private SnapTool() { +/* 29 */ this.snapX = IniFile.gamma().getIniInt("Shaper.snapX", 100); +/* 30 */ this.snapY = IniFile.gamma().getIniInt("Shaper.snapY", 100); +/* 31 */ this.snapZ = IniFile.gamma().getIniInt("Shaper.snapZ", 1); +/* 32 */ this.useSnap = (IniFile.gamma().getIniInt("Shaper.useSnapTool", 0) != 0); +/* */ } +/* */ +/* */ public Point3Temp snapTo(Point3Temp inVal) { +/* 36 */ if (!this.useSnap) { +/* 37 */ return inVal; +/* */ } +/* */ +/* 40 */ float newX = snapTo(inVal.x, this.snapX); +/* 41 */ float newY = snapTo(inVal.y, this.snapY); +/* 42 */ float newZ = snapTo(inVal.z, this.snapZ); +/* */ +/* 44 */ return Point3Temp.make(newX, newY, newZ); +/* */ } +/* */ +/* */ public Point2 snapTo(Point2 inVal) { +/* 48 */ if (!this.useSnap) { +/* 49 */ return inVal; +/* */ } +/* 51 */ float newX = snapTo(inVal.x, this.snapX); +/* 52 */ float newY = snapTo(inVal.y, this.snapY); +/* */ +/* 54 */ return new Point2(newX, newY); +/* */ } +/* */ +/* */ public float snapTo(float oldVal, int snapIncrement) { +/* 58 */ if (!this.useSnap) { +/* 59 */ return oldVal; +/* */ } +/* 61 */ int multiple = Math.round(oldVal / snapIncrement); +/* 62 */ return multiple * snapIncrement; +/* */ } +/* */ +/* */ public int getSnapX() { +/* 66 */ return this.snapX; +/* */ } +/* */ +/* */ public void setSnapX(int newVal) { +/* 70 */ if (newVal > 0) { +/* 71 */ this.snapX = newVal; +/* 72 */ IniFile.gamma().setIniInt("Shaper.snapX", newVal); +/* */ } +/* */ } +/* */ +/* */ public int getSnapY() { +/* 77 */ return this.snapY; +/* */ } +/* */ +/* */ public void setSnapY(int newVal) { +/* 81 */ if (newVal > 0) { +/* 82 */ this.snapY = newVal; +/* 83 */ IniFile.gamma().setIniInt("Shaper.snapY", newVal); +/* */ } +/* */ } +/* */ +/* */ public int getSnapZ() { +/* 88 */ return this.snapZ; +/* */ } +/* */ +/* */ public void setSnapZ(int newVal) { +/* 92 */ if (newVal > 0) { +/* 93 */ this.snapZ = newVal; +/* 94 */ IniFile.gamma().setIniInt("Shaper.snapZ", newVal); +/* */ } +/* */ } +/* */ +/* */ public boolean useSnap() { +/* 99 */ return this.useSnap; +/* */ } +/* */ +/* */ public void setSnap(boolean use) { +/* 103 */ this.useSnap = use; +/* 104 */ IniFile.gamma().setIniInt("Shaper.useSnapTool", use ? 1 : 0); +/* */ } +/* */ +/* */ public void print() { +/* 108 */ System.out.println("SnapTool " + (this.useSnap ? "ON" : "OFF")); +/* 109 */ System.out.println("SnapTool Settings: X=" + this.snapX + " Y=" + this.snapY + +/* 110 */ " Z=" + this.snapZ); +/* */ } +/* */ +/* */ public void test() { +/* 114 */ setSnapX(150); +/* 115 */ setSnapY(200); +/* 116 */ setSnapY(-100); +/* 117 */ setSnapY(0); +/* 118 */ setSnapZ(5); +/* 119 */ print(); +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\SnapTool.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/SnapToolPanel.java b/NET/worlds/console/SnapToolPanel.java new file mode 100644 index 0000000..eba6b68 --- /dev/null +++ b/NET/worlds/console/SnapToolPanel.java @@ -0,0 +1,181 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import java.awt.Button; +/* */ import java.awt.Checkbox; +/* */ import java.awt.Color; +/* */ import java.awt.Dimension; +/* */ import java.awt.Event; +/* */ import java.awt.Frame; +/* */ import java.awt.GridBagConstraints; +/* */ import java.awt.GridBagLayout; +/* */ import java.awt.Label; +/* */ import java.awt.Point; +/* */ import java.awt.TextField; +/* */ import java.awt.Window; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public class SnapToolPanel +/* */ extends Frame +/* */ implements MainCallback, MainTerminalCallback +/* */ { +/* */ private static final long serialVersionUID = 1673536928568480266L; +/* */ private Label xLabel; +/* */ private Label yLabel; +/* */ private Label zLabel; +/* */ private TextField xValue; +/* */ private TextField yValue; +/* */ private TextField zValue; +/* */ private Checkbox useSnapBox; +/* */ private Button okButton; +/* */ private Button cancelButton; +/* */ private int snapX; +/* */ private int snapY; +/* */ private int snapZ; +/* */ private boolean useSnap; +/* */ +/* */ public SnapToolPanel(Window parent) +/* */ { +/* 47 */ super("Snap Tool Settings"); +/* */ +/* 49 */ this.okButton = new Button("Ok"); +/* 50 */ this.cancelButton = new Button("Cancel"); +/* 51 */ this.xLabel = new Label("X Snap Value"); +/* 52 */ this.yLabel = new Label("Y Snap Value"); +/* 53 */ this.zLabel = new Label("Z Snap Value"); +/* */ +/* 55 */ this.snapX = SnapTool.snapTool().getSnapX(); +/* 56 */ this.snapY = SnapTool.snapTool().getSnapY(); +/* 57 */ this.snapZ = SnapTool.snapTool().getSnapZ(); +/* 58 */ this.useSnap = SnapTool.snapTool().useSnap(); +/* */ +/* 60 */ this.useSnapBox = new Checkbox("Use Snap Tool", this.useSnap); +/* 61 */ this.xValue = new TextField(this.snapX); +/* 62 */ this.yValue = new TextField(this.snapY); +/* 63 */ this.zValue = new TextField(this.snapZ); +/* */ +/* 65 */ GridBagLayout gbag = new GridBagLayout(); +/* 66 */ GridBagConstraints c = new GridBagConstraints(); +/* 67 */ setLayout(gbag); +/* 68 */ setBackground(Color.gray); +/* */ +/* 70 */ c.gridx = 1; +/* 71 */ c.gridy = 1; +/* 72 */ c.gridheight = 1; +/* 73 */ c.gridwidth = 1; +/* 74 */ c.anchor = 18; +/* 75 */ gbag.setConstraints(this.xLabel, c); +/* 76 */ add(this.xLabel); +/* */ +/* 78 */ c.gridx = 2; +/* 79 */ c.gridy = 1; +/* 80 */ gbag.setConstraints(this.xValue, c); +/* 81 */ add(this.xValue); +/* */ +/* 83 */ c.gridx = 1; +/* 84 */ c.gridy = 2; +/* 85 */ gbag.setConstraints(this.yLabel, c); +/* 86 */ add(this.yLabel); +/* */ +/* 88 */ c.gridx = 2; +/* 89 */ c.gridy = 2; +/* 90 */ gbag.setConstraints(this.yValue, c); +/* 91 */ add(this.yValue); +/* */ +/* 93 */ c.gridx = 1; +/* 94 */ c.gridy = 3; +/* 95 */ gbag.setConstraints(this.zLabel, c); +/* 96 */ add(this.zLabel); +/* */ +/* 98 */ c.gridx = 2; +/* 99 */ c.gridy = 3; +/* 100 */ gbag.setConstraints(this.zValue, c); +/* 101 */ add(this.zValue); +/* */ +/* 103 */ c.gridx = 2; +/* 104 */ c.gridy = 5; +/* 105 */ gbag.setConstraints(this.useSnapBox, c); +/* 106 */ add(this.useSnapBox); +/* */ +/* 108 */ c.gridx = 5; +/* 109 */ c.gridy = 1; +/* 110 */ gbag.setConstraints(this.okButton, c); +/* 111 */ add(this.okButton); +/* */ +/* 113 */ c.gridx = 5; +/* 114 */ c.gridy = 2; +/* 115 */ gbag.setConstraints(this.cancelButton, c); +/* 116 */ add(this.cancelButton); +/* */ +/* */ +/* 119 */ pack(); +/* 120 */ Point loc = parent.getLocation(); +/* 121 */ Dimension size = parent.getSize(); +/* 122 */ setBounds(loc.x + (size.width - 320) / 2, +/* 123 */ loc.y + (size.height - 240) / 2, 320, 240); +/* */ +/* 125 */ setVisible(true); +/* */ +/* 127 */ Main.register(this); +/* */ } +/* */ +/* */ @Deprecated +/* */ public boolean handleEvent(Event ev) +/* */ { +/* 133 */ switch (ev.id) { +/* */ case 201: +/* 135 */ dispose(); +/* 136 */ return true; +/* */ } +/* 138 */ return super.handleEvent(ev); +/* */ } +/* */ +/* */ +/* */ @Deprecated +/* */ public boolean action(Event e, Object o) +/* */ { +/* 145 */ if (e.target == this.cancelButton) { +/* 146 */ dispose(); +/* 147 */ return true; } +/* 148 */ if (e.target == this.okButton) { +/* 149 */ this.snapX = Integer.parseInt(this.xValue.getText()); +/* 150 */ this.snapY = Integer.parseInt(this.yValue.getText()); +/* 151 */ this.snapZ = Integer.parseInt(this.zValue.getText()); +/* 152 */ this.useSnap = this.useSnapBox.getState(); +/* */ +/* 154 */ SnapTool.snapTool().setSnap(this.useSnap); +/* 155 */ SnapTool.snapTool().setSnapX(this.snapX); +/* 156 */ SnapTool.snapTool().setSnapY(this.snapY); +/* 157 */ SnapTool.snapTool().setSnapZ(this.snapZ); +/* */ +/* 159 */ dispose(); +/* 160 */ return true; +/* */ } +/* 162 */ return false; +/* */ } +/* */ +/* */ +/* */ +/* */ public void mainCallback() {} +/* */ +/* */ +/* */ +/* */ public void terminalCallback() +/* */ { +/* 173 */ Main.unregister(this); +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\SnapToolPanel.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/SplashCanvas.java b/NET/worlds/console/SplashCanvas.java new file mode 100644 index 0000000..2ccd13d --- /dev/null +++ b/NET/worlds/console/SplashCanvas.java @@ -0,0 +1,205 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import java.awt.Canvas; +/* */ import java.awt.Component; +/* */ import java.awt.Dimension; +/* */ import java.awt.Graphics; +/* */ import java.awt.Image; +/* */ import java.awt.MediaTracker; +/* */ import java.awt.Toolkit; +/* */ import java.util.Vector; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ class SplashCanvas +/* */ extends Canvas +/* */ { +/* */ private static final long serialVersionUID = 341168247494647821L; +/* */ protected String name; +/* */ protected Image image; +/* */ protected Dimension dim; +/* 90 */ protected Vector<Overlay> overlays = new Vector(); +/* */ +/* */ SplashCanvas(String name) { +/* 93 */ this.name = name; +/* */ } +/* */ +/* */ public void flush() { +/* 97 */ this.image.flush(); +/* 98 */ this.image = null; +/* */ +/* 100 */ for (int i = 0; i < this.overlays.size(); i++) { +/* 101 */ Overlay over = (Overlay)this.overlays.elementAt(i); +/* 102 */ over.flush(); +/* */ } +/* 104 */ this.overlays.removeAllElements(); +/* */ } +/* */ +/* */ public void paint(Graphics g) +/* */ { +/* 109 */ super.paint(g); +/* 110 */ g.drawImage(this.image, 0, 0, this); +/* 111 */ for (int i = 0; i < this.overlays.size(); i++) { +/* 112 */ Overlay over = (Overlay)this.overlays.elementAt(i); +/* 113 */ over.paint(g, this); +/* */ } +/* */ } +/* */ +/* */ public void setImage(String name) { +/* 118 */ this.name = name; +/* 119 */ this.image = null; +/* 120 */ imageSize(); +/* */ } +/* */ +/* */ public void addOverlay(String name, int x, int y) { +/* 124 */ Overlay over = new Overlay(name, x, y); +/* */ +/* 126 */ Dimension dim = over.imageSize(this); +/* 127 */ this.overlays.addElement(over); +/* 128 */ repaint(x, y, dim.width, dim.height); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ public void removeOverlay(String name, int x, int y) +/* */ { +/* 136 */ for (int i = 0; i < this.overlays.size(); i++) { +/* 137 */ Overlay over = (Overlay)this.overlays.elementAt(i); +/* 138 */ if (over.matches(name, x, y)) { +/* 139 */ Dimension dim = over.imageSize(this); +/* 140 */ this.overlays.removeElementAt(i); +/* 141 */ repaint(x, y, dim.width, dim.height); +/* 142 */ return; +/* */ } +/* */ } +/* */ } +/* */ +/* */ private Dimension imageSize() { +/* 148 */ if (this.image == null) { +/* 149 */ this.image = getEarlyImage(this.name, this); +/* 150 */ if (this.image != null) { +/* 151 */ int width = this.image.getWidth(this); +/* 152 */ int height = this.image.getHeight(this); +/* 153 */ if ((width != -1) && (height != -1)) +/* 154 */ return this.dim = new Dimension(width, height); +/* */ } +/* 156 */ this.dim = new Dimension(0, 0); +/* */ } +/* 158 */ for (int i = 0; i < this.overlays.size(); i++) { +/* 159 */ Overlay over = (Overlay)this.overlays.elementAt(i); +/* 160 */ over.imageSize(this); +/* */ } +/* 162 */ return this.dim; +/* */ } +/* */ +/* */ +/* */ public static Image getEarlyImage(String name, Component comp) +/* */ { +/* 168 */ for (int pass = 0; pass < 2; pass++) { +/* 169 */ String imagename = Gamma.earlyURLUnalias(name); +/* 170 */ Image image = Toolkit.getDefaultToolkit().getImage(imagename); +/* */ +/* */ +/* 173 */ MediaTracker tracker = new MediaTracker(comp); +/* 174 */ tracker.addImage(image, 0); +/* */ try { +/* 176 */ tracker.waitForAll(); +/* */ } +/* */ catch (InterruptedException localInterruptedException) {} +/* */ +/* 180 */ if (!tracker.isErrorAny()) { +/* 181 */ return image; +/* */ } +/* */ +/* 184 */ if (pass == 0) +/* 185 */ name = "..\\" + name; +/* */ } +/* 187 */ return null; +/* */ } +/* */ +/* */ public Dimension getPreferredSize() +/* */ { +/* 192 */ return imageSize(); +/* */ } +/* */ +/* */ public Dimension getMinimumSize() +/* */ { +/* 197 */ return imageSize(); +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\SplashCanvas.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/SplashScreen.java b/NET/worlds/console/SplashScreen.java new file mode 100644 index 0000000..9b13f1d --- /dev/null +++ b/NET/worlds/console/SplashScreen.java @@ -0,0 +1,86 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import java.awt.Dimension; +/* */ import java.awt.Frame; +/* */ import java.awt.Toolkit; +/* */ import java.awt.Window; +/* */ import java.io.PrintStream; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public class SplashScreen +/* */ extends Window +/* */ { +/* */ private static final long serialVersionUID = 4848128412139723543L; +/* 32 */ private SplashCanvas sc = null; +/* */ +/* */ public SplashScreen(String appname, String imagename) { +/* 35 */ super(new Frame(appname)); +/* 36 */ this.sc = new SplashCanvas(imagename); +/* 37 */ add(this.sc); +/* */ +/* 39 */ pack(); +/* 40 */ center(); +/* */ } +/* */ +/* */ public void setImageName(String imagename) { +/* 44 */ this.sc.setImage(imagename); +/* 45 */ pack(); +/* 46 */ center(); +/* */ +/* 48 */ this.sc.repaint(); +/* */ } +/* */ +/* */ public void addOverlay(String name, int x, int y) { +/* 52 */ this.sc.addOverlay(name, x, y); +/* 53 */ center(); +/* */ } +/* */ +/* */ public void removeOverlay(String name, int x, int y) { +/* 57 */ this.sc.removeOverlay(name, x, y); +/* */ } +/* */ +/* */ public void center() +/* */ { +/* 62 */ Dimension dim = getSize(); +/* 63 */ Dimension scrdim = Toolkit.getDefaultToolkit().getScreenSize(); +/* 64 */ int x = scrdim.width >= dim.width ? (scrdim.width - dim.width) / 2 : +/* 65 */ 0; +/* 66 */ int y = scrdim.height >= dim.height ? (scrdim.height - dim.height) / 2 : +/* 67 */ 0; +/* 68 */ setLocation(x, y); +/* */ } +/* */ +/* */ public void dispose() +/* */ { +/* 73 */ super.dispose(); +/* */ try { +/* 75 */ this.sc.flush(); +/* */ } catch (NullPointerException e) { +/* 77 */ System.out.println("Flushing went bad!"); +/* */ } +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\SplashScreen.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/StackedLayout.java b/NET/worlds/console/StackedLayout.java new file mode 100644 index 0000000..f98dc49 --- /dev/null +++ b/NET/worlds/console/StackedLayout.java @@ -0,0 +1,2998 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import java.awt.Component; +/* */ import java.awt.Container; +/* */ import java.awt.Dimension; +/* */ import java.awt.Insets; +/* */ import java.awt.LayoutManager; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ class StackedLayout +/* */ implements LayoutManager +/* */ { +/* */ public void addLayoutComponent(String name, Component c) {} +/* */ +/* */ public void removeLayoutComponent(Component c) {} +/* */ +/* */ public Dimension preferredLayoutSize(Container target) +/* */ { +/* 2948 */ Dimension size = new Dimension(0, 0); +/* */ +/* 2950 */ int count = target.getComponentCount(); +/* 2951 */ for (int i = 0; i < count; i++) { +/* 2952 */ Component m = target.getComponent(i); +/* 2953 */ Dimension d = m.getPreferredSize(); +/* 2954 */ size.width = Math.max(size.width, d.width); +/* 2955 */ size.height += d.height; +/* */ } +/* */ +/* 2958 */ Insets insets = target.getInsets(); +/* 2959 */ size.width += insets.left + insets.right; +/* 2960 */ size.height += insets.top + insets.bottom; +/* 2961 */ return size; +/* */ } +/* */ +/* */ public Dimension minimumLayoutSize(Container target) +/* */ { +/* 2966 */ return preferredLayoutSize(target); +/* */ } +/* */ +/* */ public void layoutContainer(Container target) +/* */ { +/* 2971 */ Insets insets = target.getInsets(); +/* 2972 */ Dimension size = target.getSize(); +/* 2973 */ int x = insets.left; +/* 2974 */ int y = insets.top; +/* 2975 */ int width = size.width - insets.left - insets.right; +/* 2976 */ int height = size.height - insets.top - insets.bottom; +/* 2977 */ int count = target.getComponentCount(); +/* */ +/* 2979 */ for (int i = 0; i < count; i++) { +/* 2980 */ Component c = target.getComponent(i); +/* 2981 */ int h = c.getPreferredSize().height; +/* 2982 */ if (i == count - 1) { +/* 2983 */ h = Math.max(h, height); +/* */ } else +/* 2985 */ h = Math.min(h, height); +/* 2986 */ h = Math.max(0, h); +/* 2987 */ c.setBounds(x, y, width, h); +/* 2988 */ height -= h; +/* 2989 */ y += h; +/* */ } +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\StackedLayout.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/Stair.java b/NET/worlds/console/Stair.java new file mode 100644 index 0000000..f36a5f6 --- /dev/null +++ b/NET/worlds/console/Stair.java @@ -0,0 +1,250 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import NET.worlds.scape.Material; +/* */ import NET.worlds.scape.NoSuchPropertyException; +/* */ import NET.worlds.scape.Point3; +/* */ import NET.worlds.scape.Point3Temp; +/* */ import NET.worlds.scape.Portal; +/* */ import NET.worlds.scape.Property; +/* */ import NET.worlds.scape.Rect; +/* */ import NET.worlds.scape.Restorer; +/* */ import NET.worlds.scape.Room; +/* */ import NET.worlds.scape.RoomEnvironment; +/* */ import NET.worlds.scape.Saver; +/* */ import NET.worlds.scape.TooNewException; +/* */ import NET.worlds.scape.World; +/* */ import java.io.IOException; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public class Stair +/* */ extends Room +/* */ { +/* */ public Portal bottom; +/* */ public Portal top; +/* */ private int _lengthwise; +/* */ static final int PLUSX = 0; +/* */ static final int PLUSY = 1; +/* */ static final int MINUSX = 2; +/* */ static final int MINUSY = 3; +/* */ private float _length; +/* */ private float _width; +/* */ private float _rise; +/* */ +/* */ public Stair(World world, String name, float width, float length, float rise, float ceilingz, int numsteps, Material riser, Material tread, Material left, Material right, Material head, Material ceiling) +/* */ { +/* 70 */ super(world, name); +/* */ +/* 72 */ this._lengthwise = 1; +/* 73 */ this._length = length; +/* 74 */ this._width = width; +/* 75 */ this._rise = rise; +/* */ +/* 77 */ RoomEnvironment env = getEnvironment(); +/* */ +/* 79 */ env.add(Rect.ceiling(0.0F, 0.0F, ceilingz, width, length, ceiling)); +/* */ +/* 81 */ float lowerz = ceilingz - rise; +/* 82 */ env.add(new Rect(-0.1F, 0.0F, 0.0F, -0.1F, length, ceilingz, left)); +/* 83 */ env.add(new Rect(width + 0.1F, length, 0.0F, width + 0.1F, 0.0F, ceilingz, +/* 84 */ right)); +/* 85 */ env.add(new Rect(width, 0.0F, lowerz, 0.0F, 0.0F, ceilingz, head)); +/* 86 */ this.bottom = new Portal(width, 0.0F, 0.0F, 0.0F, 0.0F, lowerz); +/* 87 */ this.top = new Portal(0.0F, length, rise, width, length, ceilingz); +/* */ +/* 89 */ float dy = length / numsteps; +/* 90 */ float dz = rise / numsteps; +/* */ +/* 92 */ for (int i = 0; i < numsteps; i++) { +/* 93 */ Rect w = new Rect(0.0F, i * dy, i * dz, width, i * dy, (i + 1) * dz, +/* 94 */ riser); +/* 95 */ w.setTileSize(dz, dz); +/* */ +/* */ +/* 98 */ env.add(w); +/* */ } +/* */ +/* 101 */ for (int i = 0; i < numsteps; i++) { +/* 102 */ Rect w = Rect.floor(0.0F, i * dy, (i + 1) * dz, width, (i + 1) * dy, +/* 103 */ tread); +/* 104 */ w.setTileSize(dy, dy); +/* 105 */ env.add(w); +/* */ } +/* */ +/* 108 */ env.add(this.bottom); +/* 109 */ env.add(this.top); +/* */ } +/* */ +/* */ +/* */ +/* */ public Stair() {} +/* */ +/* */ +/* */ void setLength(float len) +/* */ { +/* 119 */ this._length = len; +/* */ } +/* */ +/* */ void setRise(float r) +/* */ { +/* 124 */ this._rise = r; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ void setLengthwise(int lw) +/* */ { +/* 132 */ this._lengthwise = lw; +/* */ } +/* */ +/* */ public float floorHeight(float x, float y, float z) +/* */ { +/* 137 */ float dist = 0.0F; +/* 138 */ switch (this._lengthwise) { +/* */ case 0: +/* 140 */ dist = x; +/* 141 */ break; +/* */ case 2: +/* 143 */ dist = this._length - x; +/* 144 */ break; +/* */ case 1: +/* 146 */ dist = y; +/* 147 */ break; +/* */ case 3: +/* 149 */ dist = this._length - y; +/* 150 */ break; +/* */ default: +/* 152 */ if (!$assertionsDisabled) throw new AssertionError(); +/* */ break; } +/* 154 */ return dist / this._length * this._rise; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ public Point3 surfaceNormal(float x, float y) +/* */ { +/* 162 */ Point3 A = new Point3(this._width, 0.0F, 0.0F); +/* 163 */ Point3Temp B = Point3Temp.make(0.0F, this._length, this._rise); +/* 164 */ A.cross(B); +/* 165 */ A.normalize(); +/* 166 */ return A; +/* */ } +/* */ +/* 169 */ private static Object classCookie = new Object(); +/* */ +/* */ public void saveState(Saver s) throws IOException +/* */ { +/* 173 */ s.saveVersion(1, classCookie); +/* 174 */ super.saveState(s); +/* 175 */ s.saveFloat(this._length); +/* 176 */ s.saveFloat(this._rise); +/* 177 */ s.saveInt(this._lengthwise); +/* 178 */ s.save(this.bottom); +/* 179 */ s.save(this.top); +/* */ } +/* */ +/* */ public void restoreState(Restorer r) throws IOException, TooNewException +/* */ { +/* 184 */ switch (r.restoreVersion(classCookie)) { +/* */ case 1: +/* 186 */ super.restoreState(r); +/* 187 */ this._length = r.restoreFloat(); +/* 188 */ this._rise = r.restoreFloat(); +/* 189 */ this._lengthwise = r.restoreInt(); +/* 190 */ this.bottom = ((Portal)r.restore()); +/* 191 */ this.top = ((Portal)r.restore()); +/* 192 */ break; +/* */ case 0: +/* 194 */ super.restoreState(r); +/* 195 */ this._length = r.restoreFloat(); +/* 196 */ this._rise = r.restoreFloat(); +/* 197 */ this.bottom = ((Portal)r.restore()); +/* 198 */ this.top = ((Portal)r.restore()); +/* 199 */ setLengthwise(1); +/* 200 */ break; +/* */ default: +/* 202 */ throw new TooNewException(); +/* */ } +/* */ } +/* */ +/* */ void superRestoreState(Restorer r) throws IOException, TooNewException +/* */ { +/* 208 */ super.restoreState(r); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ public Object properties(int index, int offset, int mode, Object value) +/* */ throws NoSuchPropertyException +/* */ { +/* 217 */ Object ret = null; +/* */ +/* 219 */ switch (index - offset) { +/* */ case 0: +/* 221 */ if (mode == 0) { +/* 222 */ ret = new Property(this, index, "Length"); +/* 223 */ } else if (mode == 1) +/* 224 */ ret = new Float(this._length); +/* 225 */ break; +/* */ case 1: +/* 227 */ if (mode == 0) { +/* 228 */ ret = new Property(this, index, "Rise"); +/* 229 */ } else if (mode == 1) +/* 230 */ ret = new Float(this._rise); +/* 231 */ break; +/* */ case 2: +/* 233 */ if (mode == 0) { +/* 234 */ ret = new Property(this, index, "Direction"); +/* 235 */ } else if (mode == 1) +/* 236 */ ret = new Integer(this._lengthwise); +/* 237 */ break; +/* */ default: +/* 239 */ ret = super.properties(index, offset + 3, mode, value); +/* */ } +/* */ +/* 242 */ return ret; +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\Stair.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/Staircase.java b/NET/worlds/console/Staircase.java new file mode 100644 index 0000000..6028aa3 --- /dev/null +++ b/NET/worlds/console/Staircase.java @@ -0,0 +1,312 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import NET.worlds.scape.FrameEvent; +/* */ import NET.worlds.scape.FrameHandler; +/* */ import NET.worlds.scape.Material; +/* */ import NET.worlds.scape.Point3; +/* */ import NET.worlds.scape.Point3Temp; +/* */ import NET.worlds.scape.Portal; +/* */ import NET.worlds.scape.Rect; +/* */ import NET.worlds.scape.Restorer; +/* */ import NET.worlds.scape.Room; +/* */ import NET.worlds.scape.RoomEnvironment; +/* */ import NET.worlds.scape.Saver; +/* */ import NET.worlds.scape.TooNewException; +/* */ import NET.worlds.scape.WObject; +/* */ import NET.worlds.scape.World; +/* */ import java.io.IOException; +/* */ import java.util.Enumeration; +/* */ import java.util.Vector; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public class Staircase +/* */ extends Room +/* */ implements FrameHandler +/* */ { +/* */ public Portal bottom; +/* */ public Portal top; +/* */ private float dzdx; +/* */ private float dzdy; +/* */ +/* */ public Staircase(World world, String name, float x1, float y1, float z1, float x2, float y2, float z2, float ceilingz, int numsteps, Material riser, Material tread, Material left, Material right, Material head, Material ceiling) +/* */ { +/* 64 */ super(world, name); +/* */ +/* 66 */ float dx = (x2 - x1) / numsteps; +/* 67 */ float dy = (y2 - y1) / numsteps; +/* 68 */ float dz = (z2 - z1) / numsteps; +/* 69 */ this.dzdx = (dz / dx); +/* 70 */ this.dzdy = (dz / dy); +/* 71 */ assert (dz >= 0.0F); +/* */ +/* 73 */ float bottomtopz = z1 + ceilingz - z2; +/* 74 */ RoomEnvironment env = getEnvironment(); +/* */ +/* 76 */ env.add(Rect.ceiling(x1, y1, ceilingz, x2, y2, ceiling)); +/* */ +/* 78 */ if (dx > 0.0F) { +/* 79 */ if (dy > 0.0F) +/* */ { +/* 81 */ env.add(new Rect(x1 - 0.1F, y1, z1, x1 - 0.1F, y2, ceilingz, +/* 82 */ left)); +/* 83 */ env.add(new Rect(x2 + 0.1F, y2, z1, x2 + 0.1F, y1, ceilingz, +/* 84 */ right)); +/* 85 */ env.add(new Rect(x2, y1, bottomtopz, x1, y1, ceilingz, head)); +/* 86 */ this.bottom = new Portal(x2, y1, z1, x1, y1, bottomtopz); +/* 87 */ this.top = new Portal(x1, y2, z2, x2, y2, ceilingz); +/* */ +/* 89 */ for (int i = 0; i < numsteps; i++) { +/* 90 */ Rect w = new Rect(x1, y1 + i * dy, z1 + i * dz, x2, y1 + i * +/* 91 */ dy, z1 + (i + 1) * dz, riser); +/* 92 */ w.setTileSize(dz, dz); +/* */ +/* */ +/* 95 */ env.add(w); +/* */ } +/* */ +/* 98 */ for (int i = 0; i < numsteps; i++) { +/* 99 */ Rect w = Rect.floor(x1, y1 + i * dy, z1 + (i + 1) * dz, x2, +/* 100 */ y1 + (i + 1) * dy, tread); +/* 101 */ w.setTileSize(Math.abs(dy), Math.abs(dy)); +/* 102 */ env.add(w); +/* */ } +/* 104 */ this.dzdx = 0.0F; +/* */ } +/* */ else { +/* 107 */ env.add(new Rect(x1, y1 - 0.1F, z1, x2, y1 - 0.1F, ceilingz, +/* 108 */ left)); +/* 109 */ env.add(new Rect(x2, y2 + 0.1F, z1, x1, y2 + 0.1F, ceilingz, +/* 110 */ right)); +/* 111 */ env.add(new Rect(x1, y2, bottomtopz, x1, y1, ceilingz, head)); +/* 112 */ this.bottom = new Portal(x1, y2, z1, x1, y1, bottomtopz); +/* 113 */ this.top = new Portal(x2, y1, z2, x2, y2, ceilingz); +/* */ +/* 115 */ for (int i = 0; i < numsteps; i++) { +/* 116 */ Rect w = new Rect(x1 + i * dx, y1, z1 + i * dz, +/* 117 */ x1 + i * dx, y2, z1 + (i + 1) * dz, riser); +/* 118 */ w.setTileSize(dz, dz); +/* */ +/* */ +/* 121 */ env.add(w); +/* */ } +/* */ +/* 124 */ for (int i = 0; i < numsteps; i++) { +/* 125 */ Rect w = Rect.floor(x1 + i * dx, y2, z1 + (i + 1) * dz, x1 + +/* 126 */ (i + 1) * dx, y1, tread); +/* 127 */ w.setTileSize(Math.abs(dx), Math.abs(dx)); +/* 128 */ env.add(w); +/* */ } +/* 130 */ this.dzdy = 0.0F; +/* */ } +/* */ } +/* 133 */ else if (dy > 0.0F) +/* */ { +/* 135 */ env.add(new Rect(x1, y1 - 0.1F, z1, x2, y1 - 0.1F, ceilingz, +/* 136 */ left)); +/* 137 */ env.add(new Rect(x2, y2 + 0.1F, z1, x1, y2 + 0.1F, ceilingz, +/* 138 */ right)); +/* 139 */ env.add(new Rect(x1, y2, bottomtopz, x1, y1, ceilingz, head)); +/* 140 */ this.bottom = new Portal(x1, y2, z1, x1, y1, bottomtopz); +/* 141 */ this.top = new Portal(x2, y1, z2, x2, y2, ceilingz); +/* */ +/* 143 */ for (int i = 0; i < numsteps; i++) { +/* 144 */ Rect w = new Rect(x1 + i * dx, y1, z1 + i * dz, +/* 145 */ x1 + i * dx, y2, z1 + (i + 1) * dz, riser); +/* 146 */ w.setTileSize(dz, dz); +/* */ +/* */ +/* 149 */ env.add(w); +/* */ } +/* */ +/* 152 */ for (int i = 0; i < numsteps; i++) { +/* 153 */ Rect w = Rect.floor(x1 + (i + 1) * dx, y1, z1 + (i + 1) * +/* 154 */ dz, x1 + i * dx, y2, tread); +/* 155 */ w.setTileSize(Math.abs(dx), Math.abs(dx)); +/* 156 */ env.add(w); +/* */ } +/* 158 */ this.dzdy = 0.0F; +/* */ } +/* */ else { +/* 161 */ env.add(new Rect(x1 + 0.1F, y1, z1, x1 + 0.1F, y2, ceilingz, +/* 162 */ left)); +/* 163 */ env.add(new Rect(x2 - 0.1F, y2, z1, x2 - 0.1F, y1, ceilingz, +/* 164 */ right)); +/* 165 */ env.add(new Rect(x2, y1, bottomtopz, x1, y1, ceilingz, head)); +/* 166 */ this.bottom = new Portal(x2, y1, z1, x1, y1, bottomtopz); +/* 167 */ this.top = new Portal(x1, y2, z2, x2, y2, ceilingz); +/* */ +/* 169 */ for (int i = 0; i < numsteps; i++) { +/* 170 */ Rect w = new Rect(x1, y1 + i * dy, z1 + i * dz, x2, y1 + i * +/* 171 */ dy, z1 + (i + 1) * dz, riser); +/* 172 */ w.setTileSize(dz, dz); +/* */ +/* */ +/* 175 */ env.add(w); +/* */ } +/* */ +/* 178 */ for (int i = 0; i < numsteps; i++) { +/* 179 */ Rect w = Rect.floor(x2, y1 + (i + 1) * dy, z1 + (i + 1) * +/* 180 */ dz, x1, y1 + i * dy, tread); +/* 181 */ w.setTileSize(Math.abs(dy), Math.abs(dy)); +/* 182 */ env.add(w); +/* */ } +/* 184 */ this.dzdx = 0.0F; +/* */ } +/* */ +/* 187 */ env.add(this.bottom); +/* 188 */ env.add(this.top); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* 199 */ private Vector<WObject> seenThings = new Vector(); +/* */ +/* */ +/* */ +/* */ +/* 204 */ private Vector<Point3> seenStarts = new Vector(); +/* */ +/* */ public Staircase() {} +/* */ +/* */ public boolean handle(FrameEvent e) +/* */ { +/* 210 */ Enumeration<WObject> stuff = getContents(); +/* 211 */ while (stuff.hasMoreElements()) { +/* 212 */ WObject thing = (WObject)stuff.nextElement(); +/* 213 */ int i = this.seenThings.indexOf(thing); +/* 214 */ if (i == -1) +/* */ { +/* 216 */ this.seenThings.addElement(thing); +/* 217 */ Point3Temp startpos = thing.getPosition(); +/* */ +/* 219 */ Point3Temp topctr = Point3Temp.make(this.top.getScaleX(), 0.0F, +/* 220 */ this.top.getScaleZ()).times(0.5F).times( +/* 221 */ this.top.getObjectToWorldMatrix()); +/* 222 */ Point3Temp bottomctr = Point3Temp.make(this.bottom.getScaleX(), 0.0F, +/* 223 */ this.bottom.getScaleZ()).times(0.5F).times( +/* 224 */ this.bottom.getObjectToWorldMatrix()); +/* 225 */ if (topctr.x == bottomctr.x) { +/* 226 */ float t = (startpos.y - bottomctr.y) / ( +/* 227 */ topctr.y - bottomctr.y); +/* 228 */ if (t < 0.5F) { +/* 229 */ startpos.y = bottomctr.y; +/* */ } else +/* 231 */ startpos.y = topctr.y; +/* 232 */ this.dzdx = 0.0F; +/* 233 */ } else if (topctr.y == bottomctr.y) { +/* 234 */ float t = (startpos.x - bottomctr.x) / ( +/* 235 */ topctr.x - bottomctr.x); +/* 236 */ if (t < 0.5F) { +/* 237 */ startpos.x = bottomctr.x; +/* */ } else +/* 239 */ startpos.x = topctr.x; +/* 240 */ this.dzdy = 0.0F; +/* */ } +/* 242 */ else if (!$assertionsDisabled) { throw new AssertionError(); } +/* 243 */ this.seenStarts.addElement(new Point3(startpos)); +/* 244 */ i = this.seenThings.size() - 1; +/* 245 */ assert (i == this.seenStarts.size() - 1); +/* */ } +/* 247 */ Point3Temp oldpos = (Point3Temp)this.seenStarts.elementAt(i); +/* */ +/* 249 */ Point3Temp pos = thing.getPosition(); +/* 250 */ float deltaz = this.dzdx * (pos.x - oldpos.x) + this.dzdy * ( +/* 251 */ pos.y - oldpos.y) + oldpos.z - pos.z; +/* 252 */ if (deltaz != 0.0F) { +/* 253 */ thing.raise(deltaz); +/* */ } +/* */ } +/* 256 */ return true; +/* */ } +/* */ +/* 259 */ private static Object classCookie = new Object(); +/* */ +/* */ public void saveState(Saver s) throws IOException +/* */ { +/* 263 */ s.saveVersion(0, classCookie); +/* 264 */ super.saveState(s); +/* 265 */ s.saveFloat(this.dzdx); +/* 266 */ s.saveFloat(this.dzdy); +/* 267 */ s.save(this.bottom); +/* 268 */ s.save(this.top); +/* */ } +/* */ +/* */ public void restoreState(Restorer r) throws IOException, TooNewException +/* */ { +/* 273 */ Stair s = new Stair(); +/* 274 */ r.replace(this, s); +/* 275 */ int version = r.restoreVersion(classCookie); +/* 276 */ if (version != 0) +/* 277 */ throw new TooNewException(); +/* 278 */ s.superRestoreState(r); +/* 279 */ float dzdx = r.restoreFloat(); +/* 280 */ float dzdy = r.restoreFloat(); +/* 281 */ s.bottom = ((Portal)r.restore()); +/* 282 */ s.top = ((Portal)r.restore()); +/* */ +/* 284 */ Point3Temp tllc = s.top.getPosition(); +/* 285 */ Point3Temp bllc = s.bottom.getPosition(); +/* 286 */ s.setRise(tllc.z - bllc.z); +/* 287 */ if (dzdx == 0.0F) { +/* 288 */ if (dzdy > 0.0F) { +/* 289 */ s.setLengthwise(1); +/* 290 */ s.setLength(tllc.y - bllc.y); +/* */ } else { +/* 292 */ s.setLengthwise(3); +/* 293 */ s.setLength(bllc.y - tllc.y); +/* */ } +/* */ } else { +/* 296 */ assert (dzdy == 0.0F); +/* 297 */ if (dzdx > 0.0F) { +/* 298 */ s.setLengthwise(0); +/* 299 */ s.setLength(tllc.x - bllc.x); +/* */ } else { +/* 301 */ s.setLengthwise(2); +/* 302 */ s.setLength(bllc.x - tllc.x); +/* */ } +/* */ } +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\Staircase.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/Startup.java b/NET/worlds/console/Startup.java new file mode 100644 index 0000000..37a8a56 --- /dev/null +++ b/NET/worlds/console/Startup.java @@ -0,0 +1,16 @@ +package NET.worlds.console; + +public class Startup +{ + public static native boolean synchronizeStartup(String paramString, boolean paramBoolean); + + public static native int getVolumeInfo(); + + public static native void computeVolumeInfo(String paramString); +} + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\Startup.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/StatMan.java b/NET/worlds/console/StatMan.java new file mode 100644 index 0000000..aaa4aab --- /dev/null +++ b/NET/worlds/console/StatMan.java @@ -0,0 +1,71 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import java.awt.List; +/* */ import java.util.Vector; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ abstract class StatMan +/* */ { +/* */ protected Vector<Object> _children; +/* */ protected List _grabbedList; +/* */ protected Tree _tree; +/* */ +/* */ void createList() +/* */ { +/* 22 */ updateList(); +/* */ } +/* */ +/* */ abstract void updateList(); +/* */ +/* */ void releaseList(boolean terminalCallback) { +/* 28 */ this._grabbedList = null; +/* */ } +/* */ +/* */ void grabList(List list) +/* */ { +/* 33 */ assert (this._grabbedList == null); +/* */ +/* 35 */ this._grabbedList = list; +/* 36 */ this._grabbedList.removeAll(); +/* 37 */ createList(); +/* */ } +/* */ +/* */ void setTree(Tree tree) { +/* 41 */ this._tree = tree; +/* 42 */ if (this._children != null) { +/* 43 */ for (int i = this._children.size() - 1; i >= 0; i--) { +/* 44 */ StatMan child = (StatMan)this._children.elementAt(i); +/* 45 */ child.setTree(this._tree); +/* */ } +/* */ } +/* */ } +/* */ +/* */ Vector<Object> getChildren() { +/* 51 */ return this._children; +/* */ } +/* */ +/* */ void addChild(StatMan child) { +/* 55 */ assert (child != null); +/* 56 */ if (this._children == null) +/* 57 */ this._children = new Vector(); +/* 58 */ assert (this._children.indexOf(child) == -1); +/* 59 */ this._children.addElement(child); +/* 60 */ if (this._tree != null) { +/* 61 */ child.setTree(this._tree); +/* 62 */ this._tree.update(); +/* */ } +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\StatMan.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/StatMemNode.java b/NET/worlds/console/StatMemNode.java new file mode 100644 index 0000000..8791053 --- /dev/null +++ b/NET/worlds/console/StatMemNode.java @@ -0,0 +1,151 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import NET.worlds.core.Std; +/* */ import java.awt.List; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public class StatMemNode +/* */ extends StatMan +/* */ implements MainCallback +/* */ { +/* 25 */ private static StatMemNode _singleInstance = new StatMemNode(); +/* */ private int _lastTime; +/* */ +/* 28 */ public static StatMemNode getNode() { return _singleInstance; } +/* */ +/* */ private static final int TITLE = 0; +/* */ private StatMemNode() { +/* 32 */ StatisticsRoot.getNode().addChild(this); +/* */ } +/* */ +/* */ private static final int BLANK1 = 1; +/* */ private static final int TOTMEM = 2; +/* */ static +/* */ { +/* 39 */ nativeInit(); +/* */ } +/* */ +/* */ public String toString() +/* */ { +/* 44 */ return "System Memory"; +/* */ } +/* */ +/* */ +/* */ +/* */ synchronized void grabList(List list) +/* */ { +/* 51 */ super.grabList(list); +/* 52 */ Main.register(this); +/* */ } +/* */ +/* */ +/* */ synchronized void releaseList(boolean terminalCallback) +/* */ { +/* 58 */ if (!terminalCallback) { +/* 59 */ Main.unregister(this); +/* */ } +/* 61 */ super.releaseList(terminalCallback); +/* */ } +/* */ +/* */ +/* */ public synchronized void mainCallback() +/* */ { +/* 67 */ int thisTime = Std.getFastTime(); +/* 68 */ if (thisTime - this._lastTime > 1000) { +/* 69 */ updateList(); +/* 70 */ this._lastTime = thisTime; +/* */ } +/* */ } +/* */ +/* */ public int getVMAvail() { +/* 75 */ updateMemoryStatus(); +/* 76 */ return this._availPageMem; +/* */ } +/* */ +/* */ +/* */ private static final int FREEMEM = 3; +/* */ +/* */ private static final int BLANK2 = 4; +/* */ +/* */ private static final int TOTPHYSMEM = 5; +/* */ private static final int AVAILPHYSMEM = 6; +/* */ private static final int SWAPUSED = 7; +/* */ private static final int AVAILVIRTMEM = 8; +/* */ private static final int TOTUSED = 9; +/* */ private long _lastTotMem; +/* */ public int _totPhysMem; +/* */ public int _availPhysMem; +/* */ public int _totPageMem; +/* */ public int _availPageMem; +/* */ void createList() +/* */ { +/* 96 */ this._grabbedList.add("System Memory Stats", 0); +/* 97 */ this._grabbedList.add("", 1); +/* 98 */ this._lastTotMem = Runtime.getRuntime().totalMemory(); +/* 99 */ this._grabbedList.add("Total " + Std.getProductName() + +/* 100 */ " Memory Available: " + this._lastTotMem + " bytes", 2); +/* */ +/* 102 */ updateMemoryStatus(); +/* */ +/* 104 */ this._grabbedList.add(" Free " + Std.getProductName() + +/* 105 */ " Memory Available: " + Runtime.getRuntime().freeMemory() + +/* 106 */ " bytes", 3); +/* 107 */ this._grabbedList.add("", 4); +/* 108 */ this._grabbedList.add("Total System Physical Memory: " + this._totPhysMem + +/* 109 */ " bytes", 5); +/* 110 */ this._grabbedList.add("Available System Physical Memory: " + +/* 111 */ this._availPhysMem + " bytes", 6); +/* 112 */ this._grabbedList.add("Total System Swapfile Usage: " + ( +/* 113 */ this._totPageMem - this._availPageMem) + " bytes", 7); +/* 114 */ this._grabbedList.add("Available Virtual Memory: " + this._availPageMem + +/* 115 */ " bytes", 8); +/* */ } +/* */ +/* */ void updateList() +/* */ { +/* 120 */ long thisTotMem = Runtime.getRuntime().totalMemory(); +/* 121 */ if (thisTotMem != this._lastTotMem) { +/* 122 */ this._lastTotMem = thisTotMem; +/* 123 */ this._grabbedList.replaceItem("Total " + Std.getProductName() + +/* 124 */ " Memory Available: " + this._lastTotMem + " bytes", 2); +/* */ } +/* */ +/* 127 */ updateMemoryStatus(); +/* */ +/* 129 */ this._grabbedList.replaceItem(" Free " + Std.getProductName() + +/* 130 */ " Memory Available: " + Runtime.getRuntime().freeMemory() + +/* 131 */ " bytes", 3); +/* 132 */ this._grabbedList.replaceItem("Total System Physical Memory: " + this._totPhysMem + +/* 133 */ " bytes", 5); +/* 134 */ this._grabbedList.replaceItem("Available System Physical Memory: " + +/* 135 */ this._availPhysMem + " bytes", 6); +/* 136 */ this._grabbedList.replaceItem("Total System Swapfile Usage: " + ( +/* 137 */ this._totPageMem - this._availPageMem) + " bytes", 7); +/* 138 */ this._grabbedList.replaceItem("Available Virtual Memory: " + this._availPageMem + +/* 139 */ " bytes", 8); +/* */ } +/* */ +/* */ public static native void nativeInit(); +/* */ +/* */ public native void updateMemoryStatus(); +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\StatMemNode.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/StatNetMUNode.java b/NET/worlds/console/StatNetMUNode.java new file mode 100644 index 0000000..ede89ea --- /dev/null +++ b/NET/worlds/console/StatNetMUNode.java @@ -0,0 +1,117 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import NET.worlds.core.Std; +/* */ import java.awt.List; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public class StatNetMUNode +/* */ extends StatMan +/* */ implements MainCallback +/* */ { +/* 19 */ private static StatNetMUNode _singleInstance = new StatNetMUNode(); +/* */ private int _totBytesSent; +/* */ +/* 22 */ public static StatNetMUNode getNode() { return _singleInstance; } +/* */ +/* */ private StatNetMUNode() +/* */ { +/* 26 */ StatNetNode.getNode().addChild(this); +/* */ } +/* */ +/* */ public String toString() +/* */ { +/* 31 */ return "Multiuser Server Connections"; +/* */ } +/* */ +/* */ private int _totBytesRcvd; +/* */ private int _totPacketsSent; +/* */ private int _totPacketsRcvd; +/* */ private int _lastTime; +/* */ private static final int TITLE = 0; +/* */ public void addBytesSent(int bytesSent) { +/* 40 */ this._totBytesSent += bytesSent; +/* */ } +/* */ +/* */ public void addBytesRcvd(int bytesRcvd) { +/* 44 */ this._totBytesRcvd += bytesRcvd; +/* */ } +/* */ +/* */ public void addPacketsSent(int pktSent) { +/* 48 */ this._totPacketsSent += pktSent; +/* */ } +/* */ +/* */ public void addPacketsRcvd(int pktRcvd) { +/* 52 */ this._totPacketsRcvd += pktRcvd; +/* */ } +/* */ +/* */ void grabList(List list) +/* */ { +/* 57 */ super.grabList(list); +/* 58 */ Main.register(this); +/* */ } +/* */ +/* */ void releaseList(boolean terminalCallback) +/* */ { +/* 63 */ if (!terminalCallback) +/* 64 */ Main.unregister(this); +/* 65 */ super.releaseList(terminalCallback); +/* */ } +/* */ +/* */ public void mainCallback() { +/* 69 */ int thisTime = Std.getFastTime(); +/* 70 */ if (thisTime - this._lastTime > 1000) { +/* 71 */ updateList(); +/* 72 */ this._lastTime = thisTime; +/* */ } +/* */ } +/* */ +/* */ +/* */ private static final int BLANK1 = 1; +/* */ +/* */ private static final int TOTBYTESSENT = 2; +/* */ private static final int TOTBYTESRCVD = 3; +/* */ private static final int BLANK2 = 4; +/* */ private static final int TOTPKTSSENT = 5; +/* */ private static final int TOTPKTSRCVD = 6; +/* */ void createList() +/* */ { +/* 86 */ this._grabbedList.add("Overall Multiuser Server Network Statistics:", +/* 87 */ 0); +/* 88 */ this._grabbedList.add("", 1); +/* 89 */ this._grabbedList.add(" Total bytes sent: " + this._totBytesSent + +/* 90 */ " bytes", 2); +/* 91 */ this._grabbedList.add("Total bytes received: " + this._totBytesRcvd + +/* 92 */ " bytes", 3); +/* 93 */ this._grabbedList.add("", 4); +/* 94 */ this._grabbedList.add(" Total packets sent: " + this._totPacketsSent + +/* 95 */ " packets", 5); +/* 96 */ this._grabbedList.add("Total packets received: " + this._totPacketsRcvd + +/* 97 */ " packets", 6); +/* */ } +/* */ +/* */ void updateList() +/* */ { +/* 102 */ this._grabbedList.replaceItem(" Total bytes sent: " + this._totBytesSent + +/* 103 */ " bytes", 2); +/* 104 */ this._grabbedList.replaceItem("Total bytes received: " + this._totBytesRcvd + +/* 105 */ " bytes", 3); +/* 106 */ this._grabbedList.replaceItem(" Total packets sent: " + this._totPacketsSent + +/* 107 */ " packets", 5); +/* 108 */ this._grabbedList.replaceItem("Total packets received: " + this._totPacketsRcvd + +/* 109 */ " packets", 6); +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\StatNetMUNode.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/StatNetNode.java b/NET/worlds/console/StatNetNode.java new file mode 100644 index 0000000..a779295 --- /dev/null +++ b/NET/worlds/console/StatNetNode.java @@ -0,0 +1,38 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import java.awt.List; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ class StatNetNode +/* */ extends StatMan +/* */ { +/* 13 */ private static StatNetNode _singleInstance = new StatNetNode(); +/* */ +/* */ public static StatNetNode getNode() { +/* 16 */ return _singleInstance; +/* */ } +/* */ +/* */ private StatNetNode() { +/* 20 */ StatisticsRoot.getNode().addChild(this); +/* */ } +/* */ +/* */ public String toString() +/* */ { +/* 25 */ return "Network"; +/* */ } +/* */ +/* */ void updateList() +/* */ { +/* 30 */ this._grabbedList.add("Overall Networking Statistics"); +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\StatNetNode.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/StatNetRefNode.java b/NET/worlds/console/StatNetRefNode.java new file mode 100644 index 0000000..7466a04 --- /dev/null +++ b/NET/worlds/console/StatNetRefNode.java @@ -0,0 +1,118 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import NET.worlds.core.Std; +/* */ import NET.worlds.network.NetworkRoom; +/* */ import NET.worlds.network.WorldServer; +/* */ import NET.worlds.scape.Pilot; +/* */ import NET.worlds.scape.Room; +/* */ import java.awt.List; +/* */ import java.util.Vector; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public class StatNetRefNode +/* */ extends StatMan +/* */ implements MainCallback +/* */ { +/* 22 */ private static StatNetRefNode _singleInstance = new StatNetRefNode(); +/* */ private int _totBytesSent; +/* */ +/* 25 */ public static StatNetRefNode getNode() { return _singleInstance; } +/* */ +/* */ private int _totBytesRcvd; +/* */ private int _totPacketsSent; +/* 29 */ private StatNetRefNode() { StatNetNode.getNode().addChild(this); } +/* */ +/* */ +/* */ public String toString() +/* */ { +/* 34 */ return "Drone Referrers to Current Server"; +/* */ } +/* */ +/* */ private int _totPacketsRcvd; +/* */ private int _lastTime; +/* */ private static final int TITLE = 0; +/* */ private static final int BLANK = 1; +/* */ public void addBytesSent(int bytesSent) +/* */ { +/* 43 */ this._totBytesSent += bytesSent; +/* */ } +/* */ +/* */ public void addBytesRcvd(int bytesRcvd) { +/* 47 */ this._totBytesRcvd += bytesRcvd; +/* */ } +/* */ +/* */ public void addPacketsSent(int pktSent) { +/* 51 */ this._totPacketsSent += pktSent; +/* */ } +/* */ +/* */ public void addPacketsRcvd(int pktRcvd) { +/* 55 */ this._totPacketsRcvd += pktRcvd; +/* */ } +/* */ +/* */ void grabList(List list) +/* */ { +/* 60 */ super.grabList(list); +/* 61 */ Main.register(this); +/* */ } +/* */ +/* */ void releaseList(boolean terminalCallback) +/* */ { +/* 66 */ if (!terminalCallback) +/* 67 */ Main.unregister(this); +/* 68 */ super.releaseList(terminalCallback); +/* */ } +/* */ +/* */ public void mainCallback() { +/* 72 */ int thisTime = Std.getFastTime(); +/* 73 */ if (thisTime - this._lastTime > 1000) { +/* 74 */ updateList(); +/* 75 */ this._lastTime = thisTime; +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ void createList() +/* */ { +/* 85 */ this._grabbedList.add("Drones Referring to Current Server:", 0); +/* 86 */ this._grabbedList.add("", 1); +/* */ +/* 88 */ Pilot p = Pilot.getActive(); +/* 89 */ Room r = p.getRoom(); +/* 90 */ NetworkRoom netRoom = null; +/* 91 */ if (r != null) +/* 92 */ netRoom = r.getNetworkRoom(); +/* 93 */ WorldServer ws = null; +/* 94 */ if (netRoom != null) +/* 95 */ ws = netRoom.getServer(); +/* 96 */ if (ws != null) { +/* 97 */ Vector<String> list = ws.printDroneReferrers(); +/* 98 */ for (int i = list.size() - 1; i >= 0; i--) { +/* 99 */ String name = (String)list.elementAt(i); +/* 100 */ this._grabbedList.add(name); +/* */ } +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ void updateList() +/* */ { +/* 109 */ this._grabbedList.removeAll(); +/* 110 */ createList(); +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\StatNetRefNode.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/StatRateNode.java b/NET/worlds/console/StatRateNode.java new file mode 100644 index 0000000..e1a74a1 --- /dev/null +++ b/NET/worlds/console/StatRateNode.java @@ -0,0 +1,90 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import NET.worlds.core.Std; +/* */ import java.awt.List; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ class StatRateNode +/* */ extends StatMan +/* */ implements MainCallback +/* */ { +/* 17 */ private static StatRateNode _singleInstance = new StatRateNode(); +/* */ private int _lastTime; +/* */ +/* 20 */ public static StatRateNode getNode() { return _singleInstance; } +/* */ +/* */ private StatRateNode() +/* */ { +/* 24 */ StatisticsRoot.getNode().addChild(this); +/* */ } +/* */ +/* */ public String toString() +/* */ { +/* 29 */ return "Active Threads"; +/* */ } +/* */ +/* */ +/* */ private static final int TITLE = 0; +/* */ synchronized void grabList(List list) +/* */ { +/* 36 */ super.grabList(list); +/* 37 */ Main.register(this); +/* */ } +/* */ +/* */ +/* */ synchronized void releaseList(boolean terminalCallback) +/* */ { +/* 43 */ if (!terminalCallback) { +/* 44 */ Main.unregister(this); +/* */ } +/* 46 */ super.releaseList(terminalCallback); +/* */ } +/* */ +/* */ +/* */ public synchronized void mainCallback() +/* */ { +/* 52 */ int thisTime = Std.getFastTime(); +/* 53 */ if (thisTime - this._lastTime > 1000) { +/* 54 */ updateList(); +/* 55 */ this._lastTime = thisTime; +/* */ } +/* */ } +/* */ +/* */ +/* */ private static final int BLANK1 = 1; +/* */ +/* */ private static final int THREADS = 2; +/* */ +/* */ private int lastQueueLength; +/* */ void createList() +/* */ { +/* 67 */ this._grabbedList.add("Active Thread Statistics", 0); +/* 68 */ this._grabbedList.add("", 1); +/* */ +/* 70 */ this.lastQueueLength = Main.queueLength(); +/* */ +/* 72 */ this._grabbedList +/* 73 */ .add("Number main threads: " + this.lastQueueLength, 2); +/* */ } +/* */ +/* */ void updateList() +/* */ { +/* 78 */ if (Main.queueLength() != this.lastQueueLength) { +/* 79 */ this.lastQueueLength = Main.queueLength(); +/* 80 */ this._grabbedList.replaceItem("Number main threads: " + this.lastQueueLength, +/* 81 */ 2); +/* */ } +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\StatRateNode.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/StatTreeNode.java b/NET/worlds/console/StatTreeNode.java new file mode 100644 index 0000000..9f9e478 --- /dev/null +++ b/NET/worlds/console/StatTreeNode.java @@ -0,0 +1,54 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import java.util.Vector; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ class StatTreeNode +/* */ extends TreeNode +/* */ { +/* */ private StatMan _obj; +/* */ +/* */ public StatTreeNode(StatMan obj, TreeNode parent) +/* */ { +/* 19 */ super(parent); +/* 20 */ assert (obj != null); +/* 21 */ this._obj = obj; +/* */ } +/* */ +/* */ public Vector<Object> getChildren() +/* */ { +/* 26 */ Vector<Object> children = this._obj.getChildren(); +/* 27 */ if (children == null) +/* 28 */ return new Vector(); +/* 29 */ if (children.size() <= 0) +/* 30 */ return children; +/* 31 */ Vector<Object> ret = new Vector(); +/* 32 */ for (int i = 0; i <= children.size() - 1; i++) { +/* 33 */ ret.addElement(new StatTreeNode((StatMan)children.elementAt(i), +/* 34 */ this)); +/* */ } +/* 36 */ return ret; +/* */ } +/* */ +/* */ public Object getObject() +/* */ { +/* 41 */ return this._obj; +/* */ } +/* */ +/* */ public String toString() +/* */ { +/* 46 */ return this._obj.toString(); +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\StatTreeNode.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/StatisticsRoot.java b/NET/worlds/console/StatisticsRoot.java new file mode 100644 index 0000000..c41c85f --- /dev/null +++ b/NET/worlds/console/StatisticsRoot.java @@ -0,0 +1,36 @@ +/* */ package NET.worlds.console; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ class StatisticsRoot +/* */ extends StatMan +/* */ { +/* 13 */ private static StatisticsRoot _singleInstance = new StatisticsRoot(); +/* */ +/* */ public static StatisticsRoot getNode() { +/* 16 */ return _singleInstance; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ void updateList() {} +/* */ +/* */ +/* */ +/* */ public String toString() +/* */ { +/* 28 */ return "Statistics Root"; +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\StatisticsRoot.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/StatisticsWindow.java b/NET/worlds/console/StatisticsWindow.java new file mode 100644 index 0000000..85b955e --- /dev/null +++ b/NET/worlds/console/StatisticsWindow.java @@ -0,0 +1,126 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import java.awt.Dimension; +/* */ import java.awt.Event; +/* */ import java.awt.Frame; +/* */ import java.awt.GridBagConstraints; +/* */ import java.awt.GridBagLayout; +/* */ import java.awt.List; +/* */ import java.awt.Point; +/* */ import java.awt.Window; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public class StatisticsWindow +/* */ extends Frame +/* */ implements MainCallback, MainTerminalCallback, TreeCallback +/* */ { +/* */ private static final long serialVersionUID = 2184104724858956037L; +/* 36 */ Tree _tree = new Tree(this); +/* 37 */ List _list = new List(10, false); +/* */ StatMan _lastStat; +/* */ +/* */ public StatisticsWindow(Window parent) { +/* 41 */ super("Statistics Manager"); +/* */ +/* 43 */ GridBagLayout gbag = new GridBagLayout(); +/* 44 */ setLayout(gbag); +/* 45 */ GridBagConstraints c = new GridBagConstraints(); +/* 46 */ c.fill = 1; +/* 47 */ c.weightx = 0.4D; +/* 48 */ c.weighty = 1.0D; +/* 49 */ c.gridwidth = 1; +/* 50 */ c.gridheight = 0; +/* 51 */ gbag.setConstraints(this._tree, c); +/* 52 */ add(this._tree); +/* 53 */ c.weightx = 0.6D; +/* 54 */ c.gridwidth = 0; +/* 55 */ gbag.setConstraints(this._list, c); +/* 56 */ add(this._list); +/* */ +/* */ +/* 59 */ pack(); +/* 60 */ Point loc = parent.getLocation(); +/* 61 */ Dimension size = parent.getSize(); +/* 62 */ setBounds(loc.x + (size.width - 512) / 2, +/* 63 */ loc.y + (size.height - 240) / 2, 512, 240); +/* */ +/* 65 */ setVisible(true); +/* 66 */ StatisticsRoot root = StatisticsRoot.getNode(); +/* 67 */ root.setTree(this._tree); +/* 68 */ StatTreeNode rootNode = new StatTreeNode(root, null); +/* 69 */ this._tree.change(rootNode, rootNode.getObject()); +/* */ +/* */ +/* 72 */ StatMemNode.getNode(); +/* 73 */ StatNetRefNode.getNode(); +/* */ +/* */ +/* */ +/* 77 */ this._tree.change(rootNode, StatRateNode.getNode()); +/* */ +/* 79 */ Main.register(this); +/* */ } +/* */ +/* */ @Deprecated +/* */ public boolean handleEvent(Event ev) +/* */ { +/* 85 */ switch (ev.id) { +/* */ case 201: +/* 87 */ if (this._lastStat != null) +/* 88 */ this._lastStat.releaseList(false); +/* 89 */ this._lastStat = null; +/* 90 */ dispose(); +/* 91 */ return true; +/* */ } +/* 93 */ return super.handleEvent(ev); +/* */ } +/* */ +/* */ +/* */ public void treeChange(Object obj) +/* */ { +/* 99 */ if (this._lastStat != null) +/* 100 */ this._lastStat.releaseList(false); +/* 101 */ this._lastStat = ((StatMan)obj); +/* 102 */ this._lastStat.grabList(this._list); +/* */ } +/* */ +/* */ +/* */ +/* */ public void treeFocusChanged(boolean hasFocus) {} +/* */ +/* */ +/* */ public void mainCallback() {} +/* */ +/* */ +/* */ public void terminalCallback() +/* */ { +/* 115 */ if (this._lastStat != null) +/* 116 */ this._lastStat.releaseList(true); +/* 117 */ this._lastStat = null; +/* 118 */ Main.unregister(this); +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\StatisticsWindow.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/StyledTextCanvas.java b/NET/worlds/console/StyledTextCanvas.java new file mode 100644 index 0000000..d83679b --- /dev/null +++ b/NET/worlds/console/StyledTextCanvas.java @@ -0,0 +1,1406 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import NET.worlds.core.IniFile; +/* */ import java.awt.Canvas; +/* */ import java.awt.Color; +/* */ import java.awt.Container; +/* */ import java.awt.FontMetrics; +/* */ import java.awt.Graphics; +/* */ import java.awt.Image; +/* */ import java.awt.Rectangle; +/* */ import java.awt.Scrollbar; +/* */ import java.awt.event.KeyEvent; +/* */ import java.awt.event.MouseEvent; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ class StyledTextCanvas +/* */ extends Canvas +/* */ { +/* */ private static final long serialVersionUID = -2680423246934436331L; +/* */ +/* */ public StyledTextCanvas() +/* */ { +/* 1186 */ enableEvents(53L); +/* */ +/* */ +/* 1189 */ setEnabled(true); +/* */ } +/* */ +/* 1192 */ private MouseEvent delayedMouseEvent = null; +/* */ +/* */ public void sendDelayedMouseEvent(MouseEvent e) { +/* 1195 */ synchronized (getParent()) { +/* 1196 */ this.delayedMouseEvent = e; +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* 1218 */ protected int mouseX = -1; +/* 1219 */ protected int mouseY = -1; +/* 1220 */ protected int startX = -1; +/* 1221 */ protected int startY = -1; +/* 1222 */ protected int endX = -1; +/* 1223 */ protected int endY = -1; +/* 1224 */ protected long mouseWhen = 0L; +/* 1225 */ protected boolean mouseActive = false; +/* 1226 */ protected boolean mouseDoubleClick = false; +/* */ +/* 1228 */ protected static long doubleClickSpeed = IniFile.override().getIniInt("DoubleClickSpeed", 300); +/* */ +/* */ protected void processMouseMotionEvent(MouseEvent e) +/* */ { +/* 1232 */ if ((e.getID() == 506) && (this.mouseActive)) { +/* 1233 */ processMouseEvent(e); +/* */ } +/* */ +/* 1236 */ super.processMouseMotionEvent(e); +/* */ } +/* */ +/* */ protected void processMouseEvent(MouseEvent e) +/* */ { +/* 1241 */ synchronized (getParent()) { +/* 1242 */ if (e.getID() == 500) +/* */ { +/* 1244 */ if ((this.mouseWhen > 0L) && +/* 1245 */ (e.getWhen() - this.mouseWhen <= doubleClickSpeed)) +/* */ { +/* 1247 */ this.mouseDoubleClick = true; +/* 1248 */ this.mouseWhen = 0L; +/* 1249 */ this.mouseX = (this.startX = this.endX = e.getX()); +/* 1250 */ this.mouseY = (this.startY = this.endY = e.getY()); +/* 1251 */ ((GammaTextArea)getParent()).selectionConversion = true; +/* 1252 */ getParent().repaint(); +/* */ } +/* */ else { +/* 1255 */ this.mouseDoubleClick = false; +/* 1256 */ this.mouseWhen = e.getWhen(); +/* 1257 */ if ((e.getButton() == 1) && +/* 1258 */ (!this.mouseActive) && +/* 1259 */ ((e.getModifiers() & 0x1) == 0)) { +/* 1260 */ ((GammaTextArea)getParent()).selectionStart = -1; +/* 1261 */ ((GammaTextArea)getParent()).selectionEnd = -1; +/* */ } +/* */ } +/* */ +/* 1265 */ getParent().requestFocus(); +/* 1266 */ } else if (e.getID() == 501) { +/* 1267 */ if (e.getButton() == 1) { +/* 1268 */ if ((e.getModifiers() & 0x1) == 0) { +/* 1269 */ if ((((GammaTextArea)getParent()).selectionStart >= 0) && +/* 1270 */ (((GammaTextArea)getParent()).selectionEnd > ((GammaTextArea)getParent()).selectionStart)) +/* */ { +/* 1272 */ ((GammaTextArea)getParent()).selectionStart = -1; +/* 1273 */ ((GammaTextArea)getParent()).selectionEnd = -1; +/* */ } else { +/* 1275 */ this.mouseX = (this.startX = this.endX = e.getX()); +/* 1276 */ this.mouseY = (this.startY = this.endY = e.getY()); +/* 1277 */ this.mouseActive = true; +/* 1278 */ ((GammaTextArea)getParent()).selectionConversion = true; +/* */ } +/* */ } else { +/* 1281 */ this.mouseX = (this.startX = this.endX = e.getX()); +/* 1282 */ this.mouseY = (this.startY = this.endY = e.getY()); +/* 1283 */ this.mouseActive = true; +/* 1284 */ ((GammaTextArea)getParent()).selectionConversion = true; +/* */ } +/* 1286 */ getParent().repaint(); +/* */ } +/* 1288 */ getParent().requestFocus(); +/* 1289 */ } else if ((this.mouseActive) && ( +/* 1290 */ (e.getID() == 506) || +/* 1291 */ (e.getID() == 507) || (e.getID() == 507))) { +/* 1292 */ if ((e.getModifiers() & 0x10) != 0) { +/* 1293 */ this.mouseX = (this.endX = e.getX()); +/* 1294 */ this.mouseY = (this.endY = e.getY()); +/* */ +/* 1296 */ ((GammaTextArea)getParent()).selectionConversion = true; +/* 1297 */ getParent().repaint(); +/* */ } +/* 1299 */ getParent().requestFocus(); +/* 1300 */ } else if (e.getID() == 502) { +/* 1301 */ if ((e.getButton() == 1) && (this.mouseActive)) { +/* 1302 */ this.mouseX = (this.endX = e.getX()); +/* 1303 */ this.mouseY = (this.endY = e.getY()); +/* 1304 */ this.mouseActive = false; +/* */ +/* 1306 */ ((GammaTextArea)getParent()).selectionConversion = false; +/* 1307 */ getParent().repaint(); +/* */ } +/* 1309 */ getParent().requestFocus(); +/* */ } +/* */ +/* 1312 */ ((GammaTextArea)getParent()).processMouseEvent(e); +/* 1313 */ super.processMouseEvent(e); +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ protected void processKeyEvent(KeyEvent e) +/* */ { +/* 1326 */ synchronized (getParent()) { +/* 1327 */ if (e.getID() == 401) { +/* 1328 */ Scrollbar s = null; +/* 1329 */ if ((getParent() instanceof GammaTextArea)) { +/* 1330 */ GammaTextArea gta = (GammaTextArea)getParent(); +/* 1331 */ s = gta.getVertScrollbar(); +/* */ } +/* */ +/* 1334 */ if (e.getKeyCode() == 33) { +/* 1335 */ if ((s != null) && (s.isEnabled())) +/* 1336 */ s.dispatchEvent(e); +/* 1337 */ } else if ((e.getKeyCode() == 34) && +/* 1338 */ (s != null) && (s.isEnabled())) { +/* 1339 */ s.dispatchEvent(e); +/* */ } +/* */ } +/* */ +/* 1343 */ super.processKeyEvent(e); +/* */ } +/* */ } +/* */ +/* */ public void paint(Graphics g) +/* */ { +/* 1349 */ if (getParent() != null) { +/* 1350 */ synchronized (getParent()) { +/* 1351 */ super.paint(g); +/* 1352 */ if (getParent().isEnabled()) { +/* 1353 */ GammaTextArea gta = (GammaTextArea)getParent(); +/* */ +/* 1355 */ Rectangle r = getBounds(); +/* */ +/* 1357 */ if ((r.width <= 0) || (r.height <= 0)) { +/* 1358 */ return; +/* */ } +/* 1360 */ Image offImage = createImage(r.width, r.height); +/* 1361 */ Graphics offGraphic = offImage.getGraphics(); +/* */ +/* 1363 */ offGraphic.setColor(GammaTextArea.getBackgroundColor()); +/* 1364 */ offGraphic.setClip(r.x, r.y, r.width, r.height); +/* 1365 */ offGraphic.fillRect(r.x, r.y, r.width, r.height); +/* 1366 */ offGraphic.setColor(Color.black); +/* */ +/* 1368 */ if (gta.getHasFocus()) { +/* 1369 */ offGraphic.setColor(Color.blue); +/* 1370 */ offGraphic.drawRect(r.x, r.y, r.width - 1, r.height - 1); +/* 1371 */ offGraphic.drawRect(r.x + 1, r.y + 1, r.width - 2, r.height - 2); +/* 1372 */ offGraphic.setColor(Color.black); +/* */ } +/* */ +/* 1375 */ offGraphic.setFont(gta.getFont()); +/* 1376 */ FontMetrics fm = offGraphic.getFontMetrics(gta.getFont()); +/* */ +/* 1378 */ gta._curpos = 0; +/* 1379 */ if (gta.getNumLines() <= gta.getCanvasLines()) { +/* 1380 */ for (int i = 0; i < gta.getNumLines(); i++) { +/* 1381 */ gta.drawLine(offGraphic, i, (i + 1) * fm.getHeight() - fm.getDescent()); +/* */ } +/* */ } else { +/* 1384 */ int i = gta.getScrollLine(); for (int j = 1; i < gta.getNumLines(); j++) { +/* 1385 */ gta.drawLine(offGraphic, i, j * fm.getHeight() - fm.getDescent());i++; +/* */ } +/* */ } +/* */ +/* 1389 */ g.drawImage(offImage, 0, 0, null); +/* */ +/* */ +/* 1392 */ if (this.delayedMouseEvent != null) { +/* 1393 */ processMouseEvent(this.delayedMouseEvent); +/* 1394 */ this.delayedMouseEvent = null; +/* */ } +/* */ } +/* */ } +/* */ } +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\StyledTextCanvas.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/TextCanvas.java b/NET/worlds/console/TextCanvas.java new file mode 100644 index 0000000..2175b19 --- /dev/null +++ b/NET/worlds/console/TextCanvas.java @@ -0,0 +1,109 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import java.awt.Canvas; +/* */ import java.awt.Color; +/* */ import java.awt.Dimension; +/* */ import java.awt.Font; +/* */ import java.awt.FontMetrics; +/* */ import java.awt.Graphics; +/* */ import java.awt.Toolkit; +/* */ import java.util.Vector; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public class TextCanvas +/* */ extends Canvas +/* */ { +/* */ private static final long serialVersionUID = 2808978760046610505L; +/* */ private Dimension calcSize; +/* */ private Font font; +/* */ private FontMetrics metrics; +/* 31 */ private Vector<String> lines = new Vector(); +/* */ +/* */ public TextCanvas(String text, int width) { +/* 34 */ this.font = new Font(Console.message("CanvasFont"), 0, 12); +/* */ +/* 36 */ this.metrics = Toolkit.getDefaultToolkit().getFontMetrics(this.font); +/* 37 */ char[] chars = text.toCharArray(); +/* */ +/* */ +/* 40 */ int start = 0; +/* 41 */ int end = 0; +/* 42 */ int prevEnd = 0; +/* 43 */ int lineWidth = 0; +/* 44 */ for (end = start; end < chars.length;) { +/* 45 */ char c = chars[end]; +/* 46 */ boolean isEOL = c == '\n'; +/* 47 */ if ((!isEOL) && (end == chars.length - 1)) { +/* 48 */ isEOL = true; +/* 49 */ end++; +/* */ } +/* */ +/* */ +/* 53 */ if ((c == ' ') || (isEOL)) { +/* 54 */ lineWidth = this.metrics.charsWidth(chars, start, end - start); +/* 55 */ if ((width != -1) && (lineWidth > width)) { +/* 56 */ end = prevEnd; +/* 57 */ } else if (((width == -1) || (lineWidth < width)) && (!isEOL)) { +/* 58 */ prevEnd = end; +/* 59 */ end++; +/* 60 */ continue; +/* */ } +/* */ +/* */ +/* 64 */ this.lines.addElement(new String(chars, start, end - start)); +/* */ +/* */ +/* 67 */ start = end + 1; +/* 68 */ while ((start < chars.length) && (chars[start] == ' ')) +/* 69 */ start++; +/* 70 */ prevEnd = end = start; +/* */ } else { +/* 72 */ end++; +/* */ } +/* */ } +/* */ +/* 76 */ this.calcSize = new Dimension(width == -1 ? lineWidth : width, +/* 77 */ this.metrics.getHeight() * this.lines.size()); +/* */ } +/* */ +/* */ +/* */ public void paint(Graphics g) +/* */ { +/* 83 */ super.paint(g); +/* 84 */ g.setFont(this.font); +/* 85 */ g.setColor(Color.black); +/* 86 */ int height = this.metrics.getHeight(); +/* */ +/* */ +/* 89 */ int y = this.metrics.getAscent() + this.metrics.getLeading(); +/* */ +/* */ +/* 92 */ for (int i = 0; i < this.lines.size(); i++) { +/* 93 */ String line = (String)this.lines.elementAt(i); +/* 94 */ g.drawString(line, 0, y); +/* 95 */ y += height; +/* */ } +/* */ } +/* */ +/* */ public Dimension getPreferredSize() +/* */ { +/* 101 */ return this.calcSize; +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\TextCanvas.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/TextImageButtons.java b/NET/worlds/console/TextImageButtons.java new file mode 100644 index 0000000..637a996 --- /dev/null +++ b/NET/worlds/console/TextImageButtons.java @@ -0,0 +1,137 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import java.awt.Color; +/* */ import java.awt.Dimension; +/* */ import java.awt.Font; +/* */ import java.awt.FontMetrics; +/* */ import java.awt.Graphics; +/* */ import java.awt.Toolkit; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ class TextImageButtons +/* */ extends ImageButtons +/* */ { +/* */ private static final long serialVersionUID = -3744924750348174006L; +/* */ private int buttonCount; +/* */ private int[] xText; +/* */ private String[] texts; +/* */ private int[] buttonBottoms; +/* */ private Font font; +/* 60 */ private static Font defFont = new Font(Console.message("ButtonFont"), +/* 61 */ 0, 9); +/* */ +/* */ private static final int yBaseline = 4; +/* */ +/* */ +/* */ public static Dimension measure(String text, Font f) +/* */ { +/* 68 */ Dimension sz = new Dimension(); +/* 69 */ FontMetrics fm = Toolkit.getDefaultToolkit().getFontMetrics(f); +/* 70 */ sz.width = fm.stringWidth(text); +/* 71 */ sz.height = fm.getHeight(); +/* 72 */ return sz; +/* */ } +/* */ +/* */ +/* */ +/* */ public TextImageButtons(String imageName, int buttonWidth, int[] buttonHeights, int[] textLefts, String[] texts, ImageButtonsCallback handler) +/* */ { +/* 79 */ this(imageName, buttonWidth, buttonHeights, textLefts, texts, handler, defFont); +/* */ } +/* */ +/* */ +/* */ public TextImageButtons(String imageName, int buttonWidth, int[] buttonHeights, int[] textLefts, String[] texts, ImageButtonsCallback handler, Font f) +/* */ { +/* 85 */ super(imageName, buttonWidth, buttonHeights, handler); +/* 86 */ this.xText = textLefts; +/* 87 */ this.texts = texts; +/* 88 */ this.buttonCount = buttonHeights.length; +/* 89 */ this.font = f; +/* */ +/* 91 */ this.buttonBottoms = new int[this.buttonCount]; +/* 92 */ int lastBottom = 0; +/* 93 */ for (int i = 0; i < this.buttonCount; i++) { +/* 94 */ lastBottom += buttonHeights[i]; +/* 95 */ this.buttonBottoms[i] = lastBottom; +/* */ } +/* */ } +/* */ +/* */ public void setTexts(String[] newTexts) { +/* 100 */ assert (newTexts.length == this.texts.length); +/* 101 */ this.texts = newTexts; +/* 102 */ repaint(); +/* */ } +/* */ +/* */ public String getText(int i) { +/* 106 */ return this.texts[i]; +/* */ } +/* */ +/* */ protected Graphics drawButton(Graphics g, int button, int state) +/* */ { +/* 111 */ return drawButton(g, button, state, Color.white); +/* */ } +/* */ +/* */ protected Graphics drawButton(Graphics g, int button, int state, Color c) +/* */ { +/* 116 */ if ((button >= 0) && (button < this.buttonCount) && (this.texts[button] != null)) { +/* 117 */ g = super.drawButton(g, button, state); +/* */ +/* 119 */ if ((g != null) || ((g = getGraphics()) != null)) { +/* 120 */ g.setColor(c); +/* */ +/* 122 */ g.setFont(this.font); +/* 123 */ g.drawString(this.texts[button], this.xText[button], +/* 124 */ this.buttonBottoms[button] - 4); +/* */ } +/* */ } else { +/* 127 */ g = super.drawButton(g, button, 0); +/* */ } +/* 129 */ return g; +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\TextImageButtons.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/TradeDialog.java b/NET/worlds/console/TradeDialog.java new file mode 100644 index 0000000..7de4814 --- /dev/null +++ b/NET/worlds/console/TradeDialog.java @@ -0,0 +1,759 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import NET.worlds.scape.InventoryItem; +/* */ import NET.worlds.scape.InventoryManager; +/* */ import NET.worlds.scape.Pilot; +/* */ import java.awt.BorderLayout; +/* */ import java.awt.Checkbox; +/* */ import java.awt.Color; +/* */ import java.awt.Container; +/* */ import java.awt.Dimension; +/* */ import java.awt.Event; +/* */ import java.awt.Font; +/* */ import java.awt.GridBagConstraints; +/* */ import java.awt.GridBagLayout; +/* */ import java.awt.GridLayout; +/* */ import java.awt.Insets; +/* */ import java.awt.Label; +/* */ import java.awt.Panel; +/* */ import java.awt.ScrollPane; +/* */ import java.awt.TextField; +/* */ import java.awt.Window; +/* */ import java.text.MessageFormat; +/* */ import java.util.Enumeration; +/* */ import java.util.Hashtable; +/* */ import java.util.Vector; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public class TradeDialog +/* */ extends WhisperDialog +/* */ { +/* */ private static final long serialVersionUID = -6745488915622839369L; +/* */ public static final String tradeServerName = "TRADE"; +/* 89 */ private Checkbox confirmBox = new Checkbox(Console.message("Its-a-Deal")); +/* */ +/* */ ScrollPane scrollPane; +/* 92 */ private static Font font = new Font(Console.message("DialogFont"), +/* 93 */ 0, 12); +/* */ +/* */ +/* 96 */ private String lastOfferSent = ""; +/* */ +/* */ +/* 99 */ private String lastOfferReceived = ""; +/* */ +/* */ +/* */ private Vector<TextField> fieldList; +/* */ +/* */ private int keyChange; +/* */ +/* */ +/* */ public TradeDialog(Window parent, String partner) +/* */ { +/* 109 */ super(parent, partner); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ public static void sendTradeMessage(String msg) +/* */ { +/* 117 */ Main.register(new MainCallback() { +/* */ public void mainCallback() { +/* 119 */ Pilot.sendText("TRADE", TradeDialog.this); +/* 120 */ Main.unregister(this); +/* */ } +/* */ }); +/* */ } +/* */ +/* */ public synchronized void setTrading(boolean f) { +/* 126 */ this.lastOfferReceived = ""; +/* 127 */ this.lastOfferSent = ""; +/* */ +/* 129 */ this.isTrading = f; +/* 130 */ if (this.isTrading) { +/* 131 */ Object[] arguments = { new String(this.partner) }; +/* 132 */ Console.println(MessageFormat.format(Console.message("Trade-with"), +/* 133 */ arguments)); +/* */ +/* */ +/* */ } +/* */ else +/* */ { +/* */ +/* 140 */ Object[] arguments = { new String(this.partner) }; +/* 141 */ Console.println(MessageFormat.format( +/* 142 */ Console.message("Whisper-to-from"), arguments)); +/* */ } +/* */ +/* 145 */ if ((this.built) && (!this.building)) { +/* 146 */ this.building = true; +/* 147 */ Main.register(new MainCallback() { +/* */ public void mainCallback() { +/* 149 */ TradeDialog.this.build(); +/* 150 */ TradeDialog.this.pack(); +/* 151 */ Main.unregister(this); +/* */ } +/* */ }); +/* */ } +/* */ } +/* */ +/* 157 */ protected Panel hisOffer = new Panel(); +/* 158 */ protected Panel yourOffer = new Panel(); +/* */ +/* */ public boolean action(Event event, Object what) +/* */ { +/* 162 */ Object target = event.target; +/* 163 */ if ((target == this.confirmBox) && (this.confirmBox.getState())) { +/* 164 */ sendOffer(true, false); +/* 165 */ return true; +/* */ } +/* */ +/* 168 */ return false; +/* */ } +/* */ +/* */ +/* */ protected synchronized void activeCallback() +/* */ { +/* 174 */ if ((this.keyChange > 0) && +/* 175 */ (--this.keyChange == 0)) { +/* 176 */ sendOffer(false, true); +/* */ } +/* */ } +/* */ +/* */ private void displayOffer(String offerStr, Panel p) +/* */ { +/* 182 */ InventoryManager im = InventoryManager.getInventoryManager(); +/* 183 */ Hashtable<String, InventoryItem> shorts = im.parseInventoryString(offerStr); +/* */ +/* 185 */ p.removeAll(); +/* */ +/* 187 */ GridBagConstraints c = new GridBagConstraints(); +/* 188 */ GridBagLayout gbag = new GridBagLayout(); +/* 189 */ p.setLayout(gbag); +/* */ +/* 191 */ c.weightx = 1.0D; +/* 192 */ c.weighty = 0.0D; +/* 193 */ c.gridheight = 1; +/* 194 */ c.gridwidth = 0; +/* 195 */ c.insets = new Insets(6, 3, 0, 8); +/* */ +/* 197 */ c.anchor = 17; +/* */ +/* 199 */ if (shorts.size() == 0) { +/* 200 */ c.gridwidth = -1; +/* 201 */ c.insets = new Insets(36, 20, 36, 3); +/* 202 */ Label lab = new Label(Console.message("Nothing")); +/* 203 */ gbag.setConstraints(lab, c); +/* 204 */ p.add(lab); +/* */ } +/* */ +/* 207 */ if (shorts.size() > 0) { +/* 208 */ Enumeration<InventoryItem> shortEnum = shorts.elements(); +/* */ +/* */ +/* 211 */ while (shortEnum.hasMoreElements()) { +/* 212 */ InventoryItem invItem = (InventoryItem)shortEnum.nextElement(); +/* 213 */ c.gridwidth = -1; +/* 214 */ c.insets = new Insets(6, 3, 0, 8); +/* */ +/* 216 */ ImageCanvas imcv = new ImageCanvas( +/* 217 */ invItem.getItemGraphicLocation()); +/* 218 */ gbag.setConstraints(imcv, c); +/* 219 */ p.add(imcv); +/* */ +/* 221 */ c.gridwidth = 0; +/* 222 */ c.insets = new Insets(3, 3, 0, 3); +/* */ +/* 224 */ Label lab = new Label(InventoryManager.getInventoryManager() +/* 225 */ .itemName(invItem)); +/* 226 */ gbag.setConstraints(lab, c); +/* 227 */ p.add(lab); +/* */ } +/* */ } +/* 230 */ p.invalidate(); +/* 231 */ p.doLayout(); +/* 232 */ p.validate(); +/* 233 */ p.repaint(); +/* */ +/* 235 */ Container par = p.getParent(); +/* 236 */ if (par != null) { +/* 237 */ par.invalidate(); +/* 238 */ par.doLayout(); +/* 239 */ par.validate(); +/* 240 */ par.repaint(); +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ private synchronized void sendOffer(boolean isDeal, boolean onlyIfChanged) +/* */ { +/* 258 */ String offer = ""; +/* 259 */ InventoryManager im = InventoryManager.getInventoryManager(); +/* 260 */ Hashtable<String, InventoryItem> invHash = im.getInventoryItems(); +/* 261 */ if (invHash.size() > 0) { +/* 262 */ Enumeration<InventoryItem> invEnum = invHash.elements(); +/* */ +/* 264 */ int i = 0; +/* */ +/* 266 */ while (invEnum.hasMoreElements()) { +/* 267 */ InventoryItem invItem = (InventoryItem)invEnum.nextElement(); +/* 268 */ TextField tf = (TextField)this.fieldList.elementAt(i); +/* 269 */ tf.setFont(font); +/* 270 */ String nm = invItem.getItemId(); +/* 271 */ int count = -1; +/* 272 */ if (tf.getText().trim().length() == 0) { +/* 273 */ count = 0; +/* */ } else { +/* */ try { +/* 276 */ count = Integer.parseInt(tf.getText()); +/* */ } +/* */ catch (NumberFormatException localNumberFormatException) {} +/* */ } +/* */ +/* */ +/* 282 */ int maxCount = invItem.getItemQuantity(); +/* 283 */ if ((count < 0) || (count > maxCount)) { +/* 284 */ this.whisperPart.println("*** Invalid number of " + +/* 285 */ InventoryManager.getInventoryManager().getPlural( +/* 286 */ nm) + ": " + tf.getText() + "."); +/* 287 */ return; +/* */ } +/* */ +/* 290 */ if (count > 0) { +/* 291 */ offer = offer + nm; +/* 292 */ if (count > 1) +/* 293 */ offer = offer + Integer.toString(count); +/* */ } +/* 295 */ i++; +/* */ } +/* */ } +/* */ +/* */ +/* 300 */ String ourPartOfOffer = offer; +/* */ +/* */ +/* 303 */ if (isDeal) { +/* 304 */ int commaPos = this.lastOfferReceived.indexOf(","); +/* 305 */ if ((commaPos < 0) || +/* 306 */ (!offer.equals(this.lastOfferReceived.substring(commaPos + 1)))) +/* */ { +/* */ +/* */ +/* */ +/* */ +/* 312 */ Object[] arguments = { new String(this.partner) }; +/* 313 */ this.whisperPart.println(MessageFormat.format( +/* 314 */ Console.message("proposed-deal"), arguments)); +/* 315 */ if (commaPos < 0) { +/* 316 */ commaPos = this.lastOfferReceived.length(); +/* 317 */ if (this.lastOfferReceived.equals("cancel")) { +/* 318 */ commaPos = 0; +/* */ } +/* */ } +/* */ } +/* 322 */ String newOffer = this.lastOfferReceived.substring(0, commaPos) + "," + +/* 323 */ offer; +/* */ +/* 325 */ this.lastOfferSent = newOffer; +/* 326 */ offer = offer + "," + this.lastOfferReceived.substring(0, commaPos); +/* */ } else { +/* 328 */ String lastSent = this.lastOfferSent; +/* 329 */ int commaPos = lastSent.indexOf(","); +/* */ +/* */ +/* */ +/* 333 */ if ((onlyIfChanged) && (offer.equals(lastSent.substring(commaPos + 1)))) { +/* 334 */ return; +/* */ } +/* 336 */ this.lastOfferSent = offer; +/* */ } +/* */ +/* */ +/* 340 */ displayOffer(ourPartOfOffer, this.yourOffer); +/* */ +/* 342 */ this.whisperPart.say("&|+trade>" + offer); +/* */ +/* */ +/* */ +/* 346 */ if (isDeal) { +/* 347 */ sendTradeMessage( +/* 348 */ "&|+deal>" + this.whisperPart.getPartner() + " " + offer); +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public static String buildInvDesc(Hashtable<String, InventoryItem> inv) +/* */ { +/* 360 */ String str = ""; +/* 361 */ Enumeration<InventoryItem> invEnum = inv.elements(); +/* 362 */ InventoryManager im = InventoryManager.getInventoryManager(); +/* */ +/* */ +/* */ +/* 366 */ if (invEnum.hasMoreElements()) { +/* 367 */ Object obj = invEnum.nextElement(); +/* 368 */ if (obj != null) { +/* 369 */ InventoryItem invItem = (InventoryItem)obj; +/* 370 */ str = str + im.itemName(invItem); +/* */ } +/* */ +/* 373 */ while (invEnum.hasMoreElements()) { +/* 374 */ obj = invEnum.nextElement(); +/* 375 */ InventoryItem invItem = (InventoryItem)obj; +/* 376 */ str = str + ", "; +/* 377 */ str = str + im.itemName(invItem); +/* */ } +/* */ } +/* */ +/* */ +/* 382 */ return str; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ protected void cancelTrading() +/* */ { +/* 390 */ if ((this.isTrading) && (isActive())) +/* */ { +/* 392 */ this.whisperPart.say("&|+trade>cancel"); +/* */ +/* 394 */ if (this.lastOfferSent.indexOf(",") >= 0) { +/* 395 */ sendTradeMessage("&|+deal>cancel"); +/* */ } +/* 397 */ this.lastOfferSent = ""; +/* */ } +/* */ } +/* */ +/* */ +/* */ protected synchronized boolean done(boolean confirmed) +/* */ { +/* 404 */ cancelTrading(); +/* 405 */ WhisperManager.whisperManager().remove(this.partner); +/* */ +/* 407 */ return super.done(confirmed); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ protected void doneDeal() +/* */ { +/* 415 */ String tradeTerms = ""; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* 423 */ InventoryManager im = InventoryManager.getInventoryManager(); +/* 424 */ int commaPos = this.lastOfferSent.indexOf(","); +/* 425 */ if (commaPos >= 0) { +/* 426 */ Hashtable<String, InventoryItem> lost = im.parseInventoryString(this.lastOfferSent +/* 427 */ .substring(commaPos + 1)); +/* */ +/* 429 */ tradeTerms = buildInvDesc(lost); +/* */ +/* 431 */ if (tradeTerms.length() == 0) { +/* 432 */ tradeTerms = "nothing"; +/* */ } +/* 434 */ Hashtable<String, InventoryItem> got = im.parseInventoryString(this.lastOfferSent.substring(0, +/* 435 */ commaPos)); +/* 436 */ String gotTerms = buildInvDesc(got); +/* */ +/* 438 */ if (gotTerms.length() == 0) { +/* 439 */ gotTerms = "nothing"; +/* */ } +/* 441 */ tradeTerms = ": " + tradeTerms + " for " + gotTerms; +/* */ +/* 443 */ setTrading(true); +/* */ +/* 445 */ Object[] arguments = { new String(tradeTerms) }; +/* 446 */ this.whisperPart.println(MessageFormat.format( +/* 447 */ Console.message("Trans-complete"), arguments)); +/* */ } +/* */ } +/* */ +/* */ +/* */ protected void processOffer(boolean startUp) +/* */ { +/* 454 */ if (this.lastOfferReceived.equals("cancel")) { +/* 455 */ this.lastOfferReceived = ""; +/* 456 */ cancelTrading(); +/* 457 */ setTrading(true); +/* 458 */ Object[] arguments = { new String(this.partner) }; +/* 459 */ this.whisperPart.println(MessageFormat.format( +/* 460 */ Console.message("Trans-complete"), arguments)); +/* 461 */ return; +/* */ } +/* */ +/* */ +/* 465 */ String offer = this.lastOfferReceived; +/* */ +/* 467 */ int lastComma = 0; +/* 468 */ int commaPos = offer.indexOf(","); +/* */ +/* 470 */ Object[] arguments = { new String(this.partner) }; +/* */ +/* 472 */ if (commaPos < 0) +/* */ { +/* 474 */ if (!startUp) { +/* 475 */ this.whisperPart.println(MessageFormat.format( +/* 476 */ Console.message("offer-changed"), arguments)); +/* */ } +/* */ +/* */ } +/* 480 */ else if (!offer.equals(this.lastOfferSent)) +/* */ { +/* */ +/* */ +/* 484 */ lastComma = this.lastOfferSent.indexOf(","); +/* 485 */ if (lastComma < 0) { +/* 486 */ lastComma = this.lastOfferSent.length(); +/* */ } +/* */ +/* */ +/* 490 */ if (offer.substring(commaPos + 1).equals(this.lastOfferSent.substring(0, lastComma))) { +/* 491 */ this.whisperPart.println(MessageFormat.format( +/* 492 */ Console.message("proposed-this"), arguments)); +/* */ } +/* */ else +/* */ { +/* 496 */ this.whisperPart.println(MessageFormat.format( +/* 497 */ Console.message("proposed-new"), arguments)); +/* */ } +/* */ } +/* */ +/* */ +/* 502 */ if (commaPos < 0) { +/* 503 */ commaPos = offer.length(); +/* */ } +/* 505 */ displayOffer(offer.substring(0, commaPos), this.hisOffer); +/* */ } +/* */ +/* */ protected synchronized void build() +/* */ { +/* 510 */ if (this.lastOfferSent.equals("")) +/* 511 */ displayOffer("", this.yourOffer); +/* 512 */ if ((this.lastOfferReceived.equals("")) || (this.lastOfferReceived.equals("cancel"))) { +/* 513 */ displayOffer("", this.hisOffer); +/* */ } +/* 515 */ this.building = false; +/* */ +/* 517 */ if (this.built) +/* 518 */ removeAll(); +/* 519 */ this.built = true; +/* */ +/* */ +/* */ +/* 523 */ Color bg1 = new Color(0, 0, 0); +/* 524 */ Color bg2 = new Color(0, 192, 192); +/* 525 */ Color bg2b = new Color(0, 160, 160); +/* 526 */ Color fg1 = new Color(255, 255, 255); +/* 527 */ Color bg5 = bg2; +/* */ +/* */ +/* 530 */ Color bg3 = bg2; +/* 531 */ Color bg4 = bg2; +/* */ +/* */ +/* */ +/* */ +/* */ +/* 537 */ setBackground(this.isTrading ? bg1 : Color.white); +/* 538 */ setForeground(Color.black); +/* */ +/* 540 */ Panel borderPanel = null; +/* */ +/* */ +/* 543 */ if (this.isTrading) { +/* 544 */ borderPanel = new InsetPanel(new BorderLayout(), 6, 10, 12, 11); +/* 545 */ borderPanel.setBackground(bg1); +/* */ +/* */ +/* 548 */ InventoryManager iMgr = InventoryManager.getInventoryManager(); +/* 549 */ Hashtable<String, InventoryItem> inv = iMgr.getInventoryItems(); +/* 550 */ Enumeration<InventoryItem> invEnum = inv.elements(); +/* 551 */ int len = inv.size(); +/* 552 */ this.fieldList = new Vector(len); +/* */ +/* */ +/* */ +/* 556 */ Panel yourInv = new Panel(new GridLayout(1, len == 0 ? 1 : len)); +/* 557 */ yourInv.setBackground(bg2); +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* 565 */ int i = 0; +/* 566 */ if (inv.size() > 0) { +/* 567 */ while (invEnum.hasMoreElements()) +/* */ { +/* */ +/* 570 */ InventoryItem invItem = (InventoryItem)invEnum.nextElement(); +/* 571 */ Panel p = new Panel(new BorderLayout()); +/* 572 */ p.setFont(font); +/* 573 */ p.setBackground((i & 0x1) == 1 ? bg2 : bg2b); +/* */ +/* 575 */ MultiLineLabel nm = new MultiLineLabel( +/* 576 */ iMgr.itemName(invItem), 3, 0); +/* 577 */ p.add("North", nm); +/* */ +/* 579 */ ImageCanvas im = new ImageCanvas( +/* 580 */ invItem.getItemGraphicLocation()); +/* 581 */ Panel ins = new InsetPanel(new BorderLayout(), 5, 15, 5, 15); +/* 582 */ ins.add("Center", im); +/* 583 */ ins.setBackground((i & 0x1) == 1 ? bg2 : bg2b); +/* 584 */ p.add("Center", ins); +/* */ +/* 586 */ Panel p2 = new Panel(new BorderLayout()); +/* 587 */ p2.setFont(font); +/* */ +/* 589 */ TextField tf = new TextField("", 1); +/* 590 */ tf.setFocusable(true); +/* 591 */ tf.setFont(font); +/* 592 */ this.fieldList.addElement(tf); +/* 593 */ p2.add("West", tf); +/* */ +/* 595 */ nm = new MultiLineLabel("of " + invItem.getItemQuantity(), +/* 596 */ 3, 0); +/* 597 */ p2.add("Center", nm); +/* 598 */ p2.add("South", new FixedSizePanel(5, 25)); +/* */ +/* 600 */ p.add("South", p2); +/* */ +/* */ +/* 603 */ yourInv.add(p); +/* 604 */ i++; +/* */ } +/* */ } else { +/* 607 */ Label nm = new Label(Console.message("You-have-nothing")); +/* */ +/* 609 */ yourInv.add(nm); +/* */ } +/* */ +/* 612 */ this.scrollPane = new WideScrollPane(yourInv, true); +/* 613 */ this.scrollPane.setBackground(bg2); +/* */ +/* 615 */ Panel invLabelPanel = new Panel(new BorderLayout()); +/* 616 */ invLabelPanel.setFont(font); +/* */ +/* 618 */ Label invLabel = new Label(Console.message("Your-inventory")); +/* 619 */ invLabel.setBackground(bg1); +/* 620 */ invLabel.setForeground(fg1); +/* 621 */ invLabelPanel.add("North", invLabel); +/* 622 */ invLabelPanel.add("Center", this.scrollPane); +/* */ +/* */ +/* */ +/* */ +/* 627 */ borderPanel.add("North", invLabelPanel); +/* */ +/* 629 */ Panel offers = new Panel(new GridLayout(1, 2)); +/* */ +/* 631 */ this.scrollPane = new WideScrollPane(this.yourOffer, true); +/* 632 */ this.scrollPane.setBackground(bg5); +/* 633 */ Panel labeledYour = new InsetPanel(new BorderLayout(), 0, 0, 8, 9); +/* 634 */ Label labelYour = new Label(Console.message("Your-offer")); +/* 635 */ labelYour.setBackground(bg1); +/* 636 */ labelYour.setForeground(fg1); +/* 637 */ labeledYour.add("North", labelYour); +/* 638 */ labeledYour.add("Center", this.scrollPane); +/* 639 */ offers.add(labeledYour); +/* */ +/* 641 */ this.scrollPane = new WideScrollPane(this.hisOffer, true); +/* 642 */ this.scrollPane.setBackground(bg5); +/* 643 */ Panel labeledHis = new InsetPanel(new BorderLayout(), 0, 9, 8, 0); +/* 644 */ Object[] arguments = { new String(this.partner) }; +/* 645 */ Label labelHis = new Label(MessageFormat.format( +/* 646 */ Console.message("partner-offer"), arguments)); +/* 647 */ labelHis.setBackground(bg1); +/* 648 */ labelHis.setForeground(fg1); +/* 649 */ labeledHis.add("North", labelHis); +/* 650 */ labeledHis.add("Center", this.scrollPane); +/* 651 */ offers.add(labeledHis); +/* */ +/* */ +/* 654 */ Panel insDeal = new InsetPanel(new BorderLayout(), 8, 18, 8, 18); +/* 655 */ insDeal.setBackground(bg1); +/* 656 */ insDeal.add("Center", offers); +/* 657 */ insDeal.add("South", this.confirmBox); +/* */ +/* 659 */ borderPanel.add("Center", insDeal); +/* */ +/* 661 */ processOffer(true); +/* */ } +/* */ +/* 664 */ this.whisperPart.line.setBackground(this.isTrading ? bg4 : Color.white); +/* */ +/* 666 */ if (this.isTrading) { +/* 667 */ if (!this.isBroadcast) { +/* 668 */ Panel listenPane = new Panel(new BorderLayout()); +/* */ +/* 670 */ this.whisperPart.listen.setBackground(bg3); +/* 671 */ Object[] arguments = { new String(this.partner) }; +/* 672 */ Label whispLabel = new Label(MessageFormat.format( +/* 673 */ Console.message("Whispers-with"), arguments)); +/* 674 */ whispLabel.setBackground(bg1); +/* 675 */ whispLabel.setForeground(fg1); +/* 676 */ listenPane.add("North", whispLabel); +/* 677 */ listenPane.add("Center", this.whisperPart.listen.getComponent()); +/* 678 */ listenPane.add("South", this.whisperPart.line); +/* */ +/* 680 */ borderPanel.add("South", listenPane); +/* */ } else { +/* 682 */ borderPanel.add("South", this.whisperPart.line); +/* */ } +/* */ +/* 685 */ add(borderPanel); +/* */ } else { +/* 687 */ this.whisperPart.listen.setBackground(Color.lightGray); +/* */ +/* 689 */ Panel insListen = new InsetPanel(new BorderLayout(), 3, 1, 1, 1); +/* 690 */ insListen.setBackground(Color.lightGray); +/* 691 */ insListen.add("Center", this.whisperPart.listen.getComponent()); +/* 692 */ add("Center", insListen); +/* */ +/* 694 */ Panel insLine = new InsetPanel(new BorderLayout(), 2, 1, 2, 1); +/* 695 */ insLine.setBackground(Color.lightGray); +/* 696 */ insLine.add("Center", this.whisperPart.line); +/* 697 */ add("South", insLine); +/* */ } +/* */ +/* 700 */ validate(); +/* */ } +/* */ +/* */ protected synchronized void print(String msg) +/* */ { +/* 705 */ if (msg.startsWith("&|+trade>")) { +/* 706 */ if (!this.isTrading) { +/* 707 */ setTrading(true); +/* */ } +/* 709 */ this.lastOfferReceived = msg.substring(9); +/* 710 */ if (!this.building) +/* 711 */ processOffer(false); +/* 712 */ } else if (!msg.startsWith("&|+")) { +/* 713 */ this.whisperPart.println("> " + msg); +/* */ } +/* */ } +/* */ +/* */ @Deprecated +/* */ public synchronized boolean keyDown(Event event, int key) +/* */ { +/* 720 */ if (!this.isTrading) { +/* 721 */ this.whisperPart.line.requestFocus(); +/* */ } else { +/* 723 */ this.keyChange = 2; +/* */ } +/* 725 */ if (key == 10) +/* */ { +/* 727 */ this.whisperPart.trigger(); +/* 728 */ return true; +/* */ } +/* 730 */ return false; +/* */ } +/* */ +/* */ public Dimension getPreferredSize() { +/* 734 */ Dimension d = super.getPreferredSize(); +/* 735 */ if (d.width < 400) +/* 736 */ d.width = 400; +/* 737 */ if (d.height < 400) { +/* 738 */ d.height = 400; +/* */ } +/* 740 */ return d; +/* */ } +/* */ +/* */ public Dimension getMinimumSize() +/* */ { +/* 745 */ Dimension d = super.getMinimumSize(); +/* 746 */ if (d.width < 400) +/* 747 */ d.width = 400; +/* 748 */ if (d.height < 400) { +/* 749 */ d.height = 400; +/* */ } +/* 751 */ return d; +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\TradeDialog.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/Tree.java b/NET/worlds/console/Tree.java new file mode 100644 index 0000000..bdcaf0d --- /dev/null +++ b/NET/worlds/console/Tree.java @@ -0,0 +1,303 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import NET.worlds.scape.LibraryDropTarget; +/* */ import java.util.Hashtable; +/* */ import java.util.Vector; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public class Tree +/* */ extends TreePanel +/* */ implements MainCallback, LibraryDropTarget +/* */ { +/* */ private static final long serialVersionUID = -1919976160954835913L; +/* 33 */ private int openItem = -1; +/* 34 */ private int changeItem = -1; +/* */ +/* */ +/* */ private TreeCallback owner; +/* */ +/* */ private boolean registered; +/* */ +/* */ +/* */ public Tree() {} +/* */ +/* */ +/* */ public Tree(TreeCallback owner) +/* */ { +/* 47 */ this(); +/* 48 */ setOwner(owner); +/* */ } +/* */ +/* */ public void setOwner(TreeCallback owner) +/* */ { +/* 53 */ this.owner = owner; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public void change(TreeNode root, Object current) +/* */ { +/* 64 */ delayRepaints(true); +/* 65 */ removeAllElements(); +/* 66 */ addElement(root); +/* 67 */ int index = search(0, current, new Hashtable()); +/* 68 */ assert (index != -1); +/* 69 */ sync(index); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ public void change(TreeNode root, Vector<TreeNode> lineage) +/* */ { +/* 77 */ delayRepaints(true); +/* 78 */ removeAllElements(); +/* 79 */ TreeNode parent = root; +/* 80 */ addElement(root); +/* 81 */ int index = 1; +/* 82 */ for (int j = 0; j < lineage.size(); j++) { +/* 83 */ Object lookingFor = lineage.elementAt(j); +/* 84 */ Vector<TreeNode> v = getSortedChildren(parent); +/* 85 */ parent.setOpen(true); +/* 86 */ int count = v.size(); +/* 87 */ int foundIndex = -1; +/* 88 */ for (int i = 0; i < count; i++) { +/* 89 */ TreeNode child = (TreeNode)v.elementAt(i); +/* 90 */ int tmp = index + i; +/* 91 */ insertElementAt(child, tmp); +/* 92 */ if ((foundIndex == -1) && (child.getObject().equals(lookingFor))) { +/* 93 */ foundIndex = tmp; +/* 94 */ parent = child; +/* */ } +/* */ } +/* 97 */ assert (foundIndex != -1); +/* 98 */ index = foundIndex + 1; +/* */ } +/* 100 */ sync(index - 1); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public void update() +/* */ { +/* 111 */ Vector<TreeNode> newTree = new Vector(); +/* 112 */ int count = countElements(); +/* 113 */ for (int i = 0; i < count; i++) { +/* 114 */ TreeNode e1 = elementAt(i); +/* 115 */ if (e1.getParent() == null) { +/* 116 */ newTree.addElement(e1); +/* 117 */ recurseAddChildren(newTree, e1); +/* */ } +/* */ } +/* */ +/* */ +/* 122 */ TreeNode selected = getSelectedNode(); +/* 123 */ count = newTree.size(); +/* */ +/* 125 */ for (int i = 0; i < count; i++) +/* 126 */ if (((TreeNode)newTree.elementAt(i)).equals(selected)) +/* */ break; +/* 128 */ int hitem = i < count ? i : Math.min(count - 1, getSelectedIndex()); +/* 129 */ delayRepaints(true); +/* 130 */ reset(newTree); +/* 131 */ sync(hitem); +/* */ } +/* */ +/* */ private void sync(int selected) +/* */ { +/* */ try +/* */ { +/* 138 */ select(selected); +/* 139 */ Object treeNode = getSelectedNode().getObject(); +/* */ +/* 141 */ if (treeNode != null) { +/* 142 */ this.owner.treeChange(treeNode); +/* 143 */ delayRepaints(false); +/* */ } +/* */ } +/* */ catch (Exception localException) {} +/* */ } +/* */ +/* */ +/* */ private Vector<TreeNode> getSortedChildren(TreeNode parent) +/* */ { +/* 152 */ Vector<TreeNode> unsorted = parent.getChildren(); +/* 153 */ Vector<TreeNode> sorted = new Vector(unsorted.size()); +/* */ +/* 155 */ if (unsorted != null) { +/* 156 */ int icount = unsorted.size(); +/* 157 */ for (int i = 0; i < icount; i++) { +/* 158 */ TreeNode e = (TreeNode)unsorted.elementAt(i); +/* 159 */ if (parent.shouldSort()) { +/* 160 */ int jcount = sorted.size(); +/* */ +/* 162 */ for (int j = 0; j < jcount; j++) +/* */ { +/* 164 */ if (((TreeNode)sorted.elementAt(j)).toString().compareTo(e.toString()) > 0) +/* */ break; } +/* 166 */ sorted.insertElementAt(e, j); +/* */ } else { +/* 168 */ sorted.insertElementAt(e, i); +/* */ } +/* */ } } +/* 171 */ return sorted; +/* */ } +/* */ +/* */ private Vector<TreeNode> getCurrentChildren(TreeNode parent) { +/* 175 */ Vector<TreeNode> ret = new Vector(); +/* 176 */ int count = countElements(); +/* 177 */ for (int i = 0; i < count; i++) { +/* 178 */ TreeNode ele = elementAt(i); +/* 179 */ if (ele.getParent() == parent) +/* 180 */ ret.addElement(ele); +/* */ } +/* 182 */ return ret; +/* */ } +/* */ +/* */ private static TreeNode maybeUseOldChild(TreeNode newChild, Vector<TreeNode> oldChildren) +/* */ { +/* 187 */ int count = oldChildren.size(); +/* 188 */ for (int i = 0; i < count; i++) { +/* 189 */ TreeNode oldChild = (TreeNode)oldChildren.elementAt(i); +/* 190 */ if (oldChild.equals(newChild)) +/* 191 */ return oldChild; +/* */ } +/* 193 */ return newChild; +/* */ } +/* */ +/* */ private void recurseAddChildren(Vector<TreeNode> newTree, TreeNode oldEle) { +/* 197 */ if (oldEle.isOpen()) { +/* 198 */ Vector<TreeNode> oldChildren = getCurrentChildren(oldEle); +/* 199 */ Vector<TreeNode> newChildren = getSortedChildren(oldEle); +/* 200 */ int count = newChildren.size(); +/* 201 */ for (int i = 0; i < count; i++) { +/* 202 */ TreeNode child = (TreeNode)newChildren.elementAt(i); +/* 203 */ child = maybeUseOldChild(child, oldChildren); +/* 204 */ newTree.addElement(child); +/* 205 */ recurseAddChildren(newTree, child); +/* */ } +/* */ } +/* */ } +/* */ +/* */ private int search(int index, Object obj, Hashtable<TreeNode, TreeNode> lookedAt) { +/* 211 */ TreeNode e = elementAt(index); +/* 212 */ if (e.getObject().equals(obj)) +/* 213 */ return index; +/* 214 */ if (!lookedAt.containsKey(e)) { +/* 215 */ lookedAt.put(e, e); +/* 216 */ index++; +/* 217 */ Vector<TreeNode> v = getSortedChildren(e); +/* 218 */ e.setOpen(true); +/* 219 */ if (v != null) { +/* 220 */ int count = v.size(); +/* 221 */ for (int i = 0; i < count; i++) +/* 222 */ insertElementAt((TreeNode)v.elementAt(i), index + i); +/* 223 */ for (int i = 0; i < count; i++) { +/* 224 */ int found = search(index + i, obj, lookedAt); +/* 225 */ if (found != -1) +/* 226 */ return found; +/* */ } +/* 228 */ for (int i = 0; i < count; i++) +/* 229 */ removeElementAt(index); +/* */ } +/* 231 */ e.setOpen(false); +/* */ } +/* 233 */ return -1; +/* */ } +/* */ +/* */ private void register() { +/* 237 */ if (!this.registered) { +/* 238 */ Main.register(this); +/* 239 */ this.registered = true; +/* */ } +/* */ } +/* */ +/* */ public void treeSelect(int item) +/* */ { +/* 245 */ if (item != getSelectedIndex()) { +/* 246 */ select(item); +/* 247 */ this.changeItem = item; +/* 248 */ register(); +/* */ } +/* */ } +/* */ +/* */ public void treeOpen(int item) +/* */ { +/* 254 */ if (this.openItem == -1) { +/* 255 */ this.openItem = item; +/* 256 */ register(); +/* */ } +/* */ } +/* */ +/* */ public void setFocus(boolean hasFocus) +/* */ { +/* 262 */ boolean hadFocus = hasFocus(); +/* 263 */ super.setFocus(hasFocus); +/* 264 */ if (hadFocus != hasFocus) +/* 265 */ this.owner.treeFocusChanged(hasFocus); +/* */ } +/* */ +/* */ public synchronized void mainCallback() { +/* 269 */ delayRepaints(true); +/* 270 */ int i = this.changeItem; +/* 271 */ this.changeItem = -1; +/* 272 */ if (i != -1) +/* 273 */ this.owner.treeChange(elementAt(i).getObject()); +/* 274 */ i = this.openItem; +/* 275 */ this.openItem = -1; +/* 276 */ if (i != -1) { +/* 277 */ TreeNode e = elementAt(i); +/* 278 */ boolean isOpen = !e.isOpen(); +/* 279 */ e.setOpen(isOpen); +/* 280 */ i++; +/* 281 */ if (isOpen) { +/* 282 */ v = getSortedChildren(e); +/* 283 */ if (v != null) { +/* 284 */ count = v.size(); +/* 285 */ for (j = 0; j < count; j++) +/* 286 */ insertElementAt((TreeNode)v.elementAt(j), i++); +/* */ } +/* */ } else { +/* 289 */ while ((i < countElements()) && (e.isDescendant(elementAt(i)))) { Vector<TreeNode> v; +/* 290 */ int count; int j; removeElementAt(i); } } +/* 291 */ repaint(); +/* */ } +/* 293 */ delayRepaints(false); +/* 294 */ this.registered = false; +/* 295 */ Main.unregister(this); +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\Tree.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/TreeCallback.java b/NET/worlds/console/TreeCallback.java new file mode 100644 index 0000000..340531e --- /dev/null +++ b/NET/worlds/console/TreeCallback.java @@ -0,0 +1,14 @@ +package NET.worlds.console; + +public abstract interface TreeCallback +{ + public abstract void treeChange(Object paramObject); + + public abstract void treeFocusChanged(boolean paramBoolean); +} + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\TreeCallback.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/TreeNode.java b/NET/worlds/console/TreeNode.java new file mode 100644 index 0000000..3395fb4 --- /dev/null +++ b/NET/worlds/console/TreeNode.java @@ -0,0 +1,116 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import java.util.Vector; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public abstract class TreeNode +/* */ { +/* */ private int level; +/* */ private TreeNode parent; +/* */ private boolean isOpen; +/* */ +/* */ protected TreeNode(TreeNode parent) +/* */ { +/* 33 */ this.parent = parent; +/* 34 */ if (parent != null) { +/* 35 */ this.level = (parent.getLevel() + 1); +/* */ } +/* */ } +/* */ +/* */ public int getLevel() { +/* 40 */ return this.level; +/* */ } +/* */ +/* */ public TreeNode getParent() +/* */ { +/* 45 */ return this.parent; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ public boolean isDescendant(TreeNode e) +/* */ { +/* 53 */ while (e != null) +/* 54 */ if ((e = e.getParent()) == this) +/* 55 */ return true; +/* 56 */ return false; +/* */ } +/* */ +/* */ public boolean isOpen() +/* */ { +/* 61 */ return this.isOpen; +/* */ } +/* */ +/* */ public void setOpen(boolean isOpen) +/* */ { +/* 66 */ this.isOpen = isOpen; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ public boolean displayAsTitle() +/* */ { +/* 74 */ return false; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public boolean equals(Object obj) +/* */ { +/* 83 */ return ((obj instanceof TreeNode)) && +/* 84 */ (getObject().equals(((TreeNode)obj).getObject())); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public int hashCode() +/* */ { +/* 93 */ return getObject().hashCode(); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ public abstract Vector<?> getChildren(); +/* */ +/* */ +/* */ +/* */ +/* */ public boolean shouldSort() +/* */ { +/* 106 */ return true; +/* */ } +/* */ +/* */ public abstract Object getObject(); +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\TreeNode.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/TreePanel.java b/NET/worlds/console/TreePanel.java new file mode 100644 index 0000000..5bf8135 --- /dev/null +++ b/NET/worlds/console/TreePanel.java @@ -0,0 +1,359 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import java.awt.BorderLayout; +/* */ import java.awt.Color; +/* */ import java.awt.Dimension; +/* */ import java.awt.Event; +/* */ import java.awt.Font; +/* */ import java.awt.FontMetrics; +/* */ import java.awt.Graphics; +/* */ import java.awt.Point; +/* */ import java.awt.Rectangle; +/* */ import java.awt.Scrollbar; +/* */ import java.util.Vector; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public class TreePanel +/* */ extends ExposedPanel +/* */ implements DialogDisabled +/* */ { +/* */ private static final long serialVersionUID = -5534860983354876334L; +/* 42 */ private Vector<TreeNode> items = new Vector(); +/* */ private boolean delayRepaints; +/* */ private boolean needRepaint; +/* */ private boolean needRecalc; +/* */ private boolean needMakeVisible; +/* 47 */ private Scrollbar scrollbar = new WiderScrollbar(); +/* 48 */ private int scrollPos = 0; +/* */ private int linesVisible; +/* 50 */ private int selectedIndex = -1; +/* 51 */ private boolean hasFocus = true; +/* 52 */ private Font nFont = new Font(Console.message("TreeFont"), 0, 13); +/* */ +/* 54 */ private FontMetrics nFontMetrics = getFontMetrics(this.nFont); +/* 55 */ private Font bFont = new Font(Console.message("TreeFont"), 1, 11); +/* */ +/* 57 */ private FontMetrics bFontMetrics = getFontMetrics(this.bFont); +/* 58 */ private int fontHeight = Math.max(this.nFontMetrics.getHeight(), +/* 59 */ this.bFontMetrics.getHeight()); +/* 60 */ private int itemHeight = this.fontHeight; +/* */ +/* */ private boolean isDialogDisabled; +/* 63 */ private static final int[] cxs = { 006 }; +/* 64 */ private static final int[] cys = { 6, -6 }; +/* 65 */ private MoveablePolygon closedIcon = new MoveablePolygon(cxs, cys); +/* */ +/* 67 */ private static final int[] oxs = { -5, 6 }; +/* 68 */ private static final int[] oys = { 006 }; +/* 69 */ private MoveablePolygon openedIcon = new MoveablePolygon(oxs, oys); +/* */ +/* 71 */ private static final Color normBGColor = new Color(80, 80, 80); +/* 72 */ private static final Color normFGColor = new Color(190, 190, 190); +/* 73 */ private static final Color selFGColor = new Color(255, 255, 175); +/* */ private static final int indentPixels = 14; +/* */ +/* */ public TreePanel() { +/* 77 */ setBackground(normBGColor); +/* 78 */ setLayout(new BorderLayout()); +/* 79 */ add("East", this.scrollbar); +/* 80 */ this.scrollbar.setVisible(false); +/* */ } +/* */ +/* */ public synchronized void delayRepaints(boolean state) { +/* 84 */ if (!(this.delayRepaints = state)) { +/* 85 */ if (this.needRecalc) +/* 86 */ recalc(); +/* 87 */ if (this.needMakeVisible) +/* 88 */ makeVisible(this.selectedIndex); +/* 89 */ if (this.needRepaint) { +/* 90 */ repaint(); +/* */ } +/* */ } +/* */ } +/* */ +/* */ private synchronized void needRepaint(boolean needRecalc, boolean needMakeVisible) { +/* 96 */ this.needRepaint = true; +/* 97 */ this.needRecalc |= needRecalc; +/* 98 */ this.needMakeVisible |= needMakeVisible; +/* 99 */ delayRepaints(this.delayRepaints); +/* */ } +/* */ +/* */ public synchronized int getSelectedIndex() { +/* 103 */ return this.selectedIndex; +/* */ } +/* */ +/* */ public synchronized void select(int item) { +/* 107 */ this.selectedIndex = item; +/* 108 */ needRepaint(false, true); +/* */ } +/* */ +/* */ public void setFocus(boolean hasFocus) { +/* 112 */ if (this.hasFocus != hasFocus) { +/* 113 */ this.hasFocus = hasFocus; +/* 114 */ needRepaint(false, false); +/* */ } +/* */ } +/* */ +/* */ public boolean hasFocus() +/* */ { +/* 120 */ return this.hasFocus; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public synchronized void setBounds(int x, int y, int w, int h) +/* */ { +/* 129 */ super.setBounds(x, y, w, h); +/* 130 */ needRepaint(true, false); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public synchronized TreeNode getSelectedNode() +/* */ { +/* 143 */ if (this.selectedIndex != -1) +/* 144 */ return (TreeNode)this.items.elementAt(this.selectedIndex); +/* 145 */ return null; +/* */ } +/* */ +/* */ public synchronized void reset(Vector<TreeNode> items) { +/* 149 */ this.items = items; +/* 150 */ needRepaint(true, false); +/* */ } +/* */ +/* */ public synchronized void removeAllElements() { +/* 154 */ this.items.removeAllElements(); +/* 155 */ needRepaint(true, false); +/* */ } +/* */ +/* */ public synchronized void insertElementAt(TreeNode ele, int index) { +/* 159 */ this.items.insertElementAt(ele, index); +/* 160 */ needRepaint(true, false); +/* */ } +/* */ +/* */ public synchronized void removeElementAt(int index) { +/* 164 */ this.items.removeElementAt(index); +/* 165 */ needRepaint(true, false); +/* */ } +/* */ +/* */ public synchronized void addElement(TreeNode ele) { +/* 169 */ this.items.addElement(ele); +/* 170 */ needRepaint(true, false); +/* */ } +/* */ +/* */ public int countElements() { +/* 174 */ return this.items.size(); +/* */ } +/* */ +/* */ public TreeNode elementAt(int index) { +/* 178 */ return (TreeNode)this.items.elementAt(index); +/* */ } +/* */ +/* */ public TreeNode elementAt(Point p) { +/* 182 */ int item = this.scrollPos + p.y / this.itemHeight; +/* 183 */ if (item < this.items.size()) +/* 184 */ return (TreeNode)this.items.elementAt(item); +/* 185 */ return null; +/* */ } +/* */ +/* */ private void makeVisible(int item) { +/* 189 */ int count = this.items.size(); +/* 190 */ if ((count > this.linesVisible) && ( +/* 191 */ (item < this.scrollPos) || (item >= this.scrollPos + this.linesVisible))) { +/* 192 */ setScrollValue(Math.min(item * this.itemHeight, this.scrollbar.getMaximum())); +/* */ } +/* 194 */ this.needMakeVisible = false; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public synchronized void recalc() +/* */ { +/* 204 */ int height = getSize().height; +/* 205 */ this.linesVisible = Math.max(1, height / this.itemHeight); +/* 206 */ int count = this.items.size(); +/* 207 */ if (count > this.linesVisible) { +/* 208 */ if (!this.scrollbar.isVisible()) { +/* 209 */ this.scrollbar.setVisible(true); +/* 210 */ validate(); +/* */ } +/* 212 */ this.scrollbar.setValues(this.scrollPos * this.itemHeight, this.linesVisible * +/* 213 */ this.itemHeight, 0, count * this.itemHeight); +/* 214 */ this.scrollbar.setPageIncrement(this.linesVisible * this.itemHeight); +/* 215 */ this.scrollbar.setLineIncrement(this.itemHeight); +/* */ } else { +/* 217 */ if (this.scrollbar.isVisible()) { +/* 218 */ this.scrollbar.setVisible(false); +/* 219 */ validate(); +/* */ } +/* 221 */ this.scrollPos = 0; +/* */ } +/* 223 */ this.needRecalc = false; +/* */ } +/* */ +/* */ public synchronized void paint(Graphics g) +/* */ { +/* 228 */ super.paint(g); +/* */ +/* 230 */ int height = getSize().height; +/* 231 */ int count = this.items.size(); +/* 232 */ int y = 0; +/* 233 */ for (int i = this.scrollPos; i < count; i++) { +/* 234 */ TreeNode node = elementAt(i); +/* 235 */ String name = node.toString(); +/* 236 */ boolean isTitle = node.displayAsTitle(); +/* 237 */ Font font = this.nFont; +/* 238 */ FontMetrics metrics = this.nFontMetrics; +/* 239 */ if (isTitle) { +/* 240 */ font = this.bFont; +/* 241 */ metrics = this.bFontMetrics; +/* */ } +/* 243 */ g.setFont(font); +/* 244 */ int ascent = metrics.getAscent(); +/* 245 */ int x = node.getLevel() * 14; +/* 246 */ g.setColor(normFGColor); +/* 247 */ if (node.isOpen()) { +/* 248 */ this.openedIcon.drawFilled(g, x + 5, y + ascent - 5); +/* */ } else +/* 250 */ this.closedIcon.drawFilled(g, x + 5, y + ascent - 5); +/* 251 */ if (i == this.selectedIndex) +/* 252 */ g.setColor(selFGColor); +/* 253 */ g.drawString(name, x + 11 + 5, y + ascent); +/* 254 */ if ((i == this.selectedIndex) && (this.hasFocus)) +/* 255 */ g.drawRect(x + 11 + 3, y, metrics.stringWidth(name) + 3, +/* 256 */ this.itemHeight); +/* 257 */ y += this.itemHeight; +/* 258 */ if (y >= height) +/* */ break; +/* */ } +/* 261 */ this.needRepaint = false; +/* */ } +/* */ +/* */ @Deprecated +/* */ public boolean handleEvent(Event e) +/* */ { +/* 267 */ if (this.isDialogDisabled) { +/* 268 */ return false; +/* */ } +/* 270 */ switch (e.id) { +/* */ case 601: +/* 272 */ return scrollLineUp(); +/* */ case 602: +/* 274 */ return scrollLineDown(); +/* */ case 603: +/* 276 */ return scrollPageUp(); +/* */ case 604: +/* 278 */ return scrollPageDown(); +/* */ case 605: +/* 280 */ return scrollAbsolute(); +/* */ } +/* 282 */ return super.handleEvent(e); +/* */ } +/* */ +/* */ public void dialogDisable(boolean disable) +/* */ { +/* 287 */ this.isDialogDisabled = disable; +/* */ } +/* */ +/* */ public synchronized boolean mouseDown(Event e, int x, int y) +/* */ { +/* 292 */ setFocus(true); +/* 293 */ int item = this.scrollPos + y / this.itemHeight; +/* 294 */ if ((item >= 0) && (item < this.items.size())) +/* 295 */ if (e.clickCount == 1) { +/* 296 */ treeSelect(item); +/* */ +/* */ +/* 299 */ int yStart = y / this.itemHeight * this.itemHeight; +/* 300 */ TreeNode node = elementAt(item); +/* 301 */ MoveablePolygon widget = node.isOpen() ? this.openedIcon : +/* 302 */ this.closedIcon; +/* 303 */ FontMetrics metrics = node.displayAsTitle() ? this.nFontMetrics : +/* 304 */ this.bFontMetrics; +/* 305 */ widget.moveTo(node.getLevel() * 14 + 5, yStart + +/* 306 */ metrics.getAscent() - 5); +/* 307 */ if (widget.getBoundingBox().contains(x, y)) +/* 308 */ treeOpen(item); +/* */ } else { +/* 310 */ treeOpen(item); +/* */ } +/* 312 */ return true; +/* */ } +/* */ +/* */ +/* */ public void treeSelect(int item) {} +/* */ +/* */ public void treeOpen(int item) {} +/* */ +/* */ private boolean setScrollValue(int value) +/* */ { +/* 322 */ value = Math.max(this.scrollbar.getMinimum(), value); +/* 323 */ value = Math.min(this.scrollbar.getMaximum(), value); +/* 324 */ this.scrollPos = (value / this.itemHeight); +/* 325 */ this.scrollbar.setValue(this.scrollPos * this.itemHeight); +/* 326 */ needRepaint(false, false); +/* 327 */ return true; +/* */ } +/* */ +/* */ private boolean scrollLineUp() { +/* 331 */ return setScrollValue(this.scrollPos * this.itemHeight - +/* 332 */ this.scrollbar.getLineIncrement()); +/* */ } +/* */ +/* */ private boolean scrollLineDown() { +/* 336 */ return setScrollValue(this.scrollPos * this.itemHeight + +/* 337 */ this.scrollbar.getLineIncrement()); +/* */ } +/* */ +/* */ private boolean scrollPageUp() { +/* 341 */ return setScrollValue(this.scrollPos * this.itemHeight - +/* 342 */ this.scrollbar.getPageIncrement()); +/* */ } +/* */ +/* */ private boolean scrollPageDown() { +/* 346 */ return setScrollValue(this.scrollPos * this.itemHeight + +/* 347 */ this.scrollbar.getPageIncrement()); +/* */ } +/* */ +/* */ private boolean scrollAbsolute() { +/* 351 */ return setScrollValue(this.scrollbar.getValue()); +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\TreePanel.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/URLLine.java b/NET/worlds/console/URLLine.java new file mode 100644 index 0000000..f2c354d --- /dev/null +++ b/NET/worlds/console/URLLine.java @@ -0,0 +1,311 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import NET.worlds.scape.FrameEvent; +/* */ import NET.worlds.scape.Pilot; +/* */ import NET.worlds.scape.TeleportAction; +/* */ import NET.worlds.scape.TeleportStatus; +/* */ import java.awt.Container; +/* */ import java.awt.Event; +/* */ import java.awt.Label; +/* */ import java.awt.Menu; +/* */ import java.awt.MenuBar; +/* */ import java.awt.TextField; +/* */ import java.util.Vector; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public class URLLine +/* */ extends TextField +/* */ implements FramePart, TeleportStatus, DialogDisabled +/* */ { +/* */ private static final long serialVersionUID = -4154943921462354673L; +/* 46 */ protected static String nonloadSign = "URL: "; +/* 47 */ public Label label = new Label(nonloadSign); +/* */ +/* */ +/* */ +/* */ +/* */ public Menu historyMenu; +/* */ +/* */ +/* */ +/* */ +/* 57 */ public boolean beingEdited = false; +/* 58 */ public String lastTextSet = ""; +/* */ +/* */ +/* */ +/* */ +/* 63 */ private String currentText = ""; +/* */ +/* */ private boolean okToCallGetText; +/* */ +/* */ private boolean isDialogDisabled; +/* */ +/* */ protected boolean teleporting; +/* */ protected int lastURLUpdate; +/* */ +/* */ public synchronized String getText() +/* */ { +/* 74 */ if (this.okToCallGetText) { +/* 75 */ return super.getText(); +/* */ } +/* 77 */ return this.currentText; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ private synchronized void syncCurrentText() +/* */ { +/* 86 */ this.okToCallGetText = true; +/* 87 */ this.currentText = getText(); +/* 88 */ this.okToCallGetText = false; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public synchronized void setText(String s) +/* */ { +/* 97 */ if (!this.beingEdited) +/* */ { +/* 99 */ if (!this.currentText.equals(this.lastTextSet)) { +/* 100 */ this.beingEdited = true; +/* */ } else { +/* 102 */ this.lastTextSet = s; +/* */ +/* 104 */ if (!this.currentText.equals(s)) { +/* 105 */ int p = getSelectionStart(); +/* 106 */ super.setText(this.currentText = s); +/* 107 */ select(p, p); +/* */ } +/* */ } +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ public void cancelEdit() +/* */ { +/* 117 */ this.beingEdited = false; +/* 118 */ this.lastTextSet = getText(); +/* */ +/* */ +/* 121 */ select(1000, 1000); +/* */ +/* */ +/* 124 */ this.lastURLUpdate = 0; +/* */ } +/* */ +/* */ @Deprecated +/* */ public boolean keyDown(Event event, int key) { +/* 129 */ if (key != 27) { +/* 130 */ return super.keyDown(event, key); +/* */ } +/* */ +/* 133 */ cancelEdit(); +/* 134 */ return true; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ public void activate(Console c, Container f, Console prev) +/* */ { +/* 142 */ this.historyMenu = new Menu("History"); +/* 143 */ copyBackupToHistoryMenu(); +/* */ +/* */ +/* */ +/* */ +/* 148 */ Console.getMenuBar().add(this.historyMenu); +/* */ } +/* */ +/* */ +/* */ +/* */ public void deactivate() {} +/* */ +/* */ +/* */ +/* */ public void dialogDisable(boolean disable) +/* */ { +/* 159 */ this.isDialogDisabled = disable; +/* */ } +/* */ +/* */ @Deprecated +/* */ public boolean handleEvent(Event event) { +/* 164 */ if (this.isDialogDisabled) { +/* 165 */ return false; +/* */ } +/* 167 */ boolean ret = super.handleEvent(event); +/* */ +/* */ +/* */ +/* */ +/* 172 */ if (event.target == this) +/* 173 */ syncCurrentText(); +/* 174 */ return ret; +/* */ } +/* */ +/* */ @Deprecated +/* */ public boolean action(Event event, Object what) { +/* 179 */ if (event.target == this) { +/* 180 */ what = getText(); +/* */ +/* */ +/* */ +/* */ } +/* */ else +/* */ { +/* */ +/* */ +/* */ +/* 190 */ return true; +/* */ } +/* */ +/* 193 */ if (((String)what).length() != 0) { +/* 194 */ TeleportAction.teleport((String)what, null); +/* 195 */ cancelEdit(); +/* */ } +/* 197 */ return true; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public void teleportStatus(String err, String url) +/* */ { +/* 206 */ this.teleporting = ((err != null) && (err.length() == 0)); +/* */ +/* */ +/* */ +/* */ +/* */ +/* 212 */ if (err == null) { +/* 213 */ addHistoryItem(getCurrentPositionURL()); +/* 214 */ setText(url); +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public boolean handle(FrameEvent f) +/* */ { +/* 230 */ if (f.time < this.lastURLUpdate + 500) { +/* 231 */ return true; +/* */ } +/* 233 */ this.lastURLUpdate = f.time; +/* */ +/* 235 */ setText(getCurrentPositionURL()); +/* */ +/* 237 */ if (this.teleporting) +/* */ { +/* 239 */ if (this.label.getText().equals("LOAD ")) { +/* 240 */ this.label.setText("_____ "); +/* */ } else { +/* 242 */ this.label.setText("LOAD "); +/* */ } +/* 244 */ } else if (!this.label.getText().equals(nonloadSign)) { +/* 245 */ this.label.setText(nonloadSign); +/* */ } +/* 247 */ return true; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public static String getCurrentPositionURL() +/* */ { +/* 256 */ Pilot pilot = Pilot.getActive(); +/* 257 */ if (pilot == null) { +/* 258 */ return ""; +/* */ } +/* 260 */ String newURL = pilot.getURL(); +/* 261 */ if (newURL == null) { +/* 262 */ return ""; +/* */ } +/* 264 */ return newURL; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* 271 */ public static Vector<String> historyItems = new Vector(); +/* */ +/* */ +/* */ +/* */ +/* */ private void addHistoryItem(String url) +/* */ { +/* 278 */ if (url.length() == 0) { +/* 279 */ return; +/* */ } +/* 281 */ historyItems.insertElementAt(url, 0); +/* 282 */ int cnt = historyItems.size(); +/* 283 */ while (cnt > 10) { +/* 284 */ historyItems.removeElementAt(--cnt); +/* */ } +/* 286 */ copyBackupToHistoryMenu(); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ private void copyBackupToHistoryMenu() +/* */ { +/* 294 */ while (this.historyMenu.getItemCount() > 0) { +/* 295 */ this.historyMenu.remove(0); +/* */ } +/* 297 */ int cnt = historyItems.size(); +/* 298 */ if (cnt == 0) { +/* 299 */ this.historyMenu.add(""); +/* */ } +/* 301 */ for (int i = 0; i < cnt; i++) { +/* 302 */ this.historyMenu.add((String)historyItems.elementAt(i)); +/* */ } +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\URLLine.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/UniverseImage.java b/NET/worlds/console/UniverseImage.java new file mode 100644 index 0000000..215440c --- /dev/null +++ b/NET/worlds/console/UniverseImage.java @@ -0,0 +1,288 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import java.awt.event.MouseEvent; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ class UniverseImage +/* */ extends ImageCanvas +/* */ { +/* */ private static final long serialVersionUID = -8851169169042918014L; +/* */ +/* */ public UniverseImage(String fname) +/* */ { +/* 267 */ super(fname); +/* 268 */ enableEvents(16L); +/* */ } +/* */ +/* */ public void processMouseEvent(MouseEvent e) +/* */ { +/* 273 */ if (e.getID() != 501) { +/* 274 */ super.processMouseEvent(e); +/* */ } else { +/* 276 */ Console cons = Console.getActive(); +/* 277 */ if ((cons != null) && ((cons instanceof DefaultConsole))) { +/* 278 */ ((DefaultConsole)cons).startDrive(); +/* */ } +/* */ } +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\UniverseImage.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/UniversePanel.java b/NET/worlds/console/UniversePanel.java new file mode 100644 index 0000000..a3c5c66 --- /dev/null +++ b/NET/worlds/console/UniversePanel.java @@ -0,0 +1,729 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import NET.worlds.core.IniFile; +/* */ import NET.worlds.core.Std; +/* */ import NET.worlds.network.NetUpdate; +/* */ import NET.worlds.network.ProgressDialog; +/* */ import NET.worlds.network.URL; +/* */ import NET.worlds.scape.BGLoaded; +/* */ import NET.worlds.scape.BackgroundLoader; +/* */ import NET.worlds.scape.Room; +/* */ import NET.worlds.scape.World; +/* */ import java.awt.Component; +/* */ import java.awt.Dimension; +/* */ import java.awt.Event; +/* */ import java.awt.Graphics; +/* */ import java.awt.Image; +/* */ import java.awt.Panel; +/* */ import java.io.DataInputStream; +/* */ import java.io.File; +/* */ import java.io.FileInputStream; +/* */ import java.io.FileNotFoundException; +/* */ import java.io.IOException; +/* */ import java.io.PrintStream; +/* */ import java.util.StringTokenizer; +/* */ import java.util.Vector; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public class UniversePanel +/* */ extends Panel +/* */ implements MainCallback, ImageButtonsCallback, BGLoaded +/* */ { +/* */ private static final long serialVersionUID = 4029344486393517219L; +/* */ UniverseImage bg; +/* 292 */ int xOff = 0; +/* 293 */ int yOff = 0; +/* */ +/* */ ImageButtons backButton; +/* */ +/* */ DefaultConsole owningConsole; +/* */ +/* 299 */ private static String datName = "universe/universe.dat"; +/* 300 */ private static String bgName = "universe/universe.jpg"; +/* */ static String lastCacheDat; +/* */ +/* 303 */ public UniversePanel(DefaultConsole cons) { this.owningConsole = cons; +/* 304 */ setLayout(null); +/* */ +/* 306 */ this.backButton = new ImageButtons(Console.message("back.gif"), 60, 22, this); +/* */ +/* 308 */ String rbgName = IniFile.override().getIniString("UniverseBgFile", +/* 309 */ bgName); +/* 310 */ String rdatName = IniFile.override().getIniString("UniverseDatFile", +/* 311 */ datName); +/* */ +/* 313 */ if (!new File(datName).exists()) +/* */ { +/* */ +/* 316 */ lastCacheDat = ""; +/* 317 */ if (!ProgressDialog.copyFile("universe.dat", datName)) +/* 318 */ ProgressDialog.copyFile("../universe.dat", datName); +/* */ } +/* 320 */ readUniverseFile(datName); +/* */ +/* 322 */ if (!new File(bgName).exists()) { +/* 323 */ lastCacheBg = ""; +/* 324 */ if (!ProgressDialog.copyFile("universe.jpg", bgName)) +/* 325 */ ProgressDialog.copyFile("../universe.jpg", bgName); +/* */ } +/* 327 */ this.bg = new UniverseImage(bgName); +/* 328 */ add(this.bg); +/* */ +/* 330 */ Dimension image = this.bg.imageSize(); +/* 331 */ this.bg.setSize(image.width, image.height); +/* */ +/* */ +/* 334 */ String serv = NetUpdate.getUpgradeServerURL(); +/* 335 */ BackgroundLoader.get(this, URL.make(serv + rbgName)); +/* 336 */ BackgroundLoader.get(this, URL.make(serv + rdatName)); +/* */ } +/* */ +/* */ +/* */ static String lastCacheBg; +/* 341 */ static Object locker = new Object(); +/* */ Image offscreen; +/* */ private boolean registered; +/* */ int upDownState; +/* */ int leftRightState; +/* */ int lastKeyTime; +/* */ +/* */ private boolean safeCopyFile(String name) +/* */ { +/* 350 */ synchronized (locker) { +/* 351 */ if ((name.endsWith("dat")) && (!name.equals(lastCacheDat))) +/* */ { +/* 353 */ lastCacheDat = name; +/* 354 */ if (ProgressDialog.copyFile(name, datName)) { +/* 355 */ readUniverseFile(datName); +/* 356 */ add(this.bg); +/* 357 */ return true; +/* */ } +/* 359 */ } else if ((name.endsWith("jpg")) && (!name.equals(lastCacheBg))) { +/* 360 */ lastCacheBg = name; +/* 361 */ if (ProgressDialog.copyFile(name, bgName)) { +/* 362 */ remove(this.bg); +/* 363 */ this.bg.flushImage(); +/* */ +/* 365 */ add(this.bg = new UniverseImage(bgName)); +/* */ +/* 367 */ Dimension image = this.bg.imageSize(); +/* 368 */ this.bg.setSize(image.width, image.height); +/* 369 */ return true; +/* */ } +/* */ } +/* 372 */ return false; +/* */ } +/* */ } +/* */ +/* */ public void flushImage() +/* */ { +/* 378 */ remove(this.bg); +/* 379 */ this.bg.flushImage(); +/* */ } +/* */ +/* */ public synchronized Object asyncBackgroundLoad(String localName, URL remoteURL) +/* */ { +/* 384 */ return localName; +/* */ } +/* */ +/* */ public boolean syncBackgroundLoad(Object obj, URL remoteURL) { +/* 388 */ String localName = (String)obj; +/* 389 */ if ((localName != null) && (new File(localName).exists()) && +/* 390 */ (safeCopyFile(localName))) +/* */ { +/* 392 */ invalidate(); +/* 393 */ validate(); +/* 394 */ doLayout(); +/* 395 */ repaint(); +/* */ } +/* */ +/* 398 */ return false; +/* */ } +/* */ +/* */ public Room getBackgroundLoadRoom() { +/* 402 */ return null; +/* */ } +/* */ +/* */ public synchronized void setViewportPos() +/* */ { +/* 407 */ Dimension viewport = getSize(); +/* 408 */ Dimension image = this.bg.imageSize(); +/* */ +/* 410 */ int centerToLeft = image.width - viewport.width >> 1; +/* 411 */ int centerToTop = image.height - viewport.height >> 1; +/* */ +/* 413 */ if (centerToLeft < 0) +/* 414 */ this.xOff = 0; +/* 415 */ if (centerToTop < 0) { +/* 416 */ this.yOff = 0; +/* */ } +/* 418 */ int x = this.xOff + centerToLeft; +/* 419 */ int y = this.yOff + centerToTop; +/* */ +/* */ +/* 422 */ Dimension backSize = this.backButton.getPreferredSize(); +/* 423 */ this.backButton.setSize(backSize); +/* 424 */ this.backButton.setLocation(viewport.width - backSize.width - 5, +/* 425 */ viewport.height - backSize.height - 3); +/* */ +/* 427 */ this.bg.setLocation(-x, -y); +/* 428 */ int i = this.buttons.size(); +/* 429 */ do { WorldButton b = (WorldButton)this.buttons.elementAt(i); +/* 430 */ b.setLocation(-x + b.buttonX, -y + b.buttonY); +/* */ +/* 432 */ WorldButtonBullet bl = (WorldButtonBullet)this.bullets.elementAt(i); +/* 433 */ bl.setLocation(-x + bl.circleX, -y + bl.circleY);i--; +/* 428 */ } while (i >= 0); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public void invalidate() +/* */ { +/* 441 */ super.invalidate(); +/* 442 */ this.offscreen = null; +/* */ } +/* */ +/* */ public void update(Graphics g) +/* */ { +/* 447 */ paint(g); +/* */ } +/* */ +/* */ public synchronized void paint(Graphics g) +/* */ { +/* 452 */ setViewportPos(); +/* */ +/* 454 */ if (this.offscreen == null) { +/* 455 */ this.offscreen = createImage(getSize().width, getSize().height); +/* */ } +/* 457 */ Graphics og = this.offscreen.getGraphics(); +/* 458 */ og.setClip(0, 0, getSize().width, getSize().height); +/* 459 */ super.paint(og); +/* */ try { +/* 461 */ g.drawImage(this.offscreen, 0, 0, this); +/* */ +/* */ } +/* */ catch (NullPointerException e) +/* */ { +/* 466 */ this.offscreen = null; +/* */ } +/* 468 */ og.dispose(); +/* */ +/* 470 */ startWatch(); +/* */ } +/* */ +/* */ +/* */ public synchronized void startWatch() +/* */ { +/* 476 */ if (!this.registered) { +/* 477 */ Main.register(this); +/* 478 */ this.registered = true; +/* */ } +/* */ } +/* */ +/* */ public synchronized void stopWatch() +/* */ { +/* 484 */ if (this.registered) { +/* 485 */ Main.unregister(this); +/* 486 */ this.registered = false; +/* */ } +/* */ } +/* */ +/* */ public void setOffset(int x, int y) +/* */ { +/* 492 */ if (!this.owningConsole.isUniverseMode()) { +/* 493 */ return; +/* */ } +/* 495 */ Dimension viewport = getSize(); +/* 496 */ Dimension image = this.bg.imageSize(); +/* */ +/* */ +/* 499 */ int centerToLeft = image.width - viewport.width >> 1; +/* 500 */ int centerToTop = image.height - viewport.height >> 1; +/* */ +/* 502 */ x += centerToLeft; +/* 503 */ y += centerToTop; +/* */ +/* 505 */ if (x < 0) { +/* 506 */ x = 0; +/* 507 */ } else if (x + viewport.width > image.width) { +/* 508 */ x = image.width - viewport.width; +/* */ } +/* 510 */ if (y < 0) { +/* 511 */ y = 0; +/* 512 */ } else if (y + viewport.height > image.height) { +/* 513 */ y = image.height - viewport.height; +/* */ } +/* */ +/* 516 */ x -= centerToLeft; +/* 517 */ y -= centerToTop; +/* */ +/* */ +/* 520 */ if (viewport.width > image.width) { +/* 521 */ x = 0; +/* */ } +/* 523 */ if (viewport.height > image.height) { +/* 524 */ y = 0; +/* */ } +/* 526 */ if ((x != this.xOff) || (y != this.yOff)) { +/* 527 */ this.xOff = x; +/* 528 */ this.yOff = y; +/* */ +/* 530 */ repaint(); +/* */ } +/* */ } +/* */ +/* */ public void addOffset(int dx, int dy) +/* */ { +/* 536 */ setOffset(this.xOff + dx, this.yOff + dy); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ @Deprecated +/* */ public boolean keyUp(Event event, int key) +/* */ { +/* 549 */ if ((key != 1004) && +/* 550 */ (key != 1005) && +/* 551 */ (key != 1006) && +/* 552 */ (key != 1007)) +/* */ { +/* 554 */ return super.keyUp(event, key); +/* */ } +/* 556 */ if ((this.upDownState != 0) || (this.leftRightState != 0)) +/* */ { +/* 558 */ mainCallback(); +/* */ +/* 560 */ this.upDownState = 0; +/* 561 */ this.leftRightState = 0; +/* */ } +/* */ +/* 564 */ return true; +/* */ } +/* */ +/* */ public synchronized void mainCallback() { +/* 568 */ int now = Std.getRealTime(); +/* 569 */ int xDiff = 0; +/* 570 */ int yDiff = 0; +/* */ +/* 572 */ if (this.upDownState != 0) { +/* 573 */ yDiff = this.upDownState * (now - this.lastKeyTime) / 5; +/* */ } +/* 575 */ if (this.leftRightState != 0) { +/* 576 */ xDiff = this.leftRightState * (now - this.lastKeyTime) / 5; +/* */ } +/* 578 */ if (xDiff < -50) +/* 579 */ xDiff = -50; +/* 580 */ if (xDiff > 50) +/* 581 */ xDiff = 50; +/* 582 */ if (yDiff < -50) +/* 583 */ yDiff = -50; +/* 584 */ if (yDiff > 50) { +/* 585 */ yDiff = 50; +/* */ } +/* 587 */ String curpkg = WorldsMarkPart.getCurrentPackageName(); +/* 588 */ if ((curpkg != null) && (!curpkg.equals(WorldButton.currentPackageName))) { +/* 589 */ WorldButton.currentPackageName = curpkg; +/* 590 */ if ((xDiff == 0) && (yDiff == 0)) { +/* 591 */ repaint(); +/* */ } +/* */ } +/* 594 */ if ((xDiff != 0) || (yDiff != 0)) { +/* 595 */ addOffset(xDiff, yDiff); +/* */ } +/* 597 */ this.lastKeyTime = now; +/* */ +/* 599 */ if ((this.owningConsole != Console.getActive()) || +/* 600 */ (!this.owningConsole.isUniverseMode())) { +/* 601 */ stopWatch(); +/* */ } +/* */ } +/* */ +/* */ @Deprecated +/* */ public synchronized boolean keyDown(Event event, int key) +/* */ { +/* 608 */ boolean changed = false; +/* */ +/* 610 */ if (key == 1004) { +/* 611 */ if (this.upDownState != -1) { +/* 612 */ this.upDownState = -1; +/* 613 */ changed = true; +/* */ } +/* 615 */ } else if (key == 1005) { +/* 616 */ if (this.upDownState != 1) { +/* 617 */ this.upDownState = 1; +/* 618 */ changed = true; +/* */ } +/* 620 */ } else if (key == 1006) { +/* 621 */ if (this.leftRightState != -1) { +/* 622 */ this.leftRightState = -1; +/* 623 */ changed = true; +/* */ } +/* 625 */ } else if (key == 1007) { +/* 626 */ if (this.leftRightState != 1) { +/* 627 */ this.leftRightState = 1; +/* 628 */ changed = true; +/* */ } +/* */ } else { +/* 631 */ return super.keyDown(event, key); +/* */ } +/* 633 */ if (changed) +/* */ { +/* 635 */ startWatch(); +/* 636 */ this.lastKeyTime = (Std.getRealTime() - 20); +/* */ } +/* */ +/* 639 */ return true; +/* */ } +/* */ +/* 642 */ Vector<WorldButton> buttons = new Vector(); +/* 643 */ Vector<WorldButtonBullet> bullets = new Vector(); +/* */ +/* */ private synchronized void readUniverseFile(String localName) { +/* 646 */ removeAll(); +/* */ +/* 648 */ this.buttons = new Vector(); +/* 649 */ this.bullets = new Vector(); +/* 650 */ boolean showAll = IniFile.gamma().getIniInt("ShowAllWorlds", 0) != 0; +/* */ +/* 652 */ add(this.backButton); +/* */ +/* */ try +/* */ { +/* 656 */ FileInputStream in = new FileInputStream(localName); +/* 657 */ DataInputStream dis = new DataInputStream(in); +/* */ +/* */ String line; +/* 660 */ while ((line = dis.readLine()) != null) { String line; +/* 661 */ StringTokenizer st = new StringTokenizer(line); +/* 662 */ if ((st.hasMoreTokens()) && (line.charAt(0) != ';')) { +/* 663 */ int circleX = Integer.parseInt(st.nextToken()); +/* 664 */ int circleY = Integer.parseInt(st.nextToken()); +/* 665 */ int buttonX = Integer.parseInt(st.nextToken()); +/* 666 */ int buttonY = Integer.parseInt(st.nextToken()); +/* */ +/* 668 */ String pkg = st.nextToken(); +/* */ +/* */ +/* 671 */ int privacy = Integer.parseInt(st.nextToken()); +/* */ +/* 673 */ String text = st.nextToken("").trim(); +/* */ +/* 675 */ Dimension sz = WorldButton.measure(text); +/* */ +/* 677 */ String[] texts = { text }; +/* 678 */ boolean isLoaded = WorldsMarkPart.findPackage(pkg) != null; +/* */ +/* */ +/* 681 */ if ((showAll) || (privacy == 0) || ((privacy == 1) && +/* 682 */ (!World.isCloistered())) || ((privacy <= 2) && +/* 683 */ (isLoaded)) || ((privacy == 3) && +/* 684 */ (!World.isWorldsStoreProscribed()))) { +/* 685 */ WorldButton button = new WorldButton(isLoaded, buttonX, +/* 686 */ buttonY, sz.width, sz.height, texts, pkg, +/* 687 */ privacy, this.owningConsole, this); +/* 688 */ add(button); +/* 689 */ this.buttons.addElement(button); +/* */ +/* 691 */ WorldButtonBullet bullet = new WorldButtonBullet( +/* 692 */ circleX, circleY, button); +/* 693 */ if ((circleX > 0) || (circleY > 0)) +/* 694 */ add(bullet); +/* 695 */ this.bullets.addElement(bullet); +/* */ } +/* */ } +/* */ } +/* */ +/* 700 */ dis.close(); +/* 701 */ in.close(); +/* */ } catch (FileNotFoundException e) { +/* 703 */ System.out.println(e); +/* */ } catch (IOException e) { +/* 705 */ System.out.println(e); +/* */ } +/* */ } +/* */ +/* */ public Object imageButtonsCallback(Component who, int which) { +/* 710 */ if ((who instanceof WorldButton)) { +/* 711 */ ((WorldButton)who).doAction(); +/* 712 */ } else if (who == this.backButton) { +/* 713 */ this.owningConsole.toggleUniverseMode(); +/* */ } +/* 715 */ return null; +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\UniversePanel.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/UnpaddedLabel.java b/NET/worlds/console/UnpaddedLabel.java new file mode 100644 index 0000000..d40466b --- /dev/null +++ b/NET/worlds/console/UnpaddedLabel.java @@ -0,0 +1,2934 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import java.awt.Dimension; +/* */ import java.awt.Label; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ class UnpaddedLabel +/* */ extends Label +/* */ { +/* */ private static final long serialVersionUID = -5960236197854637006L; +/* */ +/* */ UnpaddedLabel(String text, int align) +/* */ { +/* 2916 */ super(text, align); +/* */ } +/* */ +/* */ public Dimension getPreferredSize() +/* */ { +/* 2921 */ return new Dimension(1, 1); +/* */ } +/* */ +/* */ public Dimension getMinimumSize() +/* */ { +/* 2926 */ return getPreferredSize(); +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\UnpaddedLabel.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/UpdateableDialog.java b/NET/worlds/console/UpdateableDialog.java new file mode 100644 index 0000000..f476433 --- /dev/null +++ b/NET/worlds/console/UpdateableDialog.java @@ -0,0 +1,201 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import java.awt.Button; +/* */ import java.awt.Event; +/* */ import java.awt.Font; +/* */ import java.awt.GridBagConstraints; +/* */ import java.awt.GridBagLayout; +/* */ import java.awt.Window; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public class UpdateableDialog +/* */ extends PolledDialog +/* */ { +/* */ private static final long serialVersionUID = 8859312510212567551L; +/* 29 */ protected Button okButton = new Button(Console.message("OK")); +/* 30 */ protected Button cancelButton = new Button(Console.message("Cancel")); +/* 31 */ protected GridBagLayout gbag = new GridBagLayout(); +/* */ private String prompt; +/* */ private MultiLineLabel promptLabel; +/* 34 */ private static Font font = new Font(Console.message("MenuFont"), +/* 35 */ 0, 12); +/* 36 */ private static Font bfont = new Font(Console.message("ButtonFont"), +/* 37 */ 0, 12); +/* */ +/* */ +/* 40 */ protected int cancelKey = 27; +/* 41 */ protected int confirmKey = 10; +/* */ +/* */ protected UpdateableDialog(Window parent, String title) +/* */ { +/* 45 */ this(parent, (DialogReceiver)parent, title); +/* */ } +/* */ +/* */ protected UpdateableDialog(Window parent, String title, String cancel, String ok) +/* */ { +/* 50 */ this(parent, (DialogReceiver)parent, title, cancel, ok); +/* */ } +/* */ +/* */ protected UpdateableDialog(Window parent, DialogReceiver target, String title) +/* */ { +/* 55 */ this(parent, target, title, true); +/* */ } +/* */ +/* */ protected UpdateableDialog(Window parent, DialogReceiver target, String title, boolean modal) +/* */ { +/* 60 */ super(parent, target, title, modal); +/* 61 */ setLayout(this.gbag); +/* */ } +/* */ +/* */ protected UpdateableDialog(Window parent, DialogReceiver target, String title, String cancel, String ok) +/* */ { +/* 66 */ this(parent, target, title, cancel, ok, true); +/* */ } +/* */ +/* */ protected UpdateableDialog(Window parent, DialogReceiver target, String title, String cancel, String ok, boolean modal) +/* */ { +/* 71 */ this(parent, target, title, modal); +/* 72 */ if (ok != null) { +/* 73 */ this.okButton.setLabel(ok); +/* */ } else { +/* 75 */ this.okButton = null; +/* */ } +/* 77 */ if (cancel != null) { +/* 78 */ this.cancelButton.setLabel(cancel); +/* */ } else { +/* 80 */ this.cancelButton = null; +/* */ } +/* */ } +/* */ +/* */ public UpdateableDialog(Window parent, DialogReceiver target, String title, String cancel, String ok, String prompt) { +/* 85 */ this(parent, target, title, cancel, ok, prompt, true); +/* */ } +/* */ +/* */ public UpdateableDialog(Window parent, DialogReceiver target, String title, String cancel, String ok, String prompt, boolean modal) +/* */ { +/* 90 */ this(parent, target, title, cancel, ok, modal); +/* 91 */ setFont(font); +/* 92 */ this.prompt = prompt; +/* 93 */ ready(); +/* */ } +/* */ +/* */ +/* */ public UpdateableDialog(Window parent, DialogReceiver target, String title, String cancel, String ok, String prompt, boolean modal, int alignment) +/* */ { +/* 99 */ this(parent, target, title, cancel, ok, modal); +/* 100 */ this.prompt = prompt; +/* 101 */ setAlignment(alignment); +/* 102 */ ready(); +/* */ } +/* */ +/* */ protected void build() +/* */ { +/* 107 */ GridBagConstraints c = new GridBagConstraints(); +/* 108 */ if (this.prompt != null) { +/* 109 */ c.weightx = 1.0D; +/* 110 */ c.weighty = 1.0D; +/* 111 */ c.gridwidth = 0; +/* 112 */ this.promptLabel = new MultiLineLabel(this.prompt, 5, 5); +/* 113 */ this.promptLabel.setFont(font); +/* 114 */ add(this.gbag, this.promptLabel, c); +/* */ } +/* 116 */ int count = 0; +/* 117 */ if (this.okButton != null) +/* 118 */ count++; +/* 119 */ if (this.cancelButton != null) +/* 120 */ count++; +/* 121 */ c.gridwidth = count; +/* 122 */ c.weightx = 1.0D; +/* 123 */ c.weighty = 0.0D; +/* 124 */ if (this.okButton != null) { +/* 125 */ this.okButton.setFont(bfont); +/* 126 */ add(this.gbag, this.okButton, c); +/* */ } +/* 128 */ if (this.cancelButton != null) { +/* 129 */ this.cancelButton.setFont(bfont); +/* 130 */ add(this.gbag, this.cancelButton, c); +/* */ } +/* */ } +/* */ +/* */ @Deprecated +/* */ public boolean action(Event event, Object what) +/* */ { +/* 137 */ Object target = event.target; +/* 138 */ if ((target == this.okButton) && (setValue())) +/* 139 */ return done(true); +/* 140 */ if (target == this.cancelButton) +/* 141 */ return done(false); +/* 142 */ return false; +/* */ } +/* */ +/* */ protected boolean setValue() { +/* 146 */ return true; +/* */ } +/* */ +/* */ public void setCancelKey(int key) { +/* 150 */ this.cancelKey = key; +/* */ } +/* */ +/* */ public void setConfirmKey(int key) { +/* 154 */ this.confirmKey = key; +/* */ } +/* */ +/* */ @Deprecated +/* */ public boolean keyDown(Event event, int key) +/* */ { +/* 160 */ if (key == this.cancelKey) +/* 161 */ return done(false); +/* 162 */ if (key == this.confirmKey) +/* */ { +/* */ +/* */ +/* 166 */ if (this.okButton != null) { +/* 167 */ if (setValue()) +/* 168 */ return done(true); +/* */ } else +/* 170 */ return done(false); +/* */ } +/* 172 */ return super.keyDown(event, key); +/* */ } +/* */ +/* */ public void setPrompt(String text) { +/* 176 */ GridBagConstraints c = new GridBagConstraints(); +/* 177 */ this.prompt = text; +/* 178 */ if (this.promptLabel != null) { +/* 179 */ this.gbag.removeLayoutComponent(this.promptLabel); +/* */ } +/* */ +/* 182 */ c.weightx = 1.0D; +/* 183 */ c.weighty = 1.0D; +/* 184 */ c.gridwidth = 0; +/* 185 */ this.promptLabel = new MultiLineLabel(this.prompt, 5, 5); +/* 186 */ add(this.gbag, this.promptLabel, c); +/* */ +/* 188 */ setVisible(true); +/* */ } +/* */ +/* */ public void closeIt(boolean state) +/* */ { +/* 193 */ done(state); +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\UpdateableDialog.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/UserInventoryCallback.java b/NET/worlds/console/UserInventoryCallback.java new file mode 100644 index 0000000..6528ee7 --- /dev/null +++ b/NET/worlds/console/UserInventoryCallback.java @@ -0,0 +1,49 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import NET.worlds.scape.InventoryCallback; +/* */ import NET.worlds.scape.Pilot; +/* */ import NET.worlds.scape.Point3Temp; +/* */ import NET.worlds.scape.Room; +/* */ import NET.worlds.scape.WObject; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public class UserInventoryCallback +/* */ implements InventoryCallback +/* */ { +/* */ public void droppedInventoryItem(Object item) +/* */ { +/* 25 */ WObject w = (WObject)item; +/* 26 */ w.detach(); +/* 27 */ w.setVisible(true); +/* */ +/* */ +/* */ +/* 31 */ Pilot pilot = Pilot.getActive(); +/* 32 */ Room r = pilot.getRoom(); +/* */ +/* 34 */ Point3Temp pos = Point3Temp.make(0.0F, 180.0F, 0.0F); +/* 35 */ pos.times(pilot); +/* */ +/* */ +/* 38 */ pos.z = (w.getPosition().z + pilot.getPosition().z); +/* 39 */ w.moveTo(pos); +/* */ +/* 41 */ r.add(w); +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\UserInventoryCallback.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/VCTimerThread.java b/NET/worlds/console/VCTimerThread.java new file mode 100644 index 0000000..bc5d0a0 --- /dev/null +++ b/NET/worlds/console/VCTimerThread.java @@ -0,0 +1,696 @@ +/* */ package NET.worlds.console; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ class VCTimerThread +/* */ extends Thread +/* */ { +/* */ private long _wait; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public VoiceChat _vc; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ VCTimerThread(VoiceChat vc, long wait) +/* */ { +/* 675 */ this._vc = vc; +/* 676 */ this._wait = wait; +/* */ } +/* */ +/* */ public void run() +/* */ { +/* */ try { +/* 682 */ Thread.sleep(this._wait); +/* */ } catch (InterruptedException e) { +/* 684 */ stop(); +/* */ } +/* 686 */ if (this._vc != null) { +/* 687 */ this._vc.checkConnected(); +/* */ } +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\VCTimerThread.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/VoiceChat.java b/NET/worlds/console/VoiceChat.java new file mode 100644 index 0000000..3c2cc20 --- /dev/null +++ b/NET/worlds/console/VoiceChat.java @@ -0,0 +1,669 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import NET.worlds.core.IniFile; +/* */ import NET.worlds.network.URL; +/* */ import NET.worlds.network.WorldServer; +/* */ import NET.worlds.scape.CDAudio; +/* */ import NET.worlds.scape.Pilot; +/* */ import NET.worlds.scape.WavSoundPlayer; +/* */ import java.io.File; +/* */ import java.io.IOException; +/* */ import java.net.InetAddress; +/* */ import java.text.MessageFormat; +/* */ import java.util.Vector; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public class VoiceChat +/* */ implements DialogReceiver +/* */ { +/* */ private static final String SPEAKFREELY = "sfmain.exe"; +/* */ private static final int INITIAL_STATE = 0; +/* */ private static final int BEGINNING_CONNECTION = 1; +/* */ private static final int REQUESTING_CONNECTION = 2; +/* */ private static final int ATTEMPTING_CONNECTION = 3; +/* */ private static final int SUCCESSFULLY_CONNECTED = 4; +/* */ private static final int CONNECTION_FAILED_RESETTING = 5; +/* */ private static final int CLOSING_CONNECTION = 6; +/* */ private static final int CONNECTION_CLOSED_RESETTING = 7; +/* 110 */ private static final String[] _stateStrs = { "Initial State", +/* 111 */ "Beginning Connection", "Attempting Connection", +/* 112 */ "Successfully Connected", "Resetting (Connection Failed)", +/* 113 */ "Closing Connection", "Resetting (Connection Closed)" }; +/* */ +/* */ +/* 116 */ private int _state = 0; +/* */ +/* */ public int getState() { +/* 119 */ return this._state; +/* */ } +/* */ +/* */ public String getStateString() { +/* 123 */ return _stateStrs[this._state]; +/* */ } +/* */ +/* */ +/* 127 */ private String _error = ""; +/* */ +/* */ public String getLastError() { +/* 130 */ return this._error; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* 142 */ private static boolean _selfWhisper = false; +/* */ +/* */ public static void activateSelfWhisper() { +/* 145 */ _selfWhisper = true; +/* 146 */ Console.println(Console.message("Selfwhisper-on")); +/* */ } +/* */ +/* */ public static void deactivateSelfWhisper() { +/* 150 */ _selfWhisper = false; +/* 151 */ Console.println(Console.message("Selfwhisper-off")); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* 161 */ public static String VCdebugCommand = "&|+debug>VCcommand="; +/* 162 */ public static String VCdebugCommandReset = "&|+debug>VCcommandReset="; +/* */ +/* 164 */ private static String _extraCommand = ""; +/* */ +/* */ public static void setExtra(String text) { +/* 167 */ int start = text.indexOf('"') + 1; +/* 168 */ int end = text.lastIndexOf('"'); +/* 169 */ _extraCommand = text.substring(start, end); +/* 170 */ Object[] arguments = { new String(_extraCommand) }; +/* 171 */ Console.println(MessageFormat.format(Console.message("Add-VoiceChat"), +/* 172 */ arguments)); +/* */ } +/* */ +/* */ public static void resetExtra() { +/* 176 */ _extraCommand = ""; +/* 177 */ Console.println(Console.message("VoiceChat-reset")); +/* */ } +/* */ +/* */ +/* */ +/* 182 */ private static GammaPhoneMonitor chatMonitor = null; +/* */ +/* */ +/* 185 */ private String _who = null; +/* */ public static UpdateableDialog voiceChatDialog; +/* */ +/* 188 */ public String who() { return this._who; } +/* */ +/* */ +/* */ +/* */ private static UpdateableDialog voiceChatQueryDialog; +/* */ +/* */ +/* */ private static String voiceChatQueryIP; +/* */ +/* */ +/* */ private static String voiceChatQueryWho; +/* */ +/* */ +/* 201 */ public static boolean voiceChatEnabled = IniFile.gamma().getIniInt( +/* 202 */ "VoiceChat", voiceChatAvailable() ? 1 : 0) != 0; +/* */ +/* */ public static void setVoiceChatEnabled(boolean f) { +/* 205 */ if (!voiceChatAvailable()) +/* 206 */ f = false; +/* 207 */ voiceChatEnabled = f; +/* 208 */ IniFile.gamma().setIniInt("VoiceChat", f ? 1 : 0); +/* */ } +/* */ +/* 211 */ private static boolean voiceChatExeChecked = false; +/* 212 */ private static boolean voiceChatExists = false; +/* */ +/* */ public static boolean voiceChatAvailable() { +/* 215 */ if (voiceChatExeChecked) { +/* 216 */ return voiceChatExists; +/* */ } +/* 218 */ URL vcexe = URL.make("home:sfmain.exe"); +/* 219 */ String fname = vcexe.unalias(); +/* 220 */ File f = new File(fname); +/* 221 */ voiceChatExists = f.exists(); +/* 222 */ voiceChatExeChecked = true; +/* 223 */ return voiceChatExists; +/* */ } +/* */ +/* 226 */ private int _gammaphoneWindow = 0; +/* */ +/* */ public void registerProcess(int id) { +/* 229 */ this._gammaphoneWindow = id; +/* */ } +/* */ +/* 232 */ DefaultConsole _console = null; +/* */ +/* 234 */ VCTimerThread _vtimer = null; +/* */ private static final String voiceChatQuery = "&|+voicechat?"; +/* */ private static final String voiceChatAccept = "&|+voicechat>accept"; +/* */ private static final String voiceChatReject = "&|+voicechat>reject"; +/* */ private static final String voiceChatBusy = "&|+voicechat>busy"; +/* */ private static final String voiceChatNotVIP = "&|+voicechat>notvip"; +/* */ private static final String voiceChatDisabled = "&|+voicechat>disabled"; +/* */ +/* */ public void beginChat(String friendName, DefaultConsole console) { +/* 243 */ this._state = 1; +/* 244 */ this._console = console; +/* */ +/* 246 */ if (!console.getVIP()) { +/* 247 */ resetConnection(Console.message("must-be-VIP")); +/* */ } else { +/* 249 */ String ip = null; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ try +/* */ { +/* 262 */ InetAddress localAddr = console.getServerNew() +/* 263 */ .getLocalAddress(); +/* 264 */ ip = localAddr != null ? localAddr.toString() : null; +/* */ +/* 266 */ ip = ip.substring(ip.indexOf('/') + 1); +/* */ } +/* */ catch (SecurityException e) +/* */ { +/* 270 */ resetConnection(Console.message("sec-violation")); +/* */ } +/* */ +/* 273 */ if (ip == null) { +/* 274 */ resetConnection(Console.message("cant-determine-IP")); +/* */ } else { +/* 276 */ if (voiceChatDialog != null) { +/* 277 */ if (friendName.equals(this._who)) { +/* 278 */ Object[] arguments = { new String(this._who) }; +/* 279 */ Console.println(MessageFormat.format( +/* 280 */ Console.message("already-VoiceChat"), arguments)); +/* 281 */ return; +/* */ } +/* 283 */ resetConnection(Console.message("chat-ended")); +/* */ } +/* */ +/* 286 */ if ((voiceChatQueryDialog != null) && +/* 287 */ (voiceChatQueryWho.equals(friendName))) { +/* 288 */ arguments = new Object[] { new String(friendName) }; +/* 289 */ Console.println(MessageFormat.format( +/* 290 */ Console.message("already-calling"), arguments)); +/* 291 */ return; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* 298 */ while (ConnectionRecord.checkList(this._who)) { Object[] arguments; +/* 299 */ Object[] arguments = { new String(this._who) }; +/* 300 */ Console.println(MessageFormat.format( +/* 301 */ Console.message("wait-a-few"), arguments)); +/* */ try { +/* 303 */ Thread.sleep(2000L); +/* */ } +/* */ catch (InterruptedException localInterruptedException) {} +/* */ } +/* */ +/* */ +/* 309 */ if (initiateVoiceChat(friendName, null)) { +/* 310 */ Object[] arguments = { new String(friendName), +/* 311 */ new String(ip) }; +/* 312 */ Console.println(MessageFormat.format( +/* 313 */ Console.message("Asking-to-call"), arguments)); +/* 314 */ this._state = 2; +/* 315 */ sendWhisper(friendName, "&|+voicechat?" + ip); +/* */ +/* 317 */ this._vtimer = new VCTimerThread(this, 30000L); +/* 318 */ this._vtimer.start(); +/* */ } +/* */ } +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ private static native void terminateVC(int paramInt); +/* */ +/* */ +/* */ +/* */ +/* */ private boolean initiateVoiceChat(String friendName, String ip) +/* */ { +/* 335 */ this._who = friendName; +/* 336 */ int hWnd = Window.getHWnd(); +/* */ +/* 338 */ String startString = URL.make("home:sfmain.exe" + ( +/* 339 */ ip == null ? " -a " : new StringBuilder(" -c ").append(ip).toString()) + " -g " + hWnd + +/* 340 */ " -p " + Window.getGammaProcessID() + " " + _extraCommand + +/* 341 */ " ").unalias(); +/* */ +/* */ +/* */ +/* */ +/* */ +/* 347 */ WavSoundPlayer.pauseSystem(); +/* 348 */ CDAudio.get().setEnabled(false); +/* */ +/* 350 */ if (tryToRun(startString)) { +/* 351 */ Object[] arguments = { new String(this._who) }; +/* 352 */ voiceChatDialog = new UpdateableDialog(Console.getFrame(), this, +/* 353 */ Console.message("Voice-connect"), null, +/* 354 */ Console.message("Terminate"), MessageFormat.format( +/* 355 */ Console.message("end-VoiceChat"), arguments), false); +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* 363 */ if (chatMonitor == null) { +/* 364 */ chatMonitor = new GammaPhoneMonitor(this); +/* 365 */ chatMonitor.start(); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* 372 */ return true; +/* */ } +/* 374 */ WavSoundPlayer.resumeSystem(); +/* 375 */ CDAudio.get().setEnabled(true); +/* */ +/* 377 */ Object[] arguments = { new String(this._who), new String(startString) }; +/* 378 */ voiceChatDialog = new UpdateableDialog(Console.getFrame(), this, +/* 379 */ Console.message("Voice-Chat-199"), null, +/* 380 */ Console.message("Continue"), MessageFormat.format( +/* 381 */ Console.message("Unable-to-chat"), arguments), false); +/* 382 */ return false; +/* */ } +/* */ +/* */ +/* */ public void inform(int msgid, String msg) +/* */ { +/* 388 */ if (msgid >= 900) { +/* 389 */ if (voiceChatDialog == null) +/* */ { +/* */ +/* 392 */ return; +/* */ } +/* */ +/* 395 */ voiceChatDialog.setTitle(Console.message("VoiceChat-Connected")); +/* 396 */ this._state = 4; +/* */ } else { +/* 398 */ resetConnection(msg); +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public boolean handleChatRequest(String user, String text, DefaultConsole console) +/* */ { +/* 418 */ Object[] arguments = { new String(user) }; +/* 419 */ if (!console.getVIP()) { +/* 420 */ Console.println(MessageFormat.format( +/* 421 */ Console.message("reject-chat"), arguments)); +/* 422 */ sendWhisper(user, "&|+voicechat>notvip"); +/* 423 */ } else if (!voiceChatEnabled) { +/* 424 */ Console.println(MessageFormat.format( +/* 425 */ Console.message("chat-disabled"), arguments)); +/* 426 */ sendWhisper(user, "&|+voicechat>disabled"); +/* 427 */ } else if (voiceChatQueryDialog != null) { +/* 428 */ sendWhisper(user, "&|+voicechat>busy"); +/* */ } else { +/* 430 */ voiceChatQueryIP = text.substring("&|+voicechat?".length()); +/* 431 */ voiceChatQueryWho = user; +/* */ +/* 433 */ voiceChatQueryDialog = new UpdateableDialog(Console.getFrame(), +/* 434 */ this, Console.message("Accept-voice"), +/* 435 */ Console.message("Reject"), Console.message("Accept"), +/* 436 */ MessageFormat.format(Console.message("do-you-voice"), +/* 437 */ arguments), false); +/* */ } +/* 439 */ return true; +/* */ } +/* */ +/* */ public boolean handleChatWhisper(String user, String whisper, DefaultConsole console) +/* */ { +/* 444 */ Object[] arguments = { new String(user) }; +/* 445 */ if (whisper.startsWith("&|+voicechat?")) { +/* 446 */ handleChatRequest(user, whisper, console); +/* 447 */ return true; +/* */ } +/* */ +/* */ +/* 451 */ if (whisper.startsWith("&|+voicechat>accept")) +/* */ { +/* */ +/* */ +/* 455 */ if (this._state != 2) { +/* 456 */ sendWhisper(user, "&|+voicechat>reject"); +/* 457 */ return false; +/* */ } +/* */ +/* 460 */ Console.println(MessageFormat.format( +/* 461 */ Console.message("chat-accepted"), arguments)); +/* */ +/* 463 */ synchronized (this._vtimer) { +/* 464 */ this._vtimer._vc = null; +/* */ } +/* 466 */ this._vtimer = null; +/* */ +/* 468 */ this._state = 3; +/* 469 */ this._vtimer = new VCTimerThread(this, 15000L); +/* 470 */ this._vtimer.start(); +/* */ +/* */ } +/* 473 */ else if (whisper.startsWith("&|+voicechat>notvip")) { +/* 474 */ if ((voiceChatDialog != null) && (this._who.equals(user))) { +/* 475 */ resetConnection(MessageFormat.format( +/* 476 */ Console.message("cannot-voice"), arguments)); +/* */ } +/* */ +/* */ +/* */ } +/* 481 */ else if (whisper.startsWith("&|+voicechat>disabled")) { +/* 482 */ if ((voiceChatDialog != null) && (this._who.equals(user))) { +/* 483 */ resetConnection(MessageFormat.format( +/* 484 */ Console.message("user-voice-dis"), arguments)); +/* */ } +/* */ +/* */ +/* */ } +/* 489 */ else if (whisper.startsWith("&|+voicechat>busy")) { +/* 490 */ if ((voiceChatDialog != null) && (this._who.equals(user))) { +/* 491 */ resetConnection(MessageFormat.format( +/* 492 */ Console.message("receiving-Voice"), arguments)); +/* */ } +/* */ +/* */ +/* */ } +/* 497 */ else if (whisper.startsWith("&|+voicechat>reject")) +/* */ { +/* 499 */ if ((voiceChatDialog != null) && (this._who.equals(user))) { +/* 500 */ resetConnection(MessageFormat.format( +/* 501 */ Console.message("Voice-terminated"), arguments)); +/* */ } +/* 503 */ if ((voiceChatQueryDialog != null) && (voiceChatQueryWho != null) && +/* 504 */ (voiceChatQueryWho.equals(user))) { +/* 505 */ voiceChatQueryDialog.closeIt(false); +/* */ +/* */ +/* 508 */ voiceChatQueryWho = null; +/* 509 */ resetConnection(MessageFormat.format( +/* 510 */ Console.message("Voice-terminated"), arguments)); +/* */ } +/* */ } +/* 513 */ return false; +/* */ } +/* */ +/* */ public static boolean tryToRun(String s) { +/* */ try { +/* 518 */ Runtime.getRuntime().exec(s); +/* 519 */ return true; +/* */ } catch (IOException e) {} +/* 521 */ return false; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public void checkConnected() +/* */ { +/* 531 */ if (getState() == 2) { +/* 532 */ resetConnection(Console.message("never-answered")); +/* 533 */ sendWhisper(who(), "&|+voicechat>reject"); +/* 534 */ return; +/* */ } +/* */ +/* 537 */ if (getState() != 4) { +/* 538 */ resetConnection(Console.message("VoiceChat-failed")); +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public void resetConnection(String err) +/* */ { +/* 557 */ this._error = err; +/* 558 */ if (err != null) { +/* 559 */ this._state = 5; +/* 560 */ Console.println(this._error); +/* */ } +/* */ +/* 563 */ if (voiceChatDialog != null) { +/* 564 */ voiceChatDialog.closeIt(true); +/* */ } +/* */ } +/* */ +/* */ +/* */ public void terminate() +/* */ { +/* 571 */ if (this._vtimer != null) +/* */ { +/* 573 */ synchronized (this._vtimer) { +/* 574 */ this._vtimer._vc = null; +/* */ } +/* */ +/* 577 */ this._vtimer = null; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* 584 */ CDAudio.get().setEnabled(true); +/* */ +/* */ +/* */ +/* */ +/* 589 */ ConnectionRecord.getList().addElement(new ConnectionRecord(who())); +/* */ +/* 591 */ this._state = 0; +/* */ } +/* */ +/* */ public void release() { +/* 595 */ if (chatMonitor != null) { +/* 596 */ chatMonitor.stop(); +/* 597 */ chatMonitor = null; +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ public synchronized void dialogDone(Object who, boolean confirmed) +/* */ { +/* 606 */ if (who == voiceChatQueryDialog) { +/* 607 */ voiceChatQueryDialog = null; +/* 608 */ if (confirmed) { +/* 609 */ sendWhisper(voiceChatQueryWho, "&|+voicechat>accept"); +/* 610 */ initiateVoiceChat(voiceChatQueryWho, voiceChatQueryIP); +/* */ +/* */ +/* */ +/* */ } +/* 615 */ else if (voiceChatQueryWho != null) { +/* 616 */ sendWhisper(voiceChatQueryWho, "&|+voicechat>reject"); +/* */ } +/* 618 */ } else if (who == voiceChatDialog) { +/* 619 */ this._state = 6; +/* 620 */ String stopString = URL.make("home:sfmain.exe -q") +/* 621 */ .unalias(); +/* */ +/* */ +/* */ +/* 625 */ tryToRun(stopString); +/* */ +/* */ +/* 628 */ voiceChatDialog = null; +/* 629 */ sendWhisper(this._who, "&|+voicechat>reject"); +/* 630 */ terminate(); +/* */ +/* */ +/* */ +/* */ } +/* */ else +/* */ { +/* */ +/* */ +/* */ +/* 640 */ String stopString = URL.make("home:sfmain.exe -q") +/* 641 */ .unalias(); +/* */ +/* */ +/* 644 */ tryToRun(stopString); +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ private void sendWhisper(String destination, String text) +/* */ { +/* 654 */ Pilot.sendText(destination, text); +/* */ +/* */ +/* */ +/* */ +/* 659 */ if (_selfWhisper) { +/* 660 */ handleChatWhisper(destination, text, this._console); +/* */ } +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\VoiceChat.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/WebBrowser.java b/NET/worlds/console/WebBrowser.java new file mode 100644 index 0000000..dc5d3d3 --- /dev/null +++ b/NET/worlds/console/WebBrowser.java @@ -0,0 +1,532 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import NET.worlds.core.IniFile; +/* */ import java.awt.Dimension; +/* */ import java.awt.Point; +/* */ import java.awt.Rectangle; +/* */ import java.io.IOException; +/* */ import java.util.Enumeration; +/* */ import java.util.Stack; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public class WebBrowser +/* */ { +/* 80 */ private static Stack<WebBrowser> browsers = new Stack(); +/* */ +/* */ +/* 83 */ private static boolean disabled = IniFile.gamma().getIniInt("DISABLEIE", 0) != 0; +/* */ +/* */ +/* */ +/* */ +/* */ private static boolean everWorked; +/* */ +/* */ +/* */ +/* */ +/* */ private int nativeBrowserPointer; +/* */ +/* */ +/* */ +/* */ +/* */ private InternetExplorer _activeX; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public static WebBrowser reuseOrMake(String url, String postData) +/* */ throws IOException +/* */ { +/* 107 */ return reuseOrMake(url, postData, defaultPlacement()); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* 113 */ private static boolean toolbarON = true; +/* */ +/* */ public static void useToolbar() { +/* 116 */ toolbarON = true; +/* */ } +/* */ +/* */ public static void dontUseToolbar() { +/* 120 */ toolbarON = false; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* 127 */ private static boolean windowFrameON = true; +/* */ +/* */ public static void useWindowFrame() { +/* 130 */ windowFrameON = true; +/* */ } +/* */ +/* */ public static void dontUseWindowFrame() { +/* 134 */ windowFrameON = false; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* 140 */ private static boolean _stayMinimized = false; +/* */ +/* */ public static void forceMinimized(boolean force) { +/* 143 */ _stayMinimized = force; +/* */ } +/* */ +/* */ +/* */ +/* */ public static WebBrowser findTag(String tag) +/* */ { +/* 150 */ for (Enumeration<WebBrowser> e = browsers.elements(); e.hasMoreElements();) { +/* 151 */ WebBrowser browser = (WebBrowser)e.nextElement(); +/* 152 */ if (tag != null) { +/* 153 */ if (tag.equals(browser.getTag())) { +/* 154 */ return browser; +/* */ } +/* */ } +/* 157 */ else if (browser.getTag() == null) { +/* 158 */ return browser; +/* */ } +/* */ } +/* 161 */ return null; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public static WebBrowser reuseOrMake(String url, String postData, Rectangle placement) +/* */ throws IOException +/* */ { +/* 173 */ for (Enumeration<WebBrowser> e = browsers.elements(); e.hasMoreElements();) { +/* 174 */ WebBrowser browser = (WebBrowser)e.nextElement(); +/* */ +/* 176 */ if (browser.getTag() == null) { +/* */ try { +/* 178 */ browser.browse(url, postData, null); +/* 179 */ return browser; +/* */ } +/* */ catch (IOException localIOException) {} +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* 187 */ return new WebBrowser(url, postData, placement); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* 196 */ private String browserTag = null; +/* */ +/* */ private String getTag() { +/* 199 */ return this.browserTag; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ public static WebBrowser reuseOrMake(String url, String postData, Rectangle placement, String tag) +/* */ throws IOException +/* */ { +/* 208 */ for (Enumeration<WebBrowser> e = browsers.elements(); e.hasMoreElements();) { +/* 209 */ WebBrowser browser = (WebBrowser)e.nextElement(); +/* */ +/* 211 */ if (tag.equals(browser.getTag())) { +/* */ try { +/* 213 */ browser.browse(url, postData, null); +/* 214 */ return browser; +/* */ } +/* */ catch (IOException localIOException) {} +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ +/* 223 */ return new WebBrowser(url, postData, placement, tag); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public static Rectangle defaultPlacement() +/* */ { +/* 232 */ Console c = Console.getActive(); +/* 233 */ if ((c instanceof DefaultConsole)) +/* 234 */ return ((DefaultConsole)c).getBrowserPlacement(); +/* 235 */ return new Rectangle(0, 0, 200, 200); +/* */ } +/* */ +/* */ public static boolean isDisabled() +/* */ { +/* 240 */ return disabled; +/* */ } +/* */ +/* */ public static void setDisabled(boolean be) +/* */ { +/* 245 */ IniFile.gamma().setIniInt("DISABLEIE", be ? 1 : 0); +/* 246 */ disabled = be; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public WebBrowser(String url, String postData) +/* */ throws IOException +/* */ { +/* 256 */ this(url, postData, defaultPlacement()); +/* */ } +/* */ +/* */ public WebBrowser(String url, String postData, Rectangle placement) throws IOException +/* */ { +/* 261 */ this(url, postData, placement, null); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public WebBrowser(String url, String postData, Rectangle placement, String tag) +/* */ throws IOException +/* */ { +/* 271 */ if (!disabled) +/* */ { +/* */ +/* 274 */ this._activeX = new InternetExplorer(this); +/* */ try { +/* 276 */ this.nativeBrowserPointer = openBrowser(); +/* */ } +/* */ catch (IOException ioe) +/* */ { +/* */ try { +/* 281 */ this._activeX.Release(); +/* */ } catch (OLEInvalidObjectException e) { +/* 283 */ if (!$assertionsDisabled) throw new AssertionError(); +/* */ } +/* 285 */ this._activeX = null; +/* */ +/* */ +/* */ +/* */ +/* 290 */ disabled = true; +/* 291 */ throw ioe; +/* */ } +/* */ +/* */ +/* */ +/* 296 */ browsers.push(this); +/* */ +/* */ +/* */ +/* 300 */ if (tag != null) { +/* 301 */ this.browserTag = tag; +/* */ } +/* */ +/* */ try +/* */ { +/* 306 */ browse(url, postData, placement); +/* */ +/* */ +/* 309 */ everWorked = true; +/* */ +/* */ } +/* */ catch (IOException ioe) +/* */ { +/* */ +/* 315 */ if (!everWorked) +/* 316 */ disabled = true; +/* 317 */ throw ioe; +/* */ } +/* */ } else { +/* 320 */ throw new IOException(); +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public void browse(String url, String postData, Rectangle placement) +/* */ throws IOException +/* */ { +/* 334 */ if (this.nativeBrowserPointer != 0) { +/* 335 */ int x = -1; +/* 336 */ int y = -1; +/* 337 */ int w = -1; +/* 338 */ int h = -1; +/* 339 */ if (placement != null) { +/* 340 */ x = placement.x; +/* 341 */ y = placement.y; +/* 342 */ w = placement.width; +/* 343 */ h = placement.height; +/* */ } +/* */ try { +/* 346 */ browse(url, postData, x, y, w, h, this.nativeBrowserPointer); +/* */ } catch (IOException ioe) { +/* 348 */ close(); +/* 349 */ throw ioe; +/* */ } +/* */ } else { +/* 352 */ throw new IOException(); +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ public void close() +/* */ { +/* 360 */ if (this.nativeBrowserPointer != 0) { +/* 361 */ closeBrowser(this.nativeBrowserPointer); +/* 362 */ this.nativeBrowserPointer = 0; +/* */ try { +/* 364 */ this._activeX.Release(); +/* */ } catch (OLEInvalidObjectException e) { +/* 366 */ if (!$assertionsDisabled) throw new AssertionError(); +/* */ } +/* 368 */ this._activeX = null; +/* 369 */ browsers.removeElement(this); +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ private static native void browse(String paramString1, String paramString2, int paramInt1, int paramInt2, int paramInt3, int paramInt4, int paramInt5) +/* */ throws IOException; +/* */ +/* */ +/* */ private static native int openBrowser() +/* */ throws IOException; +/* */ +/* */ +/* */ private static native void closeBrowser(int paramInt); +/* */ +/* */ +/* */ public static Rectangle getMapPartPlacement() +/* */ { +/* 388 */ Rectangle placement = null; +/* */ +/* 390 */ Console c = Console.getActive(); +/* 391 */ if (c != null) { +/* 392 */ MapPart ap = null; +/* 393 */ for (Enumeration<FramePart> e = c.getParts(); e.hasMoreElements();) { +/* 394 */ Object o = e.nextElement(); +/* 395 */ if ((o instanceof MapPart)) { +/* 396 */ ap = (MapPart)o; +/* 397 */ break; +/* */ } +/* */ } +/* 400 */ if (ap != null) { +/* 401 */ placement = new Rectangle(ap.getLocationOnScreen(), +/* 402 */ ap.getSize()); +/* 403 */ placement.grow(0, 10); +/* 404 */ placement.translate(0, -9); +/* */ } +/* */ } +/* 407 */ return placement; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ public static Rectangle getAdPartPlacement() +/* */ { +/* 415 */ Rectangle placement = null; +/* */ +/* 417 */ Console c = Console.getActive(); +/* 418 */ if (c != null) { +/* 419 */ AdPart ap = null; +/* 420 */ for (Enumeration<FramePart> e = c.getParts(); e.hasMoreElements();) { +/* 421 */ Object o = e.nextElement(); +/* 422 */ if ((o instanceof AdPart)) { +/* 423 */ ap = (AdPart)o; +/* 424 */ break; +/* */ } +/* */ } +/* 427 */ if (ap != null) { +/* 428 */ placement = new Rectangle(ap.getLocationOnScreen(), +/* 429 */ ap.getSize()); +/* 430 */ placement.grow(0, 10); +/* 431 */ placement.translate(0, -9); +/* */ } +/* */ } +/* 434 */ return placement; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ public static Rectangle getRenderPartPlacement() +/* */ { +/* 442 */ Rectangle placement = null; +/* */ +/* 444 */ Console c = Console.getActive(); +/* 445 */ if (c != null) { +/* 446 */ RenderCanvas ap = null; +/* 447 */ for (Enumeration<FramePart> e = c.getParts(); e.hasMoreElements();) { +/* 448 */ Object o = e.nextElement(); +/* 449 */ if ((o instanceof RenderCanvas)) { +/* 450 */ ap = (RenderCanvas)o; +/* 451 */ break; +/* */ } +/* */ } +/* 454 */ if (ap != null) { +/* 455 */ placement = new Rectangle(ap.getLocationOnScreen(), +/* 456 */ ap.getSize()); +/* 457 */ placement.grow(2, 10); +/* 458 */ placement.translate(-1, 7); +/* */ } +/* */ } +/* 461 */ return placement; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ public static Rectangle getLeftRenderPartPlacement() +/* */ { +/* 469 */ Rectangle placement = null; +/* */ +/* 471 */ Console c = Console.getActive(); +/* 472 */ if (c != null) { +/* 473 */ RenderCanvas ap = null; +/* 474 */ for (Enumeration<FramePart> e = c.getParts(); e.hasMoreElements();) { +/* 475 */ Object o = e.nextElement(); +/* 476 */ if ((o instanceof RenderCanvas)) { +/* 477 */ ap = (RenderCanvas)o; +/* 478 */ break; +/* */ } +/* */ } +/* 481 */ if (ap != null) { +/* 482 */ placement = new Rectangle(ap.getLocationOnScreen(), +/* 483 */ ap.getSize()); +/* */ +/* 485 */ placement.grow(2, 10); +/* 486 */ placement.translate(-1, 7); +/* 487 */ Dimension d = placement.getSize(); +/* 488 */ placement.setSize(d.width / 2, d.height); +/* */ } +/* */ } +/* 491 */ return placement; +/* */ } +/* */ +/* */ +/* */ +/* */ public static Rectangle getOutsidePlacement() +/* */ { +/* 498 */ Rectangle placement = null; +/* */ +/* 500 */ Console c = Console.getActive(); +/* 501 */ if (c != null) { +/* 502 */ RenderCanvas ap = null; +/* 503 */ for (Enumeration<FramePart> e = c.getParts(); e.hasMoreElements();) { +/* 504 */ Object o = e.nextElement(); +/* 505 */ if ((o instanceof RenderCanvas)) { +/* 506 */ ap = (RenderCanvas)o; +/* 507 */ break; +/* */ } +/* */ } +/* 510 */ if (ap != null) { +/* 511 */ Point ploc = ap.getLocationOnScreen(); +/* 512 */ Dimension d = new Dimension(250, 500); +/* 513 */ Point bloc = new Point(0, ploc.y); +/* */ +/* 515 */ if (ploc.x > 254) { +/* 516 */ ploc.x -= 254; +/* */ } else { +/* 518 */ bloc.x = 0; +/* */ } +/* */ +/* 521 */ placement = new Rectangle(bloc, d); +/* */ } +/* */ } +/* 524 */ return placement; +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\WebBrowser.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/WebControl.java b/NET/worlds/console/WebControl.java new file mode 100644 index 0000000..d5ec951 --- /dev/null +++ b/NET/worlds/console/WebControl.java @@ -0,0 +1,127 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import java.io.PrintStream; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public class WebControl +/* */ extends RenderCanvasOverlay +/* */ { +/* */ public WebControl(RenderCanvas pCanvas, boolean hasToolbar) +/* */ throws NoWebControlException +/* */ { +/* 17 */ super(pCanvas); +/* */ try { +/* 19 */ this.imp = WebControlFactory.createWebControlImp( +/* 20 */ getNativeWindowHandle(), hasToolbar, false); +/* */ } catch (NoWebControlException e) { +/* 22 */ super.detach(); +/* 23 */ throw e; +/* */ } +/* */ } +/* */ +/* */ public WebControl(RenderCanvas pCanvas, int xPer, int yPer, boolean hasToolbar, boolean isFixedSize, boolean isBanner) +/* */ throws NoWebControlException +/* */ { +/* 30 */ super(pCanvas, xPer, yPer, isFixedSize, !isBanner); +/* 31 */ this.imp = WebControlFactory.createWebControlImp(getNativeWindowHandle(), +/* 32 */ hasToolbar, isBanner); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ public boolean setURL(String pURL) +/* */ { +/* 40 */ if (this.imp == null) { +/* 41 */ System.out.println("Null implementation in WebControl.setURL"); +/* 42 */ return false; +/* */ } +/* 44 */ return this.imp.setURL(pURL); +/* */ } +/* */ +/* */ public boolean setURL(String pURL, String pPostData) { +/* 48 */ if (this.imp == null) { +/* 49 */ System.out.println("Null implementation in WebControl.setURL"); +/* 50 */ return false; +/* */ } +/* 52 */ if ((pPostData == null) || (pPostData.equals(""))) { +/* 53 */ return this.imp.setURL(pURL); +/* */ } +/* 55 */ return this.imp.setURL(pURL, pPostData); +/* */ } +/* */ +/* 58 */ private final int ID_GO_BACK = 32768; +/* 59 */ private final int ID_GO_FORWARD = 32769; +/* 60 */ private final int ID_VIEW_STOP = 32770; +/* 61 */ private final int ID_VIEW_REFRESH = 32771; +/* 62 */ private final int ID_GO_HOME = 32772; +/* 63 */ private final int ID_EXIT = 32773; +/* */ +/* */ protected void handleCommand(int commandID) +/* */ { +/* 67 */ if (this.imp == null) { +/* 68 */ System.out.println("Now this should be impossible. Null imp in WebControl.handleCommand."); +/* */ +/* 70 */ return; +/* */ } +/* */ +/* 73 */ switch (commandID) { +/* */ case 32768: +/* 75 */ this.imp.goBack(); +/* 76 */ break; +/* */ +/* */ case 32769: +/* 79 */ this.imp.goForward(); +/* 80 */ break; +/* */ +/* */ case 32770: +/* 83 */ this.imp.stop(); +/* 84 */ break; +/* */ +/* */ case 32771: +/* 87 */ this.imp.refresh(); +/* 88 */ break; +/* */ +/* */ case 32772: +/* 91 */ this.imp.home(); +/* 92 */ break; +/* */ +/* */ case 32773: +/* 95 */ detach(); +/* */ } +/* */ +/* */ } +/* */ +/* */ void detach() +/* */ { +/* 102 */ if (this.imp != null) +/* 103 */ this.imp.detach(); +/* 104 */ super.detach(); +/* */ } +/* */ +/* */ +/* */ +/* */ void canvasResized(int parentX, int parentY) +/* */ { +/* 111 */ super.canvasResized(parentX, parentY); +/* 112 */ if (this.imp == null) { +/* 113 */ System.out.println("Null imp in WebControl.canvasResized"); +/* 114 */ return; +/* */ } +/* 116 */ this.imp.resize(parentX, parentY, getXPercent(), getYPercent()); +/* */ } +/* */ +/* */ +/* 120 */ private WebControlImp imp = null; +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\WebControl.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/WebControlFactory.java b/NET/worlds/console/WebControlFactory.java new file mode 100644 index 0000000..6b7ce28 --- /dev/null +++ b/NET/worlds/console/WebControlFactory.java @@ -0,0 +1,34 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import java.io.PrintStream; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public class WebControlFactory +/* */ { +/* */ public static WebControlImp createWebControlImp(int hwnd, boolean hasToolbar, boolean isBanner) +/* */ throws NoWebControlException +/* */ { +/* */ try +/* */ { +/* 22 */ return new IEWebControlImp(hwnd, hasToolbar, isBanner); +/* */ } catch (Exception e) { +/* 24 */ System.out.println("WebControlImp blew chow: " + e.toString()); +/* 25 */ throw new NoWebControlException(); +/* */ } +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\WebControlFactory.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/WebControlImp.java b/NET/worlds/console/WebControlImp.java new file mode 100644 index 0000000..45a1e48 --- /dev/null +++ b/NET/worlds/console/WebControlImp.java @@ -0,0 +1,152 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import NET.worlds.core.Std; +/* */ import NET.worlds.network.Galaxy; +/* */ import NET.worlds.network.NetUpdate; +/* */ import NET.worlds.network.WorldServer; +/* */ import NET.worlds.scape.Pilot; +/* */ import NET.worlds.scape.Room; +/* */ import java.util.Enumeration; +/* */ import java.util.Vector; +/* */ +/* */ public abstract class WebControlImp implements NET.worlds.scape.TextureSurfaceRenderer +/* */ { +/* */ public static final int downloadBegin = 0; +/* */ public static final int downloadEnd = 1; +/* */ public static final int titleChanged = 2; +/* */ public static final int propertyChanged = 3; +/* */ public static final int statusChanged = 4; +/* */ public static final int commandStateChanged = 5; +/* */ Vector<WebControlListener> listeners; +/* */ +/* */ WebControlImp(int hwnd) +/* */ { +/* 24 */ this.listeners = new Vector(); +/* */ } +/* */ +/* */ +/* */ +/* */ public static String processURL(String pURL) +/* */ { +/* 31 */ if ((pURL.indexOf("$USERNAME") == -1) && +/* 32 */ (pURL.indexOf("$UPGRADESERVER") == -1) && +/* 33 */ (pURL.indexOf("$SCRIPTSERVER") == -1) && +/* 34 */ (pURL.indexOf("$SERIALNUM") == -1) && +/* 35 */ (pURL.indexOf("$WORLD") == -1) && +/* 36 */ (pURL.indexOf("$ROOM") == -1)) { +/* 37 */ return pURL; +/* */ } +/* */ +/* 40 */ pURL = Std.replaceStr(pURL, "$UPGRADESERVER", +/* 41 */ NetUpdate.getUpgradeServerURL()); +/* */ +/* 43 */ if (Console.getActive() != null) { +/* 44 */ pURL = Std.replaceStr(pURL, "$SCRIPTSERVER", Console.getActive() +/* 45 */ .getScriptServer()); +/* */ } +/* 47 */ else if (pURL.indexOf("$SCRIPTSERVER") != -1) { +/* 48 */ return null; +/* */ } +/* */ +/* */ +/* 52 */ if (Pilot.getActive() != null) { +/* 53 */ Pilot p = Pilot.getActive(); +/* 54 */ if ((p != null) && (p.getWorld() != null)) { +/* 55 */ pURL = Std.replaceStr(pURL, "$WORLD", p.getWorld().toString()); +/* */ } +/* */ +/* 58 */ Room r = Pilot.getActiveRoom(); +/* 59 */ if (r != null) { +/* 60 */ pURL = Std.replaceStr(pURL, "$ROOM", Pilot.getActiveRoom() +/* 61 */ .toString()); +/* */ } +/* */ +/* 64 */ WorldServer w = Pilot.getActive().getServer(); +/* 65 */ if ((w != null) && (w.getGalaxy() != null)) { +/* 66 */ String name = w.getGalaxy().getChatname(); +/* 67 */ if (pURL.indexOf("$USERNAME") != -1) { +/* 68 */ if ((name == null) || (name.equals(""))) { +/* 69 */ return null; +/* */ } +/* 71 */ pURL = Std.replaceStr(pURL, "$USERNAME", name); +/* */ } +/* */ +/* 74 */ String serial = w.getGalaxy().getSerialNum(); +/* 75 */ if (pURL.indexOf("$SERIALNUM") != -1) { +/* 76 */ if ((serial == null) || (serial.equals(""))) +/* 77 */ return null; +/* 78 */ pURL = Std.replaceStr(pURL, "$SERIALNUM", serial); +/* */ } +/* */ } +/* 81 */ else if ((pURL.indexOf("$SERIALNUM") != -1) || +/* 82 */ (pURL.indexOf("$USERNAME") != -1)) { +/* 83 */ return null; +/* */ } +/* */ } +/* 86 */ if ((pURL.indexOf("$SERIALNUM") != -1) || (pURL.indexOf("$USERNAME") != -1)) +/* 87 */ return null; +/* 88 */ return pURL; +/* */ } +/* */ +/* */ +/* */ +/* */ public abstract boolean setURL(String paramString); +/* */ +/* */ +/* */ +/* */ public abstract boolean setURL(String paramString1, String paramString2); +/* */ +/* */ +/* */ public abstract void goBack(); +/* */ +/* */ +/* */ public abstract void goForward(); +/* */ +/* */ +/* */ public abstract void stop(); +/* */ +/* */ +/* */ public abstract void refresh(); +/* */ +/* */ +/* */ public abstract void home(); +/* */ +/* */ +/* */ public abstract void resize(int paramInt1, int paramInt2, int paramInt3, int paramInt4); +/* */ +/* */ +/* */ public abstract int getHWND(); +/* */ +/* */ +/* */ public abstract void renderTo(int paramInt); +/* */ +/* */ +/* */ public void addListener(WebControlListener l) +/* */ { +/* 126 */ this.listeners.addElement(l); +/* */ } +/* */ +/* */ public void removeListener(WebControlListener l) { +/* 130 */ this.listeners.removeElement(l); +/* */ } +/* */ +/* */ void receiveEvent(int eventID) +/* */ { +/* 135 */ Enumeration<WebControlListener> e = this.listeners.elements(); +/* 136 */ while (e.hasMoreElements()) { +/* 137 */ WebControlListener l = (WebControlListener)e.nextElement(); +/* 138 */ if (l != null) +/* 139 */ l.webControlEvent(eventID); +/* */ } +/* */ } +/* */ +/* */ public void detach() { +/* 144 */ this.listeners.removeAllElements(); +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\WebControlImp.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/WebControlListener.java b/NET/worlds/console/WebControlListener.java new file mode 100644 index 0000000..7639a12 --- /dev/null +++ b/NET/worlds/console/WebControlListener.java @@ -0,0 +1,12 @@ +package NET.worlds.console; + +public abstract interface WebControlListener +{ + public abstract void webControlEvent(int paramInt); +} + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\WebControlListener.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/WhisperDialog.java b/NET/worlds/console/WhisperDialog.java new file mode 100644 index 0000000..dd68cda --- /dev/null +++ b/NET/worlds/console/WhisperDialog.java @@ -0,0 +1,230 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import NET.worlds.core.IniFile; +/* */ import NET.worlds.scape.Pilot; +/* */ import java.awt.BorderLayout; +/* */ import java.awt.Color; +/* */ import java.awt.Event; +/* */ import java.awt.Panel; +/* */ import java.awt.TextField; +/* */ import java.awt.Window; +/* */ import java.io.PrintStream; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public class WhisperDialog +/* */ extends PolledDialog +/* */ { +/* */ private static final long serialVersionUID = -5767168735798633258L; +/* */ protected static Window parent; +/* */ protected boolean building; +/* */ +/* */ static void setParent(Window p) +/* */ { +/* 74 */ parent = p; +/* */ } +/* */ +/* */ static void sendTalkMessage(String msg) { +/* 78 */ Main.register(new MainCallback() { +/* */ public void mainCallback() { +/* 80 */ System.out.println("Sending a Text Message: " + WhisperDialog.this); +/* 81 */ Pilot.sendText(WhisperDialog.this); +/* 82 */ Main.unregister(this); +/* */ } +/* */ }); +/* */ } +/* */ +/* 87 */ protected boolean isTrading = false; +/* */ protected WhisperPart whisperPart; +/* */ protected String partner; +/* */ protected boolean isBroadcast; +/* */ protected boolean built; +/* 92 */ protected static int counter = 0; +/* */ protected static final int OFFSET = 20; +/* */ protected static final int OFF_TOT = 6; +/* */ +/* */ protected WhisperDialog(Window parent, String partner) +/* */ { +/* 98 */ super(parent, null, Console.message("Whisper-to-from2") + Console.parseExtended(partner), false); +/* */ +/* 100 */ this.partner = partner; +/* 101 */ this.isBroadcast = true; +/* 102 */ if (partner.equals("room")) { +/* 103 */ setTitle(Console.message("Broadcast-Users")); +/* 104 */ } else if (partner.equals("world")) { +/* 105 */ setTitle(Console.message("Broadcast-All")); +/* */ } else +/* 107 */ this.isBroadcast = false; +/* 108 */ this.whisperPart = new WhisperPart(partner); +/* 109 */ Console active = Console.getActive(); +/* 110 */ if (active != null) { +/* 111 */ active.addPart(this.whisperPart); +/* */ } +/* */ +/* */ +/* */ +/* 116 */ int tier = counter / 6; +/* 117 */ int pos = counter % 6; +/* 118 */ setAlignment(1, ((pos + tier) % 12 - 5) * +/* 119 */ 20, (pos % 6 - 5) * 20); +/* 120 */ counter += 1; +/* */ } +/* */ +/* */ protected void takeFocus() { +/* 124 */ this.whisperPart.forceTakeFocus(); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ public void setVisible(boolean visible) +/* */ { +/* 132 */ super.setVisible(visible); +/* */ +/* 134 */ if (visible) +/* */ { +/* */ +/* */ +/* */ +/* 139 */ this.whisperPart.scrollToBottom(); +/* */ +/* */ +/* */ +/* 143 */ int toFront = IniFile.override().getIniInt("whispersToFront", 0); +/* 144 */ if (toFront != 0) { +/* 145 */ toFront(); +/* */ } +/* */ } +/* */ } +/* */ +/* */ protected void send(String msg) { +/* 151 */ this.whisperPart.println("< " + msg); +/* */ } +/* */ +/* */ protected synchronized void print(String msg) { +/* 155 */ this.whisperPart.println("> " + msg); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ protected synchronized void build() +/* */ { +/* 166 */ this.building = false; +/* */ +/* 168 */ if (this.built) { +/* 169 */ removeAll(); +/* */ } +/* 171 */ this.built = true; +/* */ +/* */ +/* */ +/* 175 */ Color bg1 = new Color(0, 0, 0); +/* 176 */ Color bg2 = new Color(0, 192, 192); +/* */ +/* 178 */ Color fg1 = new Color(255, 255, 255); +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* 189 */ setBackground(fg1); +/* 190 */ setForeground(bg1); +/* */ +/* */ +/* */ +/* 194 */ this.whisperPart.line.setBackground(this.isTrading ? bg2 : fg1); +/* 195 */ this.whisperPart.listen.setBackground(fg1); +/* */ +/* 197 */ Panel insListen = new InsetPanel(new BorderLayout(), 3, 1, 1, 1); +/* 198 */ insListen.setBackground(Color.lightGray); +/* 199 */ insListen.add("Center", this.whisperPart.listen.getComponent()); +/* 200 */ add("Center", insListen); +/* 201 */ Panel insLine = new InsetPanel(new BorderLayout(), 2, 1, 2, 1); +/* 202 */ insLine.setBackground(Color.lightGray); +/* 203 */ insLine.add("Center", this.whisperPart.line); +/* 204 */ add("South", insLine); +/* */ +/* 206 */ validate(); +/* */ } +/* */ +/* */ protected boolean setValue() { +/* 210 */ return true; +/* */ } +/* */ +/* */ @Deprecated +/* */ public synchronized boolean keyDown(Event event, int key) +/* */ { +/* 216 */ this.whisperPart.line.requestFocus(); +/* */ +/* 218 */ if (key == 10) { +/* 219 */ this.whisperPart.trigger(); +/* 220 */ return true; +/* */ } +/* 222 */ return false; +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\WhisperDialog.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/WhisperManager.java b/NET/worlds/console/WhisperManager.java new file mode 100644 index 0000000..518aa46 --- /dev/null +++ b/NET/worlds/console/WhisperManager.java @@ -0,0 +1,183 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import NET.worlds.network.NetUpdate; +/* */ import NET.worlds.scape.InventoryManager; +/* */ import java.awt.Window; +/* */ import java.util.Enumeration; +/* */ import java.util.Hashtable; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public class WhisperManager +/* */ { +/* */ private static WhisperManager manager_; +/* */ private Hashtable<String, WhisperDialog> dialogs_; +/* */ private Hashtable<String, TradeDialog> tradeDialogs_; +/* */ private Window parent; +/* 24 */ private String inventory = ""; +/* 25 */ final String tradeServerName = "TRADE"; +/* */ static GiftDialog outstandingGift; +/* */ +/* */ private WhisperManager() { +/* 29 */ this.dialogs_ = new Hashtable(); +/* 30 */ this.tradeDialogs_ = new Hashtable(); +/* */ } +/* */ +/* */ public static WhisperManager whisperManager() { +/* 34 */ if (manager_ == null) { +/* 35 */ manager_ = new WhisperManager(); +/* */ } +/* */ +/* 38 */ return manager_; +/* */ } +/* */ +/* */ void setParent(Window p) { +/* 42 */ this.parent = p; +/* */ } +/* */ +/* */ public Hashtable<String, WhisperDialog> dialogs() { +/* 46 */ return this.dialogs_; +/* */ } +/* */ +/* */ public Hashtable<String, TradeDialog> tradeDialogs() { +/* 50 */ return this.tradeDialogs_; +/* */ } +/* */ +/* */ private WhisperDialog findWhisperDialog(String to) { +/* 54 */ if (!this.dialogs_.containsKey(to)) +/* 55 */ return null; +/* 56 */ return (WhisperDialog)this.dialogs_.get(to); +/* */ } +/* */ +/* */ private TradeDialog findTradeDialog(String to) { +/* 60 */ if (!this.tradeDialogs_.containsKey(to)) +/* 61 */ return null; +/* 62 */ return (TradeDialog)this.tradeDialogs_.get(to); +/* */ } +/* */ +/* */ private WhisperDialog start(String to, boolean takeFocus) { +/* 66 */ WhisperDialog wd = findWhisperDialog(to); +/* 67 */ if (wd == null) { +/* 68 */ this.dialogs_.put(to, wd = new WhisperDialog(this.parent, to)); +/* */ } +/* 70 */ if (takeFocus) +/* 71 */ wd.takeFocus(); +/* 72 */ wd.ready(); +/* 73 */ return wd; +/* */ } +/* */ +/* */ public void remove(String name) { +/* 77 */ this.dialogs_.remove(name); +/* */ } +/* */ +/* */ +/* */ +/* */ public void startTo(String to) +/* */ { +/* 84 */ WhisperDialog wd = start(to, true); +/* */ } +/* */ +/* */ public TradeDialog startToTrade(String to) +/* */ { +/* 89 */ TradeDialog wd = findTradeDialog(to); +/* 90 */ if (wd == null) { +/* 91 */ this.tradeDialogs_.put(to, wd = new TradeDialog(this.parent, to)); +/* */ } +/* 93 */ wd.takeFocus(); +/* 94 */ wd.ready(); +/* 95 */ wd.setTrading(true); +/* 96 */ wd.whisperPart.println(Console.message("trade-start")); +/* */ +/* 98 */ return wd; +/* */ } +/* */ +/* */ public void printFrom(String from, String msg) { +/* 102 */ if (!msg.startsWith("&|+")) { +/* 103 */ WhisperDialog it = findWhisperDialog(from); +/* 104 */ if ((msg.equals("&|+trade>cancel")) && ( +/* 105 */ (it == null) || (!it.isActive()) || (!it.isTrading))) { +/* 106 */ return; +/* */ } +/* 108 */ it = start(from, false); +/* 109 */ it.print(msg); +/* 110 */ } else if ((msg.startsWith("&|+gift>")) && +/* 111 */ (from.equalsIgnoreCase("TRADE"))) +/* */ { +/* 113 */ maybeQueryGift(msg.substring(8)); +/* */ } +/* 115 */ else if ((msg.startsWith("&|+inv>")) && +/* 116 */ (from.equalsIgnoreCase("TRADE"))) { +/* 117 */ tradeMsg(msg.substring(7)); +/* 118 */ } else if (msg.startsWith("&|+trade>")) { +/* 119 */ TradeDialog it = findTradeDialog(from); +/* 120 */ if ((msg.equals("&|+trade>cancel")) && ( +/* 121 */ (it == null) || (!it.isActive()) || (!it.isTrading))) { +/* 122 */ return; +/* */ } +/* 124 */ it = startToTrade(from); +/* 125 */ it.print(msg); +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public void tradeMsg(String newInv) +/* */ { +/* 138 */ if (!newInv.equals(this.inventory)) { +/* 139 */ for (Enumeration<TradeDialog> e = this.tradeDialogs_.elements(); e.hasMoreElements();) { +/* 140 */ TradeDialog wd = (TradeDialog)e.nextElement(); +/* 141 */ wd.doneDeal(); +/* */ } +/* */ +/* 144 */ InventoryManager.getInventoryManager().setInventory(newInv); +/* */ } +/* */ } +/* */ +/* */ public void printTo(String to, String msg) +/* */ { +/* 150 */ if ((to.equals("world")) || (to.equals("TRADE"))) { +/* 151 */ return; +/* */ } +/* 153 */ if ((!msg.startsWith("&|+")) || (msg.startsWith("&|+trade>"))) { +/* 154 */ WhisperDialog it = start(to, false); +/* 155 */ it.send(msg); +/* */ } +/* */ } +/* */ +/* */ public void giftDialogDone() { +/* 160 */ outstandingGift = null; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public static void maybeQueryGift(String inv) +/* */ { +/* 169 */ if (!NetUpdate.isInternalVersion()) { +/* 170 */ return; +/* */ } +/* 172 */ Console c = Console.getActive(); +/* 173 */ if ((c != null) && (outstandingGift == null) && (!c.isSleeping())) { +/* 174 */ outstandingGift = new GiftDialog(inv, 3000000); +/* */ } +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\WhisperManager.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/WhisperPart.java b/NET/worlds/console/WhisperPart.java new file mode 100644 index 0000000..cb99a91 --- /dev/null +++ b/NET/worlds/console/WhisperPart.java @@ -0,0 +1,41 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import NET.worlds.scape.Pilot; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public class WhisperPart +/* */ extends DuplexPart +/* */ { +/* */ private String partner; +/* */ +/* */ public WhisperPart(String partner) +/* */ { +/* 23 */ super(false, 4); +/* 24 */ this.partner = partner; +/* */ } +/* */ +/* */ public String getPartner() { +/* 28 */ return this.partner; +/* */ } +/* */ +/* */ protected void sendText(String s) +/* */ { +/* 33 */ Pilot.sendText(this.partner, Console.parseUnicode(s)); +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\WhisperPart.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/WideScrollPane.java b/NET/worlds/console/WideScrollPane.java new file mode 100644 index 0000000..decf791 --- /dev/null +++ b/NET/worlds/console/WideScrollPane.java @@ -0,0 +1,52 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import java.awt.Dimension; +/* */ import java.awt.Panel; +/* */ import java.awt.ScrollPane; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ class WideScrollPane +/* */ extends ScrollPane +/* */ { +/* */ private static final long serialVersionUID = -7035034239249038255L; +/* */ Panel p; +/* */ +/* */ public WideScrollPane(Panel p, boolean asNeeded) +/* */ { +/* 25 */ super(asNeeded ? 0 : 1); +/* 26 */ this.p = p; +/* */ +/* 28 */ add(p); +/* */ } +/* */ +/* */ public Dimension getPreferredSize() +/* */ { +/* 33 */ Dimension d = this.p.getPreferredSize(); +/* 34 */ d.width += 5; +/* 35 */ d.height += 5; +/* 36 */ return d; +/* */ } +/* */ +/* */ public Dimension getMinimumSize() +/* */ { +/* 41 */ Dimension d = this.p.getMinimumSize(); +/* 42 */ d.width += 5; +/* 43 */ d.height += 5; +/* 44 */ return d; +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\WideScrollPane.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/WiderScrollbar.java b/NET/worlds/console/WiderScrollbar.java new file mode 100644 index 0000000..b4d26cc --- /dev/null +++ b/NET/worlds/console/WiderScrollbar.java @@ -0,0 +1,39 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import java.awt.Dimension; +/* */ import java.awt.Scrollbar; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public class WiderScrollbar +/* */ extends Scrollbar +/* */ { +/* */ private static final long serialVersionUID = -5982901695832721377L; +/* */ +/* */ public Dimension getPreferredSize() +/* */ { +/* 22 */ Dimension d = super.getPreferredSize(); +/* 23 */ d.width += 2; +/* 24 */ return d; +/* */ } +/* */ +/* */ public Dimension getMinimumSize() +/* */ { +/* 29 */ Dimension d = super.getMinimumSize(); +/* 30 */ d.width += 2; +/* 31 */ return d; +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\WiderScrollbar.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/Window.java b/NET/worlds/console/Window.java new file mode 100644 index 0000000..beb4994 --- /dev/null +++ b/NET/worlds/console/Window.java @@ -0,0 +1,372 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import NET.worlds.scape.Camera; +/* */ import java.awt.Component; +/* */ import java.awt.Dimension; +/* */ import java.awt.Point; +/* */ import java.awt.TextArea; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public class Window +/* */ { +/* */ private static Window activeWindow; +/* */ private int hWndGamma; +/* */ private int hWndFrame; +/* */ private static int hInstGamma; +/* */ private static int hWndFrameStatic; +/* */ public static final int NORMAL = 0; +/* */ public static final int MINIMIZED = 1; +/* */ public static final int MAXIMIZED = 2; +/* */ private int windowInstancePtr; +/* */ +/* */ public Window(String frameTitle, Point loc, Dimension dim, Camera cam, boolean interceptEvents) +/* */ throws WindowNotFoundException +/* */ { +/* 97 */ nativeInit(); +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* 111 */ if (hWndFrameStatic != 0) { +/* 112 */ this.hWndFrame = hWndFrameStatic; +/* */ } else { +/* 114 */ this.hWndFrame = findWindow(frameTitle); +/* */ } +/* 116 */ if (this.hWndFrame != 0) +/* 117 */ this.hWndGamma = findOrMakeChildWindow(this.hWndFrame, loc.x, loc.y, +/* 118 */ dim.width, dim.height); +/* 119 */ if (this.hWndGamma == 0) { +/* 120 */ throw new WindowNotFoundException("No such window"); +/* */ } +/* */ +/* 123 */ if (hWndFrameStatic == 0) { +/* 124 */ hWndFrameStatic = this.hWndFrame; +/* */ } +/* 126 */ hInstGamma = install(interceptEvents); +/* 127 */ maybeResize(dim.width, dim.height); +/* 128 */ if (interceptEvents) { +/* 129 */ activeWindow = this; +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public void hookChatLine(Component chatLine) +/* */ throws WindowNotFoundException +/* */ { +/* 140 */ assert (activeWindow == this); +/* 141 */ Dimension dim = chatLine.getSize(); +/* */ try { +/* 143 */ Point loc = chatLine.getLocationOnScreen(); +/* 144 */ int hwndChatLine = findChildWindow(hWndFrameStatic, loc.x, loc.y, +/* 145 */ dim.width, dim.height); +/* 146 */ if (hwndChatLine != 0) { +/* 147 */ setChatLine(hwndChatLine); +/* 148 */ return; +/* */ } +/* */ } +/* */ catch (Exception localException) { +/* 152 */ throw new WindowNotFoundException(); +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ private static native void setChatLine(int paramInt); +/* */ +/* */ +/* */ +/* */ public static native int getVoiceChatWParam(); +/* */ +/* */ +/* */ +/* */ public static native int getVoiceChatLParam(); +/* */ +/* */ +/* */ +/* */ public static native void resetVoiceChatMsg(); +/* */ +/* */ +/* */ +/* */ public static native void doMicrosoftVMHacks(); +/* */ +/* */ +/* */ +/* */ public static native boolean usingMicrosoftVMHacks(); +/* */ +/* */ +/* */ +/* */ public static native boolean getActivated(); +/* */ +/* */ +/* */ public static native boolean isActivated(); +/* */ +/* */ +/* */ public static native int getGammaProcessID(); +/* */ +/* */ +/* */ public native void dispose(); +/* */ +/* */ +/* */ public static Window getMainWindow() +/* */ { +/* 196 */ return activeWindow; +/* */ } +/* */ +/* */ +/* */ +/* */ public native int getHwnd(); +/* */ +/* */ +/* */ +/* */ public void hideNativeWindow() +/* */ { +/* 207 */ if (this.hWndGamma != 0) +/* 208 */ nativeHideChildWindow(this.hWndGamma); +/* */ } +/* */ +/* */ public void showNativeWindow() { +/* 212 */ if (this.hWndGamma != 0) +/* 213 */ nativeShowChildWindow(this.hWndGamma); +/* */ } +/* */ +/* */ native void nativeHideChildWindow(int paramInt); +/* */ +/* */ native void nativeShowChildWindow(int paramInt); +/* */ +/* */ public static int getHWnd() { +/* 221 */ return activeWindow == null ? 0 : activeWindow.hWndGamma; +/* */ } +/* */ +/* */ public static int getHInst() { +/* 225 */ return hInstGamma; +/* */ } +/* */ +/* */ +/* */ +/* */ public native void maybeResize(int paramInt1, int paramInt2); +/* */ +/* */ +/* */ public native void setDeltaMode(boolean paramBoolean); +/* */ +/* */ +/* */ public static native int getAndResetUserActionCount(); +/* */ +/* */ +/* */ public native boolean getDeltaMode(); +/* */ +/* */ +/* */ public static native void makeJavaReleaseCapture(); +/* */ +/* */ +/* */ public native void reShape(int paramInt1, int paramInt2, int paramInt3, int paramInt4); +/* */ +/* */ +/* */ public void setBounds(int x, int y, int width, int height) +/* */ { +/* 250 */ reShape(x, y, width, height); +/* */ } +/* */ +/* */ +/* */ +/* */ public native int fullWidth(); +/* */ +/* */ +/* */ +/* */ public native int fullHeight(); +/* */ +/* */ +/* */ +/* */ public static native int findWindow(String paramString); +/* */ +/* */ +/* */ +/* */ public static native int getFrameWindow(); +/* */ +/* */ +/* */ +/* */ public static native void hideCursor(); +/* */ +/* */ +/* */ +/* */ public static native int[] getHiddenCursorDelta(); +/* */ +/* */ +/* */ +/* */ public static native void setCursor(int paramInt); +/* */ +/* */ +/* */ +/* */ public static native int getWindowState(int paramInt); +/* */ +/* */ +/* */ public static native void setWindowState(int paramInt1, int paramInt2); +/* */ +/* */ +/* */ public static native void setForegroundWindow(int paramInt); +/* */ +/* */ +/* */ public static native void setVideoMode(int paramInt1, int paramInt2, int paramInt3); +/* */ +/* */ +/* */ public static native void nativeInit(); +/* */ +/* */ +/* */ private native int install(boolean paramBoolean); +/* */ +/* */ +/* */ static synchronized int findChildWindow(int hWndParent, int x, int y, int w, int h) +/* */ { +/* 303 */ return nativeFindChildWindow(hWndParent, x, y, w, h); +/* */ } +/* */ +/* */ static synchronized int findOrMakeChildWindow(int hWndParent, int x, int y, int w, int h) +/* */ { +/* 308 */ return nativeFindOrMakeChildWindow(hWndParent, x, y, w, h); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ public static boolean isLastLineVisible(int hwnd, TextArea ta) +/* */ { +/* 316 */ Dimension s = ta.getSize(); +/* */ +/* 318 */ return nativeIsLastLineVisible(hwnd, s.width, s.height) != 0; +/* */ } +/* */ +/* */ +/* */ private static native int nativeIsLastLineVisible(int paramInt1, int paramInt2, int paramInt3); +/* */ +/* */ +/* */ private static native int nativeFindChildWindow(int paramInt1, int paramInt2, int paramInt3, int paramInt4, int paramInt5); +/* */ +/* */ +/* */ private static native int nativeFindOrMakeChildWindow(int paramInt1, int paramInt2, int paramInt3, int paramInt4, int paramInt5); +/* */ +/* */ public static int playVideoClip(Component c, String name) +/* */ { +/* 332 */ Point p = c.getLocationOnScreen(); +/* 333 */ Dimension s = c.getSize(); +/* 334 */ return playVideoClip(name, findChildWindow( +/* 335 */ activeWindow.hWndFrame, p.x, p.y, s.width, s.height)); +/* */ } +/* */ +/* */ +/* */ +/* */ public static native boolean isVideoPlaying(int paramInt); +/* */ +/* */ +/* */ +/* */ private static native int playVideoClip(String paramString, int paramInt); +/* */ +/* */ +/* */ +/* */ public static native void hookWinAPIs(String paramString); +/* */ +/* */ +/* */ public static native int getWindowWidth(int paramInt); +/* */ +/* */ +/* */ public static native int getWindowHeight(int paramInt); +/* */ +/* */ +/* */ public static native void allowFGJavaPalette(boolean paramBoolean); +/* */ +/* */ +/* */ public static int getFrameHandle() +/* */ { +/* 362 */ return hWndFrameStatic; +/* */ } +/* */ +/* */ public static native int getSystemMetrics(int paramInt); +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\Window.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/WindowNotFoundException.java b/NET/worlds/console/WindowNotFoundException.java new file mode 100644 index 0000000..7a0c230 --- /dev/null +++ b/NET/worlds/console/WindowNotFoundException.java @@ -0,0 +1,30 @@ +/* */ package NET.worlds.console; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public class WindowNotFoundException +/* */ extends Exception +/* */ { +/* */ private static final long serialVersionUID = -5486368094848985833L; +/* */ +/* */ +/* */ +/* */ +/* */ public WindowNotFoundException() {} +/* */ +/* */ +/* */ +/* */ +/* */ public WindowNotFoundException(String s) +/* */ { +/* 22 */ super(s); +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\WindowNotFoundException.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/WorldButton.java b/NET/worlds/console/WorldButton.java new file mode 100644 index 0000000..ddb51b3 --- /dev/null +++ b/NET/worlds/console/WorldButton.java @@ -0,0 +1,194 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import NET.worlds.network.NetUpdate; +/* */ import NET.worlds.scape.TeleportAction; +/* */ import java.awt.Color; +/* */ import java.awt.Dimension; +/* */ import java.awt.Event; +/* */ import java.awt.Font; +/* */ import java.awt.Graphics; +/* */ import java.awt.MenuItem; +/* */ import java.awt.PopupMenu; +/* */ import java.io.PrintStream; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ class WorldButton +/* */ extends TextImageButtons +/* */ { +/* */ private static final long serialVersionUID = 8349532719484982330L; +/* */ int buttonX; +/* */ int buttonY; +/* */ String pkg; +/* */ int privacyLevel; +/* */ boolean isLoaded; +/* */ String readableName; +/* */ DefaultConsole console; +/* 67 */ static String currentPackageName = ""; +/* 68 */ private static Font wfont = new Font(Console.message("UniverseFont"), +/* 69 */ 0, 10); +/* */ +/* */ +/* 72 */ private static final int[] xText = new int[1]; +/* */ +/* */ +/* */ +/* */ PopupMenu lastPackageMenu; +/* */ +/* */ +/* */ +/* */ public WorldButton(boolean isLoaded, int buttonX, int buttonY, int buttonWidth, int buttonHeight, String[] texts, String pkg, int privacy, DefaultConsole console, ImageButtonsCallback handler) +/* */ { +/* 82 */ super(null, buttonWidth, intToInts(buttonHeight), xText, texts, handler, wfont); +/* */ +/* 84 */ this.readableName = texts[0]; +/* 85 */ this.buttonX = buttonX; +/* 86 */ this.buttonY = buttonY; +/* 87 */ this.pkg = pkg; +/* 88 */ this.isLoaded = isLoaded; +/* 89 */ this.privacyLevel = privacy; +/* 90 */ this.console = console; +/* */ +/* 92 */ setSize(buttonWidth, buttonHeight); +/* 93 */ setWidth(buttonWidth); +/* 94 */ setHeight(buttonHeight); +/* */ } +/* */ +/* */ public static Dimension measure(String text) { +/* 98 */ return TextImageButtons.measure(text, wfont); +/* */ } +/* */ +/* */ +/* */ public void doAction() +/* */ { +/* 104 */ if ((this.console == null) || (!showPackageMenu())) { +/* 105 */ NetUpdate.loadWorld(this.pkg, true); +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public boolean showPackageMenu() +/* */ { +/* 119 */ if (this.lastPackageMenu != null) { +/* 120 */ remove(this.lastPackageMenu); +/* 121 */ this.lastPackageMenu = null; +/* */ } +/* 123 */ this.lastPackageMenu = WorldsMarkPart.getPackageMenu(this.pkg); +/* */ +/* 125 */ if ((this.lastPackageMenu == null) || (this.lastPackageMenu.getItemCount() == 0)) { +/* 126 */ return false; +/* */ } +/* */ +/* */ +/* 130 */ MenuItem first = this.lastPackageMenu.getItem(0); +/* 131 */ if ((first instanceof BookmarkMenuItem)) { +/* 132 */ BookmarkMenuItem title = new BookmarkMenuItem(this.readableName + +/* 133 */ " World:", ((BookmarkMenuItem)first).getTarget()); +/* */ +/* 135 */ this.lastPackageMenu.insert(title, 0); +/* 136 */ this.lastPackageMenu.insertSeparator(1); +/* */ } +/* */ +/* 139 */ add(this.lastPackageMenu); +/* */ try { +/* 141 */ this.lastPackageMenu.show(this, -15, -7); +/* */ } +/* */ catch (RuntimeException e) { +/* 144 */ System.out.println("Warning - could not show teleport location menu."); +/* */ } +/* 146 */ return true; +/* */ } +/* */ +/* */ public void update(Graphics g) +/* */ { +/* 151 */ paint(g); +/* */ } +/* */ +/* */ @Deprecated +/* */ public boolean action(Event event, Object what) +/* */ { +/* 157 */ Object target = event.target; +/* */ +/* 159 */ if ((target instanceof BookmarkMenuItem)) { +/* 160 */ TeleportAction.teleport(((BookmarkMenuItem)target).getTarget(), +/* 161 */ null); +/* 162 */ this.console.toggleUniverseMode(); +/* */ } else { +/* 164 */ return super.action(event, what); +/* */ } +/* 166 */ return true; +/* */ } +/* */ +/* */ protected Graphics drawButton(Graphics g, int button, int state) +/* */ { +/* */ Color c; +/* */ Color c; +/* 173 */ if (state == 1) { Color c; +/* 174 */ if (this.isLoaded) { +/* 175 */ c = currentPackageName.equalsIgnoreCase(this.pkg) ? new Color(192, +/* 176 */ 255, 192) : Color.white; +/* */ } else +/* 178 */ c = Color.red; } else { Color c; +/* 179 */ if (state == 2) { +/* 180 */ c = new Color(255, 192, 192); +/* */ } else +/* 182 */ c = Color.green; +/* */ } +/* 184 */ g = super.drawButton(g, button, state, c); +/* */ +/* 186 */ return g; +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\WorldButton.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/WorldButtonBullet.java b/NET/worlds/console/WorldButtonBullet.java new file mode 100644 index 0000000..439dbd7 --- /dev/null +++ b/NET/worlds/console/WorldButtonBullet.java @@ -0,0 +1,264 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import java.awt.Color; +/* */ import java.awt.Component; +/* */ import java.awt.Graphics; +/* */ import java.awt.event.MouseEvent; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ class WorldButtonBullet +/* */ extends Component +/* */ { +/* */ private static final long serialVersionUID = -3330973936286182409L; +/* */ int circleX; +/* */ int circleY; +/* */ WorldButton button; +/* */ +/* */ public WorldButtonBullet(int x, int y, WorldButton button) +/* */ { +/* 200 */ this.circleX = (x - 2); +/* 201 */ this.circleY = (y - 2); +/* 202 */ this.button = button; +/* 203 */ setSize(6, 6); +/* 204 */ enableEvents(16L); +/* 205 */ enableEvents(32L); +/* */ } +/* */ +/* */ public void update(Graphics g) +/* */ { +/* 210 */ paint(g); +/* */ } +/* */ +/* */ public void paint(Graphics g) +/* */ { +/* 215 */ if (g != null) +/* */ { +/* 217 */ if (this.button.isLoaded) { +/* 218 */ if (WorldButton.currentPackageName.equalsIgnoreCase(this.button.pkg)) { +/* 219 */ g.setColor(Color.green); +/* */ } else +/* 221 */ g.setColor(Color.red); +/* 222 */ g.drawOval(0, 0, 3, 3); +/* 223 */ g.fillOval(0, 0, 3, 3); +/* */ } else { +/* 225 */ g.setColor(Color.red); +/* 226 */ g.drawOval(0, 0, 3, 3); +/* */ } +/* */ } +/* */ } +/* */ +/* */ @Deprecated +/* */ public void processMouseMotionEvent(MouseEvent e) +/* */ { +/* 234 */ switch (e.getID()) { +/* */ case 503: +/* */ case 506: +/* 237 */ this.button.buttonAction(0, e.getID()); +/* */ } +/* */ +/* */ +/* 241 */ super.processMouseEvent(e); +/* */ } +/* */ +/* */ @Deprecated +/* */ public void processMouseEvent(MouseEvent e) +/* */ { +/* 247 */ switch (e.getID()) { +/* */ case 501: +/* */ case 502: +/* */ case 504: +/* */ case 505: +/* 252 */ this.button.buttonAction(0, e.getID()); +/* 253 */ return; +/* */ } +/* */ +/* 256 */ super.processMouseEvent(e); +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\WorldButtonBullet.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/WorldsMarkPart.java b/NET/worlds/console/WorldsMarkPart.java new file mode 100644 index 0000000..8d6b3ab --- /dev/null +++ b/NET/worlds/console/WorldsMarkPart.java @@ -0,0 +1,860 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import NET.worlds.core.IniFile; +/* */ import NET.worlds.network.NetUpdate; +/* */ import NET.worlds.network.RemoteFileConst; +/* */ import NET.worlds.network.URL; +/* */ import NET.worlds.scape.FrameEvent; +/* */ import NET.worlds.scape.Pilot; +/* */ import NET.worlds.scape.Restorer; +/* */ import NET.worlds.scape.Room; +/* */ import NET.worlds.scape.Saver; +/* */ import NET.worlds.scape.TeleportAction; +/* */ import NET.worlds.scape.TeleportStatus; +/* */ import NET.worlds.scape.World; +/* */ import java.awt.Container; +/* */ import java.awt.Event; +/* */ import java.awt.Font; +/* */ import java.awt.Menu; +/* */ import java.awt.MenuItem; +/* */ import java.awt.PopupMenu; +/* */ import java.io.File; +/* */ import java.io.PrintStream; +/* */ import java.util.Hashtable; +/* */ import java.util.Locale; +/* */ import java.util.Vector; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public class WorldsMarkPart +/* */ implements FramePart, DialogReceiver, TeleportStatus, RemoteFileConst +/* */ { +/* */ private static final String worldsMarksFileName = "Gamma.worldsmarks"; +/* */ private static final int MAX_HISTORY = 10; +/* 111 */ private static URL userMarksURL = URL.make("home:Gamma.worldsmarks"); +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ private String name; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ private Menu menu; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ private Menu letsMenu; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* 144 */ private MenuItem addItem = new MenuItem(Console.message("Add-WorldsMark")); +/* 145 */ private MenuItem deleteItem = new MenuItem( +/* 146 */ Console.message("Delete-WorldsMark")); +/* 147 */ private MenuItem editItem = new MenuItem(Console.message("Edit-WorldsMark")); +/* 148 */ private MenuItem locationItem = new MenuItem( +/* 149 */ Console.message("Change-Location")); +/* 150 */ private Menu historyMenu = new Menu(Console.message("Back")); +/* */ +/* */ +/* */ private static Font font; +/* */ +/* 155 */ private boolean teleporting = false; +/* 156 */ private boolean startLocationDialog = false; +/* */ static Vector<String> systemMarksNames; +/* */ private static Vector<Vector<BookmarkMenuItem>> systemMarks; +/* */ private static Vector<BookmarkMenuItem> userMarks; +/* */ private static Vector<BookmarkMenuItem> historyItems; +/* */ private static int firstUserItem; +/* */ private static Hashtable<String, String> renamed; +/* */ private static Vector<String> excludes; +/* */ private static Vector<String> sequence; +/* */ +/* */ static +/* */ { +/* 115 */ Locale currentLocale = Locale.getDefault(); +/* 116 */ System.out.println("System Locale is " + currentLocale); +/* */ +/* 118 */ String defLang = IniFile.gamma().getIniString("DEFAULTLANGUAGE", ""); +/* 119 */ if (!defLang.equals("")) +/* */ { +/* 121 */ String code1 = null; +/* 122 */ String code2 = null; +/* */ +/* 124 */ if (defLang.length() >= 2) { +/* 125 */ code1 = defLang.substring(0, 2); +/* */ } +/* 127 */ if (defLang.length() >= 5) { +/* 128 */ code2 = defLang.substring(3, 5); +/* */ } +/* 130 */ if ((code1 == null) || (code2 == null)) { +/* 131 */ System.out.println("ERROR: DEFAULTLANGUAGE mustbe in the form xx_XX"); +/* */ } +/* */ else { +/* 134 */ Locale.setDefault(new Locale(code1, code2)); +/* 135 */ currentLocale = Locale.getDefault(); +/* 136 */ System.out.println("New Locale is " + currentLocale); +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* 152 */ font = new Font(Console.message("MenuFont"), +/* 153 */ 0, 12); +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* 163 */ historyItems = new Vector(); +/* */ +/* 165 */ historyItems.addElement(new BookmarkMenuItem( +/* 166 */ Console.message("end-of-last"), "world:restart")); +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* 177 */ renamed = new Hashtable(); +/* 178 */ renamed.put("lets", "Hang"); +/* 179 */ renamed.put("worldschat", "WorldsCenter"); +/* 180 */ renamed.put("polygram", "WorldsStore.com"); +/* 181 */ renamed.put("stadium", "NY Yankees"); +/* 182 */ renamed.put("bowie", "Bowie I"); +/* 183 */ renamed.put("texas", "Texas"); +/* 184 */ renamed.put("hanson", "Hanson I"); +/* */ +/* */ +/* 187 */ excludes = new Vector(); +/* 188 */ excludes.addElement("funhouse"); +/* 189 */ excludes.addElement("chaos"); +/* */ +/* */ +/* */ +/* 193 */ sequence = new Vector(); +/* 194 */ sequence.addElement(getFirstWorld().toLowerCase()); +/* 195 */ sequence.addElement("avatargallery"); +/* 196 */ sequence.addElement("dressingroom"); +/* */ } +/* */ +/* */ public WorldsMarkPart() { +/* 200 */ this(null); +/* */ } +/* */ +/* */ public WorldsMarkPart(String name) { +/* 204 */ this.name = name; +/* */ } +/* */ +/* */ public boolean isTeleporting() +/* */ { +/* 209 */ return this.teleporting; +/* */ } +/* */ +/* */ public static String getExternalName(String name) +/* */ { +/* 214 */ String extName = (String)renamed.get(name.toLowerCase()); +/* 215 */ return extName != null ? extName : name; +/* */ } +/* */ +/* */ public Menu getMenu() { +/* 219 */ if (this.menu == null) { +/* 220 */ if (this.name != null) { +/* 221 */ this.menu = new Menu(this.name); +/* */ } else { +/* 223 */ this.menu = new PopupMenu(); +/* */ } +/* 225 */ this.letsMenu = new PopupMenu(); +/* 226 */ this.historyMenu.setFont(font); +/* 227 */ this.letsMenu.add(this.historyMenu); +/* 228 */ this.letsMenu.addSeparator(); +/* */ +/* 230 */ if (userMarks == null) { +/* 231 */ loadMarks(); +/* */ } +/* 233 */ if (systemMarks.size() != 0) { +/* 234 */ for (int i = 0; i < systemMarks.size(); i++) { +/* 235 */ String subName = (String)systemMarksNames.elementAt(i); +/* */ +/* 237 */ Menu subMenu = new Menu(getExternalName(subName)); +/* 238 */ addItems(subMenu, (Vector)systemMarks.elementAt(i)); +/* 239 */ subMenu.setFont(font); +/* 240 */ this.letsMenu.add(subMenu); +/* */ } +/* */ } +/* 243 */ addMainMenuItem(this.addItem); +/* 244 */ addMainMenuItem(this.deleteItem); +/* */ +/* */ +/* 247 */ addMainMenuItem(this.editItem); +/* 248 */ addMainMenuItem(this.locationItem); +/* */ +/* 250 */ addMainMenuSeparator(); +/* */ +/* 252 */ addItems(this.menu, userMarks); +/* 253 */ addItems(this.historyMenu, historyItems); +/* */ } +/* 255 */ return this.menu; +/* */ } +/* */ +/* */ +/* */ +/* */ public Menu getLetsMenu() +/* */ { +/* 262 */ if (this.letsMenu == null) { +/* 263 */ getMenu(); +/* */ } +/* 265 */ return this.letsMenu; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public static PopupMenu getPackageMenu(String pname) +/* */ { +/* 277 */ int p = findPackageNum(pname); +/* 278 */ if (p < 0) { +/* 279 */ return null; +/* */ } +/* 281 */ PopupMenu m = new PopupMenu(); +/* 282 */ Vector<BookmarkMenuItem> v = (Vector)systemMarks.elementAt(p); +/* 283 */ for (int i = 0; i < v.size(); i++) { +/* 284 */ MenuItem mi = (MenuItem)v.elementAt(i); +/* 285 */ if ((mi instanceof BookmarkMenuItem)) { +/* 286 */ BookmarkMenuItem bmi = (BookmarkMenuItem)v.elementAt(i); +/* */ +/* */ +/* 289 */ String name = bmi.getLabel(); +/* 290 */ String targ = bmi.getTarget(); +/* 291 */ URL u = URL.make(TeleportAction.toURLString(targ)); +/* 292 */ String pkg = TeleportAction.getPackageNameOfWorld(u); +/* 293 */ if ((pkg != null) && (findPackage(pkg) == null)) +/* */ { +/* */ +/* 296 */ String dirName = URL.make("home:" + pkg).unalias(); +/* 297 */ if (!new File(dirName).isDirectory()) { +/* 298 */ name = "Download " + name; +/* */ } +/* */ } +/* 301 */ m.add(new BookmarkMenuItem(name, targ)); +/* */ } +/* */ } +/* */ +/* */ +/* 306 */ boolean isFirst = true; +/* 307 */ for (int i = 0; i < userMarks.size(); i++) { +/* 308 */ URL u = URL.make(TeleportAction.toURLString(getBookmarkTarget(i))); +/* 309 */ String s = TeleportAction.getPackageNameOfWorld(u); +/* 310 */ if ((s != null) && (s.equalsIgnoreCase(pname))) { +/* 311 */ if (isFirst) { +/* 312 */ isFirst = false; +/* 313 */ m.addSeparator(); +/* */ } +/* 315 */ BookmarkMenuItem item = new BookmarkMenuItem( +/* 316 */ getBookmarkName(i), getBookmarkTarget(i)); +/* 317 */ m.add(item); +/* */ } +/* */ } +/* */ +/* 321 */ return m; +/* */ } +/* */ +/* */ private static void addItems(Menu m, Vector<BookmarkMenuItem> v) { +/* 325 */ for (int i = 0; i < v.size(); i++) { +/* 326 */ MenuItem mItem = (MenuItem)v.elementAt(i); +/* 327 */ mItem.setFont(font); +/* 328 */ m.add(mItem); +/* */ } +/* */ } +/* */ +/* */ private void addMainMenuItem(MenuItem item) { +/* 333 */ item.setFont(font); +/* 334 */ this.menu.add(item); +/* 335 */ firstUserItem += 1; +/* */ } +/* */ +/* */ private void addMainMenuSeparator() { +/* 339 */ this.menu.addSeparator(); +/* 340 */ firstUserItem += 1; +/* */ } +/* */ +/* */ public static String getFirstWorld() { +/* 344 */ IniFile ini = new IniFile("InstalledWorlds"); +/* 345 */ return ini.getIniString("InstalledWorld0", ""); +/* */ } +/* */ +/* */ +/* */ +/* */ public static String getFirstSystemMarkURL() +/* */ { +/* 352 */ if (userMarks == null) { +/* 353 */ loadMarks(); +/* */ } +/* 355 */ for (int i = 0; i < systemMarks.size(); i++) { +/* 356 */ Vector<BookmarkMenuItem> v = (Vector)systemMarks.elementAt(i); +/* 357 */ if (v.size() > 0) { +/* 358 */ return ((BookmarkMenuItem)v.elementAt(0)).getTarget(); +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* 369 */ return ((BookmarkMenuItem)userMarks.elementAt(0)).getTarget(); +/* */ } +/* */ +/* */ private static void shortenNames(String prefix, Vector<BookmarkMenuItem> v) { +/* 373 */ int count = v.size(); +/* 374 */ int pfxlen = prefix.length(); +/* 375 */ for (int i = 0; i < count; i++) { +/* 376 */ MenuItem item = (MenuItem)v.elementAt(i); +/* 377 */ String label = item.getLabel(); +/* 378 */ if (label.startsWith(prefix)) { +/* 379 */ item.setLabel(label.substring(pfxlen).trim()); +/* */ } +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ private static int findPackageNum(String pname) +/* */ { +/* 389 */ Vector<String> v = systemMarksNames; +/* 390 */ if (v != null) { +/* 391 */ int i = v.size(); +/* 392 */ do { String s = (String)v.elementAt(i); +/* 393 */ if (s.equalsIgnoreCase(pname)) { +/* 394 */ return i; +/* */ } +/* 391 */ i--; } while (i >= 0); +/* */ } +/* */ +/* */ +/* */ +/* */ +/* 397 */ return -1; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public static String findPackage(String pname) +/* */ { +/* 406 */ int i = findPackageNum(pname); +/* 407 */ if (i < 0) { +/* 408 */ return null; +/* */ } +/* 410 */ return (String)systemMarksNames.elementAt(i); +/* */ } +/* */ +/* */ private static void loadMarks() +/* */ { +/* 415 */ systemMarks = new Vector(); +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* 423 */ systemMarksNames = new Vector(); +/* 424 */ IniFile ini = new IniFile("InstalledWorlds"); +/* */ +/* 426 */ String[] sequenced = new String[sequence.size()]; +/* 427 */ for (int count = 0; count < NetUpdate.maxInstalledWorlds(); count++) { +/* 428 */ String curvalue = ini.getIniString("InstalledWorld" + count, ""); +/* 429 */ if (!curvalue.equals("")) { +/* 430 */ NetUpdate.maxInstalledWorld(count); +/* 431 */ String pkgLower = curvalue.toLowerCase(); +/* 432 */ if ((!excludes.contains(pkgLower)) && ( +/* 433 */ (!pkgLower.equals("polygram")) || +/* 434 */ (!World.isWorldsStoreProscribed()))) { +/* 435 */ int index = sequence.indexOf(pkgLower); +/* 436 */ if (index != -1) { +/* 437 */ sequenced[index] = curvalue; +/* */ } else { +/* 439 */ systemMarksNames.addElement(curvalue); +/* */ } +/* */ } +/* */ } +/* */ } +/* */ +/* 445 */ for (int i = sequenced.length - 1; i >= 0; i--) { +/* 446 */ if (sequenced[i] != null) +/* 447 */ systemMarksNames.insertElementAt(sequenced[i], 0); +/* */ } +/* 449 */ for (int i = 0; i < systemMarksNames.size();) { +/* 450 */ String worldName = (String)systemMarksNames.elementAt(i); +/* 451 */ Vector<BookmarkMenuItem> v = loadVector(URL.make("home:" + worldName + "/" + +/* 452 */ "Gamma.worldsmarks")); +/* */ +/* */ +/* 455 */ if (v.size() != 0) { +/* 456 */ shortenNames(worldName, v); +/* 457 */ systemMarks.addElement(v); +/* 458 */ i++; +/* */ } else { +/* 460 */ systemMarksNames.removeElementAt(i); +/* */ } } +/* 462 */ userMarks = loadVector(userMarksURL); +/* */ } +/* */ +/* */ private static Vector<?> loadVector(URL url) +/* */ { +/* 467 */ Vector<?> v = null; +/* */ try { +/* 469 */ Restorer r = new Restorer(url); +/* 470 */ v = r.restoreVector(); +/* 471 */ r.done(); +/* */ +/* */ } +/* */ catch (Exception ex) +/* */ { +/* */ +/* 477 */ if (v != null) { +/* 478 */ saveVector(url, v); +/* */ } else +/* 480 */ v = new Vector(); +/* */ } +/* 482 */ return v; +/* */ } +/* */ +/* */ private static void saveMarks() { +/* 486 */ saveVector(userMarksURL, userMarks); +/* */ } +/* */ +/* */ private static void saveVector(URL url, Vector<BookmarkMenuItem> v) { +/* */ try { +/* 491 */ Saver s = new Saver(url); +/* 492 */ s.saveVector(v); +/* 493 */ s.done(); +/* */ } +/* */ catch (Exception localException) {} +/* */ } +/* */ +/* */ static void gotoBookmark(int index) { +/* 499 */ TeleportAction.teleport(getBookmarkTarget(index), null); +/* */ } +/* */ +/* */ static int getBookmarkCount() { +/* 503 */ return userMarks.size(); +/* */ } +/* */ +/* */ private static BookmarkMenuItem getBookmark(int index) { +/* 507 */ return (BookmarkMenuItem)userMarks.elementAt(index); +/* */ } +/* */ +/* */ static String getBookmarkName(int index) { +/* 511 */ return getBookmark(index).getLabel(); +/* */ } +/* */ +/* */ static String getBookmarkTarget(int index) { +/* 515 */ return getBookmark(index).getTarget(); +/* */ } +/* */ +/* */ void addBookmark(String name, String target) { +/* 519 */ BookmarkMenuItem item = new BookmarkMenuItem(name, target); +/* 520 */ this.menu.add(item); +/* 521 */ userMarks.addElement(item); +/* 522 */ saveMarks(); +/* */ } +/* */ +/* */ void removeBookmark(int index) { +/* 526 */ userMarks.removeElementAt(index); +/* 527 */ this.menu.remove(index + firstUserItem); +/* 528 */ saveMarks(); +/* */ } +/* */ +/* */ void changeBookmark(int index, String name, String target) { +/* 532 */ BookmarkMenuItem item = getBookmark(index); +/* 533 */ item.setLabel(name); +/* 534 */ item.setTarget(target); +/* 535 */ saveMarks(); +/* */ } +/* */ +/* */ public void dialogDone(Object who, boolean confirmed) +/* */ { +/* 540 */ if (confirmed) { +/* 541 */ if ((who instanceof LocationDialog)) { +/* 542 */ LocationDialog locationDialog = (LocationDialog)who; +/* 543 */ String location = locationDialog.getLocationURL(); +/* 544 */ if (location.length() != 0) +/* 545 */ TeleportAction.teleport(location, null); +/* */ } else { +/* 547 */ BookmarkAddDialog adder = (BookmarkAddDialog)who; +/* 548 */ BookmarkEditDialog editor = adder.getEditor(); +/* 549 */ addBookmark(editor.getName(), editor.getTarget()); +/* */ } +/* */ } +/* */ } +/* */ +/* */ private static BookmarkMenuItem getHistory(int index) { +/* 555 */ return (BookmarkMenuItem)historyItems.elementAt(index); +/* */ } +/* */ +/* */ private static BookmarkMenuItem getItemFromTarget(String target, Vector<BookmarkMenuItem> vec) { +/* 559 */ for (int i = 0; i < vec.size(); i++) { +/* 560 */ BookmarkMenuItem item = (BookmarkMenuItem)vec.elementAt(i); +/* 561 */ if (item.getTarget().equals(target)) +/* 562 */ return item; +/* */ } +/* 564 */ return null; +/* */ } +/* */ +/* */ private static BookmarkMenuItem getItemFromName(String name, Vector<BookmarkMenuItem> vec) { +/* 568 */ for (int i = 0; i < vec.size(); i++) { +/* 569 */ BookmarkMenuItem item = (BookmarkMenuItem)vec.elementAt(i); +/* 570 */ if (item.getLabel().equals(name)) +/* 571 */ return item; +/* */ } +/* 573 */ return null; +/* */ } +/* */ +/* */ private static String getWorldName(String url) { +/* 577 */ int rindex = url.toLowerCase().lastIndexOf(".world"); +/* 578 */ if (rindex != -1) { +/* */ int windex; +/* 580 */ if (((windex = url.lastIndexOf('/', rindex)) != -1) || +/* 581 */ ((windex = url.lastIndexOf(':', rindex)) != -1)) +/* 582 */ return url.substring(windex + 1, rindex); +/* */ } +/* 584 */ return null; +/* */ } +/* */ +/* */ public static String getCurrentPackageName() { +/* 588 */ Pilot pilot = Pilot.getActive(); +/* 589 */ if (pilot == null) { +/* 590 */ return null; +/* */ } +/* 592 */ World world = pilot.getWorld(); +/* 593 */ if (world == null) { +/* 594 */ return null; +/* */ } +/* 596 */ URL url = world.getSourceURL(); +/* 597 */ if (url == null) { +/* 598 */ return null; +/* */ } +/* 600 */ return TeleportAction.getPackageNameOfWorld(url); +/* */ } +/* */ +/* */ private static String getCurrentURLName() { +/* 604 */ String name = ""; +/* 605 */ Pilot pilot = Pilot.getActive(); +/* 606 */ if (pilot != null) { +/* 607 */ World world = pilot.getWorld(); +/* 608 */ if (world != null) { +/* 609 */ URL url = world.getSourceURL(); +/* 610 */ if (url != null) { +/* 611 */ String worldFileName = getWorldName(url.getAbsolute()); +/* 612 */ if (worldFileName != null) +/* 613 */ name = worldFileName; +/* */ } +/* 615 */ String worldName = world.getName(); +/* 616 */ if (worldName != null) { +/* 617 */ if (!name.equals("")) +/* 618 */ name = name + " "; +/* 619 */ name = name + worldName; +/* */ } +/* 621 */ Room room = pilot.getRoom(); +/* 622 */ if (room != null) { +/* 623 */ String roomName = room.getName(); +/* 624 */ if (roomName != null) { +/* 625 */ if (!name.equals("")) +/* 626 */ name = name + " "; +/* 627 */ name = name + roomName; +/* */ } +/* */ } +/* */ } +/* */ } +/* 632 */ return name; +/* */ } +/* */ +/* */ static String getCurrentPositionName() { +/* 636 */ return getCurrentPositionName(userMarks); +/* */ } +/* */ +/* */ static String getCurrentPositionName(Vector<BookmarkMenuItem> v) { +/* 640 */ String position = getCurrentPositionURL(false); +/* */ +/* */ +/* */ +/* */ +/* 645 */ int count = systemMarks.size(); +/* 646 */ for (int i = 0; i < count; i++) { BookmarkMenuItem item; +/* 647 */ if ((item = getItemFromTarget(position, +/* 648 */ (Vector)systemMarks.elementAt(i))) != null) +/* 649 */ return +/* 650 */ (String)systemMarksNames.elementAt(i) + " " + item.getLabel(); } +/* 651 */ BookmarkMenuItem item; if (((item = getItemFromTarget(position, userMarks)) != null) || +/* 652 */ ((item = getItemFromTarget(position, historyItems)) != null)) { +/* 653 */ return item.getLabel(); +/* */ } +/* 655 */ String defaultName = getCurrentURLName(); +/* */ +/* 657 */ String name = defaultName; +/* 658 */ int number = 1; +/* */ +/* */ for (;;) +/* */ { +/* 662 */ if (getItemFromName(name, v) == null) +/* 663 */ return name; +/* 664 */ number++; +/* 665 */ name = defaultName + "-" + number; +/* */ } +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ static String getCurrentPositionURL(boolean mustHaveChannel) +/* */ { +/* 678 */ Pilot pilot = Pilot.getActive(); +/* 679 */ if (pilot == null) { +/* 680 */ return ""; +/* */ } +/* 682 */ String newURL = pilot.getURL(); +/* 683 */ if (newURL == null) { +/* 684 */ return ""; +/* */ } +/* 686 */ if (!mustHaveChannel) { +/* 687 */ int dynamicChannelIndex = newURL.indexOf("<dimension-"); +/* 688 */ if (dynamicChannelIndex < 0) +/* 689 */ dynamicChannelIndex = newURL.indexOf("<>@"); +/* 690 */ int channelEndIndex = newURL.indexOf(">@"); +/* 691 */ if ((dynamicChannelIndex > 0) && +/* 692 */ (dynamicChannelIndex < channelEndIndex)) { +/* 693 */ newURL = +/* 694 */ newURL.substring(0, dynamicChannelIndex) + newURL.substring(channelEndIndex + 1); +/* */ } +/* */ } +/* */ +/* 698 */ return newURL; +/* */ } +/* */ +/* */ +/* */ public void teleportStatus(String err, String url) +/* */ { +/* 704 */ this.teleporting = ((err != null) && (err.length() == 0)); +/* */ +/* 706 */ if (err == null) +/* */ { +/* */ +/* */ +/* 710 */ url = getCurrentPositionURL(true); +/* 711 */ if (url.length() == 0) { +/* 712 */ return; +/* */ } +/* */ +/* */ +/* 716 */ Menu menu = getMenu(); +/* */ +/* */ +/* 719 */ for (int i = 0; i < historyItems.size(); i++) { +/* 720 */ if (getHistory(i).getTarget().equals(url)) { +/* 721 */ historyItems.removeElementAt(i); +/* 722 */ this.historyMenu.remove(i); +/* 723 */ break; +/* */ } +/* */ } +/* */ +/* */ +/* 728 */ BookmarkMenuItem item = new BookmarkMenuItem( +/* 729 */ getCurrentPositionName(historyItems), url); +/* 730 */ historyItems.insertElementAt(item, 0); +/* 731 */ this.historyMenu.insert(item, 0); +/* */ +/* */ +/* 734 */ while (historyItems.size() > 10) { +/* 735 */ historyItems.removeElementAt(10); +/* 736 */ this.historyMenu.remove(10); +/* */ } +/* */ } +/* */ } +/* */ +/* */ +/* */ public void activate(Console c, Container f, Console prev) {} +/* */ +/* */ +/* */ public void deactivate() +/* */ { +/* 747 */ if (this.menu != null) +/* 748 */ this.menu.removeAll(); +/* 749 */ this.menu = null; +/* 750 */ this.letsMenu = null; +/* 751 */ firstUserItem = 0; +/* */ } +/* */ +/* */ @Deprecated +/* */ public boolean action(Event event, Object what) +/* */ { +/* 757 */ Object target = event.target; +/* 758 */ if (this.menu != null) { +/* 759 */ if (target == this.addItem) { +/* 760 */ if (Pilot.getActive().getRoom().getAllowTeleport()) { +/* 761 */ new BookmarkAddDialog(Console.getFrame(), this); +/* */ } else +/* 763 */ Console.println(Console.message("no-teleport")); +/* 764 */ } else if (target == this.deleteItem) { +/* 765 */ new BookmarkDeleteDialog(this); +/* 766 */ } else if (target == this.editItem) { +/* 767 */ new BookmarkListDialog(this); +/* 768 */ } else if (target == this.locationItem) { +/* 769 */ this.startLocationDialog = true; +/* 770 */ } else if ((target instanceof BookmarkMenuItem)) { +/* 771 */ TeleportAction.teleport( +/* 772 */ ((BookmarkMenuItem)target).getTarget(), null); +/* */ } else +/* 774 */ return false; +/* 775 */ return true; +/* */ } +/* 777 */ return false; +/* */ } +/* */ +/* */ public boolean handle(FrameEvent f) +/* */ { +/* 782 */ if (this.startLocationDialog) { +/* 783 */ this.startLocationDialog = false; +/* */ +/* 785 */ String url = ""; +/* 786 */ Pilot pilot = Pilot.getActive(); +/* 787 */ if (pilot != null) { +/* 788 */ url = pilot.getURL(); +/* */ } +/* 790 */ new LocationDialog(Console.getFrame(), this, +/* 791 */ Console.message("Change-Location"), url); +/* */ } +/* */ +/* 794 */ return true; +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\WorldsMarkPart.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file diff --git a/NET/worlds/console/YesNoCancelDialog.java b/NET/worlds/console/YesNoCancelDialog.java new file mode 100644 index 0000000..3adbf30 --- /dev/null +++ b/NET/worlds/console/YesNoCancelDialog.java @@ -0,0 +1,124 @@ +/* */ package NET.worlds.console; +/* */ +/* */ import java.awt.Button; +/* */ import java.awt.Event; +/* */ import java.awt.GridBagConstraints; +/* */ import java.awt.GridBagLayout; +/* */ import java.awt.Window; +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ +/* */ public class YesNoCancelDialog +/* */ extends PolledDialog +/* */ { +/* */ private static final long serialVersionUID = 4497394464783317237L; +/* 26 */ private Button yesButton = new Button(Console.message("Yes")); +/* 27 */ private Button noButton = new Button(Console.message("No")); +/* 28 */ private Button cancelButton = new Button(Console.message("Cancel")); +/* 29 */ private GridBagLayout gbag = new GridBagLayout(); +/* */ private String prompt; +/* 31 */ private int choice = -2; +/* */ +/* */ public static final int UNDECIDED = -2; +/* */ public static final int CANCEL = -1; +/* */ public static final int NO = 0; +/* */ public static final int YES = 1; +/* */ +/* */ public YesNoCancelDialog(Window parent, DialogReceiver receiver, String title, String prompt) +/* */ { +/* 40 */ super(parent, receiver, title, true); +/* 41 */ this.prompt = prompt; +/* 42 */ setLayout(this.gbag); +/* 43 */ ready(); +/* */ } +/* */ +/* */ public int getChoice() { +/* 47 */ return this.choice; +/* */ } +/* */ +/* */ protected void build() +/* */ { +/* 52 */ GridBagConstraints c = new GridBagConstraints(); +/* 53 */ c.weightx = 1.0D; +/* 54 */ c.weighty = 1.0D; +/* 55 */ c.gridwidth = 0; +/* 56 */ add(this.gbag, new MultiLineLabel(this.prompt, 5, 5), c); +/* 57 */ c.gridwidth = 3; +/* 58 */ c.weightx = 1.0D; +/* 59 */ c.weighty = 0.0D; +/* 60 */ add(this.gbag, this.yesButton, c); +/* 61 */ add(this.gbag, this.noButton, c); +/* 62 */ add(this.gbag, this.cancelButton, c); +/* */ } +/* */ +/* */ +/* */ +/* */ public void setVisible(boolean visible) +/* */ { +/* 69 */ super.setVisible(visible); +/* 70 */ if (visible) { +/* 71 */ this.yesButton.requestFocus(); +/* */ } +/* */ } +/* */ +/* */ private boolean yes() { +/* 76 */ this.choice = 1; +/* 77 */ return done(true); +/* */ } +/* */ +/* */ private boolean no() { +/* 81 */ this.choice = 0; +/* 82 */ return done(false); +/* */ } +/* */ +/* */ private boolean cancel() { +/* 86 */ this.choice = -1; +/* 87 */ return done(false); +/* */ } +/* */ +/* */ @Deprecated +/* */ public boolean handleEvent(Event event) +/* */ { +/* 93 */ if (event.id == 201) +/* 94 */ return cancel(); +/* 95 */ return super.handleEvent(event); +/* */ } +/* */ +/* */ @Deprecated +/* */ public boolean action(Event event, Object what) +/* */ { +/* 101 */ Object target = event.target; +/* 102 */ if (target == this.yesButton) +/* 103 */ return yes(); +/* 104 */ if (target == this.noButton) +/* 105 */ return no(); +/* 106 */ if (target == this.cancelButton) +/* 107 */ return cancel(); +/* 108 */ return false; +/* */ } +/* */ +/* */ @Deprecated +/* */ public boolean keyDown(Event event, int key) +/* */ { +/* 114 */ if (key == 27) +/* 115 */ return cancel(); +/* 116 */ return super.keyDown(event, key); +/* */ } +/* */ } + + +/* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\YesNoCancelDialog.class + * Java compiler version: 6 (50.0) + * JD-Core Version: 0.7.1 + */
\ No newline at end of file |