From e1e781bb2135ef78592226f1a3eaba4925702f1f Mon Sep 17 00:00:00 2001 From: Fuwn Date: Mon, 3 May 2021 16:38:41 -0700 Subject: :star: --- NET/worlds/console/AboutDialog.java | 175 + NET/worlds/console/ActionDialog.java | 327 ++ NET/worlds/console/ActionsPart.java | 164 + NET/worlds/console/ActiveX.java | 220 ++ NET/worlds/console/AdBanner.java | 55 + NET/worlds/console/AdPart.java | 325 ++ NET/worlds/console/AddHandler.java | 117 + NET/worlds/console/AddNameDialog.java | 312 ++ NET/worlds/console/AnimationButton.java | 146 + NET/worlds/console/ArmyOfZombies.java | 142 + NET/worlds/console/AttributeList.java | 63 + NET/worlds/console/AttributeSortPanel.java | 197 ++ NET/worlds/console/AvMenu.java | 1164 ++++++ NET/worlds/console/AvMenuItem.java | 71 + NET/worlds/console/AvMenuItemSortable.java | 86 + NET/worlds/console/AvatarDialog.java | 210 ++ NET/worlds/console/AvatarDialogCallback.java | 20 + NET/worlds/console/AvatarDialogTest.java | 60 + NET/worlds/console/BBAnimateDroneCommand.java | 60 + NET/worlds/console/BBAppearDroneCommand.java | 77 + NET/worlds/console/BBChatCommand.java | 45 + NET/worlds/console/BBDisappearDroneCommand.java | 45 + NET/worlds/console/BBDroneBitmapCommand.java | 65 + NET/worlds/console/BBDroneDeltaPosCommand.java | 84 + NET/worlds/console/BBMoveDroneCommand.java | 86 + NET/worlds/console/BBTeleportCommand.java | 90 + NET/worlds/console/BBWObjClickedCommand.java | 89 + NET/worlds/console/BackButton.java | 1233 +++++++ NET/worlds/console/BlackBox.java | 474 +++ NET/worlds/console/BlackBoxCallback.java | 12 + NET/worlds/console/BlackBoxCommand.java | 59 + NET/worlds/console/BlockingDialog.java | 68 + NET/worlds/console/BookmarkAddDialog.java | 1022 ++++++ NET/worlds/console/BookmarkDeleteDialog.java | 1153 ++++++ NET/worlds/console/BookmarkEditDialog.java | 1325 +++++++ NET/worlds/console/BookmarkListDialog.java | 989 ++++++ NET/worlds/console/BookmarkMenuItem.java | 68 + NET/worlds/console/BootDialog.java | 139 + NET/worlds/console/CameraConveyor.java | 124 + NET/worlds/console/ChannelDialog.java | 141 + NET/worlds/console/ChatArea.java | 423 +++ NET/worlds/console/ChatDialog.java | 204 ++ NET/worlds/console/ChatPart.java | 116 + NET/worlds/console/ClassicSharedTextArea.java | 765 ++++ NET/worlds/console/ColorFiller.java | 2909 +++++++++++++++ NET/worlds/console/ConfirmDialog.java | 68 + NET/worlds/console/ConnectionRecord.java | 755 ++++ NET/worlds/console/Console.java | 3897 +++++++++++++++++++++ NET/worlds/console/ConsoleLoader.java | 2356 +++++++++++++ NET/worlds/console/Conveyor.java | 89 + NET/worlds/console/Cursor.java | 359 ++ NET/worlds/console/DefaultConsole.java | 2842 +++++++++++++++ NET/worlds/console/DialogDisabled.java | 12 + NET/worlds/console/DialogReceiver.java | 12 + NET/worlds/console/DuplexPart.java | 1083 ++++++ NET/worlds/console/EMailPart.java | 25 + NET/worlds/console/EditNamesDialog.java | 209 ++ NET/worlds/console/EmoteHandler.java | 118 + NET/worlds/console/Escalator.java | 105 + NET/worlds/console/ExpireDialog.java | 899 +++++ NET/worlds/console/ExposedPanel.java | 34 + NET/worlds/console/FileSaver.java | 510 +++ NET/worlds/console/FileSysDialog.java | 250 ++ NET/worlds/console/Filler.java | 43 + NET/worlds/console/FixedSizePanel.java | 52 + NET/worlds/console/FixedWidthPanel.java | 1252 +++++++ NET/worlds/console/FocusPreservingTextField.java | 898 +++++ NET/worlds/console/ForwardButton.java | 1222 +++++++ NET/worlds/console/FourTilePanel.java | 320 ++ NET/worlds/console/FourTileSwapper.java | 346 ++ NET/worlds/console/FramePart.java | 22 + NET/worlds/console/FriendsListPart.java | 1559 +++++++++ NET/worlds/console/Gamma.java | 1108 ++++++ NET/worlds/console/GammaFrame.java | 223 ++ NET/worlds/console/GammaFrameState.java | 267 ++ NET/worlds/console/GammaPhoneMonitor.java | 222 ++ NET/worlds/console/GammaTextArea.java | 1180 +++++++ NET/worlds/console/GammaTextScrollbar.java | 1427 ++++++++ NET/worlds/console/GiftDialog.java | 76 + NET/worlds/console/IClassFactory.java | 178 + NET/worlds/console/IDispatch.java | 175 + NET/worlds/console/IEWebControlImp.java | 144 + NET/worlds/console/INetscapeRegistry.java | 31 + NET/worlds/console/IUnknown.java | 250 ++ NET/worlds/console/IWebBrowserApp.java | 38 + NET/worlds/console/IllegalPilotException.java | 30 + NET/worlds/console/ImageButtons.java | 556 +++ NET/worlds/console/ImageButtonsCallback.java | 14 + NET/worlds/console/ImageCanvas.java | 257 ++ NET/worlds/console/InsetPanel.java | 2870 +++++++++++++++ NET/worlds/console/InternetConnectionDialog.java | 132 + NET/worlds/console/InternetExplorer.java | 95 + NET/worlds/console/InventoryPart.java | 59 + NET/worlds/console/LanguageManager.java | 219 ++ NET/worlds/console/LocationDialog.java | 142 + NET/worlds/console/LogFile.java | 330 ++ NET/worlds/console/LogFileMailMessage.java | 40 + NET/worlds/console/LogMailDialog.java | 76 + NET/worlds/console/LoginWizard.java | 1381 ++++++++ NET/worlds/console/MailDialog.java | 179 + NET/worlds/console/MailDialogReceiver.java | 220 ++ NET/worlds/console/MailMessage.java | 613 ++++ NET/worlds/console/Main.java | 279 ++ NET/worlds/console/MainCallback.java | 12 + NET/worlds/console/MainTerminalCallback.java | 12 + NET/worlds/console/MapFrame.java | 37 + NET/worlds/console/MapPart.java | 280 ++ NET/worlds/console/MapTile.java | 15 + NET/worlds/console/MoreFriendsDialog.java | 1741 +++++++++ NET/worlds/console/MoveablePolygon.java | 420 +++ NET/worlds/console/MultiLineLabel.java | 215 ++ NET/worlds/console/MuteListPart.java | 357 ++ NET/worlds/console/NSProtocolHandler.java | 65 + NET/worlds/console/NameListOwner.java | 22 + NET/worlds/console/Netscape.java | 208 ++ NET/worlds/console/NewSharedTextArea.java | 415 +++ NET/worlds/console/NoWebControlException.java | 26 + NET/worlds/console/OLEInvalidObjectException.java | 33 + NET/worlds/console/OkCancelDialog.java | 190 + NET/worlds/console/Overlay.java | 248 ++ NET/worlds/console/PersonalInfoDialog.java | 1950 +++++++++++ NET/worlds/console/PersonalInfoDownload.java | 1986 +++++++++++ NET/worlds/console/PolledDialog.java | 402 +++ NET/worlds/console/PolledDialogSaver.java | 424 +++ NET/worlds/console/ProgressBar.java | 227 ++ NET/worlds/console/ProxyServerDialog.java | 91 + NET/worlds/console/PublicObservable.java | 1098 ++++++ NET/worlds/console/QuantizedCanvas.java | 17 + NET/worlds/console/QuantizedStackedLayout.java | 3067 ++++++++++++++++ NET/worlds/console/QuitDialog.java | 70 + NET/worlds/console/RealG2.java | 370 ++ NET/worlds/console/RemoveHandler.java | 119 + NET/worlds/console/RenderCanvas.java | 396 +++ NET/worlds/console/RenderCanvasOverlay.java | 155 + NET/worlds/console/RightMenu.java | 160 + NET/worlds/console/SavedAvAddDialog.java | 377 ++ NET/worlds/console/SavedAvDeleteDialog.java | 294 ++ NET/worlds/console/SavedAvMenuItem.java | 68 + NET/worlds/console/SavedAvPart.java | 175 + NET/worlds/console/ScapePicCanvas.java | 87 + NET/worlds/console/ScapePicImage.java | 73 + NET/worlds/console/ScapePicPanel.java | 239 ++ NET/worlds/console/SetNumVisibleAvs.java | 174 + NET/worlds/console/Shaper.java | 394 +++ NET/worlds/console/SharedTextArea.java | 46 + NET/worlds/console/SnapTool.java | 127 + NET/worlds/console/SnapToolPanel.java | 181 + NET/worlds/console/SplashCanvas.java | 205 ++ NET/worlds/console/SplashScreen.java | 86 + NET/worlds/console/StackedLayout.java | 2998 ++++++++++++++++ NET/worlds/console/Stair.java | 250 ++ NET/worlds/console/Staircase.java | 312 ++ NET/worlds/console/Startup.java | 16 + NET/worlds/console/StatMan.java | 71 + NET/worlds/console/StatMemNode.java | 151 + NET/worlds/console/StatNetMUNode.java | 117 + NET/worlds/console/StatNetNode.java | 38 + NET/worlds/console/StatNetRefNode.java | 118 + NET/worlds/console/StatRateNode.java | 90 + NET/worlds/console/StatTreeNode.java | 54 + NET/worlds/console/StatisticsRoot.java | 36 + NET/worlds/console/StatisticsWindow.java | 126 + NET/worlds/console/StyledTextCanvas.java | 1406 ++++++++ NET/worlds/console/TextCanvas.java | 109 + NET/worlds/console/TextImageButtons.java | 137 + NET/worlds/console/TradeDialog.java | 759 ++++ NET/worlds/console/Tree.java | 303 ++ NET/worlds/console/TreeCallback.java | 14 + NET/worlds/console/TreeNode.java | 116 + NET/worlds/console/TreePanel.java | 359 ++ NET/worlds/console/URLLine.java | 311 ++ NET/worlds/console/UniverseImage.java | 288 ++ NET/worlds/console/UniversePanel.java | 729 ++++ NET/worlds/console/UnpaddedLabel.java | 2934 ++++++++++++++++ NET/worlds/console/UpdateableDialog.java | 201 ++ NET/worlds/console/UserInventoryCallback.java | 49 + NET/worlds/console/VCTimerThread.java | 696 ++++ NET/worlds/console/VoiceChat.java | 669 ++++ NET/worlds/console/WebBrowser.java | 532 +++ NET/worlds/console/WebControl.java | 127 + NET/worlds/console/WebControlFactory.java | 34 + NET/worlds/console/WebControlImp.java | 152 + NET/worlds/console/WebControlListener.java | 12 + NET/worlds/console/WhisperDialog.java | 230 ++ NET/worlds/console/WhisperManager.java | 183 + NET/worlds/console/WhisperPart.java | 41 + NET/worlds/console/WideScrollPane.java | 52 + NET/worlds/console/WiderScrollbar.java | 39 + NET/worlds/console/Window.java | 372 ++ NET/worlds/console/WindowNotFoundException.java | 30 + NET/worlds/console/WorldButton.java | 194 + NET/worlds/console/WorldButtonBullet.java | 264 ++ NET/worlds/console/WorldsMarkPart.java | 860 +++++ NET/worlds/console/YesNoCancelDialog.java | 124 + NET/worlds/core/Archive.java | 327 ++ NET/worlds/core/ArchiveMaker.java | 395 +++ NET/worlds/core/AssertionException.java | 24 + NET/worlds/core/Debug.java | 25 + NET/worlds/core/FastDataInput.java | 77 + NET/worlds/core/Hashtable.java | 155 + NET/worlds/core/IniFile.java | 83 + NET/worlds/core/Recycler.java | 42 + NET/worlds/core/RegKey.java | 117 + NET/worlds/core/RegKeyNotFoundException.java | 26 + NET/worlds/core/ServerTableManager.java | 336 ++ NET/worlds/core/Sort.java | 152 + NET/worlds/core/Std.java | 332 ++ NET/worlds/core/Std_A.java | 11 + NET/worlds/core/Std_B.java | 12 + NET/worlds/core/Std_IA.java | 9 + NET/worlds/core/Std_IB.java | 11 + NET/worlds/core/SystemInfo.java | 161 + NET/worlds/core/TestInstanceOf.java | 60 + NET/worlds/core/Timer.java | 31 + NET/worlds/core/TimerCallback.java | 12 + NET/worlds/network/AnonRoomServer.java | 146 + NET/worlds/network/AnonUserServer.java | 143 + NET/worlds/network/AutoServer.java | 145 + NET/worlds/network/BuddyListNotifyCmd.java | 55 + NET/worlds/network/BuddyListUpdateCmd.java | 50 + NET/worlds/network/Cache.java | 955 +++++ NET/worlds/network/CacheEntry.java | 1270 +++++++ NET/worlds/network/CacheFile.java | 221 ++ NET/worlds/network/ChannelCmd.java | 60 + NET/worlds/network/ConnectionWaiter.java | 12 + NET/worlds/network/DDEMLClass.java | 41 + NET/worlds/network/DNSLookup.java | 244 ++ NET/worlds/network/DirTimeStamp.java | 196 ++ NET/worlds/network/ExceptionCmd.java | 49 + NET/worlds/network/FilthFilter.java | 310 ++ NET/worlds/network/FilthyPhrase.java | 117 + NET/worlds/network/FingerReplyCmd.java | 54 + NET/worlds/network/FingerReqCmd.java | 57 + NET/worlds/network/Galaxy.java | 1246 +++++++ NET/worlds/network/IPhone.java | 190 + NET/worlds/network/InfiniteWaitException.java | 32 + NET/worlds/network/InvalidServerURLException.java | 32 + NET/worlds/network/LoginMode.java | 16 + NET/worlds/network/NetUpdate.java | 1788 ++++++++++ NET/worlds/network/NetworkMulti.java | 130 + NET/worlds/network/NetworkNobody.java | 106 + NET/worlds/network/NetworkObject.java | 26 + NET/worlds/network/NetworkRoom.java | 711 ++++ NET/worlds/network/NewVersionDialog.java | 141 + NET/worlds/network/ObjID.java | 136 + NET/worlds/network/ObjectMgr.java | 94 + NET/worlds/network/OldPropertyList.java | 99 + NET/worlds/network/P17UserServer.java | 27 + NET/worlds/network/PacketTooLargeException.java | 29 + NET/worlds/network/ProgressBar.java | 107 + NET/worlds/network/ProgressDialog.java | 361 ++ NET/worlds/network/PropertyList.java | 108 + NET/worlds/network/PropertySetCmd.java | 102 + NET/worlds/network/PropertyUpdateCmd.java | 81 + NET/worlds/network/RedirectCmd.java | 81 + NET/worlds/network/RedirectIDCmd.java | 73 + NET/worlds/network/RemoteFileConst.java | 14 + NET/worlds/network/RoomMgr.java | 177 + NET/worlds/network/RoomServer.java | 248 ++ NET/worlds/network/SMState.java | 93 + NET/worlds/network/ServerInputStream.java | 332 ++ NET/worlds/network/ServerOutputStream.java | 171 + NET/worlds/network/ServerTracker.java | 328 ++ NET/worlds/network/ServerURL.java | 101 + NET/worlds/network/SubscribeDistCmd.java | 68 + NET/worlds/network/SubscribeRoomCmd.java | 81 + NET/worlds/network/Timer.java | 38 + NET/worlds/network/URL.java | 1275 +++++++ NET/worlds/network/UnsubscribeRoomCmd.java | 67 + NET/worlds/network/UpgradeDialog.java | 462 +++ NET/worlds/network/UserServer.java | 154 + NET/worlds/network/VarErrorException.java | 248 ++ NET/worlds/network/WSConnecting.java | 217 ++ NET/worlds/network/WaitList.java | 69 + NET/worlds/network/WorldServer.java | 1922 ++++++++++ NET/worlds/network/appInitCmd.java | 81 + NET/worlds/network/appearActorCmd.java | 91 + NET/worlds/network/disappearActorCmd.java | 76 + NET/worlds/network/longLocCmd.java | 116 + NET/worlds/network/net2Property.java | 201 ++ NET/worlds/network/netCmds.java | 102 + NET/worlds/network/netConst.java | 101 + NET/worlds/network/netData.java | 132 + NET/worlds/network/netPacket.java | 124 + NET/worlds/network/netPacketReader.java | 357 ++ NET/worlds/network/netProperty.java | 83 + NET/worlds/network/propCmd.java | 133 + NET/worlds/network/propReqCmd.java | 84 + NET/worlds/network/receivedNetPacket.java | 47 + NET/worlds/network/regObjIDCmd.java | 69 + NET/worlds/network/roomChangeCmd.java | 127 + NET/worlds/network/roomIDCmd.java | 76 + NET/worlds/network/roomIDReqCmd.java | 68 + NET/worlds/network/sessionExitCmd.java | 76 + NET/worlds/network/sessionInitCmd.java | 199 ++ NET/worlds/network/shortLocCmd.java | 90 + NET/worlds/network/teleportCmd.java | 147 + NET/worlds/network/textCmd.java | 233 ++ NET/worlds/network/whisperCmd.java | 125 + NET/worlds/scape/ASFSoundPlayer.java | 137 + NET/worlds/scape/ASFThread.java | 225 ++ NET/worlds/scape/Action.java | 163 + NET/worlds/scape/Action_Animation.java | 44 + NET/worlds/scape/Action_Motion.java | 59 + NET/worlds/scape/Action_Toggle.java | 41 + NET/worlds/scape/AddObjectAction.java | 99 + NET/worlds/scape/AdvancingAction.java | 186 + NET/worlds/scape/Animatable.java | 14 + NET/worlds/scape/AnimateAction.java | 262 ++ NET/worlds/scape/AnimatedAction.java | 397 +++ NET/worlds/scape/AnimatedActionCallback.java | 12 + NET/worlds/scape/AnimatedActionHandler.java | 16 + NET/worlds/scape/AnimatedActionHandlerImp.java | 49 + NET/worlds/scape/AnimatedActionManager.java | 401 +++ NET/worlds/scape/AnimatingDoor.java | 414 +++ NET/worlds/scape/Animation.java | 357 ++ NET/worlds/scape/Attribute.java | 740 ++++ NET/worlds/scape/AudibilityFilter.java | 496 +++ NET/worlds/scape/AudibleParams.java | 15 + NET/worlds/scape/BGLoaded.java | 18 + NET/worlds/scape/BackgroundLoader.java | 239 ++ NET/worlds/scape/BackgroundLoaderElement.java | 653 ++++ NET/worlds/scape/BackgroundLoaderQueue.java | 501 +++ NET/worlds/scape/BackgroundLoaderVector.java | 269 ++ NET/worlds/scape/BadFormatException.java | 35 + NET/worlds/scape/Billboard.java | 504 +++ NET/worlds/scape/BizCard.java | 161 + NET/worlds/scape/BooleanFieldEditorDialog.java | 46 + NET/worlds/scape/BooleanPropertyEditor.java | 76 + NET/worlds/scape/BoundBoxTemp.java | 130 + NET/worlds/scape/BoxBumpCalc.java | 128 + NET/worlds/scape/BuildRamp.java | 365 ++ NET/worlds/scape/BuildStairs.java | 302 ++ NET/worlds/scape/BumpAttribute.java | 89 + NET/worlds/scape/BumpCalc.java | 39 + NET/worlds/scape/BumpEventTemp.java | 396 +++ NET/worlds/scape/BumpHandler.java | 12 + NET/worlds/scape/BumpSensor.java | 43 + NET/worlds/scape/CDAudio.java | 597 ++++ NET/worlds/scape/CDControl.java | 112 + NET/worlds/scape/CDDBConnection.java | 465 +++ NET/worlds/scape/CDDBHash.java | 88 + NET/worlds/scape/CDDBHost.java | 397 +++ NET/worlds/scape/CDDBLookup.java | 381 ++ NET/worlds/scape/CDDBStatus.java | 60 + NET/worlds/scape/CDDiskInfo.java | 86 + NET/worlds/scape/CDPlayerAction.java | 336 ++ NET/worlds/scape/CDPositionEditorDialog.java | 55 + NET/worlds/scape/CDPositionPropertyEditor.java | 104 + NET/worlds/scape/CDTrackInfo.java | 85 + NET/worlds/scape/CallbackPropertyOperator.java | 64 + NET/worlds/scape/Camera.java | 616 ++++ NET/worlds/scape/CameraHeightAction.java | 116 + NET/worlds/scape/ChangeAvatarDialog.java | 81 + NET/worlds/scape/ChangeAvatarImageButtons.java | 121 + NET/worlds/scape/CheckboxEditorDialog.java | 83 + NET/worlds/scape/ClassProperty.java | 27 + NET/worlds/scape/ClickEventHandler.java | 20 + NET/worlds/scape/ClickSensor.java | 664 ++++ NET/worlds/scape/ClickWidget.java | 37 + NET/worlds/scape/ClipboardEntry.java | 67 + NET/worlds/scape/ColorAttribute.java | 111 + NET/worlds/scape/ColorEditorDialog.java | 84 + NET/worlds/scape/ColorPropertyEditor.java | 102 + NET/worlds/scape/CopyWidget.java | 36 + NET/worlds/scape/CrashAction.java | 78 + NET/worlds/scape/CutWidget.java | 36 + NET/worlds/scape/DPAction.java | 386 ++ NET/worlds/scape/DPLoadTracker.java | 119 + NET/worlds/scape/DPState.java | 221 ++ NET/worlds/scape/DeepEnumeration.java | 193 + NET/worlds/scape/DialogAction.java | 171 + NET/worlds/scape/DiffRoomSensor.java | 87 + NET/worlds/scape/DirectShow.java | 59 + NET/worlds/scape/DiskShadow.java | 115 + NET/worlds/scape/DispenserAction.java | 158 + NET/worlds/scape/DoorBasedFilter.java | 351 ++ NET/worlds/scape/DoorBasedParams.java | 18 + NET/worlds/scape/Drone.java | 1289 +++++++ NET/worlds/scape/DroneAnimator.java | 175 + NET/worlds/scape/DroneLoader.java | 155 + NET/worlds/scape/DropInfo.java | 724 ++++ NET/worlds/scape/DynamicForwardAttribute.java | 308 ++ NET/worlds/scape/EditMusicDialog.java | 792 +++++ NET/worlds/scape/EditRoomDialog.java | 903 +++++ NET/worlds/scape/EditTile.java | 709 ++++ NET/worlds/scape/EnumFieldEditorDialog.java | 47 + NET/worlds/scape/EnumProperties.java | 50 + NET/worlds/scape/EnumPropertyEditor.java | 104 + NET/worlds/scape/EquipAction.java | 78 + NET/worlds/scape/EquippableItem.java | 182 + NET/worlds/scape/Event.java | 130 + NET/worlds/scape/EventQueue.java | 220 ++ NET/worlds/scape/ExtensionFilter.java | 38 + NET/worlds/scape/Facer.java | 31 + NET/worlds/scape/FieldEditorDialog.java | 69 + NET/worlds/scape/FieldWithListEditorDialog.java | 105 + NET/worlds/scape/FileList.java | 144 + NET/worlds/scape/FileTexture.java | 112 + NET/worlds/scape/FileTextureDecoder.java | 154 + NET/worlds/scape/FloatArrayEditorDialog.java | 70 + NET/worlds/scape/FloatArrayPropertyEditor.java | 88 + NET/worlds/scape/FloatFieldEditorDialog.java | 60 + NET/worlds/scape/FloatPropertyEditor.java | 97 + NET/worlds/scape/FloorPatch.java | 16 + NET/worlds/scape/ForwardAttribute.java | 115 + NET/worlds/scape/FrameEvent.java | 113 + NET/worlds/scape/FrameHandler.java | 12 + NET/worlds/scape/FrameSensor.java | 45 + NET/worlds/scape/GravityAction.java | 241 ++ NET/worlds/scape/HTransWidget.java | 44 + NET/worlds/scape/Handler.java | 12 + NET/worlds/scape/HandsOffDriver.java | 251 ++ NET/worlds/scape/HighJump.java | 97 + NET/worlds/scape/HoloCallback.java | 12 + NET/worlds/scape/HoloDrone.java | 444 +++ NET/worlds/scape/HoloPilot.java | 956 +++++ NET/worlds/scape/Hologram.java | 842 +++++ NET/worlds/scape/HorizontalRect.java | 86 + NET/worlds/scape/Iconic.java | 16 + NET/worlds/scape/ImageConverter.java | 186 + NET/worlds/scape/IncrementalRestorer.java | 13 + NET/worlds/scape/IndentStream.java | 138 + NET/worlds/scape/IntegerFieldEditorDialog.java | 60 + NET/worlds/scape/IntegerPropertyEditor.java | 97 + NET/worlds/scape/InterpolatedDrone.java | 298 ++ NET/worlds/scape/InventoryAction.java | 49 + NET/worlds/scape/InventoryAvatar.java | 32 + NET/worlds/scape/InventoryCallback.java | 12 + NET/worlds/scape/InventoryDialog.java | 434 +++ NET/worlds/scape/InventoryItem.java | 89 + NET/worlds/scape/InventoryList.java | 474 +++ NET/worlds/scape/InventoryManager.java | 435 +++ NET/worlds/scape/ItemNotAvailableDialog.java | 62 + NET/worlds/scape/Key.java | 60 + NET/worlds/scape/KeyCharEvent.java | 44 + NET/worlds/scape/KeyCharHandler.java | 12 + NET/worlds/scape/KeyDownEvent.java | 43 + NET/worlds/scape/KeyDownHandler.java | 12 + NET/worlds/scape/KeyEvent.java | 60 + NET/worlds/scape/KeyHandler.java | 12 + NET/worlds/scape/KeyUpEvent.java | 43 + NET/worlds/scape/KeyUpHandler.java | 12 + NET/worlds/scape/LibEntContentEditorDialog.java | 170 + NET/worlds/scape/LibEntContentPropertyEditor.java | 188 + NET/worlds/scape/LibEventHandler.java | 12 + NET/worlds/scape/LibrariesTile.java | 406 +++ NET/worlds/scape/Library.java | 216 ++ NET/worlds/scape/LibraryDrop.java | 12 + NET/worlds/scape/LibraryDropTarget.java | 9 + NET/worlds/scape/LibraryEntry.java | 151 + NET/worlds/scape/Light.java | 100 + NET/worlds/scape/ListAdderDialog.java | 118 + NET/worlds/scape/ListChooserDialog.java | 83 + NET/worlds/scape/ListEditorDialog.java | 53 + NET/worlds/scape/LoadedAttribute.java | 12 + NET/worlds/scape/LoadedURLSelf.java | 14 + NET/worlds/scape/MCISoundCommand.java | 212 ++ NET/worlds/scape/MCISoundPlayer.java | 211 ++ NET/worlds/scape/MCIThread.java | 259 ++ NET/worlds/scape/Manifest.java | 126 + NET/worlds/scape/Material.java | 1053 ++++++ NET/worlds/scape/MaterialTexture.java | 1238 +++++++ NET/worlds/scape/MaybeNullDialog.java | 46 + NET/worlds/scape/MaybeNullPropertyEditor.java | 68 + NET/worlds/scape/MetaEnumeration.java | 74 + NET/worlds/scape/Mirror.java | 91 + NET/worlds/scape/MomentumBehavior.java | 14 + NET/worlds/scape/MontyDoor.java | 255 ++ NET/worlds/scape/MoreInfoDialog.java | 75 + NET/worlds/scape/Motion.java | 484 +++ NET/worlds/scape/MouseButtonEvent.java | 46 + NET/worlds/scape/MouseButtonHandler.java | 12 + NET/worlds/scape/MouseDeltaEvent.java | 54 + NET/worlds/scape/MouseDeltaHandler.java | 12 + NET/worlds/scape/MouseDownEvent.java | 55 + NET/worlds/scape/MouseDownHandler.java | 12 + NET/worlds/scape/MouseDragEvent.java | 43 + NET/worlds/scape/MouseDragHandler.java | 12 + NET/worlds/scape/MouseEnterEvent.java | 41 + NET/worlds/scape/MouseEnterHandler.java | 12 + NET/worlds/scape/MouseEvent.java | 46 + NET/worlds/scape/MouseExitEvent.java | 41 + NET/worlds/scape/MouseExitHandler.java | 12 + NET/worlds/scape/MouseHandler.java | 12 + NET/worlds/scape/MouseMoveEvent.java | 43 + NET/worlds/scape/MouseMoveHandler.java | 12 + NET/worlds/scape/MousePositionEvent.java | 44 + NET/worlds/scape/MousePositionHandler.java | 12 + NET/worlds/scape/MouseUpEvent.java | 49 + NET/worlds/scape/MouseUpHandler.java | 12 + NET/worlds/scape/MoveAction.java | 622 ++++ NET/worlds/scape/MoveCameraAction.java | 127 + NET/worlds/scape/MultiManifestAction.java | 144 + NET/worlds/scape/MultiMotion.java | 698 ++++ NET/worlds/scape/MusicManager.java | 560 +++ NET/worlds/scape/MusicManagerDialog.java | 646 ++++ NET/worlds/scape/MusicRoom.java | 984 ++++++ NET/worlds/scape/MusicTrack.java | 954 +++++ NET/worlds/scape/MutedDrone.java | 82 + NET/worlds/scape/MyButton.java | 50 + NET/worlds/scape/NamedPortal.java | 83 + NET/worlds/scape/NametagDrone.java | 101 + NET/worlds/scape/NoSuchPropertyException.java | 13 + NET/worlds/scape/NonPersister.java | 9 + NET/worlds/scape/NotifyScriptAction.java | 79 + NET/worlds/scape/NumberAttribute.java | 120 + NET/worlds/scape/ObjEditorDialog.java | 45 + NET/worlds/scape/ObjPropertyEditor.java | 98 + NET/worlds/scape/ObjectAdderDialog.java | 58 + NET/worlds/scape/ObjectPropertyAdder.java | 124 + NET/worlds/scape/ObjectSelectorDialog.java | 152 + NET/worlds/scape/OpenURLAction.java | 174 + NET/worlds/scape/ParallelAction.java | 226 ++ NET/worlds/scape/PassthroughBumpCalc.java | 67 + NET/worlds/scape/PasteWidget.java | 36 + NET/worlds/scape/PathMoveAction.java | 50 + NET/worlds/scape/PendingCacheDrone.java | 132 + NET/worlds/scape/PendingDrone.java | 562 +++ NET/worlds/scape/PeriodicTimeSensor.java | 131 + NET/worlds/scape/Persister.java | 20 + NET/worlds/scape/PickEvent.java | 41 + NET/worlds/scape/PickHandler.java | 12 + NET/worlds/scape/PickUpAction.java | 72 + NET/worlds/scape/Pilot.java | 1497 ++++++++ NET/worlds/scape/PitchDriver.java | 293 ++ NET/worlds/scape/PitchWidget.java | 38 + NET/worlds/scape/PlaneBumpCalc.java | 146 + NET/worlds/scape/PlaybackRecordingAction.java | 80 + NET/worlds/scape/Point2.java | 195 ++ NET/worlds/scape/Point2EditorDialog.java | 85 + NET/worlds/scape/Point2PropertyEditor.java | 103 + NET/worlds/scape/Point3.java | 77 + NET/worlds/scape/Point3EditorDialog.java | 95 + NET/worlds/scape/Point3PropertyEditor.java | 113 + NET/worlds/scape/Point3Temp.java | 298 ++ NET/worlds/scape/Polygon.java | 143 + NET/worlds/scape/Portal.java | 1334 +++++++ NET/worlds/scape/PosableAction.java | 102 + NET/worlds/scape/PosableDrone.java | 327 ++ NET/worlds/scape/PosableDroneLoader.java | 261 ++ NET/worlds/scape/PosableShape.java | 2679 ++++++++++++++ NET/worlds/scape/Postrenderable.java | 12 + NET/worlds/scape/PostspinBehavior.java | 141 + NET/worlds/scape/Prerenderable.java | 12 + NET/worlds/scape/PrintAction.java | 116 + NET/worlds/scape/ProgressiveAdder.java | 76 + NET/worlds/scape/PropAdder.java | 120 + NET/worlds/scape/PropEditor.java | 51 + NET/worlds/scape/PropList.java | 150 + NET/worlds/scape/PropPropEditor.java | 110 + NET/worlds/scape/PropPropEditorDialog.java | 79 + NET/worlds/scape/PropTreeNode.java | 175 + NET/worlds/scape/Properties.java | 22 + NET/worlds/scape/Property.java | 286 ++ NET/worlds/scape/ProximitySensor.java | 212 ++ NET/worlds/scape/RPAction.java | 39 + NET/worlds/scape/Rect.java | 703 ++++ NET/worlds/scape/RectPatch.java | 534 +++ NET/worlds/scape/Recycler.java | 154 + NET/worlds/scape/RelativeMoveAction.java | 301 ++ NET/worlds/scape/RemotePortal.java | 132 + NET/worlds/scape/RemoveObjectAction.java | 91 + NET/worlds/scape/RenderWare.java | 14 + NET/worlds/scape/Restorer.java | 678 ++++ NET/worlds/scape/RollBehavior.java | 123 + NET/worlds/scape/RollWidget.java | 41 + NET/worlds/scape/RollingAttribute.java | 301 ++ NET/worlds/scape/Room.java | 1542 ++++++++ NET/worlds/scape/RoomEnvironment.java | 202 ++ NET/worlds/scape/RoomSubscribeInfo.java | 32 + NET/worlds/scape/RunningActionCallback.java | 12 + NET/worlds/scape/RunningActionHandler.java | 238 ++ NET/worlds/scape/SameRoomSensor.java | 106 + NET/worlds/scape/SaveWidget.java | 52 + NET/worlds/scape/Saver.java | 376 ++ NET/worlds/scape/ScaleWidget.java | 45 + NET/worlds/scape/ScapePicMovie.java | 263 ++ NET/worlds/scape/ScapePicTexture.java | 163 + NET/worlds/scape/ScapePicTextureDecoder.java | 196 ++ NET/worlds/scape/ScrollingImagePanel.java | 457 +++ NET/worlds/scape/ScrollingListElement.java | 473 +++ NET/worlds/scape/SelectAvatarAction.java | 223 ++ NET/worlds/scape/SendURLAction.java | 637 ++++ NET/worlds/scape/Sensor.java | 208 ++ NET/worlds/scape/SensorFrameHandler.java | 228 ++ NET/worlds/scape/SeqFile.java | 44 + NET/worlds/scape/SequenceAction.java | 210 ++ NET/worlds/scape/SequenceActionState.java | 314 ++ NET/worlds/scape/SetBooleanAction.java | 75 + NET/worlds/scape/SetColorAction.java | 131 + NET/worlds/scape/SetFloatAction.java | 100 + NET/worlds/scape/SetIntegerAction.java | 100 + NET/worlds/scape/SetPoint2Action.java | 134 + NET/worlds/scape/SetPoint3Action.java | 143 + NET/worlds/scape/SetPropertyAction.java | 385 ++ NET/worlds/scape/SetStringAction.java | 74 + NET/worlds/scape/SetURLAction.java | 91 + NET/worlds/scape/SetVisibleBumpableAction.java | 109 + NET/worlds/scape/SetZoomMode.java | 94 + NET/worlds/scape/Shadow.java | 12 + NET/worlds/scape/ShallowEnumeration.java | 72 + NET/worlds/scape/Shape.java | 1508 ++++++++ NET/worlds/scape/ShapeLoader.java | 182 + NET/worlds/scape/ShapeLoaderListener.java | 12 + NET/worlds/scape/ShapeTextureLoader.java | 233 ++ NET/worlds/scape/Sharer.java | 1089 ++++++ NET/worlds/scape/SlidePropertyAction.java | 95 + NET/worlds/scape/SmoothDriver.java | 684 ++++ NET/worlds/scape/Sound.java | 940 +++++ NET/worlds/scape/SoundCallback.java | 962 +++++ NET/worlds/scape/SoundPlayer.java | 65 + NET/worlds/scape/SoundResource.java | 167 + NET/worlds/scape/SoundState.java | 411 +++ NET/worlds/scape/SpinBehavior.java | 152 + NET/worlds/scape/StandardTexture.java | 79 + NET/worlds/scape/StandardTextureDecoder.java | 175 + NET/worlds/scape/StartupSensor.java | 77 + NET/worlds/scape/State.java | 12 + NET/worlds/scape/StateContext.java | 12 + NET/worlds/scape/StdoutAction.java | 143 + NET/worlds/scape/StopRecordingAction.java | 52 + NET/worlds/scape/StringAttribute.java | 111 + NET/worlds/scape/StringFieldEditorDialog.java | 53 + NET/worlds/scape/StringPropertyEditor.java | 71 + NET/worlds/scape/StringTexture.java | 119 + NET/worlds/scape/SubclumpShape.java | 81 + NET/worlds/scape/SuperRoot.java | 742 ++++ NET/worlds/scape/Surface.java | 290 ++ NET/worlds/scape/SwitchableBehavior.java | 90 + NET/worlds/scape/TCompressor.java | 647 ++++ NET/worlds/scape/TabbedDisplayPanel.java | 429 +++ NET/worlds/scape/TabbedPanel.java | 329 ++ NET/worlds/scape/TalkAction.java | 109 + NET/worlds/scape/Teleport.java | 149 + NET/worlds/scape/TeleportAction.java | 761 ++++ NET/worlds/scape/TeleportDialog.java | 67 + NET/worlds/scape/TeleportStatus.java | 12 + NET/worlds/scape/Texture.java | 162 + NET/worlds/scape/TextureDecoder.java | 133 + NET/worlds/scape/TextureSurface.java | 104 + NET/worlds/scape/TextureSurfaceRenderer.java | 12 + NET/worlds/scape/Toggle.java | 209 ++ NET/worlds/scape/ToggleZoomMode.java | 48 + NET/worlds/scape/TooNewException.java | 37 + NET/worlds/scape/ToolBar.java | 265 ++ NET/worlds/scape/ToolTipManager.java | 143 + NET/worlds/scape/TradeAction.java | 172 + NET/worlds/scape/TrajectoryBehavior.java | 446 +++ NET/worlds/scape/TransAttribute.java | 305 ++ NET/worlds/scape/Transform.java | 602 ++++ NET/worlds/scape/TransformEditorDialog.java | 367 ++ NET/worlds/scape/TransformPropertyEditor.java | 382 ++ NET/worlds/scape/Trigger.java | 323 ++ NET/worlds/scape/TriggeredSwitchableBehavior.java | 25 + NET/worlds/scape/TwoWayPortal.java | 99 + NET/worlds/scape/URLEditorDialog.java | 89 + NET/worlds/scape/URLPropertyEditor.java | 177 + NET/worlds/scape/URLSelf.java | 21 + NET/worlds/scape/URLSelfLoader.java | 300 ++ NET/worlds/scape/UndoStack.java | 66 + NET/worlds/scape/UndoWidget.java | 35 + NET/worlds/scape/UndoabCopy.java | 31 + NET/worlds/scape/UndoablAdd.java | 40 + NET/worlds/scape/UndoablCut.java | 42 + NET/worlds/scape/UndoablDelete.java | 35 + NET/worlds/scape/UndoablPaste.java | 34 + NET/worlds/scape/UndoablSet.java | 33 + NET/worlds/scape/UndoablTransform.java | 30 + NET/worlds/scape/Undoable.java | 12 + NET/worlds/scape/UniqueHasher.java | 41 + NET/worlds/scape/UnitEnumeration.java | 47 + NET/worlds/scape/UniverseHandler.java | 76 + NET/worlds/scape/UserEvent.java | 48 + NET/worlds/scape/UserHandler.java | 12 + NET/worlds/scape/VTransWidget.java | 42 + NET/worlds/scape/ValueEvent.java | 46 + NET/worlds/scape/ValueHandler.java | 12 + NET/worlds/scape/VectorProperty.java | 96 + NET/worlds/scape/VehicleDriver.java | 1086 ++++++ NET/worlds/scape/VehicleShape.java | 660 ++++ NET/worlds/scape/VelocityBehavior.java | 399 +++ NET/worlds/scape/VideoControlAction.java | 158 + NET/worlds/scape/VideoManager.java | 52 + NET/worlds/scape/VideoSurface.java | 75 + NET/worlds/scape/VideoTexture.java | 294 ++ NET/worlds/scape/VideoWall.java | 263 ++ NET/worlds/scape/VisiAttribute.java | 91 + NET/worlds/scape/WMPSoundPlayer.java | 92 + NET/worlds/scape/WObject.java | 3633 +++++++++++++++++++ NET/worlds/scape/WObjectHighlighter.java | 323 ++ NET/worlds/scape/WaitAction.java | 145 + NET/worlds/scape/WaitActionState.java | 198 ++ NET/worlds/scape/WavSoundPlayer.java | 402 +++ NET/worlds/scape/WavSoundTerminator.java | 410 +++ NET/worlds/scape/WearAction.java | 450 +++ NET/worlds/scape/WearWall.java | 358 ++ NET/worlds/scape/WebPageWall.java | 498 +++ NET/worlds/scape/WebWallControlAction.java | 180 + NET/worlds/scape/Whiteboard.java | 146 + NET/worlds/scape/WidgetButton.java | 163 + NET/worlds/scape/WobClassLoader.java | 144 + NET/worlds/scape/WobLoaded.java | 12 + NET/worlds/scape/WobLoader.java | 145 + NET/worlds/scape/World.java | 1650 +++++++++ NET/worlds/scape/WorldRedirector.java | 120 + NET/worlds/scape/WorldScript.java | 97 + NET/worlds/scape/WorldScriptLoader.java | 276 ++ NET/worlds/scape/WorldScriptManager.java | 192 + NET/worlds/scape/WorldScriptToolkit.java | 204 ++ NET/worlds/scape/WorldScriptToolkitImp.java | 493 +++ NET/worlds/scape/WorldValidator.java | 119 + NET/worlds/scape/WrRamp.java | 246 ++ NET/worlds/scape/WrRectPatch.java | 40 + NET/worlds/scape/WrStaircase.java | 211 ++ NET/worlds/scape/WrVisiRectPatch.java | 68 + NET/worlds/scape/YawWidget.java | 41 + NET/worlds/scape/sendURL.java | 203 ++ 718 files changed, 195429 insertions(+) create mode 100644 NET/worlds/console/AboutDialog.java create mode 100644 NET/worlds/console/ActionDialog.java create mode 100644 NET/worlds/console/ActionsPart.java create mode 100644 NET/worlds/console/ActiveX.java create mode 100644 NET/worlds/console/AdBanner.java create mode 100644 NET/worlds/console/AdPart.java create mode 100644 NET/worlds/console/AddHandler.java create mode 100644 NET/worlds/console/AddNameDialog.java create mode 100644 NET/worlds/console/AnimationButton.java create mode 100644 NET/worlds/console/ArmyOfZombies.java create mode 100644 NET/worlds/console/AttributeList.java create mode 100644 NET/worlds/console/AttributeSortPanel.java create mode 100644 NET/worlds/console/AvMenu.java create mode 100644 NET/worlds/console/AvMenuItem.java create mode 100644 NET/worlds/console/AvMenuItemSortable.java create mode 100644 NET/worlds/console/AvatarDialog.java create mode 100644 NET/worlds/console/AvatarDialogCallback.java create mode 100644 NET/worlds/console/AvatarDialogTest.java create mode 100644 NET/worlds/console/BBAnimateDroneCommand.java create mode 100644 NET/worlds/console/BBAppearDroneCommand.java create mode 100644 NET/worlds/console/BBChatCommand.java create mode 100644 NET/worlds/console/BBDisappearDroneCommand.java create mode 100644 NET/worlds/console/BBDroneBitmapCommand.java create mode 100644 NET/worlds/console/BBDroneDeltaPosCommand.java create mode 100644 NET/worlds/console/BBMoveDroneCommand.java create mode 100644 NET/worlds/console/BBTeleportCommand.java create mode 100644 NET/worlds/console/BBWObjClickedCommand.java create mode 100644 NET/worlds/console/BackButton.java create mode 100644 NET/worlds/console/BlackBox.java create mode 100644 NET/worlds/console/BlackBoxCallback.java create mode 100644 NET/worlds/console/BlackBoxCommand.java create mode 100644 NET/worlds/console/BlockingDialog.java create mode 100644 NET/worlds/console/BookmarkAddDialog.java create mode 100644 NET/worlds/console/BookmarkDeleteDialog.java create mode 100644 NET/worlds/console/BookmarkEditDialog.java create mode 100644 NET/worlds/console/BookmarkListDialog.java create mode 100644 NET/worlds/console/BookmarkMenuItem.java create mode 100644 NET/worlds/console/BootDialog.java create mode 100644 NET/worlds/console/CameraConveyor.java create mode 100644 NET/worlds/console/ChannelDialog.java create mode 100644 NET/worlds/console/ChatArea.java create mode 100644 NET/worlds/console/ChatDialog.java create mode 100644 NET/worlds/console/ChatPart.java create mode 100644 NET/worlds/console/ClassicSharedTextArea.java create mode 100644 NET/worlds/console/ColorFiller.java create mode 100644 NET/worlds/console/ConfirmDialog.java create mode 100644 NET/worlds/console/ConnectionRecord.java create mode 100644 NET/worlds/console/Console.java create mode 100644 NET/worlds/console/ConsoleLoader.java create mode 100644 NET/worlds/console/Conveyor.java create mode 100644 NET/worlds/console/Cursor.java create mode 100644 NET/worlds/console/DefaultConsole.java create mode 100644 NET/worlds/console/DialogDisabled.java create mode 100644 NET/worlds/console/DialogReceiver.java create mode 100644 NET/worlds/console/DuplexPart.java create mode 100644 NET/worlds/console/EMailPart.java create mode 100644 NET/worlds/console/EditNamesDialog.java create mode 100644 NET/worlds/console/EmoteHandler.java create mode 100644 NET/worlds/console/Escalator.java create mode 100644 NET/worlds/console/ExpireDialog.java create mode 100644 NET/worlds/console/ExposedPanel.java create mode 100644 NET/worlds/console/FileSaver.java create mode 100644 NET/worlds/console/FileSysDialog.java create mode 100644 NET/worlds/console/Filler.java create mode 100644 NET/worlds/console/FixedSizePanel.java create mode 100644 NET/worlds/console/FixedWidthPanel.java create mode 100644 NET/worlds/console/FocusPreservingTextField.java create mode 100644 NET/worlds/console/ForwardButton.java create mode 100644 NET/worlds/console/FourTilePanel.java create mode 100644 NET/worlds/console/FourTileSwapper.java create mode 100644 NET/worlds/console/FramePart.java create mode 100644 NET/worlds/console/FriendsListPart.java create mode 100644 NET/worlds/console/Gamma.java create mode 100644 NET/worlds/console/GammaFrame.java create mode 100644 NET/worlds/console/GammaFrameState.java create mode 100644 NET/worlds/console/GammaPhoneMonitor.java create mode 100644 NET/worlds/console/GammaTextArea.java create mode 100644 NET/worlds/console/GammaTextScrollbar.java create mode 100644 NET/worlds/console/GiftDialog.java create mode 100644 NET/worlds/console/IClassFactory.java create mode 100644 NET/worlds/console/IDispatch.java create mode 100644 NET/worlds/console/IEWebControlImp.java create mode 100644 NET/worlds/console/INetscapeRegistry.java create mode 100644 NET/worlds/console/IUnknown.java create mode 100644 NET/worlds/console/IWebBrowserApp.java create mode 100644 NET/worlds/console/IllegalPilotException.java create mode 100644 NET/worlds/console/ImageButtons.java create mode 100644 NET/worlds/console/ImageButtonsCallback.java create mode 100644 NET/worlds/console/ImageCanvas.java create mode 100644 NET/worlds/console/InsetPanel.java create mode 100644 NET/worlds/console/InternetConnectionDialog.java create mode 100644 NET/worlds/console/InternetExplorer.java create mode 100644 NET/worlds/console/InventoryPart.java create mode 100644 NET/worlds/console/LanguageManager.java create mode 100644 NET/worlds/console/LocationDialog.java create mode 100644 NET/worlds/console/LogFile.java create mode 100644 NET/worlds/console/LogFileMailMessage.java create mode 100644 NET/worlds/console/LogMailDialog.java create mode 100644 NET/worlds/console/LoginWizard.java create mode 100644 NET/worlds/console/MailDialog.java create mode 100644 NET/worlds/console/MailDialogReceiver.java create mode 100644 NET/worlds/console/MailMessage.java create mode 100644 NET/worlds/console/Main.java create mode 100644 NET/worlds/console/MainCallback.java create mode 100644 NET/worlds/console/MainTerminalCallback.java create mode 100644 NET/worlds/console/MapFrame.java create mode 100644 NET/worlds/console/MapPart.java create mode 100644 NET/worlds/console/MapTile.java create mode 100644 NET/worlds/console/MoreFriendsDialog.java create mode 100644 NET/worlds/console/MoveablePolygon.java create mode 100644 NET/worlds/console/MultiLineLabel.java create mode 100644 NET/worlds/console/MuteListPart.java create mode 100644 NET/worlds/console/NSProtocolHandler.java create mode 100644 NET/worlds/console/NameListOwner.java create mode 100644 NET/worlds/console/Netscape.java create mode 100644 NET/worlds/console/NewSharedTextArea.java create mode 100644 NET/worlds/console/NoWebControlException.java create mode 100644 NET/worlds/console/OLEInvalidObjectException.java create mode 100644 NET/worlds/console/OkCancelDialog.java create mode 100644 NET/worlds/console/Overlay.java create mode 100644 NET/worlds/console/PersonalInfoDialog.java create mode 100644 NET/worlds/console/PersonalInfoDownload.java create mode 100644 NET/worlds/console/PolledDialog.java create mode 100644 NET/worlds/console/PolledDialogSaver.java create mode 100644 NET/worlds/console/ProgressBar.java create mode 100644 NET/worlds/console/ProxyServerDialog.java create mode 100644 NET/worlds/console/PublicObservable.java create mode 100644 NET/worlds/console/QuantizedCanvas.java create mode 100644 NET/worlds/console/QuantizedStackedLayout.java create mode 100644 NET/worlds/console/QuitDialog.java create mode 100644 NET/worlds/console/RealG2.java create mode 100644 NET/worlds/console/RemoveHandler.java create mode 100644 NET/worlds/console/RenderCanvas.java create mode 100644 NET/worlds/console/RenderCanvasOverlay.java create mode 100644 NET/worlds/console/RightMenu.java create mode 100644 NET/worlds/console/SavedAvAddDialog.java create mode 100644 NET/worlds/console/SavedAvDeleteDialog.java create mode 100644 NET/worlds/console/SavedAvMenuItem.java create mode 100644 NET/worlds/console/SavedAvPart.java create mode 100644 NET/worlds/console/ScapePicCanvas.java create mode 100644 NET/worlds/console/ScapePicImage.java create mode 100644 NET/worlds/console/ScapePicPanel.java create mode 100644 NET/worlds/console/SetNumVisibleAvs.java create mode 100644 NET/worlds/console/Shaper.java create mode 100644 NET/worlds/console/SharedTextArea.java create mode 100644 NET/worlds/console/SnapTool.java create mode 100644 NET/worlds/console/SnapToolPanel.java create mode 100644 NET/worlds/console/SplashCanvas.java create mode 100644 NET/worlds/console/SplashScreen.java create mode 100644 NET/worlds/console/StackedLayout.java create mode 100644 NET/worlds/console/Stair.java create mode 100644 NET/worlds/console/Staircase.java create mode 100644 NET/worlds/console/Startup.java create mode 100644 NET/worlds/console/StatMan.java create mode 100644 NET/worlds/console/StatMemNode.java create mode 100644 NET/worlds/console/StatNetMUNode.java create mode 100644 NET/worlds/console/StatNetNode.java create mode 100644 NET/worlds/console/StatNetRefNode.java create mode 100644 NET/worlds/console/StatRateNode.java create mode 100644 NET/worlds/console/StatTreeNode.java create mode 100644 NET/worlds/console/StatisticsRoot.java create mode 100644 NET/worlds/console/StatisticsWindow.java create mode 100644 NET/worlds/console/StyledTextCanvas.java create mode 100644 NET/worlds/console/TextCanvas.java create mode 100644 NET/worlds/console/TextImageButtons.java create mode 100644 NET/worlds/console/TradeDialog.java create mode 100644 NET/worlds/console/Tree.java create mode 100644 NET/worlds/console/TreeCallback.java create mode 100644 NET/worlds/console/TreeNode.java create mode 100644 NET/worlds/console/TreePanel.java create mode 100644 NET/worlds/console/URLLine.java create mode 100644 NET/worlds/console/UniverseImage.java create mode 100644 NET/worlds/console/UniversePanel.java create mode 100644 NET/worlds/console/UnpaddedLabel.java create mode 100644 NET/worlds/console/UpdateableDialog.java create mode 100644 NET/worlds/console/UserInventoryCallback.java create mode 100644 NET/worlds/console/VCTimerThread.java create mode 100644 NET/worlds/console/VoiceChat.java create mode 100644 NET/worlds/console/WebBrowser.java create mode 100644 NET/worlds/console/WebControl.java create mode 100644 NET/worlds/console/WebControlFactory.java create mode 100644 NET/worlds/console/WebControlImp.java create mode 100644 NET/worlds/console/WebControlListener.java create mode 100644 NET/worlds/console/WhisperDialog.java create mode 100644 NET/worlds/console/WhisperManager.java create mode 100644 NET/worlds/console/WhisperPart.java create mode 100644 NET/worlds/console/WideScrollPane.java create mode 100644 NET/worlds/console/WiderScrollbar.java create mode 100644 NET/worlds/console/Window.java create mode 100644 NET/worlds/console/WindowNotFoundException.java create mode 100644 NET/worlds/console/WorldButton.java create mode 100644 NET/worlds/console/WorldButtonBullet.java create mode 100644 NET/worlds/console/WorldsMarkPart.java create mode 100644 NET/worlds/console/YesNoCancelDialog.java create mode 100644 NET/worlds/core/Archive.java create mode 100644 NET/worlds/core/ArchiveMaker.java create mode 100644 NET/worlds/core/AssertionException.java create mode 100644 NET/worlds/core/Debug.java create mode 100644 NET/worlds/core/FastDataInput.java create mode 100644 NET/worlds/core/Hashtable.java create mode 100644 NET/worlds/core/IniFile.java create mode 100644 NET/worlds/core/Recycler.java create mode 100644 NET/worlds/core/RegKey.java create mode 100644 NET/worlds/core/RegKeyNotFoundException.java create mode 100644 NET/worlds/core/ServerTableManager.java create mode 100644 NET/worlds/core/Sort.java create mode 100644 NET/worlds/core/Std.java create mode 100644 NET/worlds/core/Std_A.java create mode 100644 NET/worlds/core/Std_B.java create mode 100644 NET/worlds/core/Std_IA.java create mode 100644 NET/worlds/core/Std_IB.java create mode 100644 NET/worlds/core/SystemInfo.java create mode 100644 NET/worlds/core/TestInstanceOf.java create mode 100644 NET/worlds/core/Timer.java create mode 100644 NET/worlds/core/TimerCallback.java create mode 100644 NET/worlds/network/AnonRoomServer.java create mode 100644 NET/worlds/network/AnonUserServer.java create mode 100644 NET/worlds/network/AutoServer.java create mode 100644 NET/worlds/network/BuddyListNotifyCmd.java create mode 100644 NET/worlds/network/BuddyListUpdateCmd.java create mode 100644 NET/worlds/network/Cache.java create mode 100644 NET/worlds/network/CacheEntry.java create mode 100644 NET/worlds/network/CacheFile.java create mode 100644 NET/worlds/network/ChannelCmd.java create mode 100644 NET/worlds/network/ConnectionWaiter.java create mode 100644 NET/worlds/network/DDEMLClass.java create mode 100644 NET/worlds/network/DNSLookup.java create mode 100644 NET/worlds/network/DirTimeStamp.java create mode 100644 NET/worlds/network/ExceptionCmd.java create mode 100644 NET/worlds/network/FilthFilter.java create mode 100644 NET/worlds/network/FilthyPhrase.java create mode 100644 NET/worlds/network/FingerReplyCmd.java create mode 100644 NET/worlds/network/FingerReqCmd.java create mode 100644 NET/worlds/network/Galaxy.java create mode 100644 NET/worlds/network/IPhone.java create mode 100644 NET/worlds/network/InfiniteWaitException.java create mode 100644 NET/worlds/network/InvalidServerURLException.java create mode 100644 NET/worlds/network/LoginMode.java create mode 100644 NET/worlds/network/NetUpdate.java create mode 100644 NET/worlds/network/NetworkMulti.java create mode 100644 NET/worlds/network/NetworkNobody.java create mode 100644 NET/worlds/network/NetworkObject.java create mode 100644 NET/worlds/network/NetworkRoom.java create mode 100644 NET/worlds/network/NewVersionDialog.java create mode 100644 NET/worlds/network/ObjID.java create mode 100644 NET/worlds/network/ObjectMgr.java create mode 100644 NET/worlds/network/OldPropertyList.java create mode 100644 NET/worlds/network/P17UserServer.java create mode 100644 NET/worlds/network/PacketTooLargeException.java create mode 100644 NET/worlds/network/ProgressBar.java create mode 100644 NET/worlds/network/ProgressDialog.java create mode 100644 NET/worlds/network/PropertyList.java create mode 100644 NET/worlds/network/PropertySetCmd.java create mode 100644 NET/worlds/network/PropertyUpdateCmd.java create mode 100644 NET/worlds/network/RedirectCmd.java create mode 100644 NET/worlds/network/RedirectIDCmd.java create mode 100644 NET/worlds/network/RemoteFileConst.java create mode 100644 NET/worlds/network/RoomMgr.java create mode 100644 NET/worlds/network/RoomServer.java create mode 100644 NET/worlds/network/SMState.java create mode 100644 NET/worlds/network/ServerInputStream.java create mode 100644 NET/worlds/network/ServerOutputStream.java create mode 100644 NET/worlds/network/ServerTracker.java create mode 100644 NET/worlds/network/ServerURL.java create mode 100644 NET/worlds/network/SubscribeDistCmd.java create mode 100644 NET/worlds/network/SubscribeRoomCmd.java create mode 100644 NET/worlds/network/Timer.java create mode 100644 NET/worlds/network/URL.java create mode 100644 NET/worlds/network/UnsubscribeRoomCmd.java create mode 100644 NET/worlds/network/UpgradeDialog.java create mode 100644 NET/worlds/network/UserServer.java create mode 100644 NET/worlds/network/VarErrorException.java create mode 100644 NET/worlds/network/WSConnecting.java create mode 100644 NET/worlds/network/WaitList.java create mode 100644 NET/worlds/network/WorldServer.java create mode 100644 NET/worlds/network/appInitCmd.java create mode 100644 NET/worlds/network/appearActorCmd.java create mode 100644 NET/worlds/network/disappearActorCmd.java create mode 100644 NET/worlds/network/longLocCmd.java create mode 100644 NET/worlds/network/net2Property.java create mode 100644 NET/worlds/network/netCmds.java create mode 100644 NET/worlds/network/netConst.java create mode 100644 NET/worlds/network/netData.java create mode 100644 NET/worlds/network/netPacket.java create mode 100644 NET/worlds/network/netPacketReader.java create mode 100644 NET/worlds/network/netProperty.java create mode 100644 NET/worlds/network/propCmd.java create mode 100644 NET/worlds/network/propReqCmd.java create mode 100644 NET/worlds/network/receivedNetPacket.java create mode 100644 NET/worlds/network/regObjIDCmd.java create mode 100644 NET/worlds/network/roomChangeCmd.java create mode 100644 NET/worlds/network/roomIDCmd.java create mode 100644 NET/worlds/network/roomIDReqCmd.java create mode 100644 NET/worlds/network/sessionExitCmd.java create mode 100644 NET/worlds/network/sessionInitCmd.java create mode 100644 NET/worlds/network/shortLocCmd.java create mode 100644 NET/worlds/network/teleportCmd.java create mode 100644 NET/worlds/network/textCmd.java create mode 100644 NET/worlds/network/whisperCmd.java create mode 100644 NET/worlds/scape/ASFSoundPlayer.java create mode 100644 NET/worlds/scape/ASFThread.java create mode 100644 NET/worlds/scape/Action.java create mode 100644 NET/worlds/scape/Action_Animation.java create mode 100644 NET/worlds/scape/Action_Motion.java create mode 100644 NET/worlds/scape/Action_Toggle.java create mode 100644 NET/worlds/scape/AddObjectAction.java create mode 100644 NET/worlds/scape/AdvancingAction.java create mode 100644 NET/worlds/scape/Animatable.java create mode 100644 NET/worlds/scape/AnimateAction.java create mode 100644 NET/worlds/scape/AnimatedAction.java create mode 100644 NET/worlds/scape/AnimatedActionCallback.java create mode 100644 NET/worlds/scape/AnimatedActionHandler.java create mode 100644 NET/worlds/scape/AnimatedActionHandlerImp.java create mode 100644 NET/worlds/scape/AnimatedActionManager.java create mode 100644 NET/worlds/scape/AnimatingDoor.java create mode 100644 NET/worlds/scape/Animation.java create mode 100644 NET/worlds/scape/Attribute.java create mode 100644 NET/worlds/scape/AudibilityFilter.java create mode 100644 NET/worlds/scape/AudibleParams.java create mode 100644 NET/worlds/scape/BGLoaded.java create mode 100644 NET/worlds/scape/BackgroundLoader.java create mode 100644 NET/worlds/scape/BackgroundLoaderElement.java create mode 100644 NET/worlds/scape/BackgroundLoaderQueue.java create mode 100644 NET/worlds/scape/BackgroundLoaderVector.java create mode 100644 NET/worlds/scape/BadFormatException.java create mode 100644 NET/worlds/scape/Billboard.java create mode 100644 NET/worlds/scape/BizCard.java create mode 100644 NET/worlds/scape/BooleanFieldEditorDialog.java create mode 100644 NET/worlds/scape/BooleanPropertyEditor.java create mode 100644 NET/worlds/scape/BoundBoxTemp.java create mode 100644 NET/worlds/scape/BoxBumpCalc.java create mode 100644 NET/worlds/scape/BuildRamp.java create mode 100644 NET/worlds/scape/BuildStairs.java create mode 100644 NET/worlds/scape/BumpAttribute.java create mode 100644 NET/worlds/scape/BumpCalc.java create mode 100644 NET/worlds/scape/BumpEventTemp.java create mode 100644 NET/worlds/scape/BumpHandler.java create mode 100644 NET/worlds/scape/BumpSensor.java create mode 100644 NET/worlds/scape/CDAudio.java create mode 100644 NET/worlds/scape/CDControl.java create mode 100644 NET/worlds/scape/CDDBConnection.java create mode 100644 NET/worlds/scape/CDDBHash.java create mode 100644 NET/worlds/scape/CDDBHost.java create mode 100644 NET/worlds/scape/CDDBLookup.java create mode 100644 NET/worlds/scape/CDDBStatus.java create mode 100644 NET/worlds/scape/CDDiskInfo.java create mode 100644 NET/worlds/scape/CDPlayerAction.java create mode 100644 NET/worlds/scape/CDPositionEditorDialog.java create mode 100644 NET/worlds/scape/CDPositionPropertyEditor.java create mode 100644 NET/worlds/scape/CDTrackInfo.java create mode 100644 NET/worlds/scape/CallbackPropertyOperator.java create mode 100644 NET/worlds/scape/Camera.java create mode 100644 NET/worlds/scape/CameraHeightAction.java create mode 100644 NET/worlds/scape/ChangeAvatarDialog.java create mode 100644 NET/worlds/scape/ChangeAvatarImageButtons.java create mode 100644 NET/worlds/scape/CheckboxEditorDialog.java create mode 100644 NET/worlds/scape/ClassProperty.java create mode 100644 NET/worlds/scape/ClickEventHandler.java create mode 100644 NET/worlds/scape/ClickSensor.java create mode 100644 NET/worlds/scape/ClickWidget.java create mode 100644 NET/worlds/scape/ClipboardEntry.java create mode 100644 NET/worlds/scape/ColorAttribute.java create mode 100644 NET/worlds/scape/ColorEditorDialog.java create mode 100644 NET/worlds/scape/ColorPropertyEditor.java create mode 100644 NET/worlds/scape/CopyWidget.java create mode 100644 NET/worlds/scape/CrashAction.java create mode 100644 NET/worlds/scape/CutWidget.java create mode 100644 NET/worlds/scape/DPAction.java create mode 100644 NET/worlds/scape/DPLoadTracker.java create mode 100644 NET/worlds/scape/DPState.java create mode 100644 NET/worlds/scape/DeepEnumeration.java create mode 100644 NET/worlds/scape/DialogAction.java create mode 100644 NET/worlds/scape/DiffRoomSensor.java create mode 100644 NET/worlds/scape/DirectShow.java create mode 100644 NET/worlds/scape/DiskShadow.java create mode 100644 NET/worlds/scape/DispenserAction.java create mode 100644 NET/worlds/scape/DoorBasedFilter.java create mode 100644 NET/worlds/scape/DoorBasedParams.java create mode 100644 NET/worlds/scape/Drone.java create mode 100644 NET/worlds/scape/DroneAnimator.java create mode 100644 NET/worlds/scape/DroneLoader.java create mode 100644 NET/worlds/scape/DropInfo.java create mode 100644 NET/worlds/scape/DynamicForwardAttribute.java create mode 100644 NET/worlds/scape/EditMusicDialog.java create mode 100644 NET/worlds/scape/EditRoomDialog.java create mode 100644 NET/worlds/scape/EditTile.java create mode 100644 NET/worlds/scape/EnumFieldEditorDialog.java create mode 100644 NET/worlds/scape/EnumProperties.java create mode 100644 NET/worlds/scape/EnumPropertyEditor.java create mode 100644 NET/worlds/scape/EquipAction.java create mode 100644 NET/worlds/scape/EquippableItem.java create mode 100644 NET/worlds/scape/Event.java create mode 100644 NET/worlds/scape/EventQueue.java create mode 100644 NET/worlds/scape/ExtensionFilter.java create mode 100644 NET/worlds/scape/Facer.java create mode 100644 NET/worlds/scape/FieldEditorDialog.java create mode 100644 NET/worlds/scape/FieldWithListEditorDialog.java create mode 100644 NET/worlds/scape/FileList.java create mode 100644 NET/worlds/scape/FileTexture.java create mode 100644 NET/worlds/scape/FileTextureDecoder.java create mode 100644 NET/worlds/scape/FloatArrayEditorDialog.java create mode 100644 NET/worlds/scape/FloatArrayPropertyEditor.java create mode 100644 NET/worlds/scape/FloatFieldEditorDialog.java create mode 100644 NET/worlds/scape/FloatPropertyEditor.java create mode 100644 NET/worlds/scape/FloorPatch.java create mode 100644 NET/worlds/scape/ForwardAttribute.java create mode 100644 NET/worlds/scape/FrameEvent.java create mode 100644 NET/worlds/scape/FrameHandler.java create mode 100644 NET/worlds/scape/FrameSensor.java create mode 100644 NET/worlds/scape/GravityAction.java create mode 100644 NET/worlds/scape/HTransWidget.java create mode 100644 NET/worlds/scape/Handler.java create mode 100644 NET/worlds/scape/HandsOffDriver.java create mode 100644 NET/worlds/scape/HighJump.java create mode 100644 NET/worlds/scape/HoloCallback.java create mode 100644 NET/worlds/scape/HoloDrone.java create mode 100644 NET/worlds/scape/HoloPilot.java create mode 100644 NET/worlds/scape/Hologram.java create mode 100644 NET/worlds/scape/HorizontalRect.java create mode 100644 NET/worlds/scape/Iconic.java create mode 100644 NET/worlds/scape/ImageConverter.java create mode 100644 NET/worlds/scape/IncrementalRestorer.java create mode 100644 NET/worlds/scape/IndentStream.java create mode 100644 NET/worlds/scape/IntegerFieldEditorDialog.java create mode 100644 NET/worlds/scape/IntegerPropertyEditor.java create mode 100644 NET/worlds/scape/InterpolatedDrone.java create mode 100644 NET/worlds/scape/InventoryAction.java create mode 100644 NET/worlds/scape/InventoryAvatar.java create mode 100644 NET/worlds/scape/InventoryCallback.java create mode 100644 NET/worlds/scape/InventoryDialog.java create mode 100644 NET/worlds/scape/InventoryItem.java create mode 100644 NET/worlds/scape/InventoryList.java create mode 100644 NET/worlds/scape/InventoryManager.java create mode 100644 NET/worlds/scape/ItemNotAvailableDialog.java create mode 100644 NET/worlds/scape/Key.java create mode 100644 NET/worlds/scape/KeyCharEvent.java create mode 100644 NET/worlds/scape/KeyCharHandler.java create mode 100644 NET/worlds/scape/KeyDownEvent.java create mode 100644 NET/worlds/scape/KeyDownHandler.java create mode 100644 NET/worlds/scape/KeyEvent.java create mode 100644 NET/worlds/scape/KeyHandler.java create mode 100644 NET/worlds/scape/KeyUpEvent.java create mode 100644 NET/worlds/scape/KeyUpHandler.java create mode 100644 NET/worlds/scape/LibEntContentEditorDialog.java create mode 100644 NET/worlds/scape/LibEntContentPropertyEditor.java create mode 100644 NET/worlds/scape/LibEventHandler.java create mode 100644 NET/worlds/scape/LibrariesTile.java create mode 100644 NET/worlds/scape/Library.java create mode 100644 NET/worlds/scape/LibraryDrop.java create mode 100644 NET/worlds/scape/LibraryDropTarget.java create mode 100644 NET/worlds/scape/LibraryEntry.java create mode 100644 NET/worlds/scape/Light.java create mode 100644 NET/worlds/scape/ListAdderDialog.java create mode 100644 NET/worlds/scape/ListChooserDialog.java create mode 100644 NET/worlds/scape/ListEditorDialog.java create mode 100644 NET/worlds/scape/LoadedAttribute.java create mode 100644 NET/worlds/scape/LoadedURLSelf.java create mode 100644 NET/worlds/scape/MCISoundCommand.java create mode 100644 NET/worlds/scape/MCISoundPlayer.java create mode 100644 NET/worlds/scape/MCIThread.java create mode 100644 NET/worlds/scape/Manifest.java create mode 100644 NET/worlds/scape/Material.java create mode 100644 NET/worlds/scape/MaterialTexture.java create mode 100644 NET/worlds/scape/MaybeNullDialog.java create mode 100644 NET/worlds/scape/MaybeNullPropertyEditor.java create mode 100644 NET/worlds/scape/MetaEnumeration.java create mode 100644 NET/worlds/scape/Mirror.java create mode 100644 NET/worlds/scape/MomentumBehavior.java create mode 100644 NET/worlds/scape/MontyDoor.java create mode 100644 NET/worlds/scape/MoreInfoDialog.java create mode 100644 NET/worlds/scape/Motion.java create mode 100644 NET/worlds/scape/MouseButtonEvent.java create mode 100644 NET/worlds/scape/MouseButtonHandler.java create mode 100644 NET/worlds/scape/MouseDeltaEvent.java create mode 100644 NET/worlds/scape/MouseDeltaHandler.java create mode 100644 NET/worlds/scape/MouseDownEvent.java create mode 100644 NET/worlds/scape/MouseDownHandler.java create mode 100644 NET/worlds/scape/MouseDragEvent.java create mode 100644 NET/worlds/scape/MouseDragHandler.java create mode 100644 NET/worlds/scape/MouseEnterEvent.java create mode 100644 NET/worlds/scape/MouseEnterHandler.java create mode 100644 NET/worlds/scape/MouseEvent.java create mode 100644 NET/worlds/scape/MouseExitEvent.java create mode 100644 NET/worlds/scape/MouseExitHandler.java create mode 100644 NET/worlds/scape/MouseHandler.java create mode 100644 NET/worlds/scape/MouseMoveEvent.java create mode 100644 NET/worlds/scape/MouseMoveHandler.java create mode 100644 NET/worlds/scape/MousePositionEvent.java create mode 100644 NET/worlds/scape/MousePositionHandler.java create mode 100644 NET/worlds/scape/MouseUpEvent.java create mode 100644 NET/worlds/scape/MouseUpHandler.java create mode 100644 NET/worlds/scape/MoveAction.java create mode 100644 NET/worlds/scape/MoveCameraAction.java create mode 100644 NET/worlds/scape/MultiManifestAction.java create mode 100644 NET/worlds/scape/MultiMotion.java create mode 100644 NET/worlds/scape/MusicManager.java create mode 100644 NET/worlds/scape/MusicManagerDialog.java create mode 100644 NET/worlds/scape/MusicRoom.java create mode 100644 NET/worlds/scape/MusicTrack.java create mode 100644 NET/worlds/scape/MutedDrone.java create mode 100644 NET/worlds/scape/MyButton.java create mode 100644 NET/worlds/scape/NamedPortal.java create mode 100644 NET/worlds/scape/NametagDrone.java create mode 100644 NET/worlds/scape/NoSuchPropertyException.java create mode 100644 NET/worlds/scape/NonPersister.java create mode 100644 NET/worlds/scape/NotifyScriptAction.java create mode 100644 NET/worlds/scape/NumberAttribute.java create mode 100644 NET/worlds/scape/ObjEditorDialog.java create mode 100644 NET/worlds/scape/ObjPropertyEditor.java create mode 100644 NET/worlds/scape/ObjectAdderDialog.java create mode 100644 NET/worlds/scape/ObjectPropertyAdder.java create mode 100644 NET/worlds/scape/ObjectSelectorDialog.java create mode 100644 NET/worlds/scape/OpenURLAction.java create mode 100644 NET/worlds/scape/ParallelAction.java create mode 100644 NET/worlds/scape/PassthroughBumpCalc.java create mode 100644 NET/worlds/scape/PasteWidget.java create mode 100644 NET/worlds/scape/PathMoveAction.java create mode 100644 NET/worlds/scape/PendingCacheDrone.java create mode 100644 NET/worlds/scape/PendingDrone.java create mode 100644 NET/worlds/scape/PeriodicTimeSensor.java create mode 100644 NET/worlds/scape/Persister.java create mode 100644 NET/worlds/scape/PickEvent.java create mode 100644 NET/worlds/scape/PickHandler.java create mode 100644 NET/worlds/scape/PickUpAction.java create mode 100644 NET/worlds/scape/Pilot.java create mode 100644 NET/worlds/scape/PitchDriver.java create mode 100644 NET/worlds/scape/PitchWidget.java create mode 100644 NET/worlds/scape/PlaneBumpCalc.java create mode 100644 NET/worlds/scape/PlaybackRecordingAction.java create mode 100644 NET/worlds/scape/Point2.java create mode 100644 NET/worlds/scape/Point2EditorDialog.java create mode 100644 NET/worlds/scape/Point2PropertyEditor.java create mode 100644 NET/worlds/scape/Point3.java create mode 100644 NET/worlds/scape/Point3EditorDialog.java create mode 100644 NET/worlds/scape/Point3PropertyEditor.java create mode 100644 NET/worlds/scape/Point3Temp.java create mode 100644 NET/worlds/scape/Polygon.java create mode 100644 NET/worlds/scape/Portal.java create mode 100644 NET/worlds/scape/PosableAction.java create mode 100644 NET/worlds/scape/PosableDrone.java create mode 100644 NET/worlds/scape/PosableDroneLoader.java create mode 100644 NET/worlds/scape/PosableShape.java create mode 100644 NET/worlds/scape/Postrenderable.java create mode 100644 NET/worlds/scape/PostspinBehavior.java create mode 100644 NET/worlds/scape/Prerenderable.java create mode 100644 NET/worlds/scape/PrintAction.java create mode 100644 NET/worlds/scape/ProgressiveAdder.java create mode 100644 NET/worlds/scape/PropAdder.java create mode 100644 NET/worlds/scape/PropEditor.java create mode 100644 NET/worlds/scape/PropList.java create mode 100644 NET/worlds/scape/PropPropEditor.java create mode 100644 NET/worlds/scape/PropPropEditorDialog.java create mode 100644 NET/worlds/scape/PropTreeNode.java create mode 100644 NET/worlds/scape/Properties.java create mode 100644 NET/worlds/scape/Property.java create mode 100644 NET/worlds/scape/ProximitySensor.java create mode 100644 NET/worlds/scape/RPAction.java create mode 100644 NET/worlds/scape/Rect.java create mode 100644 NET/worlds/scape/RectPatch.java create mode 100644 NET/worlds/scape/Recycler.java create mode 100644 NET/worlds/scape/RelativeMoveAction.java create mode 100644 NET/worlds/scape/RemotePortal.java create mode 100644 NET/worlds/scape/RemoveObjectAction.java create mode 100644 NET/worlds/scape/RenderWare.java create mode 100644 NET/worlds/scape/Restorer.java create mode 100644 NET/worlds/scape/RollBehavior.java create mode 100644 NET/worlds/scape/RollWidget.java create mode 100644 NET/worlds/scape/RollingAttribute.java create mode 100644 NET/worlds/scape/Room.java create mode 100644 NET/worlds/scape/RoomEnvironment.java create mode 100644 NET/worlds/scape/RoomSubscribeInfo.java create mode 100644 NET/worlds/scape/RunningActionCallback.java create mode 100644 NET/worlds/scape/RunningActionHandler.java create mode 100644 NET/worlds/scape/SameRoomSensor.java create mode 100644 NET/worlds/scape/SaveWidget.java create mode 100644 NET/worlds/scape/Saver.java create mode 100644 NET/worlds/scape/ScaleWidget.java create mode 100644 NET/worlds/scape/ScapePicMovie.java create mode 100644 NET/worlds/scape/ScapePicTexture.java create mode 100644 NET/worlds/scape/ScapePicTextureDecoder.java create mode 100644 NET/worlds/scape/ScrollingImagePanel.java create mode 100644 NET/worlds/scape/ScrollingListElement.java create mode 100644 NET/worlds/scape/SelectAvatarAction.java create mode 100644 NET/worlds/scape/SendURLAction.java create mode 100644 NET/worlds/scape/Sensor.java create mode 100644 NET/worlds/scape/SensorFrameHandler.java create mode 100644 NET/worlds/scape/SeqFile.java create mode 100644 NET/worlds/scape/SequenceAction.java create mode 100644 NET/worlds/scape/SequenceActionState.java create mode 100644 NET/worlds/scape/SetBooleanAction.java create mode 100644 NET/worlds/scape/SetColorAction.java create mode 100644 NET/worlds/scape/SetFloatAction.java create mode 100644 NET/worlds/scape/SetIntegerAction.java create mode 100644 NET/worlds/scape/SetPoint2Action.java create mode 100644 NET/worlds/scape/SetPoint3Action.java create mode 100644 NET/worlds/scape/SetPropertyAction.java create mode 100644 NET/worlds/scape/SetStringAction.java create mode 100644 NET/worlds/scape/SetURLAction.java create mode 100644 NET/worlds/scape/SetVisibleBumpableAction.java create mode 100644 NET/worlds/scape/SetZoomMode.java create mode 100644 NET/worlds/scape/Shadow.java create mode 100644 NET/worlds/scape/ShallowEnumeration.java create mode 100644 NET/worlds/scape/Shape.java create mode 100644 NET/worlds/scape/ShapeLoader.java create mode 100644 NET/worlds/scape/ShapeLoaderListener.java create mode 100644 NET/worlds/scape/ShapeTextureLoader.java create mode 100644 NET/worlds/scape/Sharer.java create mode 100644 NET/worlds/scape/SlidePropertyAction.java create mode 100644 NET/worlds/scape/SmoothDriver.java create mode 100644 NET/worlds/scape/Sound.java create mode 100644 NET/worlds/scape/SoundCallback.java create mode 100644 NET/worlds/scape/SoundPlayer.java create mode 100644 NET/worlds/scape/SoundResource.java create mode 100644 NET/worlds/scape/SoundState.java create mode 100644 NET/worlds/scape/SpinBehavior.java create mode 100644 NET/worlds/scape/StandardTexture.java create mode 100644 NET/worlds/scape/StandardTextureDecoder.java create mode 100644 NET/worlds/scape/StartupSensor.java create mode 100644 NET/worlds/scape/State.java create mode 100644 NET/worlds/scape/StateContext.java create mode 100644 NET/worlds/scape/StdoutAction.java create mode 100644 NET/worlds/scape/StopRecordingAction.java create mode 100644 NET/worlds/scape/StringAttribute.java create mode 100644 NET/worlds/scape/StringFieldEditorDialog.java create mode 100644 NET/worlds/scape/StringPropertyEditor.java create mode 100644 NET/worlds/scape/StringTexture.java create mode 100644 NET/worlds/scape/SubclumpShape.java create mode 100644 NET/worlds/scape/SuperRoot.java create mode 100644 NET/worlds/scape/Surface.java create mode 100644 NET/worlds/scape/SwitchableBehavior.java create mode 100644 NET/worlds/scape/TCompressor.java create mode 100644 NET/worlds/scape/TabbedDisplayPanel.java create mode 100644 NET/worlds/scape/TabbedPanel.java create mode 100644 NET/worlds/scape/TalkAction.java create mode 100644 NET/worlds/scape/Teleport.java create mode 100644 NET/worlds/scape/TeleportAction.java create mode 100644 NET/worlds/scape/TeleportDialog.java create mode 100644 NET/worlds/scape/TeleportStatus.java create mode 100644 NET/worlds/scape/Texture.java create mode 100644 NET/worlds/scape/TextureDecoder.java create mode 100644 NET/worlds/scape/TextureSurface.java create mode 100644 NET/worlds/scape/TextureSurfaceRenderer.java create mode 100644 NET/worlds/scape/Toggle.java create mode 100644 NET/worlds/scape/ToggleZoomMode.java create mode 100644 NET/worlds/scape/TooNewException.java create mode 100644 NET/worlds/scape/ToolBar.java create mode 100644 NET/worlds/scape/ToolTipManager.java create mode 100644 NET/worlds/scape/TradeAction.java create mode 100644 NET/worlds/scape/TrajectoryBehavior.java create mode 100644 NET/worlds/scape/TransAttribute.java create mode 100644 NET/worlds/scape/Transform.java create mode 100644 NET/worlds/scape/TransformEditorDialog.java create mode 100644 NET/worlds/scape/TransformPropertyEditor.java create mode 100644 NET/worlds/scape/Trigger.java create mode 100644 NET/worlds/scape/TriggeredSwitchableBehavior.java create mode 100644 NET/worlds/scape/TwoWayPortal.java create mode 100644 NET/worlds/scape/URLEditorDialog.java create mode 100644 NET/worlds/scape/URLPropertyEditor.java create mode 100644 NET/worlds/scape/URLSelf.java create mode 100644 NET/worlds/scape/URLSelfLoader.java create mode 100644 NET/worlds/scape/UndoStack.java create mode 100644 NET/worlds/scape/UndoWidget.java create mode 100644 NET/worlds/scape/UndoabCopy.java create mode 100644 NET/worlds/scape/UndoablAdd.java create mode 100644 NET/worlds/scape/UndoablCut.java create mode 100644 NET/worlds/scape/UndoablDelete.java create mode 100644 NET/worlds/scape/UndoablPaste.java create mode 100644 NET/worlds/scape/UndoablSet.java create mode 100644 NET/worlds/scape/UndoablTransform.java create mode 100644 NET/worlds/scape/Undoable.java create mode 100644 NET/worlds/scape/UniqueHasher.java create mode 100644 NET/worlds/scape/UnitEnumeration.java create mode 100644 NET/worlds/scape/UniverseHandler.java create mode 100644 NET/worlds/scape/UserEvent.java create mode 100644 NET/worlds/scape/UserHandler.java create mode 100644 NET/worlds/scape/VTransWidget.java create mode 100644 NET/worlds/scape/ValueEvent.java create mode 100644 NET/worlds/scape/ValueHandler.java create mode 100644 NET/worlds/scape/VectorProperty.java create mode 100644 NET/worlds/scape/VehicleDriver.java create mode 100644 NET/worlds/scape/VehicleShape.java create mode 100644 NET/worlds/scape/VelocityBehavior.java create mode 100644 NET/worlds/scape/VideoControlAction.java create mode 100644 NET/worlds/scape/VideoManager.java create mode 100644 NET/worlds/scape/VideoSurface.java create mode 100644 NET/worlds/scape/VideoTexture.java create mode 100644 NET/worlds/scape/VideoWall.java create mode 100644 NET/worlds/scape/VisiAttribute.java create mode 100644 NET/worlds/scape/WMPSoundPlayer.java create mode 100644 NET/worlds/scape/WObject.java create mode 100644 NET/worlds/scape/WObjectHighlighter.java create mode 100644 NET/worlds/scape/WaitAction.java create mode 100644 NET/worlds/scape/WaitActionState.java create mode 100644 NET/worlds/scape/WavSoundPlayer.java create mode 100644 NET/worlds/scape/WavSoundTerminator.java create mode 100644 NET/worlds/scape/WearAction.java create mode 100644 NET/worlds/scape/WearWall.java create mode 100644 NET/worlds/scape/WebPageWall.java create mode 100644 NET/worlds/scape/WebWallControlAction.java create mode 100644 NET/worlds/scape/Whiteboard.java create mode 100644 NET/worlds/scape/WidgetButton.java create mode 100644 NET/worlds/scape/WobClassLoader.java create mode 100644 NET/worlds/scape/WobLoaded.java create mode 100644 NET/worlds/scape/WobLoader.java create mode 100644 NET/worlds/scape/World.java create mode 100644 NET/worlds/scape/WorldRedirector.java create mode 100644 NET/worlds/scape/WorldScript.java create mode 100644 NET/worlds/scape/WorldScriptLoader.java create mode 100644 NET/worlds/scape/WorldScriptManager.java create mode 100644 NET/worlds/scape/WorldScriptToolkit.java create mode 100644 NET/worlds/scape/WorldScriptToolkitImp.java create mode 100644 NET/worlds/scape/WorldValidator.java create mode 100644 NET/worlds/scape/WrRamp.java create mode 100644 NET/worlds/scape/WrRectPatch.java create mode 100644 NET/worlds/scape/WrStaircase.java create mode 100644 NET/worlds/scape/WrVisiRectPatch.java create mode 100644 NET/worlds/scape/YawWidget.java create mode 100644 NET/worlds/scape/sendURL.java (limited to 'NET') 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 worlds = NetUpdate.aboutWorlds(); +/* 124 */ TextArea worldList = new TextArea(10, 40); +/* 125 */ worldList.setEditable(false); +/* */ +/* 127 */ p.add(setConstraints(gbag, worldList, c)); +/* */ +/* 129 */ for (Enumeration 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 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 hunks = new Vector(); +/* */ +/* 237 */ private Vector 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 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 a, Vector 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 newAnimations = this.curPilot.getAnimationList(); +/* 105 */ this.numPilotAnims = newAnimations.size(); +/* */ +/* */ +/* 108 */ Vector 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 _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 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 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 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 e = this.zombies.elements(); +/* 33 */ while (e.hasMoreElements()) { +/* 34 */ Drone id = (Drone)e.nextElement(); +/* 35 */ Enumeration 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 rooms = Pilot.getActive().getRoom().getWorld().getRooms(); +/* 86 */ while (rooms.hasMoreElements()) { +/* 87 */ Room r = (Room)rooms.nextElement(); +/* 88 */ if (r != null) +/* */ { +/* */ +/* 91 */ DeepEnumeration 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 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 articulatedAvatarItemsAF; +/* */ Vector articulatedAvatarItemsGO; +/* */ Vector articulatedAvatarItemsPZ; +/* */ Vector holographicAvatarItemsAL; +/* */ Vector holographicAvatarItemsMZ; +/* */ Vector specialGuestAvatarItems; +/* */ private static Vector parts; +/* */ private static Vector sizes; +/* */ private static Vector colors; +/* */ private static Vector faceTypes; +/* */ private static Vector 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 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 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 \" 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 menuItems) +/* */ { +/* 256 */ if (curAvatar != null) { +/* 257 */ curAvatar = SelectAvatarAction.getPrettyAvatarName(curAvatar); +/* */ } +/* 259 */ Vector names = PosableShape.getPermittedNames(); +/* */ +/* 261 */ Vector 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 menuItemList, Menu menu, Vector menuItems) +/* */ throws NoClassDefFoundError +/* */ { +/* 311 */ Vector 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 menuItems) +/* */ { +/* 339 */ curAvatar = SelectAvatarAction.getPrettyAvatarName(curAvatar); +/* */ +/* 341 */ String[] list = HoloDrone.getPermittedList(); +/* 342 */ Vector 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 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 dest, Vector 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 getComponents() +/* */ { +/* 525 */ return parts; +/* */ } +/* */ +/* */ +/* */ +/* */ +/* */ public static int findIndex(Vector 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 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 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 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 +/* */ { +/* */ 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 choices = new Vector(); +/* 45 */ private Vector 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 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 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 getComponents(); + + public abstract Vector 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 getComponents() +/* */ { +/* 33 */ return stringsToVector(components); +/* */ } +/* */ +/* */ public Vector 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 stringsToVector(String[] strings) { +/* 49 */ Vector 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 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 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 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(""); +/* 155 */ this.logFile.println(""); +/* 156 */ this.logFile.println("" + title + ""); +/* 157 */ this.logFile.println(""); +/* 158 */ this.logFile.println(""); +/* */ } +/* 160 */ this.logFileName = fileName; +/* 161 */ this.logFile.println("
"); +/* 162 */ this.logFile.println("

Conversation of " + +/* 163 */ DateFormat.getDateTimeInstance().format(new Date()) + +/* 164 */ "

"); +/* */ +/* 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(""); +/* 212 */ out.println(""); +/* 213 */ out.println("" + title + ""); +/* 214 */ out.println(""); +/* 215 */ out.println(""); +/* 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) + "
"); +/* 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= 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"); +/* 498 */ this.logFile.println(""); +/* 499 */ this.logFile.println("" + title + ""); +/* 500 */ this.logFile.println(""); +/* 501 */ this.logFile.println(""); +/* */ } +/* 503 */ this.logFileName = fileName; +/* 504 */ this.logFile.println("
"); +/* 505 */ this.logFile.println("

Conversation of " + +/* 506 */ DateFormat.getDateTimeInstance().format(new Date()) + +/* 507 */ "

"); +/* 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(""); +/* 548 */ out.println(""); +/* 549 */ out.println("" + title + ""); +/* 550 */ out.println(""); +/* 551 */ out.println(""); +/* 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) + "
"); +/* 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 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 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 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 parseUnicode(Vector 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 parts = new Vector(); +/* */ +/* */ private static MenuBar menuBar; +/* */ +/* */ public void addPart(FramePart p) +/* */ { +/* 806 */ this.parts.addElement(p); +/* */ } +/* */ +/* */ public Enumeration 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 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 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 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 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 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 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 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 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 downItems = null; +/* 369 */ Vector langItems = null; +/* 370 */ Vector fontItems = null; +/* */ +/* */ static final String LANGUAGES = "languages.lst"; +/* */ +/* */ static final String FONTS = "fonts.lst"; +/* 375 */ Vector viewItems = null; Vector 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 viewNames; +/* */ private Vector 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 lList = new Vector(); +/* 632 */ Vector 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 flList = new Vector(); +/* 640 */ Vector 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 lList, Vector 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 lList, Vector 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 CodeL, Vector 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 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 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 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 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 +/* */ { +/* */ 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 friends = new Vector(); +/* */ +/* */ +/* 253 */ private Vector onlineFriends = new Vector(); +/* */ +/* */ +/* 256 */ private Vector mutedOnlineFriends = new Vector(); +/* */ +/* */ +/* 259 */ private Vector 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 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 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 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 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: (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: (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: (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: (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: (III)V +/* */ // 213: astore 6 +/* */ // 215: new 273 java/net/URL +/* */ // 218: dup +/* */ // 219: ldc_w 275 +/* */ // 222: invokespecial 277 java/net/URL: (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: (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: (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: (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: ()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: (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: (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: (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: ()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: (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: (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: (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 _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 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 _lines; +/* */ private Vector _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 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 = ""; +/* 451 */ public static String boldEndTag = ""; +/* 452 */ public static String italicStartTag = ""; +/* 453 */ public static String italicEndTag = ""; +/* 454 */ public static String colorStartMagentaTag = ""; +/* 455 */ public static String colorStartBlueTag = ""; +/* 456 */ public static String colorStartRedTag = ""; +/* 457 */ public static String colorStartGreenTag = ""; +/* 458 */ public static String colorEndTag = ""; +/* 459 */ public static String colorMagenta2Tag = ""; +/* 460 */ public static String colorBlue2Tag = ""; +/* 461 */ public static String colorRed2Tag = ""; +/* 462 */ public static String colorGreen2Tag = ""; +/* 463 */ public static String colorCyanTag = ""; +/* 464 */ public static String colorDarkGrayTag = ""; +/* 465 */ public static String colorGrayTag = ""; +/* 466 */ public static String colorOrangeTag = ""; +/* 467 */ public static String colorPinkTag = ""; +/* 468 */ public static String colorYellowTag = ""; +/* 469 */ public static String colorWhiteTag = ""; +/* 470 */ public static String colorLightGrayTag = ""; +/* */ +/* 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(" 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 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: ()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: (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: (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: ()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: (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: ()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: (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: ()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: (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: ()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 names = new Vector(); +/* 51 */ names.addElement(fName); +/* 52 */ Vector 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 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 = "bugs@3dcd.com"; +/* */ private File logFile; +/* */ +/* */ LogFileMailMessage(String server, File logFile) +/* */ { +/* 19 */ super(server, "bugs@3dcd.com", "bugs@3dcd.com", "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 users = new Vector(); +/* 241 */ private Vector 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 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: (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: ()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: (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: (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: (Ljava/lang/String;)V +/* */ // 186: invokespecial 883 java/io/DataInputStream: (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: (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: (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 cc; +/* */ private String subject; +/* */ private Vector 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 cc, String subject, Vector 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: (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: (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: (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: (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: (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: (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: (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: (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 +/* */ // 0 440 4 subject String +/* */ // 0 440 5 body Vector +/* */ // 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 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 cc) +/* */ { +/* 347 */ if (cc.size() > 0) { +/* 348 */ Enumeration 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 cc) +/* */ { +/* 362 */ int num = cc.size(); +/* 363 */ if (num > 0) { +/* 364 */ if (!print(out, "cc: ")) +/* 365 */ return false; +/* 366 */ Enumeration 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 body = new Vector(); +/* 401 */ body.addElement("Looks like it worked...\n"); +/* */ +/* */ +/* 404 */ sendNote("www.3dcd.com:25", "Gamma Mail Service", +/* 405 */ "thumper@alumni.caltech.edu", 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 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