diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..ea03d78 --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +/bin/ +/.metadata/ diff --git a/.metadata/.lock b/.metadata/.lock new file mode 100644 index 0000000..e69de29 diff --git a/.metadata/.log b/.metadata/.log new file mode 100644 index 0000000..cc0fe6e --- /dev/null +++ b/.metadata/.log @@ -0,0 +1,3942 @@ +!SESSION 2023-12-03 14:55:27.344 ----------------------------------------------- +eclipse.buildId=4.26.0.20221201-1200 +java.version=19.0.2 +java.vendor=Eclipse Adoptium +BootLoader constants: OS=win32, ARCH=x86_64, WS=win32, NL=ko_KR +Framework arguments: -product org.eclipse.epp.package.java.product +Command-line arguments: -os win32 -ws win32 -arch x86_64 -product org.eclipse.epp.package.java.product + +This is a continuation of log file C:\ex1\.metadata\.bak_0.log +Created Time: 2023-12-03 21:11:53.220 + +!ENTRY org.eclipse.ui.ide 4 4 2023-12-03 21:11:53.221 +!MESSAGE Not properly disposed SWT resource +!STACK 0 +java.lang.Error: SWT Resource was not properly disposed + at org.eclipse.swt.graphics.Resource.initNonDisposeTracking(Resource.java:172) + at org.eclipse.swt.graphics.Resource.(Resource.java:120) + at org.eclipse.swt.graphics.Font.(Font.java:111) + at org.eclipse.jface.resource.ArrayFontDescriptor.createFont(ArrayFontDescriptor.java:78) + at org.eclipse.wb.core.gef.policy.selection.TopResizeFigure.paintClientArea(TopResizeFigure.java:68) + at org.eclipse.wb.draw2d.Figure.paintFigure(Figure.java:360) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:340) + at org.eclipse.wb.draw2d.Figure.paintChildren(Figure.java:380) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:342) + at org.eclipse.wb.draw2d.Figure.paintChildren(Figure.java:380) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:342) + at org.eclipse.wb.internal.draw2d.FigureCanvas.handlePaint(FigureCanvas.java:192) + at org.eclipse.wb.internal.draw2d.FigureCanvas$3.handleEvent(FigureCanvas.java:154) + at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:89) + at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4256) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1066) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1090) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1075) + at org.eclipse.swt.widgets.Composite.WM_PAINT(Composite.java:1627) + at org.eclipse.swt.widgets.Control.windowProc(Control.java:4800) + at org.eclipse.swt.widgets.Canvas.windowProc(Canvas.java:340) + at org.eclipse.swt.widgets.Display.windowProc(Display.java:5022) + at org.eclipse.swt.internal.win32.OS.DispatchMessage(Native Method) + at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3640) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1155) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1046) + at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:155) + at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:643) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:550) + at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:171) + at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:152) + at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:203) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:136) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:402) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:255) + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104) + at java.base/java.lang.reflect.Method.invoke(Method.java:578) + at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:659) + at org.eclipse.equinox.launcher.Main.basicRun(Main.java:596) + at org.eclipse.equinox.launcher.Main.run(Main.java:1467) + +!ENTRY org.eclipse.ui.ide 4 4 2023-12-03 21:11:53.221 +!MESSAGE Not properly disposed SWT resource +!STACK 0 +java.lang.Error: SWT Resource was not properly disposed + at org.eclipse.swt.graphics.Resource.initNonDisposeTracking(Resource.java:172) + at org.eclipse.swt.graphics.Resource.(Resource.java:120) + at org.eclipse.swt.graphics.Font.(Font.java:111) + at org.eclipse.jface.resource.ArrayFontDescriptor.createFont(ArrayFontDescriptor.java:78) + at org.eclipse.wb.core.gef.policy.selection.TopResizeFigure.paintClientArea(TopResizeFigure.java:68) + at org.eclipse.wb.draw2d.Figure.paintFigure(Figure.java:360) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:340) + at org.eclipse.wb.draw2d.Figure.paintChildren(Figure.java:380) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:342) + at org.eclipse.wb.draw2d.Figure.paintChildren(Figure.java:380) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:342) + at org.eclipse.wb.internal.draw2d.FigureCanvas.handlePaint(FigureCanvas.java:192) + at org.eclipse.wb.internal.draw2d.FigureCanvas$3.handleEvent(FigureCanvas.java:154) + at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:89) + at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4256) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1066) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1090) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1075) + at org.eclipse.swt.widgets.Composite.WM_PAINT(Composite.java:1627) + at org.eclipse.swt.widgets.Control.windowProc(Control.java:4800) + at org.eclipse.swt.widgets.Canvas.windowProc(Canvas.java:340) + at org.eclipse.swt.widgets.Display.windowProc(Display.java:5022) + at org.eclipse.swt.internal.win32.OS.DispatchMessage(Native Method) + at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3640) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1155) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1046) + at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:155) + at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:643) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:550) + at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:171) + at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:152) + at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:203) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:136) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:402) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:255) + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104) + at java.base/java.lang.reflect.Method.invoke(Method.java:578) + at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:659) + at org.eclipse.equinox.launcher.Main.basicRun(Main.java:596) + at org.eclipse.equinox.launcher.Main.run(Main.java:1467) + +!ENTRY org.eclipse.ui.ide 4 4 2023-12-03 21:11:53.221 +!MESSAGE Not properly disposed SWT resource +!STACK 0 +java.lang.Error: SWT Resource was not properly disposed + at org.eclipse.swt.graphics.Resource.initNonDisposeTracking(Resource.java:172) + at org.eclipse.swt.graphics.Resource.(Resource.java:120) + at org.eclipse.swt.graphics.Font.(Font.java:111) + at org.eclipse.jface.resource.ArrayFontDescriptor.createFont(ArrayFontDescriptor.java:78) + at org.eclipse.wb.core.gef.policy.selection.TopResizeFigure.paintClientArea(TopResizeFigure.java:68) + at org.eclipse.wb.draw2d.Figure.paintFigure(Figure.java:360) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:340) + at org.eclipse.wb.draw2d.Figure.paintChildren(Figure.java:380) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:342) + at org.eclipse.wb.draw2d.Figure.paintChildren(Figure.java:380) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:342) + at org.eclipse.wb.internal.draw2d.FigureCanvas.handlePaint(FigureCanvas.java:192) + at org.eclipse.wb.internal.draw2d.FigureCanvas$3.handleEvent(FigureCanvas.java:154) + at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:89) + at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4256) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1066) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1090) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1075) + at org.eclipse.swt.widgets.Composite.WM_PAINT(Composite.java:1627) + at org.eclipse.swt.widgets.Control.windowProc(Control.java:4800) + at org.eclipse.swt.widgets.Canvas.windowProc(Canvas.java:340) + at org.eclipse.swt.widgets.Display.windowProc(Display.java:5022) + at org.eclipse.swt.internal.win32.OS.DispatchMessage(Native Method) + at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3640) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1155) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1046) + at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:155) + at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:643) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:550) + at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:171) + at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:152) + at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:203) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:136) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:402) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:255) + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104) + at java.base/java.lang.reflect.Method.invoke(Method.java:578) + at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:659) + at org.eclipse.equinox.launcher.Main.basicRun(Main.java:596) + at org.eclipse.equinox.launcher.Main.run(Main.java:1467) + +!ENTRY org.eclipse.ui.ide 4 4 2023-12-03 21:11:53.222 +!MESSAGE Not properly disposed SWT resource +!STACK 0 +java.lang.Error: SWT Resource was not properly disposed + at org.eclipse.swt.graphics.Resource.initNonDisposeTracking(Resource.java:172) + at org.eclipse.swt.graphics.Resource.(Resource.java:120) + at org.eclipse.swt.graphics.Font.(Font.java:111) + at org.eclipse.jface.resource.ArrayFontDescriptor.createFont(ArrayFontDescriptor.java:78) + at org.eclipse.wb.core.gef.policy.selection.TopResizeFigure.paintClientArea(TopResizeFigure.java:68) + at org.eclipse.wb.draw2d.Figure.paintFigure(Figure.java:360) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:340) + at org.eclipse.wb.draw2d.Figure.paintChildren(Figure.java:380) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:342) + at org.eclipse.wb.draw2d.Figure.paintChildren(Figure.java:380) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:342) + at org.eclipse.wb.internal.draw2d.FigureCanvas.handlePaint(FigureCanvas.java:192) + at org.eclipse.wb.internal.draw2d.FigureCanvas$3.handleEvent(FigureCanvas.java:154) + at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:89) + at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4256) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1066) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1090) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1075) + at org.eclipse.swt.widgets.Composite.WM_PAINT(Composite.java:1627) + at org.eclipse.swt.widgets.Control.windowProc(Control.java:4800) + at org.eclipse.swt.widgets.Canvas.windowProc(Canvas.java:340) + at org.eclipse.swt.widgets.Display.windowProc(Display.java:5022) + at org.eclipse.swt.internal.win32.OS.DispatchMessage(Native Method) + at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3640) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1155) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1046) + at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:155) + at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:643) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:550) + at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:171) + at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:152) + at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:203) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:136) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:402) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:255) + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104) + at java.base/java.lang.reflect.Method.invoke(Method.java:578) + at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:659) + at org.eclipse.equinox.launcher.Main.basicRun(Main.java:596) + at org.eclipse.equinox.launcher.Main.run(Main.java:1467) + +!ENTRY org.eclipse.ui.ide 4 4 2023-12-03 21:11:53.222 +!MESSAGE Not properly disposed SWT resource +!STACK 0 +java.lang.Error: SWT Resource was not properly disposed + at org.eclipse.swt.graphics.Resource.initNonDisposeTracking(Resource.java:172) + at org.eclipse.swt.graphics.Resource.(Resource.java:120) + at org.eclipse.swt.graphics.Font.(Font.java:111) + at org.eclipse.jface.resource.ArrayFontDescriptor.createFont(ArrayFontDescriptor.java:78) + at org.eclipse.wb.core.gef.policy.selection.TopResizeFigure.paintClientArea(TopResizeFigure.java:68) + at org.eclipse.wb.draw2d.Figure.paintFigure(Figure.java:360) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:340) + at org.eclipse.wb.draw2d.Figure.paintChildren(Figure.java:380) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:342) + at org.eclipse.wb.draw2d.Figure.paintChildren(Figure.java:380) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:342) + at org.eclipse.wb.internal.draw2d.FigureCanvas.handlePaint(FigureCanvas.java:192) + at org.eclipse.wb.internal.draw2d.FigureCanvas$3.handleEvent(FigureCanvas.java:154) + at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:89) + at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4256) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1066) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1090) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1075) + at org.eclipse.swt.widgets.Composite.WM_PAINT(Composite.java:1627) + at org.eclipse.swt.widgets.Control.windowProc(Control.java:4800) + at org.eclipse.swt.widgets.Canvas.windowProc(Canvas.java:340) + at org.eclipse.swt.widgets.Display.windowProc(Display.java:5022) + at org.eclipse.swt.internal.win32.OS.DispatchMessage(Native Method) + at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3640) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1155) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1046) + at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:155) + at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:643) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:550) + at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:171) + at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:152) + at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:203) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:136) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:402) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:255) + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104) + at java.base/java.lang.reflect.Method.invoke(Method.java:578) + at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:659) + at org.eclipse.equinox.launcher.Main.basicRun(Main.java:596) + at org.eclipse.equinox.launcher.Main.run(Main.java:1467) + +!ENTRY org.eclipse.ui.ide 4 4 2023-12-03 21:11:53.223 +!MESSAGE Not properly disposed SWT resource +!STACK 0 +java.lang.Error: SWT Resource was not properly disposed + at org.eclipse.swt.graphics.Resource.initNonDisposeTracking(Resource.java:172) + at org.eclipse.swt.graphics.Resource.(Resource.java:120) + at org.eclipse.swt.graphics.Font.(Font.java:111) + at org.eclipse.jface.resource.ArrayFontDescriptor.createFont(ArrayFontDescriptor.java:78) + at org.eclipse.wb.core.gef.policy.selection.TopResizeFigure.paintClientArea(TopResizeFigure.java:68) + at org.eclipse.wb.draw2d.Figure.paintFigure(Figure.java:360) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:340) + at org.eclipse.wb.draw2d.Figure.paintChildren(Figure.java:380) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:342) + at org.eclipse.wb.draw2d.Figure.paintChildren(Figure.java:380) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:342) + at org.eclipse.wb.internal.draw2d.FigureCanvas.handlePaint(FigureCanvas.java:192) + at org.eclipse.wb.internal.draw2d.FigureCanvas$3.handleEvent(FigureCanvas.java:154) + at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:89) + at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4256) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1066) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1090) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1075) + at org.eclipse.swt.widgets.Composite.WM_PAINT(Composite.java:1627) + at org.eclipse.swt.widgets.Control.windowProc(Control.java:4800) + at org.eclipse.swt.widgets.Canvas.windowProc(Canvas.java:340) + at org.eclipse.swt.widgets.Display.windowProc(Display.java:5022) + at org.eclipse.swt.internal.win32.OS.DispatchMessage(Native Method) + at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3640) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1155) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1046) + at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:155) + at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:643) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:550) + at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:171) + at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:152) + at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:203) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:136) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:402) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:255) + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104) + at java.base/java.lang.reflect.Method.invoke(Method.java:578) + at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:659) + at org.eclipse.equinox.launcher.Main.basicRun(Main.java:596) + at org.eclipse.equinox.launcher.Main.run(Main.java:1467) + +!ENTRY org.eclipse.ui.ide 4 4 2023-12-03 21:11:53.223 +!MESSAGE Not properly disposed SWT resource +!STACK 0 +java.lang.Error: SWT Resource was not properly disposed + at org.eclipse.swt.graphics.Resource.initNonDisposeTracking(Resource.java:172) + at org.eclipse.swt.graphics.Resource.(Resource.java:120) + at org.eclipse.swt.graphics.Font.(Font.java:111) + at org.eclipse.jface.resource.ArrayFontDescriptor.createFont(ArrayFontDescriptor.java:78) + at org.eclipse.wb.core.gef.policy.selection.TopResizeFigure.paintClientArea(TopResizeFigure.java:68) + at org.eclipse.wb.draw2d.Figure.paintFigure(Figure.java:360) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:340) + at org.eclipse.wb.draw2d.Figure.paintChildren(Figure.java:380) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:342) + at org.eclipse.wb.draw2d.Figure.paintChildren(Figure.java:380) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:342) + at org.eclipse.wb.internal.draw2d.FigureCanvas.handlePaint(FigureCanvas.java:192) + at org.eclipse.wb.internal.draw2d.FigureCanvas$3.handleEvent(FigureCanvas.java:154) + at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:89) + at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4256) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1066) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1090) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1075) + at org.eclipse.swt.widgets.Composite.WM_PAINT(Composite.java:1627) + at org.eclipse.swt.widgets.Control.windowProc(Control.java:4800) + at org.eclipse.swt.widgets.Canvas.windowProc(Canvas.java:340) + at org.eclipse.swt.widgets.Display.windowProc(Display.java:5022) + at org.eclipse.swt.internal.win32.OS.DispatchMessage(Native Method) + at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3640) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1155) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1046) + at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:155) + at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:643) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:550) + at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:171) + at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:152) + at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:203) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:136) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:402) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:255) + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104) + at java.base/java.lang.reflect.Method.invoke(Method.java:578) + at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:659) + at org.eclipse.equinox.launcher.Main.basicRun(Main.java:596) + at org.eclipse.equinox.launcher.Main.run(Main.java:1467) + +!ENTRY org.eclipse.ui.ide 4 4 2023-12-03 21:11:53.223 +!MESSAGE Not properly disposed SWT resource +!STACK 0 +java.lang.Error: SWT Resource was not properly disposed + at org.eclipse.swt.graphics.Resource.initNonDisposeTracking(Resource.java:172) + at org.eclipse.swt.graphics.Resource.(Resource.java:120) + at org.eclipse.swt.graphics.Font.(Font.java:111) + at org.eclipse.jface.resource.ArrayFontDescriptor.createFont(ArrayFontDescriptor.java:78) + at org.eclipse.wb.core.gef.policy.selection.TopResizeFigure.paintClientArea(TopResizeFigure.java:68) + at org.eclipse.wb.draw2d.Figure.paintFigure(Figure.java:360) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:340) + at org.eclipse.wb.draw2d.Figure.paintChildren(Figure.java:380) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:342) + at org.eclipse.wb.draw2d.Figure.paintChildren(Figure.java:380) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:342) + at org.eclipse.wb.internal.draw2d.FigureCanvas.handlePaint(FigureCanvas.java:192) + at org.eclipse.wb.internal.draw2d.FigureCanvas$3.handleEvent(FigureCanvas.java:154) + at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:89) + at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4256) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1066) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1090) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1075) + at org.eclipse.swt.widgets.Composite.WM_PAINT(Composite.java:1627) + at org.eclipse.swt.widgets.Control.windowProc(Control.java:4800) + at org.eclipse.swt.widgets.Canvas.windowProc(Canvas.java:340) + at org.eclipse.swt.widgets.Display.windowProc(Display.java:5022) + at org.eclipse.swt.internal.win32.OS.DispatchMessage(Native Method) + at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3640) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1155) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1046) + at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:155) + at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:643) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:550) + at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:171) + at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:152) + at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:203) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:136) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:402) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:255) + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104) + at java.base/java.lang.reflect.Method.invoke(Method.java:578) + at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:659) + at org.eclipse.equinox.launcher.Main.basicRun(Main.java:596) + at org.eclipse.equinox.launcher.Main.run(Main.java:1467) + +!ENTRY org.eclipse.ui.ide 4 4 2023-12-03 21:11:53.224 +!MESSAGE Not properly disposed SWT resource +!STACK 0 +java.lang.Error: SWT Resource was not properly disposed + at org.eclipse.swt.graphics.Resource.initNonDisposeTracking(Resource.java:172) + at org.eclipse.swt.graphics.Resource.(Resource.java:120) + at org.eclipse.swt.graphics.Font.(Font.java:111) + at org.eclipse.jface.resource.ArrayFontDescriptor.createFont(ArrayFontDescriptor.java:78) + at org.eclipse.wb.core.gef.policy.selection.TopResizeFigure.paintClientArea(TopResizeFigure.java:68) + at org.eclipse.wb.draw2d.Figure.paintFigure(Figure.java:360) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:340) + at org.eclipse.wb.draw2d.Figure.paintChildren(Figure.java:380) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:342) + at org.eclipse.wb.draw2d.Figure.paintChildren(Figure.java:380) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:342) + at org.eclipse.wb.internal.draw2d.FigureCanvas.handlePaint(FigureCanvas.java:192) + at org.eclipse.wb.internal.draw2d.FigureCanvas$3.handleEvent(FigureCanvas.java:154) + at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:89) + at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4256) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1066) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1090) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1075) + at org.eclipse.swt.widgets.Composite.WM_PAINT(Composite.java:1627) + at org.eclipse.swt.widgets.Control.windowProc(Control.java:4800) + at org.eclipse.swt.widgets.Canvas.windowProc(Canvas.java:340) + at org.eclipse.swt.widgets.Display.windowProc(Display.java:5022) + at org.eclipse.swt.internal.win32.OS.DispatchMessage(Native Method) + at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3640) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1155) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1046) + at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:155) + at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:643) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:550) + at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:171) + at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:152) + at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:203) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:136) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:402) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:255) + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104) + at java.base/java.lang.reflect.Method.invoke(Method.java:578) + at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:659) + at org.eclipse.equinox.launcher.Main.basicRun(Main.java:596) + at org.eclipse.equinox.launcher.Main.run(Main.java:1467) + +!ENTRY org.eclipse.ui.ide 4 4 2023-12-03 21:11:53.225 +!MESSAGE Not properly disposed SWT resource +!STACK 0 +java.lang.Error: SWT Resource was not properly disposed + at org.eclipse.swt.graphics.Resource.initNonDisposeTracking(Resource.java:172) + at org.eclipse.swt.graphics.Resource.(Resource.java:120) + at org.eclipse.swt.graphics.Font.(Font.java:111) + at org.eclipse.jface.resource.ArrayFontDescriptor.createFont(ArrayFontDescriptor.java:78) + at org.eclipse.wb.core.gef.policy.selection.TopResizeFigure.paintClientArea(TopResizeFigure.java:68) + at org.eclipse.wb.draw2d.Figure.paintFigure(Figure.java:360) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:340) + at org.eclipse.wb.draw2d.Figure.paintChildren(Figure.java:380) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:342) + at org.eclipse.wb.draw2d.Figure.paintChildren(Figure.java:380) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:342) + at org.eclipse.wb.internal.draw2d.FigureCanvas.handlePaint(FigureCanvas.java:192) + at org.eclipse.wb.internal.draw2d.FigureCanvas$3.handleEvent(FigureCanvas.java:154) + at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:89) + at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4256) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1066) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1090) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1075) + at org.eclipse.swt.widgets.Composite.WM_PAINT(Composite.java:1627) + at org.eclipse.swt.widgets.Control.windowProc(Control.java:4800) + at org.eclipse.swt.widgets.Canvas.windowProc(Canvas.java:340) + at org.eclipse.swt.widgets.Display.windowProc(Display.java:5022) + at org.eclipse.swt.internal.win32.OS.DispatchMessage(Native Method) + at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3640) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1155) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1046) + at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:155) + at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:643) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:550) + at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:171) + at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:152) + at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:203) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:136) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:402) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:255) + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104) + at java.base/java.lang.reflect.Method.invoke(Method.java:578) + at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:659) + at org.eclipse.equinox.launcher.Main.basicRun(Main.java:596) + at org.eclipse.equinox.launcher.Main.run(Main.java:1467) + +!ENTRY org.eclipse.ui.ide 4 4 2023-12-03 21:11:53.225 +!MESSAGE Not properly disposed SWT resource +!STACK 0 +java.lang.Error: SWT Resource was not properly disposed + at org.eclipse.swt.graphics.Resource.initNonDisposeTracking(Resource.java:172) + at org.eclipse.swt.graphics.Resource.(Resource.java:120) + at org.eclipse.swt.graphics.Font.(Font.java:111) + at org.eclipse.jface.resource.ArrayFontDescriptor.createFont(ArrayFontDescriptor.java:78) + at org.eclipse.wb.core.gef.policy.selection.TopResizeFigure.paintClientArea(TopResizeFigure.java:68) + at org.eclipse.wb.draw2d.Figure.paintFigure(Figure.java:360) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:340) + at org.eclipse.wb.draw2d.Figure.paintChildren(Figure.java:380) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:342) + at org.eclipse.wb.draw2d.Figure.paintChildren(Figure.java:380) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:342) + at org.eclipse.wb.internal.draw2d.FigureCanvas.handlePaint(FigureCanvas.java:192) + at org.eclipse.wb.internal.draw2d.FigureCanvas$3.handleEvent(FigureCanvas.java:154) + at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:89) + at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4256) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1066) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1090) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1075) + at org.eclipse.swt.widgets.Composite.WM_PAINT(Composite.java:1627) + at org.eclipse.swt.widgets.Control.windowProc(Control.java:4800) + at org.eclipse.swt.widgets.Canvas.windowProc(Canvas.java:340) + at org.eclipse.swt.widgets.Display.windowProc(Display.java:5022) + at org.eclipse.swt.internal.win32.OS.DispatchMessage(Native Method) + at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3640) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1155) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1046) + at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:155) + at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:643) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:550) + at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:171) + at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:152) + at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:203) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:136) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:402) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:255) + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104) + at java.base/java.lang.reflect.Method.invoke(Method.java:578) + at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:659) + at org.eclipse.equinox.launcher.Main.basicRun(Main.java:596) + at org.eclipse.equinox.launcher.Main.run(Main.java:1467) + +!ENTRY org.eclipse.ui.ide 4 4 2023-12-03 21:11:53.225 +!MESSAGE Not properly disposed SWT resource +!STACK 0 +java.lang.Error: SWT Resource was not properly disposed + at org.eclipse.swt.graphics.Resource.initNonDisposeTracking(Resource.java:172) + at org.eclipse.swt.graphics.Resource.(Resource.java:120) + at org.eclipse.swt.graphics.Font.(Font.java:111) + at org.eclipse.jface.resource.ArrayFontDescriptor.createFont(ArrayFontDescriptor.java:78) + at org.eclipse.wb.core.gef.policy.selection.TopResizeFigure.paintClientArea(TopResizeFigure.java:68) + at org.eclipse.wb.draw2d.Figure.paintFigure(Figure.java:360) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:340) + at org.eclipse.wb.draw2d.Figure.paintChildren(Figure.java:380) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:342) + at org.eclipse.wb.draw2d.Figure.paintChildren(Figure.java:380) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:342) + at org.eclipse.wb.internal.draw2d.FigureCanvas.handlePaint(FigureCanvas.java:192) + at org.eclipse.wb.internal.draw2d.FigureCanvas$3.handleEvent(FigureCanvas.java:154) + at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:89) + at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4256) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1066) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1090) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1075) + at org.eclipse.swt.widgets.Composite.WM_PAINT(Composite.java:1627) + at org.eclipse.swt.widgets.Control.windowProc(Control.java:4800) + at org.eclipse.swt.widgets.Canvas.windowProc(Canvas.java:340) + at org.eclipse.swt.widgets.Display.windowProc(Display.java:5022) + at org.eclipse.swt.internal.win32.OS.DispatchMessage(Native Method) + at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3640) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1155) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1046) + at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:155) + at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:643) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:550) + at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:171) + at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:152) + at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:203) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:136) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:402) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:255) + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104) + at java.base/java.lang.reflect.Method.invoke(Method.java:578) + at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:659) + at org.eclipse.equinox.launcher.Main.basicRun(Main.java:596) + at org.eclipse.equinox.launcher.Main.run(Main.java:1467) + +!ENTRY org.eclipse.ui.ide 4 4 2023-12-03 21:11:53.226 +!MESSAGE Not properly disposed SWT resource +!STACK 0 +java.lang.Error: SWT Resource was not properly disposed + at org.eclipse.swt.graphics.Resource.initNonDisposeTracking(Resource.java:172) + at org.eclipse.swt.graphics.Resource.(Resource.java:120) + at org.eclipse.swt.graphics.Font.(Font.java:111) + at org.eclipse.jface.resource.ArrayFontDescriptor.createFont(ArrayFontDescriptor.java:78) + at org.eclipse.wb.core.gef.policy.selection.TopResizeFigure.paintClientArea(TopResizeFigure.java:68) + at org.eclipse.wb.draw2d.Figure.paintFigure(Figure.java:360) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:340) + at org.eclipse.wb.draw2d.Figure.paintChildren(Figure.java:380) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:342) + at org.eclipse.wb.draw2d.Figure.paintChildren(Figure.java:380) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:342) + at org.eclipse.wb.internal.draw2d.FigureCanvas.handlePaint(FigureCanvas.java:192) + at org.eclipse.wb.internal.draw2d.FigureCanvas$3.handleEvent(FigureCanvas.java:154) + at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:89) + at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4256) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1066) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1090) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1075) + at org.eclipse.swt.widgets.Composite.WM_PAINT(Composite.java:1627) + at org.eclipse.swt.widgets.Control.windowProc(Control.java:4800) + at org.eclipse.swt.widgets.Canvas.windowProc(Canvas.java:340) + at org.eclipse.swt.widgets.Display.windowProc(Display.java:5022) + at org.eclipse.swt.internal.win32.OS.DispatchMessage(Native Method) + at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3640) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1155) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1046) + at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:155) + at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:643) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:550) + at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:171) + at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:152) + at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:203) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:136) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:402) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:255) + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104) + at java.base/java.lang.reflect.Method.invoke(Method.java:578) + at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:659) + at org.eclipse.equinox.launcher.Main.basicRun(Main.java:596) + at org.eclipse.equinox.launcher.Main.run(Main.java:1467) + +!ENTRY org.eclipse.ui.ide 4 4 2023-12-03 21:11:53.226 +!MESSAGE Not properly disposed SWT resource +!STACK 0 +java.lang.Error: SWT Resource was not properly disposed + at org.eclipse.swt.graphics.Resource.initNonDisposeTracking(Resource.java:172) + at org.eclipse.swt.graphics.Resource.(Resource.java:120) + at org.eclipse.swt.graphics.Font.(Font.java:111) + at org.eclipse.jface.resource.ArrayFontDescriptor.createFont(ArrayFontDescriptor.java:78) + at org.eclipse.wb.core.gef.policy.selection.TopResizeFigure.paintClientArea(TopResizeFigure.java:68) + at org.eclipse.wb.draw2d.Figure.paintFigure(Figure.java:360) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:340) + at org.eclipse.wb.draw2d.Figure.paintChildren(Figure.java:380) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:342) + at org.eclipse.wb.draw2d.Figure.paintChildren(Figure.java:380) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:342) + at org.eclipse.wb.internal.draw2d.FigureCanvas.handlePaint(FigureCanvas.java:192) + at org.eclipse.wb.internal.draw2d.FigureCanvas$3.handleEvent(FigureCanvas.java:154) + at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:89) + at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4256) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1066) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1090) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1075) + at org.eclipse.swt.widgets.Composite.WM_PAINT(Composite.java:1627) + at org.eclipse.swt.widgets.Control.windowProc(Control.java:4800) + at org.eclipse.swt.widgets.Canvas.windowProc(Canvas.java:340) + at org.eclipse.swt.widgets.Display.windowProc(Display.java:5022) + at org.eclipse.swt.internal.win32.OS.DispatchMessage(Native Method) + at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3640) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1155) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1046) + at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:155) + at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:643) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:550) + at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:171) + at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:152) + at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:203) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:136) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:402) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:255) + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104) + at java.base/java.lang.reflect.Method.invoke(Method.java:578) + at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:659) + at org.eclipse.equinox.launcher.Main.basicRun(Main.java:596) + at org.eclipse.equinox.launcher.Main.run(Main.java:1467) + +!ENTRY org.eclipse.ui.ide 4 4 2023-12-03 21:11:53.226 +!MESSAGE Not properly disposed SWT resource +!STACK 0 +java.lang.Error: SWT Resource was not properly disposed + at org.eclipse.swt.graphics.Resource.initNonDisposeTracking(Resource.java:172) + at org.eclipse.swt.graphics.Resource.(Resource.java:120) + at org.eclipse.swt.graphics.Font.(Font.java:111) + at org.eclipse.jface.resource.ArrayFontDescriptor.createFont(ArrayFontDescriptor.java:78) + at org.eclipse.wb.core.gef.policy.selection.TopResizeFigure.paintClientArea(TopResizeFigure.java:68) + at org.eclipse.wb.draw2d.Figure.paintFigure(Figure.java:360) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:340) + at org.eclipse.wb.draw2d.Figure.paintChildren(Figure.java:380) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:342) + at org.eclipse.wb.draw2d.Figure.paintChildren(Figure.java:380) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:342) + at org.eclipse.wb.internal.draw2d.FigureCanvas.handlePaint(FigureCanvas.java:192) + at org.eclipse.wb.internal.draw2d.FigureCanvas$3.handleEvent(FigureCanvas.java:154) + at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:89) + at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4256) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1066) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1090) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1075) + at org.eclipse.swt.widgets.Composite.WM_PAINT(Composite.java:1627) + at org.eclipse.swt.widgets.Control.windowProc(Control.java:4800) + at org.eclipse.swt.widgets.Canvas.windowProc(Canvas.java:340) + at org.eclipse.swt.widgets.Display.windowProc(Display.java:5022) + at org.eclipse.swt.internal.win32.OS.DispatchMessage(Native Method) + at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3640) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1155) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1046) + at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:155) + at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:643) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:550) + at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:171) + at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:152) + at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:203) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:136) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:402) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:255) + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104) + at java.base/java.lang.reflect.Method.invoke(Method.java:578) + at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:659) + at org.eclipse.equinox.launcher.Main.basicRun(Main.java:596) + at org.eclipse.equinox.launcher.Main.run(Main.java:1467) + +!ENTRY org.eclipse.ui.ide 4 4 2023-12-03 21:11:53.227 +!MESSAGE Not properly disposed SWT resource +!STACK 0 +java.lang.Error: SWT Resource was not properly disposed + at org.eclipse.swt.graphics.Resource.initNonDisposeTracking(Resource.java:172) + at org.eclipse.swt.graphics.Resource.(Resource.java:120) + at org.eclipse.swt.graphics.Font.(Font.java:111) + at org.eclipse.jface.resource.ArrayFontDescriptor.createFont(ArrayFontDescriptor.java:78) + at org.eclipse.wb.core.gef.policy.selection.TopResizeFigure.paintClientArea(TopResizeFigure.java:68) + at org.eclipse.wb.draw2d.Figure.paintFigure(Figure.java:360) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:340) + at org.eclipse.wb.draw2d.Figure.paintChildren(Figure.java:380) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:342) + at org.eclipse.wb.draw2d.Figure.paintChildren(Figure.java:380) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:342) + at org.eclipse.wb.internal.draw2d.FigureCanvas.handlePaint(FigureCanvas.java:192) + at org.eclipse.wb.internal.draw2d.FigureCanvas$3.handleEvent(FigureCanvas.java:154) + at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:89) + at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4256) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1066) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1090) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1075) + at org.eclipse.swt.widgets.Composite.WM_PAINT(Composite.java:1627) + at org.eclipse.swt.widgets.Control.windowProc(Control.java:4800) + at org.eclipse.swt.widgets.Canvas.windowProc(Canvas.java:340) + at org.eclipse.swt.widgets.Display.windowProc(Display.java:5022) + at org.eclipse.swt.internal.win32.OS.DispatchMessage(Native Method) + at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3640) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1155) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1046) + at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:155) + at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:643) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:550) + at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:171) + at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:152) + at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:203) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:136) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:402) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:255) + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104) + at java.base/java.lang.reflect.Method.invoke(Method.java:578) + at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:659) + at org.eclipse.equinox.launcher.Main.basicRun(Main.java:596) + at org.eclipse.equinox.launcher.Main.run(Main.java:1467) + +!ENTRY org.eclipse.ui.ide 4 4 2023-12-03 21:11:53.227 +!MESSAGE Not properly disposed SWT resource +!STACK 0 +java.lang.Error: SWT Resource was not properly disposed + at org.eclipse.swt.graphics.Resource.initNonDisposeTracking(Resource.java:172) + at org.eclipse.swt.graphics.Resource.(Resource.java:120) + at org.eclipse.swt.graphics.Font.(Font.java:111) + at org.eclipse.jface.resource.ArrayFontDescriptor.createFont(ArrayFontDescriptor.java:78) + at org.eclipse.wb.core.gef.policy.selection.TopResizeFigure.paintClientArea(TopResizeFigure.java:68) + at org.eclipse.wb.draw2d.Figure.paintFigure(Figure.java:360) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:340) + at org.eclipse.wb.draw2d.Figure.paintChildren(Figure.java:380) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:342) + at org.eclipse.wb.draw2d.Figure.paintChildren(Figure.java:380) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:342) + at org.eclipse.wb.internal.draw2d.FigureCanvas.handlePaint(FigureCanvas.java:192) + at org.eclipse.wb.internal.draw2d.FigureCanvas$3.handleEvent(FigureCanvas.java:154) + at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:89) + at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4256) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1066) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1090) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1075) + at org.eclipse.swt.widgets.Composite.WM_PAINT(Composite.java:1627) + at org.eclipse.swt.widgets.Control.windowProc(Control.java:4800) + at org.eclipse.swt.widgets.Canvas.windowProc(Canvas.java:340) + at org.eclipse.swt.widgets.Display.windowProc(Display.java:5022) + at org.eclipse.swt.internal.win32.OS.DispatchMessage(Native Method) + at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3640) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1155) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1046) + at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:155) + at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:643) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:550) + at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:171) + at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:152) + at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:203) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:136) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:402) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:255) + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104) + at java.base/java.lang.reflect.Method.invoke(Method.java:578) + at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:659) + at org.eclipse.equinox.launcher.Main.basicRun(Main.java:596) + at org.eclipse.equinox.launcher.Main.run(Main.java:1467) + +!ENTRY org.eclipse.ui.ide 4 4 2023-12-03 21:11:53.227 +!MESSAGE Not properly disposed SWT resource +!STACK 0 +java.lang.Error: SWT Resource was not properly disposed + at org.eclipse.swt.graphics.Resource.initNonDisposeTracking(Resource.java:172) + at org.eclipse.swt.graphics.Resource.(Resource.java:120) + at org.eclipse.swt.graphics.Font.(Font.java:111) + at org.eclipse.jface.resource.ArrayFontDescriptor.createFont(ArrayFontDescriptor.java:78) + at org.eclipse.wb.core.gef.policy.selection.TopResizeFigure.paintClientArea(TopResizeFigure.java:68) + at org.eclipse.wb.draw2d.Figure.paintFigure(Figure.java:360) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:340) + at org.eclipse.wb.draw2d.Figure.paintChildren(Figure.java:380) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:342) + at org.eclipse.wb.draw2d.Figure.paintChildren(Figure.java:380) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:342) + at org.eclipse.wb.internal.draw2d.FigureCanvas.handlePaint(FigureCanvas.java:192) + at org.eclipse.wb.internal.draw2d.FigureCanvas$3.handleEvent(FigureCanvas.java:154) + at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:89) + at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4256) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1066) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1090) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1075) + at org.eclipse.swt.widgets.Composite.WM_PAINT(Composite.java:1627) + at org.eclipse.swt.widgets.Control.windowProc(Control.java:4800) + at org.eclipse.swt.widgets.Canvas.windowProc(Canvas.java:340) + at org.eclipse.swt.widgets.Display.windowProc(Display.java:5022) + at org.eclipse.swt.internal.win32.OS.DispatchMessage(Native Method) + at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3640) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1155) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1046) + at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:155) + at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:643) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:550) + at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:171) + at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:152) + at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:203) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:136) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:402) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:255) + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104) + at java.base/java.lang.reflect.Method.invoke(Method.java:578) + at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:659) + at org.eclipse.equinox.launcher.Main.basicRun(Main.java:596) + at org.eclipse.equinox.launcher.Main.run(Main.java:1467) + +!ENTRY org.eclipse.ui.ide 4 4 2023-12-03 21:11:53.228 +!MESSAGE Not properly disposed SWT resource +!STACK 0 +java.lang.Error: SWT Resource was not properly disposed + at org.eclipse.swt.graphics.Resource.initNonDisposeTracking(Resource.java:172) + at org.eclipse.swt.graphics.Resource.(Resource.java:120) + at org.eclipse.swt.graphics.Font.(Font.java:111) + at org.eclipse.jface.resource.ArrayFontDescriptor.createFont(ArrayFontDescriptor.java:78) + at org.eclipse.wb.core.gef.policy.selection.TopResizeFigure.paintClientArea(TopResizeFigure.java:68) + at org.eclipse.wb.draw2d.Figure.paintFigure(Figure.java:360) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:340) + at org.eclipse.wb.draw2d.Figure.paintChildren(Figure.java:380) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:342) + at org.eclipse.wb.draw2d.Figure.paintChildren(Figure.java:380) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:342) + at org.eclipse.wb.internal.draw2d.FigureCanvas.handlePaint(FigureCanvas.java:192) + at org.eclipse.wb.internal.draw2d.FigureCanvas$3.handleEvent(FigureCanvas.java:154) + at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:89) + at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4256) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1066) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1090) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1075) + at org.eclipse.swt.widgets.Composite.WM_PAINT(Composite.java:1627) + at org.eclipse.swt.widgets.Control.windowProc(Control.java:4800) + at org.eclipse.swt.widgets.Canvas.windowProc(Canvas.java:340) + at org.eclipse.swt.widgets.Display.windowProc(Display.java:5022) + at org.eclipse.swt.internal.win32.OS.DispatchMessage(Native Method) + at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3640) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1155) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1046) + at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:155) + at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:643) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:550) + at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:171) + at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:152) + at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:203) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:136) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:402) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:255) + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104) + at java.base/java.lang.reflect.Method.invoke(Method.java:578) + at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:659) + at org.eclipse.equinox.launcher.Main.basicRun(Main.java:596) + at org.eclipse.equinox.launcher.Main.run(Main.java:1467) + +!ENTRY org.eclipse.ui.ide 4 4 2023-12-03 21:11:53.228 +!MESSAGE Not properly disposed SWT resource +!STACK 0 +java.lang.Error: SWT Resource was not properly disposed + at org.eclipse.swt.graphics.Resource.initNonDisposeTracking(Resource.java:172) + at org.eclipse.swt.graphics.Resource.(Resource.java:120) + at org.eclipse.swt.graphics.Font.(Font.java:111) + at org.eclipse.jface.resource.ArrayFontDescriptor.createFont(ArrayFontDescriptor.java:78) + at org.eclipse.wb.core.gef.policy.selection.TopResizeFigure.paintClientArea(TopResizeFigure.java:68) + at org.eclipse.wb.draw2d.Figure.paintFigure(Figure.java:360) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:340) + at org.eclipse.wb.draw2d.Figure.paintChildren(Figure.java:380) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:342) + at org.eclipse.wb.draw2d.Figure.paintChildren(Figure.java:380) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:342) + at org.eclipse.wb.internal.draw2d.FigureCanvas.handlePaint(FigureCanvas.java:192) + at org.eclipse.wb.internal.draw2d.FigureCanvas$3.handleEvent(FigureCanvas.java:154) + at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:89) + at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4256) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1066) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1090) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1075) + at org.eclipse.swt.widgets.Composite.WM_PAINT(Composite.java:1627) + at org.eclipse.swt.widgets.Control.windowProc(Control.java:4800) + at org.eclipse.swt.widgets.Canvas.windowProc(Canvas.java:340) + at org.eclipse.swt.widgets.Display.windowProc(Display.java:5022) + at org.eclipse.swt.internal.win32.OS.DispatchMessage(Native Method) + at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3640) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1155) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1046) + at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:155) + at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:643) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:550) + at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:171) + at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:152) + at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:203) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:136) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:402) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:255) + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104) + at java.base/java.lang.reflect.Method.invoke(Method.java:578) + at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:659) + at org.eclipse.equinox.launcher.Main.basicRun(Main.java:596) + at org.eclipse.equinox.launcher.Main.run(Main.java:1467) + +!ENTRY org.eclipse.ui.ide 4 4 2023-12-03 21:11:53.228 +!MESSAGE Not properly disposed SWT resource +!STACK 0 +java.lang.Error: SWT Resource was not properly disposed + at org.eclipse.swt.graphics.Resource.initNonDisposeTracking(Resource.java:172) + at org.eclipse.swt.graphics.Resource.(Resource.java:120) + at org.eclipse.swt.graphics.Font.(Font.java:111) + at org.eclipse.jface.resource.ArrayFontDescriptor.createFont(ArrayFontDescriptor.java:78) + at org.eclipse.wb.core.gef.policy.selection.TopResizeFigure.paintClientArea(TopResizeFigure.java:68) + at org.eclipse.wb.draw2d.Figure.paintFigure(Figure.java:360) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:340) + at org.eclipse.wb.draw2d.Figure.paintChildren(Figure.java:380) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:342) + at org.eclipse.wb.draw2d.Figure.paintChildren(Figure.java:380) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:342) + at org.eclipse.wb.internal.draw2d.FigureCanvas.handlePaint(FigureCanvas.java:192) + at org.eclipse.wb.internal.draw2d.FigureCanvas$3.handleEvent(FigureCanvas.java:154) + at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:89) + at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4256) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1066) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1090) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1075) + at org.eclipse.swt.widgets.Composite.WM_PAINT(Composite.java:1627) + at org.eclipse.swt.widgets.Control.windowProc(Control.java:4800) + at org.eclipse.swt.widgets.Canvas.windowProc(Canvas.java:340) + at org.eclipse.swt.widgets.Display.windowProc(Display.java:5022) + at org.eclipse.swt.internal.win32.OS.DispatchMessage(Native Method) + at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3640) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1155) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1046) + at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:155) + at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:643) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:550) + at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:171) + at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:152) + at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:203) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:136) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:402) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:255) + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104) + at java.base/java.lang.reflect.Method.invoke(Method.java:578) + at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:659) + at org.eclipse.equinox.launcher.Main.basicRun(Main.java:596) + at org.eclipse.equinox.launcher.Main.run(Main.java:1467) + +!ENTRY org.eclipse.ui.ide 4 4 2023-12-03 21:11:53.228 +!MESSAGE Not properly disposed SWT resource +!STACK 0 +java.lang.Error: SWT Resource was not properly disposed + at org.eclipse.swt.graphics.Resource.initNonDisposeTracking(Resource.java:172) + at org.eclipse.swt.graphics.Resource.(Resource.java:120) + at org.eclipse.swt.graphics.Font.(Font.java:111) + at org.eclipse.jface.resource.ArrayFontDescriptor.createFont(ArrayFontDescriptor.java:78) + at org.eclipse.wb.core.gef.policy.selection.TopResizeFigure.paintClientArea(TopResizeFigure.java:68) + at org.eclipse.wb.draw2d.Figure.paintFigure(Figure.java:360) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:340) + at org.eclipse.wb.draw2d.Figure.paintChildren(Figure.java:380) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:342) + at org.eclipse.wb.draw2d.Figure.paintChildren(Figure.java:380) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:342) + at org.eclipse.wb.internal.draw2d.FigureCanvas.handlePaint(FigureCanvas.java:192) + at org.eclipse.wb.internal.draw2d.FigureCanvas$3.handleEvent(FigureCanvas.java:154) + at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:89) + at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4256) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1066) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1090) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1075) + at org.eclipse.swt.widgets.Composite.WM_PAINT(Composite.java:1627) + at org.eclipse.swt.widgets.Control.windowProc(Control.java:4800) + at org.eclipse.swt.widgets.Canvas.windowProc(Canvas.java:340) + at org.eclipse.swt.widgets.Display.windowProc(Display.java:5022) + at org.eclipse.swt.internal.win32.OS.DispatchMessage(Native Method) + at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3640) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1155) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1046) + at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:155) + at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:643) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:550) + at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:171) + at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:152) + at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:203) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:136) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:402) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:255) + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104) + at java.base/java.lang.reflect.Method.invoke(Method.java:578) + at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:659) + at org.eclipse.equinox.launcher.Main.basicRun(Main.java:596) + at org.eclipse.equinox.launcher.Main.run(Main.java:1467) + +!ENTRY org.eclipse.ui.ide 4 4 2023-12-03 21:11:53.229 +!MESSAGE Not properly disposed SWT resource +!STACK 0 +java.lang.Error: SWT Resource was not properly disposed + at org.eclipse.swt.graphics.Resource.initNonDisposeTracking(Resource.java:172) + at org.eclipse.swt.graphics.Resource.(Resource.java:120) + at org.eclipse.swt.graphics.Font.(Font.java:111) + at org.eclipse.jface.resource.ArrayFontDescriptor.createFont(ArrayFontDescriptor.java:78) + at org.eclipse.wb.core.gef.policy.selection.TopResizeFigure.paintClientArea(TopResizeFigure.java:68) + at org.eclipse.wb.draw2d.Figure.paintFigure(Figure.java:360) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:340) + at org.eclipse.wb.draw2d.Figure.paintChildren(Figure.java:380) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:342) + at org.eclipse.wb.draw2d.Figure.paintChildren(Figure.java:380) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:342) + at org.eclipse.wb.internal.draw2d.FigureCanvas.handlePaint(FigureCanvas.java:192) + at org.eclipse.wb.internal.draw2d.FigureCanvas$3.handleEvent(FigureCanvas.java:154) + at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:89) + at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4256) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1066) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1090) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1075) + at org.eclipse.swt.widgets.Composite.WM_PAINT(Composite.java:1627) + at org.eclipse.swt.widgets.Control.windowProc(Control.java:4800) + at org.eclipse.swt.widgets.Canvas.windowProc(Canvas.java:340) + at org.eclipse.swt.widgets.Display.windowProc(Display.java:5022) + at org.eclipse.swt.internal.win32.OS.DispatchMessage(Native Method) + at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3640) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1155) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1046) + at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:155) + at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:643) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:550) + at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:171) + at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:152) + at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:203) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:136) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:402) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:255) + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104) + at java.base/java.lang.reflect.Method.invoke(Method.java:578) + at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:659) + at org.eclipse.equinox.launcher.Main.basicRun(Main.java:596) + at org.eclipse.equinox.launcher.Main.run(Main.java:1467) + +!ENTRY org.eclipse.ui.ide 4 4 2023-12-03 21:11:53.229 +!MESSAGE Not properly disposed SWT resource +!STACK 0 +java.lang.Error: SWT Resource was not properly disposed + at org.eclipse.swt.graphics.Resource.initNonDisposeTracking(Resource.java:172) + at org.eclipse.swt.graphics.Resource.(Resource.java:120) + at org.eclipse.swt.graphics.Font.(Font.java:111) + at org.eclipse.jface.resource.ArrayFontDescriptor.createFont(ArrayFontDescriptor.java:78) + at org.eclipse.wb.core.gef.policy.selection.TopResizeFigure.paintClientArea(TopResizeFigure.java:68) + at org.eclipse.wb.draw2d.Figure.paintFigure(Figure.java:360) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:340) + at org.eclipse.wb.draw2d.Figure.paintChildren(Figure.java:380) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:342) + at org.eclipse.wb.draw2d.Figure.paintChildren(Figure.java:380) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:342) + at org.eclipse.wb.internal.draw2d.FigureCanvas.handlePaint(FigureCanvas.java:192) + at org.eclipse.wb.internal.draw2d.FigureCanvas$3.handleEvent(FigureCanvas.java:154) + at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:89) + at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4256) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1066) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1090) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1075) + at org.eclipse.swt.widgets.Composite.WM_PAINT(Composite.java:1627) + at org.eclipse.swt.widgets.Control.windowProc(Control.java:4800) + at org.eclipse.swt.widgets.Canvas.windowProc(Canvas.java:340) + at org.eclipse.swt.widgets.Display.windowProc(Display.java:5022) + at org.eclipse.swt.internal.win32.OS.DispatchMessage(Native Method) + at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3640) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1155) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1046) + at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:155) + at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:643) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:550) + at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:171) + at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:152) + at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:203) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:136) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:402) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:255) + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104) + at java.base/java.lang.reflect.Method.invoke(Method.java:578) + at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:659) + at org.eclipse.equinox.launcher.Main.basicRun(Main.java:596) + at org.eclipse.equinox.launcher.Main.run(Main.java:1467) + +!ENTRY org.eclipse.ui.ide 4 4 2023-12-03 21:11:53.229 +!MESSAGE Not properly disposed SWT resource +!STACK 0 +java.lang.Error: SWT Resource was not properly disposed + at org.eclipse.swt.graphics.Resource.initNonDisposeTracking(Resource.java:172) + at org.eclipse.swt.graphics.Resource.(Resource.java:120) + at org.eclipse.swt.graphics.Font.(Font.java:111) + at org.eclipse.jface.resource.ArrayFontDescriptor.createFont(ArrayFontDescriptor.java:78) + at org.eclipse.wb.core.gef.policy.selection.TopResizeFigure.paintClientArea(TopResizeFigure.java:68) + at org.eclipse.wb.draw2d.Figure.paintFigure(Figure.java:360) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:340) + at org.eclipse.wb.draw2d.Figure.paintChildren(Figure.java:380) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:342) + at org.eclipse.wb.draw2d.Figure.paintChildren(Figure.java:380) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:342) + at org.eclipse.wb.internal.draw2d.FigureCanvas.handlePaint(FigureCanvas.java:192) + at org.eclipse.wb.internal.draw2d.FigureCanvas$3.handleEvent(FigureCanvas.java:154) + at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:89) + at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4256) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1066) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1090) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1075) + at org.eclipse.swt.widgets.Composite.WM_PAINT(Composite.java:1627) + at org.eclipse.swt.widgets.Control.windowProc(Control.java:4800) + at org.eclipse.swt.widgets.Canvas.windowProc(Canvas.java:340) + at org.eclipse.swt.widgets.Display.windowProc(Display.java:5022) + at org.eclipse.swt.internal.win32.OS.DispatchMessage(Native Method) + at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3640) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1155) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1046) + at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:155) + at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:643) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:550) + at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:171) + at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:152) + at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:203) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:136) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:402) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:255) + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104) + at java.base/java.lang.reflect.Method.invoke(Method.java:578) + at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:659) + at org.eclipse.equinox.launcher.Main.basicRun(Main.java:596) + at org.eclipse.equinox.launcher.Main.run(Main.java:1467) + +!ENTRY org.eclipse.ui.ide 4 4 2023-12-03 21:11:53.229 +!MESSAGE Not properly disposed SWT resource +!STACK 0 +java.lang.Error: SWT Resource was not properly disposed + at org.eclipse.swt.graphics.Resource.initNonDisposeTracking(Resource.java:172) + at org.eclipse.swt.graphics.Resource.(Resource.java:120) + at org.eclipse.swt.graphics.Font.(Font.java:111) + at org.eclipse.jface.resource.ArrayFontDescriptor.createFont(ArrayFontDescriptor.java:78) + at org.eclipse.wb.core.gef.policy.selection.TopResizeFigure.paintClientArea(TopResizeFigure.java:68) + at org.eclipse.wb.draw2d.Figure.paintFigure(Figure.java:360) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:340) + at org.eclipse.wb.draw2d.Figure.paintChildren(Figure.java:380) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:342) + at org.eclipse.wb.draw2d.Figure.paintChildren(Figure.java:380) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:342) + at org.eclipse.wb.internal.draw2d.FigureCanvas.handlePaint(FigureCanvas.java:192) + at org.eclipse.wb.internal.draw2d.FigureCanvas$3.handleEvent(FigureCanvas.java:154) + at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:89) + at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4256) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1066) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1090) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1075) + at org.eclipse.swt.widgets.Composite.WM_PAINT(Composite.java:1627) + at org.eclipse.swt.widgets.Control.windowProc(Control.java:4800) + at org.eclipse.swt.widgets.Canvas.windowProc(Canvas.java:340) + at org.eclipse.swt.widgets.Display.windowProc(Display.java:5022) + at org.eclipse.swt.internal.win32.OS.DispatchMessage(Native Method) + at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3640) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1155) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1046) + at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:155) + at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:643) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:550) + at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:171) + at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:152) + at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:203) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:136) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:402) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:255) + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104) + at java.base/java.lang.reflect.Method.invoke(Method.java:578) + at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:659) + at org.eclipse.equinox.launcher.Main.basicRun(Main.java:596) + at org.eclipse.equinox.launcher.Main.run(Main.java:1467) + +!ENTRY org.eclipse.ui.ide 4 4 2023-12-03 21:11:53.231 +!MESSAGE Not properly disposed SWT resource +!STACK 0 +java.lang.Error: SWT Resource was not properly disposed + at org.eclipse.swt.graphics.Resource.initNonDisposeTracking(Resource.java:172) + at org.eclipse.swt.graphics.Resource.(Resource.java:120) + at org.eclipse.swt.graphics.Font.(Font.java:111) + at org.eclipse.jface.resource.ArrayFontDescriptor.createFont(ArrayFontDescriptor.java:78) + at org.eclipse.wb.core.gef.policy.selection.TopResizeFigure.paintClientArea(TopResizeFigure.java:68) + at org.eclipse.wb.draw2d.Figure.paintFigure(Figure.java:360) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:340) + at org.eclipse.wb.draw2d.Figure.paintChildren(Figure.java:380) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:342) + at org.eclipse.wb.draw2d.Figure.paintChildren(Figure.java:380) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:342) + at org.eclipse.wb.internal.draw2d.FigureCanvas.handlePaint(FigureCanvas.java:192) + at org.eclipse.wb.internal.draw2d.FigureCanvas$3.handleEvent(FigureCanvas.java:154) + at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:89) + at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4256) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1066) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1090) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1075) + at org.eclipse.swt.widgets.Composite.WM_PAINT(Composite.java:1627) + at org.eclipse.swt.widgets.Control.windowProc(Control.java:4800) + at org.eclipse.swt.widgets.Canvas.windowProc(Canvas.java:340) + at org.eclipse.swt.widgets.Display.windowProc(Display.java:5022) + at org.eclipse.swt.internal.win32.OS.DispatchMessage(Native Method) + at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3640) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1155) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1046) + at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:155) + at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:643) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:550) + at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:171) + at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:152) + at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:203) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:136) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:402) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:255) + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104) + at java.base/java.lang.reflect.Method.invoke(Method.java:578) + at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:659) + at org.eclipse.equinox.launcher.Main.basicRun(Main.java:596) + at org.eclipse.equinox.launcher.Main.run(Main.java:1467) + +!ENTRY org.eclipse.ui.ide 4 4 2023-12-03 21:11:53.231 +!MESSAGE Not properly disposed SWT resource +!STACK 0 +java.lang.Error: SWT Resource was not properly disposed + at org.eclipse.swt.graphics.Resource.initNonDisposeTracking(Resource.java:172) + at org.eclipse.swt.graphics.Resource.(Resource.java:120) + at org.eclipse.swt.graphics.Font.(Font.java:111) + at org.eclipse.jface.resource.ArrayFontDescriptor.createFont(ArrayFontDescriptor.java:78) + at org.eclipse.wb.core.gef.policy.selection.TopResizeFigure.paintClientArea(TopResizeFigure.java:68) + at org.eclipse.wb.draw2d.Figure.paintFigure(Figure.java:360) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:340) + at org.eclipse.wb.draw2d.Figure.paintChildren(Figure.java:380) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:342) + at org.eclipse.wb.draw2d.Figure.paintChildren(Figure.java:380) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:342) + at org.eclipse.wb.internal.draw2d.FigureCanvas.handlePaint(FigureCanvas.java:192) + at org.eclipse.wb.internal.draw2d.FigureCanvas$3.handleEvent(FigureCanvas.java:154) + at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:89) + at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4256) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1066) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1090) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1075) + at org.eclipse.swt.widgets.Composite.WM_PAINT(Composite.java:1627) + at org.eclipse.swt.widgets.Control.windowProc(Control.java:4800) + at org.eclipse.swt.widgets.Canvas.windowProc(Canvas.java:340) + at org.eclipse.swt.widgets.Display.windowProc(Display.java:5022) + at org.eclipse.swt.internal.win32.OS.DispatchMessage(Native Method) + at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3640) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1155) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1046) + at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:155) + at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:643) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:550) + at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:171) + at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:152) + at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:203) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:136) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:402) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:255) + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104) + at java.base/java.lang.reflect.Method.invoke(Method.java:578) + at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:659) + at org.eclipse.equinox.launcher.Main.basicRun(Main.java:596) + at org.eclipse.equinox.launcher.Main.run(Main.java:1467) + +!ENTRY org.eclipse.ui.ide 4 4 2023-12-03 21:11:53.232 +!MESSAGE Not properly disposed SWT resource +!STACK 0 +java.lang.Error: SWT Resource was not properly disposed + at org.eclipse.swt.graphics.Resource.initNonDisposeTracking(Resource.java:172) + at org.eclipse.swt.graphics.Resource.(Resource.java:120) + at org.eclipse.swt.graphics.Font.(Font.java:111) + at org.eclipse.jface.resource.ArrayFontDescriptor.createFont(ArrayFontDescriptor.java:78) + at org.eclipse.wb.core.gef.policy.selection.TopResizeFigure.paintClientArea(TopResizeFigure.java:68) + at org.eclipse.wb.draw2d.Figure.paintFigure(Figure.java:360) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:340) + at org.eclipse.wb.draw2d.Figure.paintChildren(Figure.java:380) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:342) + at org.eclipse.wb.draw2d.Figure.paintChildren(Figure.java:380) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:342) + at org.eclipse.wb.internal.draw2d.FigureCanvas.handlePaint(FigureCanvas.java:192) + at org.eclipse.wb.internal.draw2d.FigureCanvas$3.handleEvent(FigureCanvas.java:154) + at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:89) + at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4256) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1066) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1090) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1075) + at org.eclipse.swt.widgets.Composite.WM_PAINT(Composite.java:1627) + at org.eclipse.swt.widgets.Control.windowProc(Control.java:4800) + at org.eclipse.swt.widgets.Canvas.windowProc(Canvas.java:340) + at org.eclipse.swt.widgets.Display.windowProc(Display.java:5022) + at org.eclipse.swt.internal.win32.OS.DispatchMessage(Native Method) + at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3640) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1155) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1046) + at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:155) + at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:643) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:550) + at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:171) + at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:152) + at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:203) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:136) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:402) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:255) + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104) + at java.base/java.lang.reflect.Method.invoke(Method.java:578) + at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:659) + at org.eclipse.equinox.launcher.Main.basicRun(Main.java:596) + at org.eclipse.equinox.launcher.Main.run(Main.java:1467) + +!ENTRY org.eclipse.ui.ide 4 4 2023-12-03 21:11:53.232 +!MESSAGE Not properly disposed SWT resource +!STACK 0 +java.lang.Error: SWT Resource was not properly disposed + at org.eclipse.swt.graphics.Resource.initNonDisposeTracking(Resource.java:172) + at org.eclipse.swt.graphics.Resource.(Resource.java:120) + at org.eclipse.swt.graphics.Font.(Font.java:111) + at org.eclipse.jface.resource.ArrayFontDescriptor.createFont(ArrayFontDescriptor.java:78) + at org.eclipse.wb.core.gef.policy.selection.TopResizeFigure.paintClientArea(TopResizeFigure.java:68) + at org.eclipse.wb.draw2d.Figure.paintFigure(Figure.java:360) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:340) + at org.eclipse.wb.draw2d.Figure.paintChildren(Figure.java:380) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:342) + at org.eclipse.wb.draw2d.Figure.paintChildren(Figure.java:380) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:342) + at org.eclipse.wb.internal.draw2d.FigureCanvas.handlePaint(FigureCanvas.java:192) + at org.eclipse.wb.internal.draw2d.FigureCanvas$3.handleEvent(FigureCanvas.java:154) + at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:89) + at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4256) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1066) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1090) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1075) + at org.eclipse.swt.widgets.Composite.WM_PAINT(Composite.java:1627) + at org.eclipse.swt.widgets.Control.windowProc(Control.java:4800) + at org.eclipse.swt.widgets.Canvas.windowProc(Canvas.java:340) + at org.eclipse.swt.widgets.Display.windowProc(Display.java:5022) + at org.eclipse.swt.internal.win32.OS.DispatchMessage(Native Method) + at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3640) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1155) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1046) + at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:155) + at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:643) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:550) + at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:171) + at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:152) + at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:203) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:136) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:402) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:255) + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104) + at java.base/java.lang.reflect.Method.invoke(Method.java:578) + at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:659) + at org.eclipse.equinox.launcher.Main.basicRun(Main.java:596) + at org.eclipse.equinox.launcher.Main.run(Main.java:1467) + +!ENTRY org.eclipse.ui.ide 4 4 2023-12-03 21:11:53.232 +!MESSAGE Not properly disposed SWT resource +!STACK 0 +java.lang.Error: SWT Resource was not properly disposed + at org.eclipse.swt.graphics.Resource.initNonDisposeTracking(Resource.java:172) + at org.eclipse.swt.graphics.Resource.(Resource.java:120) + at org.eclipse.swt.graphics.Font.(Font.java:111) + at org.eclipse.jface.resource.ArrayFontDescriptor.createFont(ArrayFontDescriptor.java:78) + at org.eclipse.wb.core.gef.policy.selection.TopResizeFigure.paintClientArea(TopResizeFigure.java:68) + at org.eclipse.wb.draw2d.Figure.paintFigure(Figure.java:360) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:340) + at org.eclipse.wb.draw2d.Figure.paintChildren(Figure.java:380) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:342) + at org.eclipse.wb.draw2d.Figure.paintChildren(Figure.java:380) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:342) + at org.eclipse.wb.internal.draw2d.FigureCanvas.handlePaint(FigureCanvas.java:192) + at org.eclipse.wb.internal.draw2d.FigureCanvas$3.handleEvent(FigureCanvas.java:154) + at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:89) + at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4256) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1066) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1090) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1075) + at org.eclipse.swt.widgets.Composite.WM_PAINT(Composite.java:1627) + at org.eclipse.swt.widgets.Control.windowProc(Control.java:4800) + at org.eclipse.swt.widgets.Canvas.windowProc(Canvas.java:340) + at org.eclipse.swt.widgets.Display.windowProc(Display.java:5022) + at org.eclipse.swt.internal.win32.OS.DispatchMessage(Native Method) + at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3640) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1155) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1046) + at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:155) + at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:643) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:550) + at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:171) + at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:152) + at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:203) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:136) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:402) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:255) + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104) + at java.base/java.lang.reflect.Method.invoke(Method.java:578) + at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:659) + at org.eclipse.equinox.launcher.Main.basicRun(Main.java:596) + at org.eclipse.equinox.launcher.Main.run(Main.java:1467) + +!ENTRY org.eclipse.ui.ide 4 4 2023-12-03 21:11:53.232 +!MESSAGE Not properly disposed SWT resource +!STACK 0 +java.lang.Error: SWT Resource was not properly disposed + at org.eclipse.swt.graphics.Resource.initNonDisposeTracking(Resource.java:172) + at org.eclipse.swt.graphics.Resource.(Resource.java:120) + at org.eclipse.swt.graphics.Font.(Font.java:111) + at org.eclipse.jface.resource.ArrayFontDescriptor.createFont(ArrayFontDescriptor.java:78) + at org.eclipse.wb.core.gef.policy.selection.TopResizeFigure.paintClientArea(TopResizeFigure.java:68) + at org.eclipse.wb.draw2d.Figure.paintFigure(Figure.java:360) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:340) + at org.eclipse.wb.draw2d.Figure.paintChildren(Figure.java:380) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:342) + at org.eclipse.wb.draw2d.Figure.paintChildren(Figure.java:380) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:342) + at org.eclipse.wb.internal.draw2d.FigureCanvas.handlePaint(FigureCanvas.java:192) + at org.eclipse.wb.internal.draw2d.FigureCanvas$3.handleEvent(FigureCanvas.java:154) + at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:89) + at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4256) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1066) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1090) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1075) + at org.eclipse.swt.widgets.Composite.WM_PAINT(Composite.java:1627) + at org.eclipse.swt.widgets.Control.windowProc(Control.java:4800) + at org.eclipse.swt.widgets.Canvas.windowProc(Canvas.java:340) + at org.eclipse.swt.widgets.Display.windowProc(Display.java:5022) + at org.eclipse.swt.internal.win32.OS.DispatchMessage(Native Method) + at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3640) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1155) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1046) + at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:155) + at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:643) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:550) + at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:171) + at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:152) + at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:203) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:136) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:402) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:255) + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104) + at java.base/java.lang.reflect.Method.invoke(Method.java:578) + at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:659) + at org.eclipse.equinox.launcher.Main.basicRun(Main.java:596) + at org.eclipse.equinox.launcher.Main.run(Main.java:1467) + +!ENTRY org.eclipse.ui.ide 4 4 2023-12-03 21:11:53.232 +!MESSAGE Not properly disposed SWT resource +!STACK 0 +java.lang.Error: SWT Resource was not properly disposed + at org.eclipse.swt.graphics.Resource.initNonDisposeTracking(Resource.java:172) + at org.eclipse.swt.graphics.Resource.(Resource.java:120) + at org.eclipse.swt.graphics.Font.(Font.java:111) + at org.eclipse.jface.resource.ArrayFontDescriptor.createFont(ArrayFontDescriptor.java:78) + at org.eclipse.wb.core.gef.policy.selection.TopResizeFigure.paintClientArea(TopResizeFigure.java:68) + at org.eclipse.wb.draw2d.Figure.paintFigure(Figure.java:360) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:340) + at org.eclipse.wb.draw2d.Figure.paintChildren(Figure.java:380) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:342) + at org.eclipse.wb.draw2d.Figure.paintChildren(Figure.java:380) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:342) + at org.eclipse.wb.internal.draw2d.FigureCanvas.handlePaint(FigureCanvas.java:192) + at org.eclipse.wb.internal.draw2d.FigureCanvas$3.handleEvent(FigureCanvas.java:154) + at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:89) + at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4256) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1066) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1090) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1075) + at org.eclipse.swt.widgets.Composite.WM_PAINT(Composite.java:1627) + at org.eclipse.swt.widgets.Control.windowProc(Control.java:4800) + at org.eclipse.swt.widgets.Canvas.windowProc(Canvas.java:340) + at org.eclipse.swt.widgets.Display.windowProc(Display.java:5022) + at org.eclipse.swt.internal.win32.OS.DispatchMessage(Native Method) + at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3640) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1155) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1046) + at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:155) + at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:643) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:550) + at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:171) + at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:152) + at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:203) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:136) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:402) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:255) + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104) + at java.base/java.lang.reflect.Method.invoke(Method.java:578) + at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:659) + at org.eclipse.equinox.launcher.Main.basicRun(Main.java:596) + at org.eclipse.equinox.launcher.Main.run(Main.java:1467) + +!ENTRY org.eclipse.ui.ide 4 4 2023-12-03 21:11:53.233 +!MESSAGE Not properly disposed SWT resource +!STACK 0 +java.lang.Error: SWT Resource was not properly disposed + at org.eclipse.swt.graphics.Resource.initNonDisposeTracking(Resource.java:172) + at org.eclipse.swt.graphics.Resource.(Resource.java:120) + at org.eclipse.swt.graphics.Font.(Font.java:111) + at org.eclipse.jface.resource.ArrayFontDescriptor.createFont(ArrayFontDescriptor.java:78) + at org.eclipse.wb.core.gef.policy.selection.TopResizeFigure.paintClientArea(TopResizeFigure.java:68) + at org.eclipse.wb.draw2d.Figure.paintFigure(Figure.java:360) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:340) + at org.eclipse.wb.draw2d.Figure.paintChildren(Figure.java:380) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:342) + at org.eclipse.wb.draw2d.Figure.paintChildren(Figure.java:380) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:342) + at org.eclipse.wb.internal.draw2d.FigureCanvas.handlePaint(FigureCanvas.java:192) + at org.eclipse.wb.internal.draw2d.FigureCanvas$3.handleEvent(FigureCanvas.java:154) + at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:89) + at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4256) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1066) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1090) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1075) + at org.eclipse.swt.widgets.Composite.WM_PAINT(Composite.java:1627) + at org.eclipse.swt.widgets.Control.windowProc(Control.java:4800) + at org.eclipse.swt.widgets.Canvas.windowProc(Canvas.java:340) + at org.eclipse.swt.widgets.Display.windowProc(Display.java:5022) + at org.eclipse.swt.internal.win32.OS.DispatchMessage(Native Method) + at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3640) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1155) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1046) + at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:155) + at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:643) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:550) + at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:171) + at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:152) + at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:203) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:136) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:402) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:255) + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104) + at java.base/java.lang.reflect.Method.invoke(Method.java:578) + at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:659) + at org.eclipse.equinox.launcher.Main.basicRun(Main.java:596) + at org.eclipse.equinox.launcher.Main.run(Main.java:1467) + +!ENTRY org.eclipse.ui.ide 4 4 2023-12-03 21:11:53.233 +!MESSAGE Not properly disposed SWT resource +!STACK 0 +java.lang.Error: SWT Resource was not properly disposed + at org.eclipse.swt.graphics.Resource.initNonDisposeTracking(Resource.java:172) + at org.eclipse.swt.graphics.Resource.(Resource.java:120) + at org.eclipse.swt.graphics.Font.(Font.java:111) + at org.eclipse.jface.resource.ArrayFontDescriptor.createFont(ArrayFontDescriptor.java:78) + at org.eclipse.wb.core.gef.policy.selection.TopResizeFigure.paintClientArea(TopResizeFigure.java:68) + at org.eclipse.wb.draw2d.Figure.paintFigure(Figure.java:360) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:340) + at org.eclipse.wb.draw2d.Figure.paintChildren(Figure.java:380) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:342) + at org.eclipse.wb.draw2d.Figure.paintChildren(Figure.java:380) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:342) + at org.eclipse.wb.internal.draw2d.FigureCanvas.handlePaint(FigureCanvas.java:192) + at org.eclipse.wb.internal.draw2d.FigureCanvas$3.handleEvent(FigureCanvas.java:154) + at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:89) + at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4256) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1066) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1090) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1075) + at org.eclipse.swt.widgets.Composite.WM_PAINT(Composite.java:1627) + at org.eclipse.swt.widgets.Control.windowProc(Control.java:4800) + at org.eclipse.swt.widgets.Canvas.windowProc(Canvas.java:340) + at org.eclipse.swt.widgets.Display.windowProc(Display.java:5022) + at org.eclipse.swt.internal.win32.OS.DispatchMessage(Native Method) + at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3640) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1155) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1046) + at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:155) + at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:643) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:550) + at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:171) + at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:152) + at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:203) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:136) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:402) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:255) + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104) + at java.base/java.lang.reflect.Method.invoke(Method.java:578) + at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:659) + at org.eclipse.equinox.launcher.Main.basicRun(Main.java:596) + at org.eclipse.equinox.launcher.Main.run(Main.java:1467) + +!ENTRY org.eclipse.ui.ide 4 4 2023-12-03 21:11:53.233 +!MESSAGE Not properly disposed SWT resource +!STACK 0 +java.lang.Error: SWT Resource was not properly disposed + at org.eclipse.swt.graphics.Resource.initNonDisposeTracking(Resource.java:172) + at org.eclipse.swt.graphics.Resource.(Resource.java:120) + at org.eclipse.swt.graphics.Font.(Font.java:111) + at org.eclipse.jface.resource.ArrayFontDescriptor.createFont(ArrayFontDescriptor.java:78) + at org.eclipse.wb.core.gef.policy.selection.TopResizeFigure.paintClientArea(TopResizeFigure.java:68) + at org.eclipse.wb.draw2d.Figure.paintFigure(Figure.java:360) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:340) + at org.eclipse.wb.draw2d.Figure.paintChildren(Figure.java:380) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:342) + at org.eclipse.wb.draw2d.Figure.paintChildren(Figure.java:380) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:342) + at org.eclipse.wb.internal.draw2d.FigureCanvas.handlePaint(FigureCanvas.java:192) + at org.eclipse.wb.internal.draw2d.FigureCanvas$3.handleEvent(FigureCanvas.java:154) + at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:89) + at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4256) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1066) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1090) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1075) + at org.eclipse.swt.widgets.Composite.WM_PAINT(Composite.java:1627) + at org.eclipse.swt.widgets.Control.windowProc(Control.java:4800) + at org.eclipse.swt.widgets.Canvas.windowProc(Canvas.java:340) + at org.eclipse.swt.widgets.Display.windowProc(Display.java:5022) + at org.eclipse.swt.internal.win32.OS.DispatchMessage(Native Method) + at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3640) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1155) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1046) + at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:155) + at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:643) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:550) + at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:171) + at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:152) + at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:203) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:136) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:402) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:255) + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104) + at java.base/java.lang.reflect.Method.invoke(Method.java:578) + at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:659) + at org.eclipse.equinox.launcher.Main.basicRun(Main.java:596) + at org.eclipse.equinox.launcher.Main.run(Main.java:1467) + +!ENTRY org.eclipse.ui.ide 4 4 2023-12-03 21:11:53.233 +!MESSAGE Not properly disposed SWT resource +!STACK 0 +java.lang.Error: SWT Resource was not properly disposed + at org.eclipse.swt.graphics.Resource.initNonDisposeTracking(Resource.java:172) + at org.eclipse.swt.graphics.Resource.(Resource.java:120) + at org.eclipse.swt.graphics.Font.(Font.java:111) + at org.eclipse.jface.resource.ArrayFontDescriptor.createFont(ArrayFontDescriptor.java:78) + at org.eclipse.wb.core.gef.policy.selection.TopResizeFigure.paintClientArea(TopResizeFigure.java:68) + at org.eclipse.wb.draw2d.Figure.paintFigure(Figure.java:360) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:340) + at org.eclipse.wb.draw2d.Figure.paintChildren(Figure.java:380) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:342) + at org.eclipse.wb.draw2d.Figure.paintChildren(Figure.java:380) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:342) + at org.eclipse.wb.internal.draw2d.FigureCanvas.handlePaint(FigureCanvas.java:192) + at org.eclipse.wb.internal.draw2d.FigureCanvas$3.handleEvent(FigureCanvas.java:154) + at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:89) + at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4256) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1066) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1090) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1075) + at org.eclipse.swt.widgets.Composite.WM_PAINT(Composite.java:1627) + at org.eclipse.swt.widgets.Control.windowProc(Control.java:4800) + at org.eclipse.swt.widgets.Canvas.windowProc(Canvas.java:340) + at org.eclipse.swt.widgets.Display.windowProc(Display.java:5022) + at org.eclipse.swt.internal.win32.OS.DispatchMessage(Native Method) + at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3640) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1155) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1046) + at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:155) + at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:643) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:550) + at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:171) + at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:152) + at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:203) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:136) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:402) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:255) + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104) + at java.base/java.lang.reflect.Method.invoke(Method.java:578) + at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:659) + at org.eclipse.equinox.launcher.Main.basicRun(Main.java:596) + at org.eclipse.equinox.launcher.Main.run(Main.java:1467) + +!ENTRY org.eclipse.ui.ide 4 4 2023-12-03 21:11:53.234 +!MESSAGE Not properly disposed SWT resource +!STACK 0 +java.lang.Error: SWT Resource was not properly disposed + at org.eclipse.swt.graphics.Resource.initNonDisposeTracking(Resource.java:172) + at org.eclipse.swt.graphics.Resource.(Resource.java:120) + at org.eclipse.swt.graphics.Font.(Font.java:111) + at org.eclipse.jface.resource.ArrayFontDescriptor.createFont(ArrayFontDescriptor.java:78) + at org.eclipse.wb.core.gef.policy.selection.TopResizeFigure.paintClientArea(TopResizeFigure.java:68) + at org.eclipse.wb.draw2d.Figure.paintFigure(Figure.java:360) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:340) + at org.eclipse.wb.draw2d.Figure.paintChildren(Figure.java:380) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:342) + at org.eclipse.wb.draw2d.Figure.paintChildren(Figure.java:380) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:342) + at org.eclipse.wb.internal.draw2d.FigureCanvas.handlePaint(FigureCanvas.java:192) + at org.eclipse.wb.internal.draw2d.FigureCanvas$3.handleEvent(FigureCanvas.java:154) + at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:89) + at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4256) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1066) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1090) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1075) + at org.eclipse.swt.widgets.Composite.WM_PAINT(Composite.java:1627) + at org.eclipse.swt.widgets.Control.windowProc(Control.java:4800) + at org.eclipse.swt.widgets.Canvas.windowProc(Canvas.java:340) + at org.eclipse.swt.widgets.Display.windowProc(Display.java:5022) + at org.eclipse.swt.internal.win32.OS.DispatchMessage(Native Method) + at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3640) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1155) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1046) + at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:155) + at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:643) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:550) + at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:171) + at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:152) + at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:203) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:136) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:402) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:255) + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104) + at java.base/java.lang.reflect.Method.invoke(Method.java:578) + at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:659) + at org.eclipse.equinox.launcher.Main.basicRun(Main.java:596) + at org.eclipse.equinox.launcher.Main.run(Main.java:1467) + +!ENTRY org.eclipse.ui.ide 4 4 2023-12-03 21:11:53.234 +!MESSAGE Not properly disposed SWT resource +!STACK 0 +java.lang.Error: SWT Resource was not properly disposed + at org.eclipse.swt.graphics.Resource.initNonDisposeTracking(Resource.java:172) + at org.eclipse.swt.graphics.Resource.(Resource.java:120) + at org.eclipse.swt.graphics.Font.(Font.java:111) + at org.eclipse.jface.resource.ArrayFontDescriptor.createFont(ArrayFontDescriptor.java:78) + at org.eclipse.wb.core.gef.policy.selection.TopResizeFigure.paintClientArea(TopResizeFigure.java:68) + at org.eclipse.wb.draw2d.Figure.paintFigure(Figure.java:360) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:340) + at org.eclipse.wb.draw2d.Figure.paintChildren(Figure.java:380) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:342) + at org.eclipse.wb.draw2d.Figure.paintChildren(Figure.java:380) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:342) + at org.eclipse.wb.internal.draw2d.FigureCanvas.handlePaint(FigureCanvas.java:192) + at org.eclipse.wb.internal.draw2d.FigureCanvas$3.handleEvent(FigureCanvas.java:154) + at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:89) + at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4256) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1066) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1090) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1075) + at org.eclipse.swt.widgets.Composite.WM_PAINT(Composite.java:1627) + at org.eclipse.swt.widgets.Control.windowProc(Control.java:4800) + at org.eclipse.swt.widgets.Canvas.windowProc(Canvas.java:340) + at org.eclipse.swt.widgets.Display.windowProc(Display.java:5022) + at org.eclipse.swt.internal.win32.OS.DispatchMessage(Native Method) + at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3640) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1155) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1046) + at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:155) + at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:643) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:550) + at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:171) + at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:152) + at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:203) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:136) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:402) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:255) + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104) + at java.base/java.lang.reflect.Method.invoke(Method.java:578) + at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:659) + at org.eclipse.equinox.launcher.Main.basicRun(Main.java:596) + at org.eclipse.equinox.launcher.Main.run(Main.java:1467) + +!ENTRY org.eclipse.ui.ide 4 4 2023-12-03 21:11:53.234 +!MESSAGE Not properly disposed SWT resource +!STACK 0 +java.lang.Error: SWT Resource was not properly disposed + at org.eclipse.swt.graphics.Resource.initNonDisposeTracking(Resource.java:172) + at org.eclipse.swt.graphics.Resource.(Resource.java:120) + at org.eclipse.swt.graphics.Font.(Font.java:111) + at org.eclipse.jface.resource.ArrayFontDescriptor.createFont(ArrayFontDescriptor.java:78) + at org.eclipse.wb.core.gef.policy.selection.TopResizeFigure.paintClientArea(TopResizeFigure.java:68) + at org.eclipse.wb.draw2d.Figure.paintFigure(Figure.java:360) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:340) + at org.eclipse.wb.draw2d.Figure.paintChildren(Figure.java:380) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:342) + at org.eclipse.wb.draw2d.Figure.paintChildren(Figure.java:380) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:342) + at org.eclipse.wb.internal.draw2d.FigureCanvas.handlePaint(FigureCanvas.java:192) + at org.eclipse.wb.internal.draw2d.FigureCanvas$3.handleEvent(FigureCanvas.java:154) + at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:89) + at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4256) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1066) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1090) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1075) + at org.eclipse.swt.widgets.Composite.WM_PAINT(Composite.java:1627) + at org.eclipse.swt.widgets.Control.windowProc(Control.java:4800) + at org.eclipse.swt.widgets.Canvas.windowProc(Canvas.java:340) + at org.eclipse.swt.widgets.Display.windowProc(Display.java:5022) + at org.eclipse.swt.internal.win32.OS.DispatchMessage(Native Method) + at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3640) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1155) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1046) + at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:155) + at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:643) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:550) + at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:171) + at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:152) + at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:203) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:136) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:402) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:255) + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104) + at java.base/java.lang.reflect.Method.invoke(Method.java:578) + at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:659) + at org.eclipse.equinox.launcher.Main.basicRun(Main.java:596) + at org.eclipse.equinox.launcher.Main.run(Main.java:1467) + +!ENTRY org.eclipse.ui.ide 4 4 2023-12-03 21:11:53.235 +!MESSAGE Not properly disposed SWT resource +!STACK 0 +java.lang.Error: SWT Resource was not properly disposed + at org.eclipse.swt.graphics.Resource.initNonDisposeTracking(Resource.java:172) + at org.eclipse.swt.graphics.Resource.(Resource.java:120) + at org.eclipse.swt.graphics.Font.(Font.java:111) + at org.eclipse.jface.resource.ArrayFontDescriptor.createFont(ArrayFontDescriptor.java:78) + at org.eclipse.wb.core.gef.policy.selection.TopResizeFigure.paintClientArea(TopResizeFigure.java:68) + at org.eclipse.wb.draw2d.Figure.paintFigure(Figure.java:360) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:340) + at org.eclipse.wb.draw2d.Figure.paintChildren(Figure.java:380) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:342) + at org.eclipse.wb.draw2d.Figure.paintChildren(Figure.java:380) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:342) + at org.eclipse.wb.internal.draw2d.FigureCanvas.handlePaint(FigureCanvas.java:192) + at org.eclipse.wb.internal.draw2d.FigureCanvas$3.handleEvent(FigureCanvas.java:154) + at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:89) + at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4256) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1066) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1090) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1075) + at org.eclipse.swt.widgets.Composite.WM_PAINT(Composite.java:1627) + at org.eclipse.swt.widgets.Control.windowProc(Control.java:4800) + at org.eclipse.swt.widgets.Canvas.windowProc(Canvas.java:340) + at org.eclipse.swt.widgets.Display.windowProc(Display.java:5022) + at org.eclipse.swt.internal.win32.OS.DispatchMessage(Native Method) + at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3640) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1155) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1046) + at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:155) + at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:643) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:550) + at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:171) + at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:152) + at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:203) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:136) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:402) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:255) + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104) + at java.base/java.lang.reflect.Method.invoke(Method.java:578) + at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:659) + at org.eclipse.equinox.launcher.Main.basicRun(Main.java:596) + at org.eclipse.equinox.launcher.Main.run(Main.java:1467) + +!ENTRY org.eclipse.ui.ide 4 4 2023-12-03 21:11:53.235 +!MESSAGE Not properly disposed SWT resource +!STACK 0 +java.lang.Error: SWT Resource was not properly disposed + at org.eclipse.swt.graphics.Resource.initNonDisposeTracking(Resource.java:172) + at org.eclipse.swt.graphics.Resource.(Resource.java:120) + at org.eclipse.swt.graphics.Font.(Font.java:111) + at org.eclipse.jface.resource.ArrayFontDescriptor.createFont(ArrayFontDescriptor.java:78) + at org.eclipse.wb.core.gef.policy.selection.TopResizeFigure.paintClientArea(TopResizeFigure.java:68) + at org.eclipse.wb.draw2d.Figure.paintFigure(Figure.java:360) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:340) + at org.eclipse.wb.draw2d.Figure.paintChildren(Figure.java:380) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:342) + at org.eclipse.wb.draw2d.Figure.paintChildren(Figure.java:380) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:342) + at org.eclipse.wb.internal.draw2d.FigureCanvas.handlePaint(FigureCanvas.java:192) + at org.eclipse.wb.internal.draw2d.FigureCanvas$3.handleEvent(FigureCanvas.java:154) + at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:89) + at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4256) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1066) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1090) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1075) + at org.eclipse.swt.widgets.Composite.WM_PAINT(Composite.java:1627) + at org.eclipse.swt.widgets.Control.windowProc(Control.java:4800) + at org.eclipse.swt.widgets.Canvas.windowProc(Canvas.java:340) + at org.eclipse.swt.widgets.Display.windowProc(Display.java:5022) + at org.eclipse.swt.internal.win32.OS.DispatchMessage(Native Method) + at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3640) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1155) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1046) + at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:155) + at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:643) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:550) + at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:171) + at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:152) + at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:203) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:136) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:402) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:255) + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104) + at java.base/java.lang.reflect.Method.invoke(Method.java:578) + at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:659) + at org.eclipse.equinox.launcher.Main.basicRun(Main.java:596) + at org.eclipse.equinox.launcher.Main.run(Main.java:1467) + +!ENTRY org.eclipse.ui.ide 4 4 2023-12-03 21:11:53.236 +!MESSAGE Not properly disposed SWT resource +!STACK 0 +java.lang.Error: SWT Resource was not properly disposed + at org.eclipse.swt.graphics.Resource.initNonDisposeTracking(Resource.java:172) + at org.eclipse.swt.graphics.Resource.(Resource.java:120) + at org.eclipse.swt.graphics.Font.(Font.java:111) + at org.eclipse.jface.resource.ArrayFontDescriptor.createFont(ArrayFontDescriptor.java:78) + at org.eclipse.wb.core.gef.policy.selection.TopResizeFigure.paintClientArea(TopResizeFigure.java:68) + at org.eclipse.wb.draw2d.Figure.paintFigure(Figure.java:360) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:340) + at org.eclipse.wb.draw2d.Figure.paintChildren(Figure.java:380) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:342) + at org.eclipse.wb.draw2d.Figure.paintChildren(Figure.java:380) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:342) + at org.eclipse.wb.internal.draw2d.FigureCanvas.handlePaint(FigureCanvas.java:192) + at org.eclipse.wb.internal.draw2d.FigureCanvas$3.handleEvent(FigureCanvas.java:154) + at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:89) + at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4256) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1066) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1090) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1075) + at org.eclipse.swt.widgets.Composite.WM_PAINT(Composite.java:1627) + at org.eclipse.swt.widgets.Control.windowProc(Control.java:4800) + at org.eclipse.swt.widgets.Canvas.windowProc(Canvas.java:340) + at org.eclipse.swt.widgets.Display.windowProc(Display.java:5022) + at org.eclipse.swt.internal.win32.OS.DispatchMessage(Native Method) + at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3640) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1155) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1046) + at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:155) + at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:643) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:550) + at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:171) + at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:152) + at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:203) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:136) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:402) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:255) + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104) + at java.base/java.lang.reflect.Method.invoke(Method.java:578) + at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:659) + at org.eclipse.equinox.launcher.Main.basicRun(Main.java:596) + at org.eclipse.equinox.launcher.Main.run(Main.java:1467) + +!ENTRY org.eclipse.ui.ide 4 4 2023-12-03 21:11:53.236 +!MESSAGE Not properly disposed SWT resource +!STACK 0 +java.lang.Error: SWT Resource was not properly disposed + at org.eclipse.swt.graphics.Resource.initNonDisposeTracking(Resource.java:172) + at org.eclipse.swt.graphics.Resource.(Resource.java:120) + at org.eclipse.swt.graphics.Font.(Font.java:111) + at org.eclipse.jface.resource.ArrayFontDescriptor.createFont(ArrayFontDescriptor.java:78) + at org.eclipse.wb.core.gef.policy.selection.TopResizeFigure.paintClientArea(TopResizeFigure.java:68) + at org.eclipse.wb.draw2d.Figure.paintFigure(Figure.java:360) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:340) + at org.eclipse.wb.draw2d.Figure.paintChildren(Figure.java:380) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:342) + at org.eclipse.wb.draw2d.Figure.paintChildren(Figure.java:380) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:342) + at org.eclipse.wb.internal.draw2d.FigureCanvas.handlePaint(FigureCanvas.java:192) + at org.eclipse.wb.internal.draw2d.FigureCanvas$3.handleEvent(FigureCanvas.java:154) + at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:89) + at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4256) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1066) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1090) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1075) + at org.eclipse.swt.widgets.Composite.WM_PAINT(Composite.java:1627) + at org.eclipse.swt.widgets.Control.windowProc(Control.java:4800) + at org.eclipse.swt.widgets.Canvas.windowProc(Canvas.java:340) + at org.eclipse.swt.widgets.Display.windowProc(Display.java:5022) + at org.eclipse.swt.internal.win32.OS.DispatchMessage(Native Method) + at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3640) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1155) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1046) + at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:155) + at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:643) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:550) + at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:171) + at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:152) + at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:203) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:136) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:402) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:255) + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104) + at java.base/java.lang.reflect.Method.invoke(Method.java:578) + at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:659) + at org.eclipse.equinox.launcher.Main.basicRun(Main.java:596) + at org.eclipse.equinox.launcher.Main.run(Main.java:1467) + +!ENTRY org.eclipse.ui.ide 4 4 2023-12-03 21:11:53.237 +!MESSAGE Not properly disposed SWT resource +!STACK 0 +java.lang.Error: SWT Resource was not properly disposed + at org.eclipse.swt.graphics.Resource.initNonDisposeTracking(Resource.java:172) + at org.eclipse.swt.graphics.Resource.(Resource.java:120) + at org.eclipse.swt.graphics.Font.(Font.java:111) + at org.eclipse.jface.resource.ArrayFontDescriptor.createFont(ArrayFontDescriptor.java:78) + at org.eclipse.wb.core.gef.policy.selection.TopResizeFigure.paintClientArea(TopResizeFigure.java:68) + at org.eclipse.wb.draw2d.Figure.paintFigure(Figure.java:360) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:340) + at org.eclipse.wb.draw2d.Figure.paintChildren(Figure.java:380) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:342) + at org.eclipse.wb.draw2d.Figure.paintChildren(Figure.java:380) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:342) + at org.eclipse.wb.internal.draw2d.FigureCanvas.handlePaint(FigureCanvas.java:192) + at org.eclipse.wb.internal.draw2d.FigureCanvas$3.handleEvent(FigureCanvas.java:154) + at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:89) + at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4256) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1066) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1090) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1075) + at org.eclipse.swt.widgets.Composite.WM_PAINT(Composite.java:1627) + at org.eclipse.swt.widgets.Control.windowProc(Control.java:4800) + at org.eclipse.swt.widgets.Canvas.windowProc(Canvas.java:340) + at org.eclipse.swt.widgets.Display.windowProc(Display.java:5022) + at org.eclipse.swt.internal.win32.OS.DispatchMessage(Native Method) + at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3640) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1155) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1046) + at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:155) + at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:643) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:550) + at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:171) + at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:152) + at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:203) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:136) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:402) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:255) + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104) + at java.base/java.lang.reflect.Method.invoke(Method.java:578) + at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:659) + at org.eclipse.equinox.launcher.Main.basicRun(Main.java:596) + at org.eclipse.equinox.launcher.Main.run(Main.java:1467) + +!ENTRY org.eclipse.ui.ide 4 4 2023-12-03 21:11:53.237 +!MESSAGE Not properly disposed SWT resource +!STACK 0 +java.lang.Error: SWT Resource was not properly disposed + at org.eclipse.swt.graphics.Resource.initNonDisposeTracking(Resource.java:172) + at org.eclipse.swt.graphics.Resource.(Resource.java:120) + at org.eclipse.swt.graphics.Font.(Font.java:111) + at org.eclipse.jface.resource.ArrayFontDescriptor.createFont(ArrayFontDescriptor.java:78) + at org.eclipse.wb.core.gef.policy.selection.TopResizeFigure.paintClientArea(TopResizeFigure.java:68) + at org.eclipse.wb.draw2d.Figure.paintFigure(Figure.java:360) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:340) + at org.eclipse.wb.draw2d.Figure.paintChildren(Figure.java:380) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:342) + at org.eclipse.wb.draw2d.Figure.paintChildren(Figure.java:380) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:342) + at org.eclipse.wb.internal.draw2d.FigureCanvas.handlePaint(FigureCanvas.java:192) + at org.eclipse.wb.internal.draw2d.FigureCanvas$3.handleEvent(FigureCanvas.java:154) + at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:89) + at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4256) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1066) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1090) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1075) + at org.eclipse.swt.widgets.Composite.WM_PAINT(Composite.java:1627) + at org.eclipse.swt.widgets.Control.windowProc(Control.java:4800) + at org.eclipse.swt.widgets.Canvas.windowProc(Canvas.java:340) + at org.eclipse.swt.widgets.Display.windowProc(Display.java:5022) + at org.eclipse.swt.internal.win32.OS.DispatchMessage(Native Method) + at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3640) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1155) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1046) + at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:155) + at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:643) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:550) + at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:171) + at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:152) + at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:203) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:136) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:402) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:255) + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104) + at java.base/java.lang.reflect.Method.invoke(Method.java:578) + at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:659) + at org.eclipse.equinox.launcher.Main.basicRun(Main.java:596) + at org.eclipse.equinox.launcher.Main.run(Main.java:1467) + +!ENTRY org.eclipse.ui.ide 4 4 2023-12-03 21:11:53.237 +!MESSAGE Not properly disposed SWT resource +!STACK 0 +java.lang.Error: SWT Resource was not properly disposed + at org.eclipse.swt.graphics.Resource.initNonDisposeTracking(Resource.java:172) + at org.eclipse.swt.graphics.Resource.(Resource.java:120) + at org.eclipse.swt.graphics.Font.(Font.java:111) + at org.eclipse.jface.resource.ArrayFontDescriptor.createFont(ArrayFontDescriptor.java:78) + at org.eclipse.wb.core.gef.policy.selection.TopResizeFigure.paintClientArea(TopResizeFigure.java:68) + at org.eclipse.wb.draw2d.Figure.paintFigure(Figure.java:360) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:340) + at org.eclipse.wb.draw2d.Figure.paintChildren(Figure.java:380) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:342) + at org.eclipse.wb.draw2d.Figure.paintChildren(Figure.java:380) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:342) + at org.eclipse.wb.internal.draw2d.FigureCanvas.handlePaint(FigureCanvas.java:192) + at org.eclipse.wb.internal.draw2d.FigureCanvas$3.handleEvent(FigureCanvas.java:154) + at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:89) + at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4256) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1066) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1090) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1075) + at org.eclipse.swt.widgets.Composite.WM_PAINT(Composite.java:1627) + at org.eclipse.swt.widgets.Control.windowProc(Control.java:4800) + at org.eclipse.swt.widgets.Canvas.windowProc(Canvas.java:340) + at org.eclipse.swt.widgets.Display.windowProc(Display.java:5022) + at org.eclipse.swt.internal.win32.OS.DispatchMessage(Native Method) + at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3640) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1155) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1046) + at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:155) + at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:643) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:550) + at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:171) + at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:152) + at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:203) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:136) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:402) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:255) + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104) + at java.base/java.lang.reflect.Method.invoke(Method.java:578) + at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:659) + at org.eclipse.equinox.launcher.Main.basicRun(Main.java:596) + at org.eclipse.equinox.launcher.Main.run(Main.java:1467) + +!ENTRY org.eclipse.ui.ide 4 4 2023-12-03 21:11:53.237 +!MESSAGE Not properly disposed SWT resource +!STACK 0 +java.lang.Error: SWT Resource was not properly disposed + at org.eclipse.swt.graphics.Resource.initNonDisposeTracking(Resource.java:172) + at org.eclipse.swt.graphics.Resource.(Resource.java:120) + at org.eclipse.swt.graphics.Font.(Font.java:111) + at org.eclipse.jface.resource.ArrayFontDescriptor.createFont(ArrayFontDescriptor.java:78) + at org.eclipse.wb.core.gef.policy.selection.TopResizeFigure.paintClientArea(TopResizeFigure.java:68) + at org.eclipse.wb.draw2d.Figure.paintFigure(Figure.java:360) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:340) + at org.eclipse.wb.draw2d.Figure.paintChildren(Figure.java:380) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:342) + at org.eclipse.wb.draw2d.Figure.paintChildren(Figure.java:380) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:342) + at org.eclipse.wb.internal.draw2d.FigureCanvas.handlePaint(FigureCanvas.java:192) + at org.eclipse.wb.internal.draw2d.FigureCanvas$3.handleEvent(FigureCanvas.java:154) + at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:89) + at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4256) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1066) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1090) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1075) + at org.eclipse.swt.widgets.Composite.WM_PAINT(Composite.java:1627) + at org.eclipse.swt.widgets.Control.windowProc(Control.java:4800) + at org.eclipse.swt.widgets.Canvas.windowProc(Canvas.java:340) + at org.eclipse.swt.widgets.Display.windowProc(Display.java:5022) + at org.eclipse.swt.internal.win32.OS.DispatchMessage(Native Method) + at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3640) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1155) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1046) + at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:155) + at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:643) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:550) + at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:171) + at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:152) + at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:203) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:136) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:402) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:255) + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104) + at java.base/java.lang.reflect.Method.invoke(Method.java:578) + at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:659) + at org.eclipse.equinox.launcher.Main.basicRun(Main.java:596) + at org.eclipse.equinox.launcher.Main.run(Main.java:1467) + +!ENTRY org.eclipse.ui.ide 4 4 2023-12-03 21:11:53.238 +!MESSAGE Not properly disposed SWT resource +!STACK 0 +java.lang.Error: SWT Resource was not properly disposed + at org.eclipse.swt.graphics.Resource.initNonDisposeTracking(Resource.java:172) + at org.eclipse.swt.graphics.Resource.(Resource.java:120) + at org.eclipse.swt.graphics.Font.(Font.java:111) + at org.eclipse.jface.resource.ArrayFontDescriptor.createFont(ArrayFontDescriptor.java:78) + at org.eclipse.wb.core.gef.policy.selection.TopResizeFigure.paintClientArea(TopResizeFigure.java:68) + at org.eclipse.wb.draw2d.Figure.paintFigure(Figure.java:360) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:340) + at org.eclipse.wb.draw2d.Figure.paintChildren(Figure.java:380) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:342) + at org.eclipse.wb.draw2d.Figure.paintChildren(Figure.java:380) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:342) + at org.eclipse.wb.internal.draw2d.FigureCanvas.handlePaint(FigureCanvas.java:192) + at org.eclipse.wb.internal.draw2d.FigureCanvas$3.handleEvent(FigureCanvas.java:154) + at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:89) + at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4256) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1066) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1090) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1075) + at org.eclipse.swt.widgets.Composite.WM_PAINT(Composite.java:1627) + at org.eclipse.swt.widgets.Control.windowProc(Control.java:4800) + at org.eclipse.swt.widgets.Canvas.windowProc(Canvas.java:340) + at org.eclipse.swt.widgets.Display.windowProc(Display.java:5022) + at org.eclipse.swt.internal.win32.OS.DispatchMessage(Native Method) + at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3640) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1155) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1046) + at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:155) + at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:643) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:550) + at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:171) + at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:152) + at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:203) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:136) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:402) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:255) + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104) + at java.base/java.lang.reflect.Method.invoke(Method.java:578) + at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:659) + at org.eclipse.equinox.launcher.Main.basicRun(Main.java:596) + at org.eclipse.equinox.launcher.Main.run(Main.java:1467) + +!ENTRY org.eclipse.ui.ide 4 4 2023-12-03 21:11:53.238 +!MESSAGE Not properly disposed SWT resource +!STACK 0 +java.lang.Error: SWT Resource was not properly disposed + at org.eclipse.swt.graphics.Resource.initNonDisposeTracking(Resource.java:172) + at org.eclipse.swt.graphics.Resource.(Resource.java:120) + at org.eclipse.swt.graphics.Font.(Font.java:111) + at org.eclipse.jface.resource.ArrayFontDescriptor.createFont(ArrayFontDescriptor.java:78) + at org.eclipse.wb.core.gef.policy.selection.TopResizeFigure.paintClientArea(TopResizeFigure.java:68) + at org.eclipse.wb.draw2d.Figure.paintFigure(Figure.java:360) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:340) + at org.eclipse.wb.draw2d.Figure.paintChildren(Figure.java:380) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:342) + at org.eclipse.wb.draw2d.Figure.paintChildren(Figure.java:380) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:342) + at org.eclipse.wb.internal.draw2d.FigureCanvas.handlePaint(FigureCanvas.java:192) + at org.eclipse.wb.internal.draw2d.FigureCanvas$3.handleEvent(FigureCanvas.java:154) + at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:89) + at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4256) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1066) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1090) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1075) + at org.eclipse.swt.widgets.Composite.WM_PAINT(Composite.java:1627) + at org.eclipse.swt.widgets.Control.windowProc(Control.java:4800) + at org.eclipse.swt.widgets.Canvas.windowProc(Canvas.java:340) + at org.eclipse.swt.widgets.Display.windowProc(Display.java:5022) + at org.eclipse.swt.internal.win32.OS.DispatchMessage(Native Method) + at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3640) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1155) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1046) + at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:155) + at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:643) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:550) + at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:171) + at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:152) + at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:203) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:136) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:402) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:255) + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104) + at java.base/java.lang.reflect.Method.invoke(Method.java:578) + at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:659) + at org.eclipse.equinox.launcher.Main.basicRun(Main.java:596) + at org.eclipse.equinox.launcher.Main.run(Main.java:1467) + +!ENTRY org.eclipse.ui.ide 4 4 2023-12-03 21:11:53.239 +!MESSAGE Not properly disposed SWT resource +!STACK 0 +java.lang.Error: SWT Resource was not properly disposed + at org.eclipse.swt.graphics.Resource.initNonDisposeTracking(Resource.java:172) + at org.eclipse.swt.graphics.Resource.(Resource.java:120) + at org.eclipse.swt.graphics.Font.(Font.java:111) + at org.eclipse.jface.resource.ArrayFontDescriptor.createFont(ArrayFontDescriptor.java:78) + at org.eclipse.wb.core.gef.policy.selection.TopResizeFigure.paintClientArea(TopResizeFigure.java:68) + at org.eclipse.wb.draw2d.Figure.paintFigure(Figure.java:360) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:340) + at org.eclipse.wb.draw2d.Figure.paintChildren(Figure.java:380) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:342) + at org.eclipse.wb.draw2d.Figure.paintChildren(Figure.java:380) + at org.eclipse.wb.draw2d.Figure.paint(Figure.java:342) + at org.eclipse.wb.internal.draw2d.FigureCanvas.handlePaint(FigureCanvas.java:192) + at org.eclipse.wb.internal.draw2d.FigureCanvas$3.handleEvent(FigureCanvas.java:154) + at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:89) + at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4256) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1066) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1090) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1075) + at org.eclipse.swt.widgets.Composite.WM_PAINT(Composite.java:1627) + at org.eclipse.swt.widgets.Control.windowProc(Control.java:4800) + at org.eclipse.swt.widgets.Canvas.windowProc(Canvas.java:340) + at org.eclipse.swt.widgets.Display.windowProc(Display.java:5022) + at org.eclipse.swt.internal.win32.OS.DispatchMessage(Native Method) + at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3640) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1155) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1046) + at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:155) + at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:643) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:550) + at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:171) + at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:152) + at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:203) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:136) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:402) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:255) + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104) + at java.base/java.lang.reflect.Method.invoke(Method.java:578) + at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:659) + at org.eclipse.equinox.launcher.Main.basicRun(Main.java:596) + at org.eclipse.equinox.launcher.Main.run(Main.java:1467) + +!ENTRY org.eclipse.wb.core 4 4 2023-12-03 22:44:49.260 +!MESSAGE Designer [1.13.0.202309050414.202312031954]: 205 (Unable to parse source.). + background.add(panel); line: 15 The serializable class StartBattle does not declare a static final serialVersionUID field of type long +line: 16 Placement.ImagePanel cannot be resolved to a type +line: 16 Placement.ImagePanel cannot be resolved to a type +line: 17 Placement.ImagePanel cannot be resolved to a type +line: 17 Placement.ImagePanel cannot be resolved to a type +line: 18 Placement.ImagePanel cannot be resolved to a type +line: 18 Placement.ImagePanel cannot be resolved to a type +line: 19 Placement.Win_or_Lose cannot be resolved to a type +line: 19 Placement.Win_or_Lose cannot be resolved to a type +line: 21 LinkedList is a raw type. References to generic type LinkedList should be parameterized +line: 21 LinkedList is a raw type. References to generic type LinkedList should be parameterized +line: 22 LinkedList is a raw type. References to generic type LinkedList should be parameterized +line: 22 LinkedList is a raw type. References to generic type LinkedList should be parameterized +line: 23 LinkedList is a raw type. References to generic type LinkedList should be parameterized +line: 23 LinkedList is a raw type. References to generic type LinkedList should be parameterized +line: 24 LinkedList is a raw type. References to generic type LinkedList should be parameterized +line: 24 LinkedList is a raw type. References to generic type LinkedList should be parameterized +line: 25 LinkedList is a raw type. References to generic type LinkedList should be parameterized +line: 25 LinkedList is a raw type. References to generic type LinkedList should be parameterized +line: 26 LinkedList is a raw type. References to generic type LinkedList should be parameterized +line: 26 LinkedList is a raw type. References to generic type LinkedList should be parameterized +line: 28 Placement.ImagePanel cannot be resolved to a type +line: 28 Placement.ImagePanel cannot be resolved to a type +line: 29 Placement.Status_Panel cannot be resolved to a type +line: 29 Placement.Status_Panel cannot be resolved to a type +line: 48 Placement.Pokemon cannot be resolved to a type +line: 48 Placement.Pokemon cannot be resolved to a type +line: 49 Placement.Obj_Panel3 cannot be resolved to a type +line: 49 Placement.Obj_Panel3 cannot be resolved to a type +line: 50 Placement.Pokemon cannot be resolved to a type +line: 50 Placement.Pokemon cannot be resolved to a type +line: 51 Placement.Pokemon cannot be resolved to a type +line: 51 Placement.Pokemon cannot be resolved to a type +line: 116 Placement.Placement_Screen cannot be resolved to a type +line: 116 Placement.Placement_Screen cannot be resolved to a type +line: 117 Placement.Obj_Panel3 cannot be resolved to a type +line: 117 Placement.Obj_Panel3 cannot be resolved to a type +line: 118 Placement.Obj_Panel3 cannot be resolved to a type +line: 118 Placement.Obj_Panel3 cannot be resolved to a type +line: 119 Placement.Obj_Panel3 cannot be resolved to a type +line: 119 Placement.Obj_Panel3 cannot be resolved to a type +line: 120 Placement.Obj_Panel3 cannot be resolved to a type +line: 120 Placement.Obj_Panel3 cannot be resolved to a type +line: 121 Placement.Obj_Panel3 cannot be resolved to a type +line: 121 Placement.Obj_Panel3 cannot be resolved to a type +line: 122 Placement.Obj_Panel3 cannot be resolved to a type +line: 122 Placement.Obj_Panel3 cannot be resolved to a type +line: 123 Placement.Obj_Panel3 cannot be resolved to a type +line: 123 Placement.Obj_Panel3 cannot be resolved to a type +line: 124 Placement.Obj_Panel3 cannot be resolved to a type +line: 124 Placement.Obj_Panel3 cannot be resolved to a type +line: 125 Placement.Obj_Panel3 cannot be resolved to a type +line: 125 Placement.Obj_Panel3 cannot be resolved to a type +line: 126 Placement.Obj_Panel3 cannot be resolved to a type +line: 126 Placement.Obj_Panel3 cannot be resolved to a type +line: 129 Placement.Pokemon cannot be resolved to a type +line: 129 Placement.Pokemon cannot be resolved to a type +line: 130 Placement.Pokemon cannot be resolved to a type +line: 130 Placement.Pokemon cannot be resolved to a type +line: 131 Placement.Pokemon cannot be resolved to a type +line: 131 Placement.Pokemon cannot be resolved to a type +line: 132 Placement.Pokemon cannot be resolved to a type +line: 132 Placement.Pokemon cannot be resolved to a type +line: 133 Placement.Pokemon cannot be resolved to a type +line: 133 Placement.Pokemon cannot be resolved to a type +line: 135 Placement.ImagePanel cannot be resolved to a type +line: 135 Placement.ImagePanel cannot be resolved to a type +line: 136 Placement.Status_Panel cannot be resolved to a type +line: 136 Placement.Status_Panel cannot be resolved to a type +line: 138 The field Component.background is not visible +!STACK 0 +org.eclipse.wb.internal.core.utils.exception.DesignerException: 205 (Unable to parse source.). + background.add(panel); line: 15 The serializable class StartBattle does not declare a static final serialVersionUID field of type long +line: 16 Placement.ImagePanel cannot be resolved to a type +line: 16 Placement.ImagePanel cannot be resolved to a type +line: 17 Placement.ImagePanel cannot be resolved to a type +line: 17 Placement.ImagePanel cannot be resolved to a type +line: 18 Placement.ImagePanel cannot be resolved to a type +line: 18 Placement.ImagePanel cannot be resolved to a type +line: 19 Placement.Win_or_Lose cannot be resolved to a type +line: 19 Placement.Win_or_Lose cannot be resolved to a type +line: 21 LinkedList is a raw type. References to generic type LinkedList should be parameterized +line: 21 LinkedList is a raw type. References to generic type LinkedList should be parameterized +line: 22 LinkedList is a raw type. References to generic type LinkedList should be parameterized +line: 22 LinkedList is a raw type. References to generic type LinkedList should be parameterized +line: 23 LinkedList is a raw type. References to generic type LinkedList should be parameterized +line: 23 LinkedList is a raw type. References to generic type LinkedList should be parameterized +line: 24 LinkedList is a raw type. References to generic type LinkedList should be parameterized +line: 24 LinkedList is a raw type. References to generic type LinkedList should be parameterized +line: 25 LinkedList is a raw type. References to generic type LinkedList should be parameterized +line: 25 LinkedList is a raw type. References to generic type LinkedList should be parameterized +line: 26 LinkedList is a raw type. References to generic type LinkedList should be parameterized +line: 26 LinkedList is a raw type. References to generic type LinkedList should be parameterized +line: 28 Placement.ImagePanel cannot be resolved to a type +line: 28 Placement.ImagePanel cannot be resolved to a type +line: 29 Placement.Status_Panel cannot be resolved to a type +line: 29 Placement.Status_Panel cannot be resolved to a type +line: 48 Placement.Pokemon cannot be resolved to a type +line: 48 Placement.Pokemon cannot be resolved to a type +line: 49 Placement.Obj_Panel3 cannot be resolved to a type +line: 49 Placement.Obj_Panel3 cannot be resolved to a type +line: 50 Placement.Pokemon cannot be resolved to a type +line: 50 Placement.Pokemon cannot be resolved to a type +line: 51 Placement.Pokemon cannot be resolved to a type +line: 51 Placement.Pokemon cannot be resolved to a type +line: 116 Placement.Placement_Screen cannot be resolved to a type +line: 116 Placement.Placement_Screen cannot be resolved to a type +line: 117 Placement.Obj_Panel3 cannot be resolved to a type +line: 117 Placement.Obj_Panel3 cannot be resolved to a type +line: 118 Placement.Obj_Panel3 cannot be resolved to a type +line: 118 Placement.Obj_Panel3 cannot be resolved to a type +line: 119 Placement.Obj_Panel3 cannot be resolved to a type +line: 119 Placement.Obj_Panel3 cannot be resolved to a type +line: 120 Placement.Obj_Panel3 cannot be resolved to a type +line: 120 Placement.Obj_Panel3 cannot be resolved to a type +line: 121 Placement.Obj_Panel3 cannot be resolved to a type +line: 121 Placement.Obj_Panel3 cannot be resolved to a type +line: 122 Placement.Obj_Panel3 cannot be resolved to a type +line: 122 Placement.Obj_Panel3 cannot be resolved to a type +line: 123 Placement.Obj_Panel3 cannot be resolved to a type +line: 123 Placement.Obj_Panel3 cannot be resolved to a type +line: 124 Placement.Obj_Panel3 cannot be resolved to a type +line: 124 Placement.Obj_Panel3 cannot be resolved to a type +line: 125 Placement.Obj_Panel3 cannot be resolved to a type +line: 125 Placement.Obj_Panel3 cannot be resolved to a type +line: 126 Placement.Obj_Panel3 cannot be resolved to a type +line: 126 Placement.Obj_Panel3 cannot be resolved to a type +line: 129 Placement.Pokemon cannot be resolved to a type +line: 129 Placement.Pokemon cannot be resolved to a type +line: 130 Placement.Pokemon cannot be resolved to a type +line: 130 Placement.Pokemon cannot be resolved to a type +line: 131 Placement.Pokemon cannot be resolved to a type +line: 131 Placement.Pokemon cannot be resolved to a type +line: 132 Placement.Pokemon cannot be resolved to a type +line: 132 Placement.Pokemon cannot be resolved to a type +line: 133 Placement.Pokemon cannot be resolved to a type +line: 133 Placement.Pokemon cannot be resolved to a type +line: 135 Placement.ImagePanel cannot be resolved to a type +line: 135 Placement.ImagePanel cannot be resolved to a type +line: 136 Placement.Status_Panel cannot be resolved to a type +line: 136 Placement.Status_Panel cannot be resolved to a type +line: 138 The field Component.background is not visible + at org.eclipse.wb.internal.core.utils.ast.AstParser.parseStatement(AstParser.java:162) + at org.eclipse.wb.internal.core.utils.ast.AstEditor.addStatement(AstEditor.java:1626) + at org.eclipse.wb.core.model.association.InvocationChildAssociation.add(InvocationChildAssociation.java:101) + at org.eclipse.wb.internal.core.model.generation.statement.AbstractInsideStatementGenerator.add(AbstractInsideStatementGenerator.java:90) + at org.eclipse.wb.internal.core.model.generation.statement.flat.FlatStatementGenerator.add(FlatStatementGenerator.java:66) + at org.eclipse.wb.internal.core.model.JavaInfoUtils.add(JavaInfoUtils.java:1389) + at org.eclipse.wb.internal.core.model.JavaInfoUtils.add(JavaInfoUtils.java:1292) + at org.eclipse.wb.internal.core.model.JavaInfoUtils.add(JavaInfoUtils.java:1222) + at org.eclipse.wb.internal.swing.model.layout.LayoutInfo.add(LayoutInfo.java:331) + at org.eclipse.wb.internal.swing.model.layout.absolute.AbstractAbsoluteLayoutInfo.command_CREATE(AbstractAbsoluteLayoutInfo.java:245) + at org.eclipse.wb.internal.swing.gef.policy.layout.AbsoluteLayoutEditPolicy$3.executeEdit(AbsoluteLayoutEditPolicy.java:240) + at org.eclipse.wb.core.gef.command.EditCommand$1.run(EditCommand.java:53) + at org.eclipse.wb.internal.core.utils.execution.ExecutionUtils.run(ExecutionUtils.java:331) + at org.eclipse.wb.core.gef.command.EditCommand.execute(EditCommand.java:50) + at org.eclipse.wb.internal.gef.core.EditDomain.executeCommand(EditDomain.java:59) + at org.eclipse.wb.gef.core.tools.Tool.executeCommand(Tool.java:209) + at org.eclipse.wb.gef.core.tools.AbstractCreationTool.handleButtonUp(AbstractCreationTool.java:62) + at org.eclipse.wb.gef.core.tools.Tool.mouseUp(Tool.java:395) + at org.eclipse.wb.internal.gef.core.EditDomain.mouseUp(EditDomain.java:255) + at org.eclipse.wb.internal.gef.graphical.EditEventManager.mouseUp(EditEventManager.java:150) + at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:224) + at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:89) + at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4256) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1066) + at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4054) + at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3642) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1155) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1046) + at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:155) + at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:643) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:550) + at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:171) + at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:152) + at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:203) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:136) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:402) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:255) + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104) + at java.base/java.lang.reflect.Method.invoke(Method.java:578) + at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:659) + at org.eclipse.equinox.launcher.Main.basicRun(Main.java:596) + at org.eclipse.equinox.launcher.Main.run(Main.java:1467) +Caused by: org.eclipse.wb.internal.core.utils.exception.DesignerException: 205 (Unable to parse source.). package Placement; +import java.awt.Component; +import java.awt.Container; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.awt.event.MouseAdapter; +import java.awt.event.MouseEvent; +import java.util.LinkedList; +import java.util.Random; +import java.util.Scanner; +import javax.swing.ImageIcon; +import javax.swing.JFrame; +import javax.swing.JPanel; +import javax.swing.Timer; +class StartBattle extends JPanel { +Placement.ImagePanel background=(Placement.ImagePanel) null; +Placement.ImagePanel next_btn=(Placement.ImagePanel) null; +Placement.ImagePanel PlacementScreen=(Placement.ImagePanel) null; +Placement.Win_or_Lose win_or_lose=(Placement.Win_or_Lose) null; +java.util.Scanner sc=(java.util.Scanner) null; +java.util.LinkedList friendly=(java.util.LinkedList) null; +java.util.LinkedList friendly_panel=(java.util.LinkedList) null; +java.util.LinkedList enemy_panel=(java.util.LinkedList) null; +java.util.LinkedList enemy=(java.util.LinkedList) null; +java.util.LinkedList forreplace=(java.util.LinkedList) null; +java.util.LinkedList buttons=(java.util.LinkedList) null; +boolean isnext=false; +Placement.ImagePanel ballImg=(Placement.ImagePanel) null; +Placement.Status_Panel status_panel=(Placement.Status_Panel) null; +java.util.Random random=(java.util.Random) null; +int turnNum=0; +int friendlyMaxPalceNum=0; +int enemyMaxPalceNum=0; +boolean friendlyFirstHit38=false; +boolean friendlyFirstHit=false; +int findEffect=0; +boolean replaceFirstHit=false; +boolean enemyFirstHit38=false; +boolean enemyFirstHit=false; +int friendlyHP45=0; +int enemyHP45=0; +int replaceHitNum=0; +int whoHitEnemy=0; +int whoHitFriendly=0; +int replacePoisonNum=0; +int friendlyPoisonNum=0; +int enemyPoisonNum=0; +Placement.Pokemon dan=(Placement.Pokemon) null; +Placement.Obj_Panel3 dan_panel=(Placement.Obj_Panel3) null; +Placement.Pokemon mang=(Placement.Pokemon) null; +Placement.Pokemon mo=(Placement.Pokemon) null; +private T findPanel(Container container, Class panelClass) {return (T) null;} +void pokemonfight(Obj_Panel3 friendly_panel,Obj_Panel3 enemy_panel) {} +void EnemydrawParabola(Obj_Panel3 friendly_panel, Obj_Panel3 enemy_panel) {} +void FriendlydrawParabola(Obj_Panel3 friendly_panel, Obj_Panel3 enemy_panel) {} +void friendly_change_pokemon_panel(int location, int pokemon_num, int pokemon_Lv, int pokemon_Health, int pokemon_power, int pokemon_exp, String pokemon_ex) {} +void enemy_change_pokemon_panel(int location, int pokemon_num, int pokemon_Lv, int pokemon_Health, int pokemon_power, int pokemon_exp, String pokemon_ex) {} +void show_ex(JPanel panel, int seconds) {} +int run() {return 0;} +void next() {} +void settingEnemy() {} +void findEffect() {} +void hitFriendly() {} +void hitEnemy() {} +void useStartBattleAbility() {} +void useFriendlyHitAbility() {} +void useEnemyHitAbility() {} +int remainFriendlyNum() {return 0;} +int remainEnemyNum() {return 0;} +void show1() {} +void friendlyGoFront() {} +void friendlyGoBack() {} +void enemyGoFront() {} +void enemyGoBack() {} +boolean winEnemy() {return false;} +boolean winFriendly() {return false;} +void isDownFriendly() {} +void isDownEnemy() {} +void friendlyHealthAdjust(int placeNum, int adjustNum) {} +void friendlyPowerAdjust(int placeNum, int adjustNum) {} +void enemyHealthAdjust(int placeNum, int adjustNum) {} +void enemyPowerAdjust(int placeNum, int adjustNum) {} +void findHitEnemy(int hit, int who) {} +void findHitfriendly(int hit, int who) {} +void friendlyAbillity45() {} +void enemyAbillity45() {} +void settingFriendlySummonModapi() {} +void settingEnemySummonModapi() {} +int findFriendlylv(int pokemonNum) {return 0;} +void friendlyStartBattleAbility(int placeNum) {} +void friendlyAttackAbility(int placeNum) {} +void friendlyFrontFightAbillity(int placeNum) {} +void friendlyHitAbility(int placeNum) {} +void friendlyDownAbility(int placeNum) {} +void friendlyFrontDownAbility(int placeNum) {} +void friendlyDownEnemyAbility(int placeNum) {} +void friendlyUseToSummon() {} +void friendlyUseSummonAbility() {} +void friendlySummonAbility(int placeNum) {} +void friendlyEnemySummonAbility() {} +boolean friendlyFindPokemon(int pokemonNum) {return false;} +int findEnemylv(int pokemonNum) {return 0;} +void enemyStartBattleAbility(int placeNum) {} +void enemyAttackAbility(int placeNum) {} +void enemyFrontFightAbillity(int placeNum) {} +void enemyHitAbility(int placeNum) {} +void enemyDownAbility(int placeNum) {} +void enemyFrontDownAbility(int placeNum) {} +void enemyDownEnemyAbility(int placeNum) {} +void enemyUseToSummon() {} +void enemyUseSummonAbility() {} +void enemySummonAbility(int placeNum) {} +void enemyFriendlySummonAbility() {} +boolean enemyFindPokemon(int pokemonNum) {return false;} +StartBattle(Object __wbp_param) { +super();Placement.Placement_Screen ps = (Placement.Placement_Screen) null; +Placement.Obj_Panel3 friendly_panel_1 = (Placement.Obj_Panel3) null; +Placement.Obj_Panel3 friendly_panel_2 = (Placement.Obj_Panel3) null; +Placement.Obj_Panel3 friendly_panel_3 = (Placement.Obj_Panel3) null; +Placement.Obj_Panel3 friendly_panel_4 = (Placement.Obj_Panel3) null; +Placement.Obj_Panel3 friendly_panel_5 = (Placement.Obj_Panel3) null; +Placement.Obj_Panel3 enemy_panel_1 = (Placement.Obj_Panel3) null; +Placement.Obj_Panel3 enemy_panel_2 = (Placement.Obj_Panel3) null; +Placement.Obj_Panel3 enemy_panel_3 = (Placement.Obj_Panel3) null; +Placement.Obj_Panel3 enemy_panel_4 = (Placement.Obj_Panel3) null; +Placement.Obj_Panel3 enemy_panel_5 = (Placement.Obj_Panel3) null; +javax.swing.JPanel panel = (javax.swing.JPanel) null; +int turnNum = 0; +Placement.Pokemon f1 = (Placement.Pokemon) null; +Placement.Pokemon f2 = (Placement.Pokemon) null; +Placement.Pokemon f3 = (Placement.Pokemon) null; +Placement.Pokemon f4 = (Placement.Pokemon) null; +Placement.Pokemon f5 = (Placement.Pokemon) null; +int findEffect = 0; +Placement.ImagePanel placement = (Placement.ImagePanel) null; +Placement.Status_Panel status = (Placement.Status_Panel) null; + + background.add(panel);} +} line: 15 The serializable class StartBattle does not declare a static final serialVersionUID field of type long +line: 16 Placement.ImagePanel cannot be resolved to a type +line: 16 Placement.ImagePanel cannot be resolved to a type +line: 17 Placement.ImagePanel cannot be resolved to a type +line: 17 Placement.ImagePanel cannot be resolved to a type +line: 18 Placement.ImagePanel cannot be resolved to a type +line: 18 Placement.ImagePanel cannot be resolved to a type +line: 19 Placement.Win_or_Lose cannot be resolved to a type +line: 19 Placement.Win_or_Lose cannot be resolved to a type +line: 21 LinkedList is a raw type. References to generic type LinkedList should be parameterized +line: 21 LinkedList is a raw type. References to generic type LinkedList should be parameterized +line: 22 LinkedList is a raw type. References to generic type LinkedList should be parameterized +line: 22 LinkedList is a raw type. References to generic type LinkedList should be parameterized +line: 23 LinkedList is a raw type. References to generic type LinkedList should be parameterized +line: 23 LinkedList is a raw type. References to generic type LinkedList should be parameterized +line: 24 LinkedList is a raw type. References to generic type LinkedList should be parameterized +line: 24 LinkedList is a raw type. References to generic type LinkedList should be parameterized +line: 25 LinkedList is a raw type. References to generic type LinkedList should be parameterized +line: 25 LinkedList is a raw type. References to generic type LinkedList should be parameterized +line: 26 LinkedList is a raw type. References to generic type LinkedList should be parameterized +line: 26 LinkedList is a raw type. References to generic type LinkedList should be parameterized +line: 28 Placement.ImagePanel cannot be resolved to a type +line: 28 Placement.ImagePanel cannot be resolved to a type +line: 29 Placement.Status_Panel cannot be resolved to a type +line: 29 Placement.Status_Panel cannot be resolved to a type +line: 48 Placement.Pokemon cannot be resolved to a type +line: 48 Placement.Pokemon cannot be resolved to a type +line: 49 Placement.Obj_Panel3 cannot be resolved to a type +line: 49 Placement.Obj_Panel3 cannot be resolved to a type +line: 50 Placement.Pokemon cannot be resolved to a type +line: 50 Placement.Pokemon cannot be resolved to a type +line: 51 Placement.Pokemon cannot be resolved to a type +line: 51 Placement.Pokemon cannot be resolved to a type +line: 116 Placement.Placement_Screen cannot be resolved to a type +line: 116 Placement.Placement_Screen cannot be resolved to a type +line: 117 Placement.Obj_Panel3 cannot be resolved to a type +line: 117 Placement.Obj_Panel3 cannot be resolved to a type +line: 118 Placement.Obj_Panel3 cannot be resolved to a type +line: 118 Placement.Obj_Panel3 cannot be resolved to a type +line: 119 Placement.Obj_Panel3 cannot be resolved to a type +line: 119 Placement.Obj_Panel3 cannot be resolved to a type +line: 120 Placement.Obj_Panel3 cannot be resolved to a type +line: 120 Placement.Obj_Panel3 cannot be resolved to a type +line: 121 Placement.Obj_Panel3 cannot be resolved to a type +line: 121 Placement.Obj_Panel3 cannot be resolved to a type +line: 122 Placement.Obj_Panel3 cannot be resolved to a type +line: 122 Placement.Obj_Panel3 cannot be resolved to a type +line: 123 Placement.Obj_Panel3 cannot be resolved to a type +line: 123 Placement.Obj_Panel3 cannot be resolved to a type +line: 124 Placement.Obj_Panel3 cannot be resolved to a type +line: 124 Placement.Obj_Panel3 cannot be resolved to a type +line: 125 Placement.Obj_Panel3 cannot be resolved to a type +line: 125 Placement.Obj_Panel3 cannot be resolved to a type +line: 126 Placement.Obj_Panel3 cannot be resolved to a type +line: 126 Placement.Obj_Panel3 cannot be resolved to a type +line: 129 Placement.Pokemon cannot be resolved to a type +line: 129 Placement.Pokemon cannot be resolved to a type +line: 130 Placement.Pokemon cannot be resolved to a type +line: 130 Placement.Pokemon cannot be resolved to a type +line: 131 Placement.Pokemon cannot be resolved to a type +line: 131 Placement.Pokemon cannot be resolved to a type +line: 132 Placement.Pokemon cannot be resolved to a type +line: 132 Placement.Pokemon cannot be resolved to a type +line: 133 Placement.Pokemon cannot be resolved to a type +line: 133 Placement.Pokemon cannot be resolved to a type +line: 135 Placement.ImagePanel cannot be resolved to a type +line: 135 Placement.ImagePanel cannot be resolved to a type +line: 136 Placement.Status_Panel cannot be resolved to a type +line: 136 Placement.Status_Panel cannot be resolved to a type +line: 138 The field Component.background is not visible + at org.eclipse.wb.internal.core.utils.ast.AstParser.findNode(AstParser.java:770) + at org.eclipse.wb.internal.core.utils.ast.AstParser.parseStatement(AstParser.java:159) + ... 44 more +Caused by: org.eclipse.wb.internal.core.utils.check.AssertionFailedException: null argument + at org.eclipse.wb.internal.core.utils.check.Assert.fail(Assert.java:225) + at org.eclipse.wb.internal.core.utils.check.Assert.isNotNull(Assert.java:174) + at org.eclipse.wb.internal.core.utils.check.Assert.isNotNull(Assert.java:159) + at org.eclipse.wb.internal.core.utils.ast.AstParser$3.postVisit(AstParser.java:942) + at org.eclipse.jdt.core.dom.ASTNode.accept(ASTNode.java:3217) + at org.eclipse.jdt.core.dom.ASTNode.acceptChild(ASTNode.java:3262) + at org.eclipse.jdt.core.dom.ExpressionStatement.accept0(ExpressionStatement.java:136) + at org.eclipse.jdt.core.dom.ASTNode.accept(ASTNode.java:3214) + at org.eclipse.wb.internal.core.utils.ast.AstParser.copyBindings(AstParser.java:910) + at org.eclipse.wb.internal.core.utils.ast.AstParser.findNode0(AstParser.java:824) + at org.eclipse.wb.internal.core.utils.ast.AstParser.findNode(AstParser.java:767) + ... 45 more + +!ENTRY org.eclipse.wb.core 4 4 2023-12-03 23:05:35.981 +!MESSAGE Designer [1.13.0.202309050414.202312031954]: 205 (Unable to parse source.). + background.add(panel); line: 15 The serializable class StartBattle does not declare a static final serialVersionUID field of type long +line: 16 Placement.ImagePanel cannot be resolved to a type +line: 16 Placement.ImagePanel cannot be resolved to a type +line: 17 Placement.ImagePanel cannot be resolved to a type +line: 17 Placement.ImagePanel cannot be resolved to a type +line: 18 Placement.ImagePanel cannot be resolved to a type +line: 18 Placement.ImagePanel cannot be resolved to a type +line: 19 Placement.Win_or_Lose cannot be resolved to a type +line: 19 Placement.Win_or_Lose cannot be resolved to a type +line: 21 LinkedList is a raw type. References to generic type LinkedList should be parameterized +line: 21 LinkedList is a raw type. References to generic type LinkedList should be parameterized +line: 22 LinkedList is a raw type. References to generic type LinkedList should be parameterized +line: 22 LinkedList is a raw type. References to generic type LinkedList should be parameterized +line: 23 LinkedList is a raw type. References to generic type LinkedList should be parameterized +line: 23 LinkedList is a raw type. References to generic type LinkedList should be parameterized +line: 24 LinkedList is a raw type. References to generic type LinkedList should be parameterized +line: 24 LinkedList is a raw type. References to generic type LinkedList should be parameterized +line: 25 LinkedList is a raw type. References to generic type LinkedList should be parameterized +line: 25 LinkedList is a raw type. References to generic type LinkedList should be parameterized +line: 26 LinkedList is a raw type. References to generic type LinkedList should be parameterized +line: 26 LinkedList is a raw type. References to generic type LinkedList should be parameterized +line: 28 Placement.ImagePanel cannot be resolved to a type +line: 28 Placement.ImagePanel cannot be resolved to a type +line: 29 Placement.Status_Panel cannot be resolved to a type +line: 29 Placement.Status_Panel cannot be resolved to a type +line: 48 Placement.Pokemon cannot be resolved to a type +line: 48 Placement.Pokemon cannot be resolved to a type +line: 49 Placement.Obj_Panel3 cannot be resolved to a type +line: 49 Placement.Obj_Panel3 cannot be resolved to a type +line: 50 Placement.Pokemon cannot be resolved to a type +line: 50 Placement.Pokemon cannot be resolved to a type +line: 51 Placement.Pokemon cannot be resolved to a type +line: 51 Placement.Pokemon cannot be resolved to a type +line: 116 Placement.Placement_Screen cannot be resolved to a type +line: 116 Placement.Placement_Screen cannot be resolved to a type +line: 117 Placement.Obj_Panel3 cannot be resolved to a type +line: 117 Placement.Obj_Panel3 cannot be resolved to a type +line: 118 Placement.Obj_Panel3 cannot be resolved to a type +line: 118 Placement.Obj_Panel3 cannot be resolved to a type +line: 119 Placement.Obj_Panel3 cannot be resolved to a type +line: 119 Placement.Obj_Panel3 cannot be resolved to a type +line: 120 Placement.Obj_Panel3 cannot be resolved to a type +line: 120 Placement.Obj_Panel3 cannot be resolved to a type +line: 121 Placement.Obj_Panel3 cannot be resolved to a type +line: 121 Placement.Obj_Panel3 cannot be resolved to a type +line: 122 Placement.Obj_Panel3 cannot be resolved to a type +line: 122 Placement.Obj_Panel3 cannot be resolved to a type +line: 123 Placement.Obj_Panel3 cannot be resolved to a type +line: 123 Placement.Obj_Panel3 cannot be resolved to a type +line: 124 Placement.Obj_Panel3 cannot be resolved to a type +line: 124 Placement.Obj_Panel3 cannot be resolved to a type +line: 125 Placement.Obj_Panel3 cannot be resolved to a type +line: 125 Placement.Obj_Panel3 cannot be resolved to a type +line: 126 Placement.Obj_Panel3 cannot be resolved to a type +line: 126 Placement.Obj_Panel3 cannot be resolved to a type +line: 129 Placement.Pokemon cannot be resolved to a type +line: 129 Placement.Pokemon cannot be resolved to a type +line: 130 Placement.Pokemon cannot be resolved to a type +line: 130 Placement.Pokemon cannot be resolved to a type +line: 131 Placement.Pokemon cannot be resolved to a type +line: 131 Placement.Pokemon cannot be resolved to a type +line: 132 Placement.Pokemon cannot be resolved to a type +line: 132 Placement.Pokemon cannot be resolved to a type +line: 133 Placement.Pokemon cannot be resolved to a type +line: 133 Placement.Pokemon cannot be resolved to a type +line: 135 Placement.ImagePanel cannot be resolved to a type +line: 135 Placement.ImagePanel cannot be resolved to a type +line: 136 Placement.Status_Panel cannot be resolved to a type +line: 136 Placement.Status_Panel cannot be resolved to a type +line: 138 The field Component.background is not visible +!STACK 0 +org.eclipse.wb.internal.core.utils.exception.DesignerException: 205 (Unable to parse source.). + background.add(panel); line: 15 The serializable class StartBattle does not declare a static final serialVersionUID field of type long +line: 16 Placement.ImagePanel cannot be resolved to a type +line: 16 Placement.ImagePanel cannot be resolved to a type +line: 17 Placement.ImagePanel cannot be resolved to a type +line: 17 Placement.ImagePanel cannot be resolved to a type +line: 18 Placement.ImagePanel cannot be resolved to a type +line: 18 Placement.ImagePanel cannot be resolved to a type +line: 19 Placement.Win_or_Lose cannot be resolved to a type +line: 19 Placement.Win_or_Lose cannot be resolved to a type +line: 21 LinkedList is a raw type. References to generic type LinkedList should be parameterized +line: 21 LinkedList is a raw type. References to generic type LinkedList should be parameterized +line: 22 LinkedList is a raw type. References to generic type LinkedList should be parameterized +line: 22 LinkedList is a raw type. References to generic type LinkedList should be parameterized +line: 23 LinkedList is a raw type. References to generic type LinkedList should be parameterized +line: 23 LinkedList is a raw type. References to generic type LinkedList should be parameterized +line: 24 LinkedList is a raw type. References to generic type LinkedList should be parameterized +line: 24 LinkedList is a raw type. References to generic type LinkedList should be parameterized +line: 25 LinkedList is a raw type. References to generic type LinkedList should be parameterized +line: 25 LinkedList is a raw type. References to generic type LinkedList should be parameterized +line: 26 LinkedList is a raw type. References to generic type LinkedList should be parameterized +line: 26 LinkedList is a raw type. References to generic type LinkedList should be parameterized +line: 28 Placement.ImagePanel cannot be resolved to a type +line: 28 Placement.ImagePanel cannot be resolved to a type +line: 29 Placement.Status_Panel cannot be resolved to a type +line: 29 Placement.Status_Panel cannot be resolved to a type +line: 48 Placement.Pokemon cannot be resolved to a type +line: 48 Placement.Pokemon cannot be resolved to a type +line: 49 Placement.Obj_Panel3 cannot be resolved to a type +line: 49 Placement.Obj_Panel3 cannot be resolved to a type +line: 50 Placement.Pokemon cannot be resolved to a type +line: 50 Placement.Pokemon cannot be resolved to a type +line: 51 Placement.Pokemon cannot be resolved to a type +line: 51 Placement.Pokemon cannot be resolved to a type +line: 116 Placement.Placement_Screen cannot be resolved to a type +line: 116 Placement.Placement_Screen cannot be resolved to a type +line: 117 Placement.Obj_Panel3 cannot be resolved to a type +line: 117 Placement.Obj_Panel3 cannot be resolved to a type +line: 118 Placement.Obj_Panel3 cannot be resolved to a type +line: 118 Placement.Obj_Panel3 cannot be resolved to a type +line: 119 Placement.Obj_Panel3 cannot be resolved to a type +line: 119 Placement.Obj_Panel3 cannot be resolved to a type +line: 120 Placement.Obj_Panel3 cannot be resolved to a type +line: 120 Placement.Obj_Panel3 cannot be resolved to a type +line: 121 Placement.Obj_Panel3 cannot be resolved to a type +line: 121 Placement.Obj_Panel3 cannot be resolved to a type +line: 122 Placement.Obj_Panel3 cannot be resolved to a type +line: 122 Placement.Obj_Panel3 cannot be resolved to a type +line: 123 Placement.Obj_Panel3 cannot be resolved to a type +line: 123 Placement.Obj_Panel3 cannot be resolved to a type +line: 124 Placement.Obj_Panel3 cannot be resolved to a type +line: 124 Placement.Obj_Panel3 cannot be resolved to a type +line: 125 Placement.Obj_Panel3 cannot be resolved to a type +line: 125 Placement.Obj_Panel3 cannot be resolved to a type +line: 126 Placement.Obj_Panel3 cannot be resolved to a type +line: 126 Placement.Obj_Panel3 cannot be resolved to a type +line: 129 Placement.Pokemon cannot be resolved to a type +line: 129 Placement.Pokemon cannot be resolved to a type +line: 130 Placement.Pokemon cannot be resolved to a type +line: 130 Placement.Pokemon cannot be resolved to a type +line: 131 Placement.Pokemon cannot be resolved to a type +line: 131 Placement.Pokemon cannot be resolved to a type +line: 132 Placement.Pokemon cannot be resolved to a type +line: 132 Placement.Pokemon cannot be resolved to a type +line: 133 Placement.Pokemon cannot be resolved to a type +line: 133 Placement.Pokemon cannot be resolved to a type +line: 135 Placement.ImagePanel cannot be resolved to a type +line: 135 Placement.ImagePanel cannot be resolved to a type +line: 136 Placement.Status_Panel cannot be resolved to a type +line: 136 Placement.Status_Panel cannot be resolved to a type +line: 138 The field Component.background is not visible + at org.eclipse.wb.internal.core.utils.ast.AstParser.parseStatement(AstParser.java:162) + at org.eclipse.wb.internal.core.utils.ast.AstEditor.addStatement(AstEditor.java:1626) + at org.eclipse.wb.core.model.association.InvocationChildAssociation.add(InvocationChildAssociation.java:101) + at org.eclipse.wb.internal.core.model.generation.statement.AbstractInsideStatementGenerator.add(AbstractInsideStatementGenerator.java:90) + at org.eclipse.wb.internal.core.model.generation.statement.flat.FlatStatementGenerator.add(FlatStatementGenerator.java:66) + at org.eclipse.wb.internal.core.model.JavaInfoUtils.add(JavaInfoUtils.java:1389) + at org.eclipse.wb.internal.core.model.JavaInfoUtils.add(JavaInfoUtils.java:1292) + at org.eclipse.wb.internal.core.model.JavaInfoUtils.add(JavaInfoUtils.java:1222) + at org.eclipse.wb.internal.swing.model.layout.LayoutInfo.add(LayoutInfo.java:331) + at org.eclipse.wb.internal.swing.model.layout.absolute.AbstractAbsoluteLayoutInfo.command_CREATE(AbstractAbsoluteLayoutInfo.java:245) + at org.eclipse.wb.internal.swing.gef.policy.layout.AbsoluteLayoutEditPolicy$3.executeEdit(AbsoluteLayoutEditPolicy.java:240) + at org.eclipse.wb.core.gef.command.EditCommand$1.run(EditCommand.java:53) + at org.eclipse.wb.internal.core.utils.execution.ExecutionUtils.run(ExecutionUtils.java:331) + at org.eclipse.wb.core.gef.command.EditCommand.execute(EditCommand.java:50) + at org.eclipse.wb.internal.gef.core.EditDomain.executeCommand(EditDomain.java:59) + at org.eclipse.wb.gef.core.tools.Tool.executeCommand(Tool.java:209) + at org.eclipse.wb.gef.core.tools.AbstractCreationTool.handleButtonUp(AbstractCreationTool.java:62) + at org.eclipse.wb.gef.core.tools.Tool.mouseUp(Tool.java:395) + at org.eclipse.wb.internal.gef.core.EditDomain.mouseUp(EditDomain.java:255) + at org.eclipse.wb.internal.gef.graphical.EditEventManager.mouseUp(EditEventManager.java:150) + at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:224) + at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:89) + at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4256) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1066) + at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4054) + at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3642) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1155) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1046) + at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:155) + at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:643) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:550) + at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:171) + at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:152) + at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:203) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:136) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:402) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:255) + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104) + at java.base/java.lang.reflect.Method.invoke(Method.java:578) + at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:659) + at org.eclipse.equinox.launcher.Main.basicRun(Main.java:596) + at org.eclipse.equinox.launcher.Main.run(Main.java:1467) +Caused by: org.eclipse.wb.internal.core.utils.exception.DesignerException: 205 (Unable to parse source.). package Placement; +import java.awt.Component; +import java.awt.Container; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.awt.event.MouseAdapter; +import java.awt.event.MouseEvent; +import java.util.LinkedList; +import java.util.Random; +import java.util.Scanner; +import javax.swing.ImageIcon; +import javax.swing.JFrame; +import javax.swing.JPanel; +import javax.swing.Timer; +class StartBattle extends JPanel { +Placement.ImagePanel background=(Placement.ImagePanel) null; +Placement.ImagePanel next_btn=(Placement.ImagePanel) null; +Placement.ImagePanel PlacementScreen=(Placement.ImagePanel) null; +Placement.Win_or_Lose win_or_lose=(Placement.Win_or_Lose) null; +java.util.Scanner sc=(java.util.Scanner) null; +java.util.LinkedList friendly=(java.util.LinkedList) null; +java.util.LinkedList friendly_panel=(java.util.LinkedList) null; +java.util.LinkedList enemy_panel=(java.util.LinkedList) null; +java.util.LinkedList enemy=(java.util.LinkedList) null; +java.util.LinkedList forreplace=(java.util.LinkedList) null; +java.util.LinkedList buttons=(java.util.LinkedList) null; +boolean isnext=false; +Placement.ImagePanel ballImg=(Placement.ImagePanel) null; +Placement.Status_Panel status_panel=(Placement.Status_Panel) null; +java.util.Random random=(java.util.Random) null; +int turnNum=0; +int friendlyMaxPalceNum=0; +int enemyMaxPalceNum=0; +boolean friendlyFirstHit38=false; +boolean friendlyFirstHit=false; +int findEffect=0; +boolean replaceFirstHit=false; +boolean enemyFirstHit38=false; +boolean enemyFirstHit=false; +int friendlyHP45=0; +int enemyHP45=0; +int replaceHitNum=0; +int whoHitEnemy=0; +int whoHitFriendly=0; +int replacePoisonNum=0; +int friendlyPoisonNum=0; +int enemyPoisonNum=0; +Placement.Pokemon dan=(Placement.Pokemon) null; +Placement.Obj_Panel3 dan_panel=(Placement.Obj_Panel3) null; +Placement.Pokemon mang=(Placement.Pokemon) null; +Placement.Pokemon mo=(Placement.Pokemon) null; +private T findPanel(Container container, Class panelClass) {return (T) null;} +void pokemonfight(Obj_Panel3 friendly_panel,Obj_Panel3 enemy_panel) {} +void EnemydrawParabola(Obj_Panel3 friendly_panel, Obj_Panel3 enemy_panel) {} +void FriendlydrawParabola(Obj_Panel3 friendly_panel, Obj_Panel3 enemy_panel) {} +void friendly_change_pokemon_panel(int location, int pokemon_num, int pokemon_Lv, int pokemon_Health, int pokemon_power, int pokemon_exp, String pokemon_ex) {} +void enemy_change_pokemon_panel(int location, int pokemon_num, int pokemon_Lv, int pokemon_Health, int pokemon_power, int pokemon_exp, String pokemon_ex) {} +void show_ex(JPanel panel, int seconds) {} +int run() {return 0;} +void next() {} +void settingEnemy() {} +void findEffect() {} +void hitFriendly() {} +void hitEnemy() {} +void useStartBattleAbility() {} +void useFriendlyHitAbility() {} +void useEnemyHitAbility() {} +int remainFriendlyNum() {return 0;} +int remainEnemyNum() {return 0;} +void show1() {} +void friendlyGoFront() {} +void friendlyGoBack() {} +void enemyGoFront() {} +void enemyGoBack() {} +boolean winEnemy() {return false;} +boolean winFriendly() {return false;} +void isDownFriendly() {} +void isDownEnemy() {} +void friendlyHealthAdjust(int placeNum, int adjustNum) {} +void friendlyPowerAdjust(int placeNum, int adjustNum) {} +void enemyHealthAdjust(int placeNum, int adjustNum) {} +void enemyPowerAdjust(int placeNum, int adjustNum) {} +void findHitEnemy(int hit, int who) {} +void findHitfriendly(int hit, int who) {} +void friendlyAbillity45() {} +void enemyAbillity45() {} +void settingFriendlySummonModapi() {} +void settingEnemySummonModapi() {} +int findFriendlylv(int pokemonNum) {return 0;} +void friendlyStartBattleAbility(int placeNum) {} +void friendlyAttackAbility(int placeNum) {} +void friendlyFrontFightAbillity(int placeNum) {} +void friendlyHitAbility(int placeNum) {} +void friendlyDownAbility(int placeNum) {} +void friendlyFrontDownAbility(int placeNum) {} +void friendlyDownEnemyAbility(int placeNum) {} +void friendlyUseToSummon() {} +void friendlyUseSummonAbility() {} +void friendlySummonAbility(int placeNum) {} +void friendlyEnemySummonAbility() {} +boolean friendlyFindPokemon(int pokemonNum) {return false;} +int findEnemylv(int pokemonNum) {return 0;} +void enemyStartBattleAbility(int placeNum) {} +void enemyAttackAbility(int placeNum) {} +void enemyFrontFightAbillity(int placeNum) {} +void enemyHitAbility(int placeNum) {} +void enemyDownAbility(int placeNum) {} +void enemyFrontDownAbility(int placeNum) {} +void enemyDownEnemyAbility(int placeNum) {} +void enemyUseToSummon() {} +void enemyUseSummonAbility() {} +void enemySummonAbility(int placeNum) {} +void enemyFriendlySummonAbility() {} +boolean enemyFindPokemon(int pokemonNum) {return false;} +StartBattle(Object __wbp_param) { +super();Placement.Placement_Screen ps = (Placement.Placement_Screen) null; +Placement.Obj_Panel3 friendly_panel_1 = (Placement.Obj_Panel3) null; +Placement.Obj_Panel3 friendly_panel_2 = (Placement.Obj_Panel3) null; +Placement.Obj_Panel3 friendly_panel_3 = (Placement.Obj_Panel3) null; +Placement.Obj_Panel3 friendly_panel_4 = (Placement.Obj_Panel3) null; +Placement.Obj_Panel3 friendly_panel_5 = (Placement.Obj_Panel3) null; +Placement.Obj_Panel3 enemy_panel_1 = (Placement.Obj_Panel3) null; +Placement.Obj_Panel3 enemy_panel_2 = (Placement.Obj_Panel3) null; +Placement.Obj_Panel3 enemy_panel_3 = (Placement.Obj_Panel3) null; +Placement.Obj_Panel3 enemy_panel_4 = (Placement.Obj_Panel3) null; +Placement.Obj_Panel3 enemy_panel_5 = (Placement.Obj_Panel3) null; +javax.swing.JPanel panel = (javax.swing.JPanel) null; +int turnNum = 0; +Placement.Pokemon f1 = (Placement.Pokemon) null; +Placement.Pokemon f2 = (Placement.Pokemon) null; +Placement.Pokemon f3 = (Placement.Pokemon) null; +Placement.Pokemon f4 = (Placement.Pokemon) null; +Placement.Pokemon f5 = (Placement.Pokemon) null; +int findEffect = 0; +Placement.ImagePanel placement = (Placement.ImagePanel) null; +Placement.Status_Panel status = (Placement.Status_Panel) null; + + background.add(panel);} +} line: 15 The serializable class StartBattle does not declare a static final serialVersionUID field of type long +line: 16 Placement.ImagePanel cannot be resolved to a type +line: 16 Placement.ImagePanel cannot be resolved to a type +line: 17 Placement.ImagePanel cannot be resolved to a type +line: 17 Placement.ImagePanel cannot be resolved to a type +line: 18 Placement.ImagePanel cannot be resolved to a type +line: 18 Placement.ImagePanel cannot be resolved to a type +line: 19 Placement.Win_or_Lose cannot be resolved to a type +line: 19 Placement.Win_or_Lose cannot be resolved to a type +line: 21 LinkedList is a raw type. References to generic type LinkedList should be parameterized +line: 21 LinkedList is a raw type. References to generic type LinkedList should be parameterized +line: 22 LinkedList is a raw type. References to generic type LinkedList should be parameterized +line: 22 LinkedList is a raw type. References to generic type LinkedList should be parameterized +line: 23 LinkedList is a raw type. References to generic type LinkedList should be parameterized +line: 23 LinkedList is a raw type. References to generic type LinkedList should be parameterized +line: 24 LinkedList is a raw type. References to generic type LinkedList should be parameterized +line: 24 LinkedList is a raw type. References to generic type LinkedList should be parameterized +line: 25 LinkedList is a raw type. References to generic type LinkedList should be parameterized +line: 25 LinkedList is a raw type. References to generic type LinkedList should be parameterized +line: 26 LinkedList is a raw type. References to generic type LinkedList should be parameterized +line: 26 LinkedList is a raw type. References to generic type LinkedList should be parameterized +line: 28 Placement.ImagePanel cannot be resolved to a type +line: 28 Placement.ImagePanel cannot be resolved to a type +line: 29 Placement.Status_Panel cannot be resolved to a type +line: 29 Placement.Status_Panel cannot be resolved to a type +line: 48 Placement.Pokemon cannot be resolved to a type +line: 48 Placement.Pokemon cannot be resolved to a type +line: 49 Placement.Obj_Panel3 cannot be resolved to a type +line: 49 Placement.Obj_Panel3 cannot be resolved to a type +line: 50 Placement.Pokemon cannot be resolved to a type +line: 50 Placement.Pokemon cannot be resolved to a type +line: 51 Placement.Pokemon cannot be resolved to a type +line: 51 Placement.Pokemon cannot be resolved to a type +line: 116 Placement.Placement_Screen cannot be resolved to a type +line: 116 Placement.Placement_Screen cannot be resolved to a type +line: 117 Placement.Obj_Panel3 cannot be resolved to a type +line: 117 Placement.Obj_Panel3 cannot be resolved to a type +line: 118 Placement.Obj_Panel3 cannot be resolved to a type +line: 118 Placement.Obj_Panel3 cannot be resolved to a type +line: 119 Placement.Obj_Panel3 cannot be resolved to a type +line: 119 Placement.Obj_Panel3 cannot be resolved to a type +line: 120 Placement.Obj_Panel3 cannot be resolved to a type +line: 120 Placement.Obj_Panel3 cannot be resolved to a type +line: 121 Placement.Obj_Panel3 cannot be resolved to a type +line: 121 Placement.Obj_Panel3 cannot be resolved to a type +line: 122 Placement.Obj_Panel3 cannot be resolved to a type +line: 122 Placement.Obj_Panel3 cannot be resolved to a type +line: 123 Placement.Obj_Panel3 cannot be resolved to a type +line: 123 Placement.Obj_Panel3 cannot be resolved to a type +line: 124 Placement.Obj_Panel3 cannot be resolved to a type +line: 124 Placement.Obj_Panel3 cannot be resolved to a type +line: 125 Placement.Obj_Panel3 cannot be resolved to a type +line: 125 Placement.Obj_Panel3 cannot be resolved to a type +line: 126 Placement.Obj_Panel3 cannot be resolved to a type +line: 126 Placement.Obj_Panel3 cannot be resolved to a type +line: 129 Placement.Pokemon cannot be resolved to a type +line: 129 Placement.Pokemon cannot be resolved to a type +line: 130 Placement.Pokemon cannot be resolved to a type +line: 130 Placement.Pokemon cannot be resolved to a type +line: 131 Placement.Pokemon cannot be resolved to a type +line: 131 Placement.Pokemon cannot be resolved to a type +line: 132 Placement.Pokemon cannot be resolved to a type +line: 132 Placement.Pokemon cannot be resolved to a type +line: 133 Placement.Pokemon cannot be resolved to a type +line: 133 Placement.Pokemon cannot be resolved to a type +line: 135 Placement.ImagePanel cannot be resolved to a type +line: 135 Placement.ImagePanel cannot be resolved to a type +line: 136 Placement.Status_Panel cannot be resolved to a type +line: 136 Placement.Status_Panel cannot be resolved to a type +line: 138 The field Component.background is not visible + at org.eclipse.wb.internal.core.utils.ast.AstParser.findNode(AstParser.java:770) + at org.eclipse.wb.internal.core.utils.ast.AstParser.parseStatement(AstParser.java:159) + ... 44 more +Caused by: org.eclipse.wb.internal.core.utils.check.AssertionFailedException: null argument + at org.eclipse.wb.internal.core.utils.check.Assert.fail(Assert.java:225) + at org.eclipse.wb.internal.core.utils.check.Assert.isNotNull(Assert.java:174) + at org.eclipse.wb.internal.core.utils.check.Assert.isNotNull(Assert.java:159) + at org.eclipse.wb.internal.core.utils.ast.AstParser$3.postVisit(AstParser.java:942) + at org.eclipse.jdt.core.dom.ASTNode.accept(ASTNode.java:3217) + at org.eclipse.jdt.core.dom.ASTNode.acceptChild(ASTNode.java:3262) + at org.eclipse.jdt.core.dom.ExpressionStatement.accept0(ExpressionStatement.java:136) + at org.eclipse.jdt.core.dom.ASTNode.accept(ASTNode.java:3214) + at org.eclipse.wb.internal.core.utils.ast.AstParser.copyBindings(AstParser.java:910) + at org.eclipse.wb.internal.core.utils.ast.AstParser.findNode0(AstParser.java:824) + at org.eclipse.wb.internal.core.utils.ast.AstParser.findNode(AstParser.java:767) + ... 45 more + +!ENTRY org.eclipse.ui.ide 4 4 2023-12-03 23:05:36.791 +!MESSAGE Not properly disposed SWT resource +!STACK 0 +java.lang.Error: SWT Resource was not properly disposed + at org.eclipse.swt.graphics.Resource.initNonDisposeTracking(Resource.java:172) + at org.eclipse.swt.graphics.Resource.(Resource.java:120) + at org.eclipse.swt.graphics.Image.(Image.java:195) + at org.eclipse.wb.internal.core.utils.exception.DesignerExceptionUtils.makeScreenshot(DesignerExceptionUtils.java:538) + at org.eclipse.wb.internal.core.editor.DesignPage.handleDesignException(DesignPage.java:657) + at org.eclipse.wb.internal.core.editor.DesignPage$9.handleException(DesignPage.java:583) + at org.eclipse.wb.internal.core.utils.execution.ExecutionUtils.run(ExecutionUtils.java:337) + at org.eclipse.wb.core.gef.command.EditCommand.execute(EditCommand.java:50) + at org.eclipse.wb.internal.gef.core.EditDomain.executeCommand(EditDomain.java:59) + at org.eclipse.wb.gef.core.tools.Tool.executeCommand(Tool.java:209) + at org.eclipse.wb.gef.core.tools.AbstractCreationTool.handleButtonUp(AbstractCreationTool.java:62) + at org.eclipse.wb.gef.core.tools.Tool.mouseUp(Tool.java:395) + at org.eclipse.wb.internal.gef.core.EditDomain.mouseUp(EditDomain.java:255) + at org.eclipse.wb.internal.gef.graphical.EditEventManager.mouseUp(EditEventManager.java:150) + at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:224) + at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:89) + at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4256) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1066) + at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4054) + at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3642) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1155) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1046) + at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:155) + at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:643) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:550) + at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:171) + at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:152) + at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:203) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:136) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:402) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:255) + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104) + at java.base/java.lang.reflect.Method.invoke(Method.java:578) + at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:659) + at org.eclipse.equinox.launcher.Main.basicRun(Main.java:596) + at org.eclipse.equinox.launcher.Main.run(Main.java:1467) + +!ENTRY org.eclipse.ui.ide 4 4 2023-12-04 01:32:27.409 +!MESSAGE Not properly disposed SWT resource +!STACK 0 +java.lang.Error: SWT Resource was not properly disposed + at org.eclipse.swt.graphics.Resource.initNonDisposeTracking(Resource.java:172) + at org.eclipse.swt.graphics.Resource.(Resource.java:120) + at org.eclipse.swt.graphics.Font.(Font.java:111) + at org.eclipse.jface.resource.ArrayFontDescriptor.createFont(ArrayFontDescriptor.java:78) + at org.eclipse.wb.internal.core.editor.errors.WarningComposite.(WarningComposite.java:72) + at org.eclipse.wb.internal.core.editor.errors.JavaWarningComposite.(JavaWarningComposite.java:32) + at java.base/jdk.internal.reflect.DirectConstructorHandleAccessor.newInstance(DirectConstructorHandleAccessor.java:67) + at java.base/java.lang.reflect.Constructor.newInstanceWithCaller(Constructor.java:500) + at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:484) + at org.eclipse.wb.internal.core.editor.DesignPage.getErrorComposite(DesignPage.java:207) + at org.eclipse.wb.internal.core.editor.DesignPage.showExceptionOnDesignPane(DesignPage.java:523) + at org.eclipse.wb.internal.core.editor.DesignPage.internal_refreshGEF(DesignPage.java:446) + at org.eclipse.wb.internal.core.editor.UndoManager.refreshDesignerEditor(UndoManager.java:389) + at org.eclipse.wb.internal.core.editor.UndoManager.activate(UndoManager.java:90) + at org.eclipse.wb.internal.core.editor.DesignPage.handleActiveState_True(DesignPage.java:275) + at org.eclipse.wb.internal.core.editor.DesignPage.handleActiveState(DesignPage.java:252) + at org.eclipse.wb.internal.core.editor.multi.DefaultMultiMode.showPage(DefaultMultiMode.java:127) + at org.eclipse.wb.internal.core.editor.multi.DefaultMultiMode$1.widgetSelected(DefaultMultiMode.java:63) + at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:252) + at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:89) + at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4256) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1066) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1090) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1075) + at org.eclipse.swt.widgets.Widget.notifyListeners(Widget.java:778) + at org.eclipse.swt.custom.CTabFolder.setSelection(CTabFolder.java:3248) + at org.eclipse.swt.custom.CTabFolder.onMouse(CTabFolder.java:1882) + at org.eclipse.swt.custom.CTabFolder.lambda$0(CTabFolder.java:332) + at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:89) + at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4256) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1066) + at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4054) + at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3642) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1155) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1046) + at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:155) + at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:643) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:550) + at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:171) + at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:152) + at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:203) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:136) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:402) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:255) + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104) + at java.base/java.lang.reflect.Method.invoke(Method.java:578) + at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:659) + at org.eclipse.equinox.launcher.Main.basicRun(Main.java:596) + at org.eclipse.equinox.launcher.Main.run(Main.java:1467) + +!ENTRY org.eclipse.wb.core 4 4 2023-12-04 02:52:51.518 +!MESSAGE Designer [1.13.0.202309050414.202312031954]: null argument: +!STACK 0 +org.eclipse.core.runtime.AssertionFailedException: null argument: + at org.eclipse.core.runtime.Assert.isNotNull(Assert.java:88) + at org.eclipse.core.runtime.Assert.isNotNull(Assert.java:76) + at org.eclipse.jface.viewers.StructuredViewer.assertElementsNotNull(StructuredViewer.java:539) + at org.eclipse.jface.viewers.StructuredViewer.getRawChildren(StructuredViewer.java:948) + at org.eclipse.jface.viewers.ColumnViewer.getRawChildren(ColumnViewer.java:704) + at org.eclipse.jface.viewers.AbstractTableViewer.getRawChildren(AbstractTableViewer.java:1038) + at org.eclipse.jface.viewers.StructuredViewer.getFilteredChildren(StructuredViewer.java:850) + at org.eclipse.jface.viewers.StructuredViewer.getSortedChildren(StructuredViewer.java:1031) + at org.eclipse.jface.viewers.AbstractTableViewer.internalRefreshAll(AbstractTableViewer.java:670) + at org.eclipse.jface.viewers.AbstractTableViewer.internalRefresh(AbstractTableViewer.java:618) + at org.eclipse.jface.viewers.AbstractTableViewer.internalRefresh(AbstractTableViewer.java:610) + at org.eclipse.jface.viewers.AbstractTableViewer.lambda$0(AbstractTableViewer.java:572) + at org.eclipse.jface.viewers.StructuredViewer.preservingSelection(StructuredViewer.java:1398) + at org.eclipse.jface.viewers.StructuredViewer.preservingSelection(StructuredViewer.java:1359) + at org.eclipse.jface.viewers.AbstractTableViewer.inputChanged(AbstractTableViewer.java:572) + at org.eclipse.jface.viewers.ContentViewer.setInput(ContentViewer.java:282) + at org.eclipse.jface.viewers.StructuredViewer.setInput(StructuredViewer.java:1632) + at org.eclipse.wb.internal.core.editor.errors.MultipleConstructorsComposite.setException(MultipleConstructorsComposite.java:167) + at org.eclipse.wb.internal.core.editor.DesignPage.showExceptionOnDesignPane(DesignPage.java:511) + at org.eclipse.wb.internal.core.editor.DesignPage.internal_refreshGEF(DesignPage.java:446) + at org.eclipse.wb.internal.core.editor.UndoManager.refreshDesignerEditor(UndoManager.java:389) + at org.eclipse.wb.internal.core.editor.DesignPage.refreshGEF(DesignPage.java:409) + at org.eclipse.wb.internal.core.editor.DesignPage$4.run(DesignPage.java:298) + at org.eclipse.wb.internal.core.utils.execution.ExecutionUtils.runLog(ExecutionUtils.java:107) + at org.eclipse.wb.internal.core.editor.DesignPage.checkDependenciesOnDesignPageActivation(DesignPage.java:292) + at org.eclipse.wb.internal.core.editor.DesignPage$1$1.run(DesignPage.java:106) + at org.eclipse.wb.internal.core.utils.execution.ExecutionUtils.runLog(ExecutionUtils.java:107) + at org.eclipse.wb.internal.core.utils.execution.ExecutionUtils$4.run(ExecutionUtils.java:207) + at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:40) + at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:132) + at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:4029) + at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3645) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1155) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1046) + at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:155) + at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:643) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:550) + at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:171) + at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:152) + at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:203) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:136) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:402) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:255) + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104) + at java.base/java.lang.reflect.Method.invoke(Method.java:578) + at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:659) + at org.eclipse.equinox.launcher.Main.basicRun(Main.java:596) + at org.eclipse.equinox.launcher.Main.run(Main.java:1467) + +!ENTRY org.eclipse.wb.core 4 4 2023-12-04 02:52:51.874 +!MESSAGE Designer [1.13.0.202309050414.202312031954]: null argument: +!STACK 0 +org.eclipse.core.runtime.AssertionFailedException: null argument: + at org.eclipse.core.runtime.Assert.isNotNull(Assert.java:88) + at org.eclipse.core.runtime.Assert.isNotNull(Assert.java:76) + at org.eclipse.jface.viewers.StructuredViewer.assertElementsNotNull(StructuredViewer.java:539) + at org.eclipse.jface.viewers.StructuredViewer.getRawChildren(StructuredViewer.java:948) + at org.eclipse.jface.viewers.ColumnViewer.getRawChildren(ColumnViewer.java:704) + at org.eclipse.jface.viewers.AbstractTableViewer.getRawChildren(AbstractTableViewer.java:1038) + at org.eclipse.jface.viewers.StructuredViewer.getFilteredChildren(StructuredViewer.java:850) + at org.eclipse.jface.viewers.StructuredViewer.getSortedChildren(StructuredViewer.java:1031) + at org.eclipse.jface.viewers.AbstractTableViewer.internalRefreshAll(AbstractTableViewer.java:670) + at org.eclipse.jface.viewers.AbstractTableViewer.internalRefresh(AbstractTableViewer.java:618) + at org.eclipse.jface.viewers.AbstractTableViewer.internalRefresh(AbstractTableViewer.java:610) + at org.eclipse.jface.viewers.AbstractTableViewer.lambda$0(AbstractTableViewer.java:572) + at org.eclipse.jface.viewers.StructuredViewer.preservingSelection(StructuredViewer.java:1398) + at org.eclipse.jface.viewers.StructuredViewer.preservingSelection(StructuredViewer.java:1359) + at org.eclipse.jface.viewers.AbstractTableViewer.inputChanged(AbstractTableViewer.java:572) + at org.eclipse.jface.viewers.ContentViewer.setInput(ContentViewer.java:282) + at org.eclipse.jface.viewers.StructuredViewer.setInput(StructuredViewer.java:1632) + at org.eclipse.wb.internal.core.editor.errors.MultipleConstructorsComposite.setException(MultipleConstructorsComposite.java:167) + at org.eclipse.wb.internal.core.editor.DesignPage.showExceptionOnDesignPane(DesignPage.java:511) + at org.eclipse.wb.internal.core.editor.DesignPage.internal_refreshGEF(DesignPage.java:446) + at org.eclipse.wb.internal.core.editor.UndoManager.refreshDesignerEditor(UndoManager.java:389) + at org.eclipse.wb.internal.core.editor.UndoManager$6.run(UndoManager.java:338) + at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:40) + at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:132) + at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:4029) + at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3645) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1155) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1046) + at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:155) + at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:643) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:550) + at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:171) + at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:152) + at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:203) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:136) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:402) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:255) + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104) + at java.base/java.lang.reflect.Method.invoke(Method.java:578) + at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:659) + at org.eclipse.equinox.launcher.Main.basicRun(Main.java:596) + at org.eclipse.equinox.launcher.Main.run(Main.java:1467) +!SESSION 2023-12-04 03:24:38.767 ----------------------------------------------- +eclipse.buildId=4.26.0.20221201-1200 +java.version=19.0.2 +java.vendor=Eclipse Adoptium +BootLoader constants: OS=win32, ARCH=x86_64, WS=win32, NL=ko_KR +Framework arguments: -product org.eclipse.epp.package.java.product +Command-line arguments: -os win32 -ws win32 -arch x86_64 -product org.eclipse.epp.package.java.product + +!ENTRY org.eclipse.jface 2 0 2023-12-04 03:25:15.171 +!MESSAGE Keybinding conflicts occurred. They may interfere with normal accelerator operation. +!SUBENTRY 1 org.eclipse.jface 2 0 2023-12-04 03:25:15.171 +!MESSAGE A conflict occurred for CTRL+SHIFT+T: +Binding(CTRL+SHIFT+T, + ParameterizedCommand(Command(org.eclipse.jdt.ui.navigate.open.type,Open Type, + Open a type in a Java editor, + Category(org.eclipse.ui.category.navigate,Navigate,null,true), + WorkbenchHandlerServiceHandler("org.eclipse.jdt.ui.navigate.open.type"), + ,,true),null), + org.eclipse.ui.defaultAcceleratorConfiguration, + org.eclipse.ui.contexts.window,,,system) +Binding(CTRL+SHIFT+T, + ParameterizedCommand(Command(org.eclipse.lsp4e.symbolinworkspace,Go to Symbol in Workspace, + , + Category(org.eclipse.lsp4e.category,Language Servers,null,true), + WorkbenchHandlerServiceHandler("org.eclipse.lsp4e.symbolinworkspace"), + ,,true),null), + org.eclipse.ui.defaultAcceleratorConfiguration, + org.eclipse.ui.contexts.window,,,system) +!SUBENTRY 1 org.eclipse.jface 2 0 2023-12-04 03:25:15.171 +!MESSAGE A conflict occurred for ALT+SHIFT+R: +Binding(ALT+SHIFT+R, + ParameterizedCommand(Command(org.eclipse.jdt.ui.edit.text.java.rename.element,Rename - Refactoring , + Rename the selected element, + Category(org.eclipse.jdt.ui.category.refactoring,Refactor - Java,Java Refactoring Actions,true), + WorkbenchHandlerServiceHandler("org.eclipse.jdt.ui.edit.text.java.rename.element"), + ,,true),null), + org.eclipse.ui.defaultAcceleratorConfiguration, + org.eclipse.ui.contexts.window,,,system) +Binding(ALT+SHIFT+R, + ParameterizedCommand(Command(org.eclipse.ui.edit.rename,Rename, + Rename the selected item, + Category(org.eclipse.ui.category.file,File,null,true), + WorkbenchHandlerServiceHandler("org.eclipse.ui.edit.rename"), + ,,true),null), + org.eclipse.ui.defaultAcceleratorConfiguration, + org.eclipse.ui.contexts.window,,,system) + +!ENTRY org.eclipse.egit.ui 2 0 2023-12-04 03:25:22.710 +!MESSAGE Warning: The environment variable HOME is not set. The following directory will be used to store the Git +user global configuration and to define the default location to store repositories: 'C:\Users\nkr42'. If this is +not correct please set the HOME environment variable and restart Eclipse. Otherwise Git for Windows and +EGit might behave differently since they see different configuration options. +This warning can be switched off on the Team > Git > Confirmations and Warnings preference page. + +!ENTRY org.eclipse.pde.core 4 0 2023-12-04 03:26:56.325 +!MESSAGE ConfigurationParser.parse() error: +!STACK 0 +org.xml.sax.SAXException: NLS missing message: InstalledSiteParser_UnableToCreateURL in: org.eclipse.update.internal.configurator.messages +java.net.MalformedURLException: no protocol: ../../../.p2/pool/ + at org.eclipse.pde.internal.core.update.configurator.ConfigurationParser.startElement(ConfigurationParser.java:130) + at java.xml/com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.startElement(AbstractSAXParser.java:518) + at java.xml/com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.scanStartElement(XMLNSDocumentScannerImpl.java:374) + at java.xml/com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2726) + at java.xml/com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:605) + at java.xml/com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(XMLNSDocumentScannerImpl.java:112) + at java.xml/com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:542) + at java.xml/com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:889) + at java.xml/com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:825) + at java.xml/com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:141) + at java.xml/com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1224) + at java.xml/com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:637) + at java.xml/com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl.parse(SAXParserImpl.java:326) + at org.eclipse.pde.internal.core.update.configurator.ConfigurationParser.parse(ConfigurationParser.java:85) + at org.eclipse.pde.internal.core.update.configurator.PlatformConfiguration.loadConfig(PlatformConfiguration.java:110) + at org.eclipse.pde.internal.core.update.configurator.PlatformConfiguration.initialize(PlatformConfiguration.java:85) + at org.eclipse.pde.internal.core.update.configurator.PlatformConfiguration.(PlatformConfiguration.java:61) + at org.eclipse.pde.internal.core.PluginPathFinder.getFeaturePaths(PluginPathFinder.java:115) + at org.eclipse.pde.internal.core.ExternalFeatureModelManager.createFeatures(ExternalFeatureModelManager.java:198) + at org.eclipse.pde.internal.core.target.TargetDefinition.resolveFeatures(TargetDefinition.java:990) + at org.eclipse.pde.internal.core.target.ProfileBundleContainer.resolveFeatures(ProfileBundleContainer.java:248) + at org.eclipse.pde.internal.core.target.AbstractBundleContainer.resolve(AbstractBundleContainer.java:97) + at org.eclipse.pde.internal.core.target.TargetDefinition.resolve(TargetDefinition.java:429) + at org.eclipse.pde.internal.core.TargetPlatformHelper.getWorkspaceTargetResolved(TargetPlatformHelper.java:629) + at org.eclipse.pde.internal.core.PluginModelManager.getExternalBundles(PluginModelManager.java:682) + at org.eclipse.pde.internal.core.PluginModelManager.initializeTable(PluginModelManager.java:605) + at org.eclipse.pde.internal.core.PluginModelManager.findModel(PluginModelManager.java:1070) + at org.eclipse.pde.core.plugin.PluginRegistry.findModel(PluginRegistry.java:113) + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104) + at java.base/java.lang.reflect.Method.invoke(Method.java:578) + at org.eclipse.wb.internal.core.utils.reflect.ReflectionUtils.invokeMethod(ReflectionUtils.java:896) + at org.eclipse.wb.internal.core.utils.pde.ReflectivePDE.invokeStatic(ReflectivePDE.java:90) + at org.eclipse.wb.internal.core.utils.pde.ReflectivePDE.findModel(ReflectivePDE.java:65) + at org.eclipse.wb.internal.core.utils.reflect.ProjectClassLoader.addFragments(ProjectClassLoader.java:139) + at org.eclipse.wb.internal.core.utils.reflect.ProjectClassLoader.addRuntimeClassPathEntries(ProjectClassLoader.java:127) + at org.eclipse.wb.internal.core.utils.reflect.ProjectClassLoader.getClasspathUrls(ProjectClassLoader.java:73) + at org.eclipse.wb.internal.core.utils.reflect.ProjectClassLoader.create(ProjectClassLoader.java:64) + at org.eclipse.wb.internal.core.parser.AbstractParseFactory.createClassLoader_project(AbstractParseFactory.java:801) + at org.eclipse.wb.internal.core.parser.AbstractParseFactory.getClassLoader(AbstractParseFactory.java:751) + at org.eclipse.wb.internal.core.parser.AbstractParseFactory.initializeClassLoader(AbstractParseFactory.java:736) + at org.eclipse.wb.internal.swing.parser.ParseFactory.initializeClassLoader(ParseFactory.java:280) + at org.eclipse.wb.internal.swing.parser.ParseFactory.getRootContext(ParseFactory.java:105) + at org.eclipse.wb.internal.core.parser.JavaInfoParser.prepareParseContext(JavaInfoParser.java:1186) + at org.eclipse.wb.internal.core.parser.JavaInfoParser.parse(JavaInfoParser.java:244) + at org.eclipse.wb.internal.core.parser.JavaInfoParser$1.runObject(JavaInfoParser.java:153) + at org.eclipse.wb.internal.core.parser.JavaInfoParser$1.runObject(JavaInfoParser.java:1) + at org.eclipse.wb.internal.core.utils.execution.ExecutionUtils.runDesignTime(ExecutionUtils.java:160) + at org.eclipse.wb.internal.core.parser.JavaInfoParser.parse(JavaInfoParser.java:150) + at org.eclipse.wb.internal.core.editor.DesignPage.internal_refreshGEF(DesignPage.java:553) + at org.eclipse.wb.internal.core.editor.DesignPage$8$1.run(DesignPage.java:468) + at org.eclipse.swt.widgets.Synchronizer.syncExec(Synchronizer.java:183) + at org.eclipse.ui.internal.UISynchronizer.syncExec(UISynchronizer.java:133) + at org.eclipse.swt.widgets.Display.syncExec(Display.java:4785) + at org.eclipse.wb.internal.core.editor.DesignPage$8.run(DesignPage.java:464) + at org.eclipse.jface.operation.ModalContext.runInCurrentThread(ModalContext.java:434) + at org.eclipse.jface.operation.ModalContext.run(ModalContext.java:352) + at org.eclipse.jface.dialogs.ProgressMonitorDialog.run(ProgressMonitorDialog.java:470) + at org.eclipse.wb.internal.core.editor.DesignPage.internal_refreshGEF_withProgress(DesignPage.java:484) + at org.eclipse.wb.internal.core.editor.DesignPage.internal_refreshGEF(DesignPage.java:432) + at org.eclipse.wb.internal.core.editor.UndoManager.refreshDesignerEditor(UndoManager.java:389) + at org.eclipse.wb.internal.core.editor.UndoManager.activate(UndoManager.java:90) + at org.eclipse.wb.internal.core.editor.DesignPage.handleActiveState_True(DesignPage.java:275) + at org.eclipse.wb.internal.core.editor.DesignPage.handleActiveState(DesignPage.java:252) + at org.eclipse.wb.internal.core.editor.multi.DefaultMultiMode.showPage(DefaultMultiMode.java:127) + at org.eclipse.wb.internal.core.editor.multi.DefaultMultiMode$1.widgetSelected(DefaultMultiMode.java:63) + at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:252) + at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:89) + at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4256) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1066) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1090) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1075) + at org.eclipse.swt.widgets.Widget.notifyListeners(Widget.java:778) + at org.eclipse.swt.custom.CTabFolder.setSelection(CTabFolder.java:3248) + at org.eclipse.swt.custom.CTabFolder.onMouse(CTabFolder.java:1882) + at org.eclipse.swt.custom.CTabFolder.lambda$0(CTabFolder.java:332) + at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:89) + at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4256) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1066) + at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4054) + at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3642) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1155) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1046) + at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:155) + at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:643) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:550) + at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:171) + at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:152) + at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:203) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:136) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:402) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:255) + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104) + at java.base/java.lang.reflect.Method.invoke(Method.java:578) + at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:659) + at org.eclipse.equinox.launcher.Main.basicRun(Main.java:596) + at org.eclipse.equinox.launcher.Main.run(Main.java:1467) +Caused by: java.net.MalformedURLException: no protocol: ../../../.p2/pool/ + at java.base/java.net.URL.(URL.java:675) + at java.base/java.net.URL.(URL.java:570) + at org.eclipse.pde.internal.core.update.configurator.ConfigurationParser.processSite(ConfigurationParser.java:157) + at org.eclipse.pde.internal.core.update.configurator.ConfigurationParser.startElement(ConfigurationParser.java:120) + ... 98 more + +!ENTRY org.eclipse.pde.core 4 0 2023-12-04 03:26:56.328 +!MESSAGE ConfigurationParser.parse() error: +!STACK 0 +org.xml.sax.SAXException: NLS missing message: InstalledSiteParser_UnableToCreateURL in: org.eclipse.update.internal.configurator.messages +java.net.MalformedURLException: no protocol: ../../../.p2/pool/ + at org.eclipse.pde.internal.core.update.configurator.ConfigurationParser.startElement(ConfigurationParser.java:130) + at java.xml/com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.startElement(AbstractSAXParser.java:518) + at java.xml/com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.scanStartElement(XMLNSDocumentScannerImpl.java:374) + at java.xml/com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2726) + at java.xml/com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:605) + at java.xml/com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(XMLNSDocumentScannerImpl.java:112) + at java.xml/com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:542) + at java.xml/com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:889) + at java.xml/com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:825) + at java.xml/com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:141) + at java.xml/com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1224) + at java.xml/com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:637) + at java.xml/com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl.parse(SAXParserImpl.java:326) + at org.eclipse.pde.internal.core.update.configurator.ConfigurationParser.parse(ConfigurationParser.java:85) + at org.eclipse.pde.internal.core.update.configurator.PlatformConfiguration.loadConfig(PlatformConfiguration.java:135) + at org.eclipse.pde.internal.core.update.configurator.PlatformConfiguration.initialize(PlatformConfiguration.java:85) + at org.eclipse.pde.internal.core.update.configurator.PlatformConfiguration.(PlatformConfiguration.java:61) + at org.eclipse.pde.internal.core.PluginPathFinder.getFeaturePaths(PluginPathFinder.java:115) + at org.eclipse.pde.internal.core.ExternalFeatureModelManager.createFeatures(ExternalFeatureModelManager.java:198) + at org.eclipse.pde.internal.core.target.TargetDefinition.resolveFeatures(TargetDefinition.java:990) + at org.eclipse.pde.internal.core.target.ProfileBundleContainer.resolveFeatures(ProfileBundleContainer.java:248) + at org.eclipse.pde.internal.core.target.AbstractBundleContainer.resolve(AbstractBundleContainer.java:97) + at org.eclipse.pde.internal.core.target.TargetDefinition.resolve(TargetDefinition.java:429) + at org.eclipse.pde.internal.core.TargetPlatformHelper.getWorkspaceTargetResolved(TargetPlatformHelper.java:629) + at org.eclipse.pde.internal.core.PluginModelManager.getExternalBundles(PluginModelManager.java:682) + at org.eclipse.pde.internal.core.PluginModelManager.initializeTable(PluginModelManager.java:605) + at org.eclipse.pde.internal.core.PluginModelManager.findModel(PluginModelManager.java:1070) + at org.eclipse.pde.core.plugin.PluginRegistry.findModel(PluginRegistry.java:113) + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104) + at java.base/java.lang.reflect.Method.invoke(Method.java:578) + at org.eclipse.wb.internal.core.utils.reflect.ReflectionUtils.invokeMethod(ReflectionUtils.java:896) + at org.eclipse.wb.internal.core.utils.pde.ReflectivePDE.invokeStatic(ReflectivePDE.java:90) + at org.eclipse.wb.internal.core.utils.pde.ReflectivePDE.findModel(ReflectivePDE.java:65) + at org.eclipse.wb.internal.core.utils.reflect.ProjectClassLoader.addFragments(ProjectClassLoader.java:139) + at org.eclipse.wb.internal.core.utils.reflect.ProjectClassLoader.addRuntimeClassPathEntries(ProjectClassLoader.java:127) + at org.eclipse.wb.internal.core.utils.reflect.ProjectClassLoader.getClasspathUrls(ProjectClassLoader.java:73) + at org.eclipse.wb.internal.core.utils.reflect.ProjectClassLoader.create(ProjectClassLoader.java:64) + at org.eclipse.wb.internal.core.parser.AbstractParseFactory.createClassLoader_project(AbstractParseFactory.java:801) + at org.eclipse.wb.internal.core.parser.AbstractParseFactory.getClassLoader(AbstractParseFactory.java:751) + at org.eclipse.wb.internal.core.parser.AbstractParseFactory.initializeClassLoader(AbstractParseFactory.java:736) + at org.eclipse.wb.internal.swing.parser.ParseFactory.initializeClassLoader(ParseFactory.java:280) + at org.eclipse.wb.internal.swing.parser.ParseFactory.getRootContext(ParseFactory.java:105) + at org.eclipse.wb.internal.core.parser.JavaInfoParser.prepareParseContext(JavaInfoParser.java:1186) + at org.eclipse.wb.internal.core.parser.JavaInfoParser.parse(JavaInfoParser.java:244) + at org.eclipse.wb.internal.core.parser.JavaInfoParser$1.runObject(JavaInfoParser.java:153) + at org.eclipse.wb.internal.core.parser.JavaInfoParser$1.runObject(JavaInfoParser.java:1) + at org.eclipse.wb.internal.core.utils.execution.ExecutionUtils.runDesignTime(ExecutionUtils.java:160) + at org.eclipse.wb.internal.core.parser.JavaInfoParser.parse(JavaInfoParser.java:150) + at org.eclipse.wb.internal.core.editor.DesignPage.internal_refreshGEF(DesignPage.java:553) + at org.eclipse.wb.internal.core.editor.DesignPage$8$1.run(DesignPage.java:468) + at org.eclipse.swt.widgets.Synchronizer.syncExec(Synchronizer.java:183) + at org.eclipse.ui.internal.UISynchronizer.syncExec(UISynchronizer.java:133) + at org.eclipse.swt.widgets.Display.syncExec(Display.java:4785) + at org.eclipse.wb.internal.core.editor.DesignPage$8.run(DesignPage.java:464) + at org.eclipse.jface.operation.ModalContext.runInCurrentThread(ModalContext.java:434) + at org.eclipse.jface.operation.ModalContext.run(ModalContext.java:352) + at org.eclipse.jface.dialogs.ProgressMonitorDialog.run(ProgressMonitorDialog.java:470) + at org.eclipse.wb.internal.core.editor.DesignPage.internal_refreshGEF_withProgress(DesignPage.java:484) + at org.eclipse.wb.internal.core.editor.DesignPage.internal_refreshGEF(DesignPage.java:432) + at org.eclipse.wb.internal.core.editor.UndoManager.refreshDesignerEditor(UndoManager.java:389) + at org.eclipse.wb.internal.core.editor.UndoManager.activate(UndoManager.java:90) + at org.eclipse.wb.internal.core.editor.DesignPage.handleActiveState_True(DesignPage.java:275) + at org.eclipse.wb.internal.core.editor.DesignPage.handleActiveState(DesignPage.java:252) + at org.eclipse.wb.internal.core.editor.multi.DefaultMultiMode.showPage(DefaultMultiMode.java:127) + at org.eclipse.wb.internal.core.editor.multi.DefaultMultiMode$1.widgetSelected(DefaultMultiMode.java:63) + at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:252) + at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:89) + at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4256) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1066) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1090) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1075) + at org.eclipse.swt.widgets.Widget.notifyListeners(Widget.java:778) + at org.eclipse.swt.custom.CTabFolder.setSelection(CTabFolder.java:3248) + at org.eclipse.swt.custom.CTabFolder.onMouse(CTabFolder.java:1882) + at org.eclipse.swt.custom.CTabFolder.lambda$0(CTabFolder.java:332) + at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:89) + at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4256) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1066) + at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4054) + at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3642) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1155) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1046) + at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:155) + at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:643) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:550) + at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:171) + at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:152) + at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:203) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:136) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:402) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:255) + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104) + at java.base/java.lang.reflect.Method.invoke(Method.java:578) + at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:659) + at org.eclipse.equinox.launcher.Main.basicRun(Main.java:596) + at org.eclipse.equinox.launcher.Main.run(Main.java:1467) +Caused by: java.net.MalformedURLException: no protocol: ../../../.p2/pool/ + at java.base/java.net.URL.(URL.java:675) + at java.base/java.net.URL.(URL.java:570) + at org.eclipse.pde.internal.core.update.configurator.ConfigurationParser.processSite(ConfigurationParser.java:157) + at org.eclipse.pde.internal.core.update.configurator.ConfigurationParser.startElement(ConfigurationParser.java:120) + ... 98 more + +!ENTRY org.eclipse.pde.core 4 0 2023-12-04 03:26:56.329 +!MESSAGE NLS missing message: InstalledSiteParser_UnableToCreateURL in: org.eclipse.update.internal.configurator.messages +!STACK 0 +org.xml.sax.SAXException: NLS missing message: InstalledSiteParser_UnableToCreateURL in: org.eclipse.update.internal.configurator.messages +java.net.MalformedURLException: no protocol: ../../../.p2/pool/ + at org.eclipse.pde.internal.core.update.configurator.ConfigurationParser.startElement(ConfigurationParser.java:130) + at java.xml/com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.startElement(AbstractSAXParser.java:518) + at java.xml/com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.scanStartElement(XMLNSDocumentScannerImpl.java:374) + at java.xml/com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2726) + at java.xml/com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:605) + at java.xml/com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(XMLNSDocumentScannerImpl.java:112) + at java.xml/com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:542) + at java.xml/com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:889) + at java.xml/com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:825) + at java.xml/com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:141) + at java.xml/com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1224) + at java.xml/com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:637) + at java.xml/com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl.parse(SAXParserImpl.java:326) + at org.eclipse.pde.internal.core.update.configurator.ConfigurationParser.parse(ConfigurationParser.java:85) + at org.eclipse.pde.internal.core.update.configurator.PlatformConfiguration.loadConfig(PlatformConfiguration.java:135) + at org.eclipse.pde.internal.core.update.configurator.PlatformConfiguration.initialize(PlatformConfiguration.java:85) + at org.eclipse.pde.internal.core.update.configurator.PlatformConfiguration.(PlatformConfiguration.java:61) + at org.eclipse.pde.internal.core.PluginPathFinder.getFeaturePaths(PluginPathFinder.java:115) + at org.eclipse.pde.internal.core.ExternalFeatureModelManager.createFeatures(ExternalFeatureModelManager.java:198) + at org.eclipse.pde.internal.core.target.TargetDefinition.resolveFeatures(TargetDefinition.java:990) + at org.eclipse.pde.internal.core.target.ProfileBundleContainer.resolveFeatures(ProfileBundleContainer.java:248) + at org.eclipse.pde.internal.core.target.AbstractBundleContainer.resolve(AbstractBundleContainer.java:97) + at org.eclipse.pde.internal.core.target.TargetDefinition.resolve(TargetDefinition.java:429) + at org.eclipse.pde.internal.core.TargetPlatformHelper.getWorkspaceTargetResolved(TargetPlatformHelper.java:629) + at org.eclipse.pde.internal.core.PluginModelManager.getExternalBundles(PluginModelManager.java:682) + at org.eclipse.pde.internal.core.PluginModelManager.initializeTable(PluginModelManager.java:605) + at org.eclipse.pde.internal.core.PluginModelManager.findModel(PluginModelManager.java:1070) + at org.eclipse.pde.core.plugin.PluginRegistry.findModel(PluginRegistry.java:113) + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104) + at java.base/java.lang.reflect.Method.invoke(Method.java:578) + at org.eclipse.wb.internal.core.utils.reflect.ReflectionUtils.invokeMethod(ReflectionUtils.java:896) + at org.eclipse.wb.internal.core.utils.pde.ReflectivePDE.invokeStatic(ReflectivePDE.java:90) + at org.eclipse.wb.internal.core.utils.pde.ReflectivePDE.findModel(ReflectivePDE.java:65) + at org.eclipse.wb.internal.core.utils.reflect.ProjectClassLoader.addFragments(ProjectClassLoader.java:139) + at org.eclipse.wb.internal.core.utils.reflect.ProjectClassLoader.addRuntimeClassPathEntries(ProjectClassLoader.java:127) + at org.eclipse.wb.internal.core.utils.reflect.ProjectClassLoader.getClasspathUrls(ProjectClassLoader.java:73) + at org.eclipse.wb.internal.core.utils.reflect.ProjectClassLoader.create(ProjectClassLoader.java:64) + at org.eclipse.wb.internal.core.parser.AbstractParseFactory.createClassLoader_project(AbstractParseFactory.java:801) + at org.eclipse.wb.internal.core.parser.AbstractParseFactory.getClassLoader(AbstractParseFactory.java:751) + at org.eclipse.wb.internal.core.parser.AbstractParseFactory.initializeClassLoader(AbstractParseFactory.java:736) + at org.eclipse.wb.internal.swing.parser.ParseFactory.initializeClassLoader(ParseFactory.java:280) + at org.eclipse.wb.internal.swing.parser.ParseFactory.getRootContext(ParseFactory.java:105) + at org.eclipse.wb.internal.core.parser.JavaInfoParser.prepareParseContext(JavaInfoParser.java:1186) + at org.eclipse.wb.internal.core.parser.JavaInfoParser.parse(JavaInfoParser.java:244) + at org.eclipse.wb.internal.core.parser.JavaInfoParser$1.runObject(JavaInfoParser.java:153) + at org.eclipse.wb.internal.core.parser.JavaInfoParser$1.runObject(JavaInfoParser.java:1) + at org.eclipse.wb.internal.core.utils.execution.ExecutionUtils.runDesignTime(ExecutionUtils.java:160) + at org.eclipse.wb.internal.core.parser.JavaInfoParser.parse(JavaInfoParser.java:150) + at org.eclipse.wb.internal.core.editor.DesignPage.internal_refreshGEF(DesignPage.java:553) + at org.eclipse.wb.internal.core.editor.DesignPage$8$1.run(DesignPage.java:468) + at org.eclipse.swt.widgets.Synchronizer.syncExec(Synchronizer.java:183) + at org.eclipse.ui.internal.UISynchronizer.syncExec(UISynchronizer.java:133) + at org.eclipse.swt.widgets.Display.syncExec(Display.java:4785) + at org.eclipse.wb.internal.core.editor.DesignPage$8.run(DesignPage.java:464) + at org.eclipse.jface.operation.ModalContext.runInCurrentThread(ModalContext.java:434) + at org.eclipse.jface.operation.ModalContext.run(ModalContext.java:352) + at org.eclipse.jface.dialogs.ProgressMonitorDialog.run(ProgressMonitorDialog.java:470) + at org.eclipse.wb.internal.core.editor.DesignPage.internal_refreshGEF_withProgress(DesignPage.java:484) + at org.eclipse.wb.internal.core.editor.DesignPage.internal_refreshGEF(DesignPage.java:432) + at org.eclipse.wb.internal.core.editor.UndoManager.refreshDesignerEditor(UndoManager.java:389) + at org.eclipse.wb.internal.core.editor.UndoManager.activate(UndoManager.java:90) + at org.eclipse.wb.internal.core.editor.DesignPage.handleActiveState_True(DesignPage.java:275) + at org.eclipse.wb.internal.core.editor.DesignPage.handleActiveState(DesignPage.java:252) + at org.eclipse.wb.internal.core.editor.multi.DefaultMultiMode.showPage(DefaultMultiMode.java:127) + at org.eclipse.wb.internal.core.editor.multi.DefaultMultiMode$1.widgetSelected(DefaultMultiMode.java:63) + at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:252) + at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:89) + at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4256) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1066) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1090) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1075) + at org.eclipse.swt.widgets.Widget.notifyListeners(Widget.java:778) + at org.eclipse.swt.custom.CTabFolder.setSelection(CTabFolder.java:3248) + at org.eclipse.swt.custom.CTabFolder.onMouse(CTabFolder.java:1882) + at org.eclipse.swt.custom.CTabFolder.lambda$0(CTabFolder.java:332) + at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:89) + at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4256) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1066) + at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4054) + at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3642) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1155) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1046) + at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:155) + at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:643) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:550) + at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:171) + at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:152) + at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:203) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:136) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:402) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:255) + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104) + at java.base/java.lang.reflect.Method.invoke(Method.java:578) + at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:659) + at org.eclipse.equinox.launcher.Main.basicRun(Main.java:596) + at org.eclipse.equinox.launcher.Main.run(Main.java:1467) +Caused by: java.net.MalformedURLException: no protocol: ../../../.p2/pool/ + at java.base/java.net.URL.(URL.java:675) + at java.base/java.net.URL.(URL.java:570) + at org.eclipse.pde.internal.core.update.configurator.ConfigurationParser.processSite(ConfigurationParser.java:157) + at org.eclipse.pde.internal.core.update.configurator.ConfigurationParser.startElement(ConfigurationParser.java:120) + ... 98 more + +!ENTRY org.eclipse.equinox.p2.repository 2 0 2023-12-04 04:08:33.055 +!MESSAGE Using unsafe http transport to retrieve http://download.eclipse.org/windowbuilder/latest/, see CVE-2021-41033. Consider using https instead. + +!ENTRY org.eclipse.equinox.p2.repository 2 0 2023-12-04 04:08:34.449 +!MESSAGE Using unsafe http transport to retrieve http://download.eclipse.org/windowbuilder/updates/release/latest, see CVE-2021-41033. Consider using https instead. + +!ENTRY org.eclipse.equinox.p2.repository 2 0 2023-12-04 04:08:35.924 +!MESSAGE Using unsafe http transport to retrieve http://download.eclipse.org/windowbuilder/updates/release/1.14.0/content.xml.xz, see CVE-2021-41033. Consider using https instead. + +!ENTRY org.eclipse.equinox.p2.repository 2 0 2023-12-04 04:08:41.251 +!MESSAGE Using unsafe http transport to retrieve http://download.eclipse.org/usssdk/updates/release/latest, see CVE-2021-41033. Consider using https instead. + +!ENTRY org.eclipse.equinox.p2.repository 2 0 2023-12-04 04:08:42.554 +!MESSAGE Using unsafe http transport to retrieve http://download.eclipse.org/usssdk/drops/release/1.2.2/content.xml.xz, see CVE-2021-41033. Consider using https instead. + +!ENTRY org.eclipse.equinox.p2.repository 2 0 2023-12-04 04:08:56.112 +!MESSAGE Using unsafe http transport to retrieve http://download.eclipse.org/windowbuilder/latest/, see CVE-2021-41033. Consider using https instead. + +!ENTRY org.eclipse.equinox.p2.repository 2 0 2023-12-04 04:08:57.471 +!MESSAGE Using unsafe http transport to retrieve http://download.eclipse.org/windowbuilder/updates/release/latest, see CVE-2021-41033. Consider using https instead. + +!ENTRY org.eclipse.equinox.p2.repository 2 0 2023-12-04 04:08:58.709 +!MESSAGE Using unsafe http transport to retrieve http://download.eclipse.org/windowbuilder/updates/release/1.14.0/artifacts.xml.xz, see CVE-2021-41033. Consider using https instead. + +!ENTRY org.eclipse.equinox.p2.repository 2 0 2023-12-04 04:09:02.686 +!MESSAGE Using unsafe http transport to retrieve http://download.eclipse.org/usssdk/updates/release/latest, see CVE-2021-41033. Consider using https instead. + +!ENTRY org.eclipse.equinox.p2.repository 2 0 2023-12-04 04:09:04.069 +!MESSAGE Using unsafe http transport to retrieve http://download.eclipse.org/usssdk/drops/release/1.2.2/artifacts.xml.xz, see CVE-2021-41033. Consider using https instead. + +!ENTRY org.eclipse.wb.core 4 4 2023-12-04 05:22:53.006 +!MESSAGE Designer [1.13.0.202309050414.202312040522]: Cannot invoke "org.eclipse.wb.draw2d.Figure.handleMouseExited(org.eclipse.draw2d.MouseEvent)" because "this.m_targetFigure" is null +!STACK 0 +java.lang.NullPointerException: Cannot invoke "org.eclipse.wb.draw2d.Figure.handleMouseExited(org.eclipse.draw2d.MouseEvent)" because "this.m_targetFigure" is null + at org.eclipse.wb.internal.draw2d.EventManager.lambda$0(EventManager.java:104) + at org.eclipse.wb.internal.draw2d.EventManager.runDelayedEvents(EventManager.java:280) + at org.eclipse.wb.core.gef.part.AbstractComponentEditPart$3$1.run(AbstractComponentEditPart.java:273) + at org.eclipse.wb.internal.core.utils.execution.ExecutionUtils.runLog(ExecutionUtils.java:107) + at org.eclipse.wb.internal.core.utils.execution.ExecutionUtils$6.run(ExecutionUtils.java:235) + at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:40) + at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:132) + at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:4029) + at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3645) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1155) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1046) + at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:155) + at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:643) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) + at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:550) + at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:171) + at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:152) + at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:203) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:136) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:402) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:255) + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104) + at java.base/java.lang.reflect.Method.invoke(Method.java:578) + at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:659) + at org.eclipse.equinox.launcher.Main.basicRun(Main.java:596) + at org.eclipse.equinox.launcher.Main.run(Main.java:1467) diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/46/c0d666106178001e1100c37c24aec793 b/.metadata/.plugins/org.eclipse.core.resources/.history/46/c0d666106178001e1100c37c24aec793 new file mode 100644 index 0000000..d75ee4b --- /dev/null +++ b/.metadata/.plugins/org.eclipse.core.resources/.history/46/c0d666106178001e1100c37c24aec793 @@ -0,0 +1,406 @@ +package background; + +import java.awt.EventQueue; + +import javax.swing.ImageIcon; +import javax.swing.JFrame; +import javax.swing.JLabel; +import java.awt.BorderLayout; +import java.awt.FlowLayout; +import java.awt.CardLayout; + +import java.awt.BorderLayout; +import java.awt.EventQueue; +import javax.swing.ImageIcon; +import javax.swing.JFrame; +import javax.swing.JPanel; +import javax.swing.border.EmptyBorder; +import javax.swing.border.CompoundBorder; +import javax.swing.border.EtchedBorder; +import javax.swing.border.LineBorder; +import java.awt.Color; +import java.awt.Font; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.PreparedStatement; +import java.sql.ResultSet; +import java.sql.SQLException; + +import javax.swing.JTextField; +import javax.swing.JButton; +import javax.swing.JPasswordField; +import javax.swing.SwingConstants; +import javax.swing.UIManager; + +public class login_screen { + + private JFrame frame; + private JTextField textField; + private JPasswordField passwordField; + + public static void main(String[] args) { + EventQueue.invokeLater(new Runnable() { + public void run() { + try { + login_screen window = new login_screen(); + window.frame.setVisible(true); + } catch (Exception e) { + e.printStackTrace(); + } + } + }); + } + + public login_screen() { + initialize(); + } + + private void initialize() { + frame = new JFrame(); + frame.setTitle("Auto Pocket"); + frame.setExtendedState(JFrame.MAXIMIZED_BOTH); + frame.setUndecorated(true); + + ImagePanel loginPanel = new ImagePanel(new ImageIcon("C:\\Project\\AutoPocket\\src\\Image\\login_background.png").getImage()); + ImagePanel mainloginPanel= new ImagePanel(new ImageIcon("C:\\Project\\AutoPocket\\src\\Image\\main2.png").getImage()); + ImagePanel PocketImg = new ImagePanel(new ImageIcon("C:\\Project\\AutoPocket\\src\\Image\\Pocketmon2.png").getImage()); + ImagePanel titleImg = new ImagePanel(new ImageIcon("C:\\Project\\AutoPocket\\src\\Image\\Title2.png").getImage()); + ImageIcon startImg = new ImageIcon("C:\\Project\\AutoPocket\\src\\Image\\start.png"); + ImageIcon signupImg = new ImageIcon("C:\\Project\\AutoPocket\\src\\Image\\signup.png"); + ImageIcon exitImg = new ImageIcon("C:\\Project\\AutoPocket\\src\\Image\\exit3.png"); + + titleImg.setLocation(428, 10); + PocketImg.setLocation(438, 170); + mainloginPanel.setLocation(610, 540); + + loginPanel.setLayout(null); + mainloginPanel.setLayout(null); + + loginPanel.setPreferredSize(loginPanel.getPreferredSize()); + + loginPanel.add(mainloginPanel); + loginPanel.add(titleImg); + loginPanel.add(PocketImg); + + JButton signupbutton = new JButton(signupImg); + signupbutton.setSize(293, 102); + signupbutton.setLocation(372, 310); + signupbutton.addActionListener(new ActionListener() { + + @Override + public void actionPerformed(ActionEvent e) { + openSignupWindow(); + + } + + }); + + mainloginPanel.add(signupbutton); + JButton exitbutton = new JButton(exitImg); + exitbutton.setForeground(new Color(30, 144, 255)); + exitbutton.addActionListener(new ActionListener(){ + + @Override + public void actionPerformed(ActionEvent e) { + System.exit(0); + + } + + }); + JButton startbutton = new JButton(startImg); + startbutton.setSize(293, 102); + startbutton.setLocation(43, 310); + startbutton.addActionListener(new ActionListener(){ + + @Override + public void actionPerformed(ActionEvent e) { + loginstart(); + } + + }); + mainloginPanel.add(startbutton); + exitbutton.setSize(50, 50); + exitbutton.setLocation(1860, 10); + exitbutton.setBorderPainted(false); + loginPanel.add(exitbutton); + + JLabel lblNewLabel = new JLabel("아이디"); + lblNewLabel.setFont(new Font("나눔고딕", Font.BOLD, 32)); + lblNewLabel.setBounds(88, 90, 149, 69); + mainloginPanel.add(lblNewLabel); + + JLabel lblNewLabel_1 = new JLabel("비밀번호"); + lblNewLabel_1.setFont(new Font("나눔고딕", Font.BOLD, 32)); + lblNewLabel_1.setBounds(88, 187, 149, 84); + mainloginPanel.add(lblNewLabel_1); + + textField = new JTextField(); + textField.setFont(new Font("맑은 고딕", Font.PLAIN, 30)); + textField.setBounds(249, 95, 385, 55); + mainloginPanel.add(textField); + textField.setColumns(10); + + passwordField = new JPasswordField(); + passwordField.setFont(new Font("맑은 고딕", Font.PLAIN, 30)); + passwordField.setBounds(249, 204, 385, 55); + mainloginPanel.add(passwordField); + + frame.getContentPane().add(loginPanel); + frame.pack(); + + } + private void openSignupWindow() { + + JFrame signupFrame = new JFrame("회원가입"); + + ImagePanel signupPanel = new ImagePanel(new ImageIcon("C:\\Project\\AutoPocket\\src\\Image\\signimg2.png").getImage()); + ImageIcon confirmImg = new ImageIcon("C:\\Project\\AutoPocket\\src\\Image\\confirm.png"); + + signupFrame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); + signupFrame.setBounds(510, 350, 900, 700); + signupFrame.setUndecorated(true); + + signupFrame.getContentPane().add(signupPanel); + signupPanel.setLayout(null); + + JLabel idLabel = new JLabel("아이디"); + idLabel.setFont(new Font("나눔고딕", Font.BOLD, 32)); + idLabel.setBounds(80, 50, 117, 46); + signupPanel.add(idLabel); + + JTextField idTextField = new JTextField(); + idTextField.setFont(new Font("맑은 고딕", Font.BOLD, 40)); + idTextField.setBounds(293, 50, 376, 46); + signupPanel.add(idTextField); + + JButton checkIdButton = new JButton(confirmImg); + checkIdButton.setBounds(697, 50, 167, 46); + signupPanel.add(checkIdButton); + checkIdButton.addActionListener(new ActionListener(){ + @Override + public void actionPerformed(ActionEvent e) { + String id = idTextField.getText(); + boolean duplicate = false; + try { + Class.forName("oracle.jdbc.OracleDriver"); + String url = "jdbc:oracle:thin:@localhost:1521:xe"; + String user = "Scott"; + String password = "scott"; + + Connection connection = DriverManager.getConnection(url, user, password); + String sql = "SELECT * FROM USER_INFO WHERE LOGIN_ID = ?"; + PreparedStatement statement = connection.prepareStatement(sql); + statement.setString(1, id); + + ResultSet resultSet = statement.executeQuery(); + while (resultSet.next()) { + String value = resultSet.getString("LOGIN_ID"); + if (id.equals(value)) { + duplicate = true; + break; + } + } + + if (duplicate) { + System.out.println("중복된 아이디가 있음."); + } else { + System.out.println("중복된 아이디 없음."); + } + }catch (ClassNotFoundException f) { + f.printStackTrace(); + }catch (SQLException f) { + f.printStackTrace(); + } + + } + + }); + + JLabel passwordLabel = new JLabel("비밀번호"); + passwordLabel.setFont(new Font("나눔고딕", Font.BOLD, 32)); + passwordLabel.setBounds(80, 129, 140, 46); + signupPanel.add(passwordLabel); + + JPasswordField passwordField = new JPasswordField(); + passwordField.setFont(new Font("맑은 고딕", Font.BOLD, 32)); + passwordField.setBounds(293, 129, 376, 46); + signupPanel.add(passwordField); + + JLabel confirmPasswordLabel = new JLabel("비밀번호 확인"); + confirmPasswordLabel.setFont(new Font("나눔고딕", Font.BOLD, 32)); + confirmPasswordLabel.setBounds(80, 209, 213, 46); + signupPanel.add(confirmPasswordLabel); + + JPasswordField confirmPasswordField = new JPasswordField(); + confirmPasswordField.setFont(new Font("맑은 고딕", Font.BOLD, 32)); + confirmPasswordField.setBounds(293, 209, 376, 46); + signupPanel.add(confirmPasswordField); + + JLabel nicknameLabel = new JLabel("닉네임"); + nicknameLabel.setFont(new Font("나눔고딕", Font.BOLD, 32)); + nicknameLabel.setBounds(80, 450, 100, 46); + signupPanel.add(nicknameLabel); + + JTextField nicknameTextField = new JTextField(); + nicknameTextField.setFont(new Font("맑은 고딕", Font.BOLD, 32)); + nicknameTextField.setBounds(293, 450, 376, 46); + signupPanel.add(nicknameTextField); + + JButton checkNicknameButton = new JButton(confirmImg); + checkNicknameButton.setBounds(697, 450, 167, 46); + signupPanel.add(checkNicknameButton); + checkNicknameButton.addActionListener(new ActionListener(){ + @Override + public void actionPerformed(ActionEvent e) { + String nickname = nicknameTextField.getText(); + boolean duplicate = false; + try { + Class.forName("oracle.jdbc.OracleDriver"); + String url = "jdbc:oracle:thin:@localhost:1521:xe"; + String user = "Scott"; + String password = "scott"; + + Connection connection = DriverManager.getConnection(url, user, password); + String sql = "SELECT * FROM USER_INFO WHERE USER_NAME = ?"; + PreparedStatement statement = connection.prepareStatement(sql); + statement.setString(1, nickname); + + ResultSet resultSet = statement.executeQuery(); + while (resultSet.next()) { + String value = resultSet.getString("USER_NAME"); + if (nickname.equals(value)) { + duplicate = true; + break; + } + } + + if (duplicate) { + System.out.println("중복된 닉네임이 있음."); + } else { + System.out.println("중복된 닉네임 없음."); + } + }catch (ClassNotFoundException f) { + f.printStackTrace(); + }catch (SQLException f) { + f.printStackTrace(); + } + + } + + }); + + JButton signupButton = new JButton("가입"); + signupButton.setBounds(80, 566, 260, 70); + signupPanel.add(signupButton); + signupButton.addActionListener(new ActionListener(){ + @Override + public void actionPerformed(ActionEvent e) { + String id = idTextField.getText(); + String nickname = nicknameTextField.getText(); + String pass = new String(passwordField.getPassword()); + String passconfirm = new String(confirmPasswordField.getPassword()); + boolean isRegistered = false; + + try { + Class.forName("oracle.jdbc.OracleDriver"); + String url = "jdbc:oracle:thin:@localhost:1521:xe"; + String user = "Scott"; + String password = "scott"; + + Connection connection = DriverManager.getConnection(url, user, password); + String sql = "SELECT LOGIN_ID, USER_NAME FROM USER_INFO"; + PreparedStatement statement = connection.prepareStatement(sql); + ResultSet resultSet = statement.executeQuery(); + + while (resultSet.next()) { + String login_id = resultSet.getString("LOGIN_ID"); + String login_nickname = resultSet.getString("USER_NAME"); + + if (id.equals(login_id)) { + isRegistered = true; + System.out.println("아이디가 이미 존재합니다."); + break; + } + + if (nickname.equals(login_nickname)) { + isRegistered = true; + System.out.println("닉네임이 이미 존재합니다."); + break; + } + } + + if (!pass.equals(passconfirm)) { + isRegistered = true; + System.out.println("비밀번호가 일치하지 않습니다."); + } + + if (!isRegistered) { + System.out.println("회원가입에 성공하셨습니다."); + Account ac = new Account(id, pass, nickname); + ac.join_membership(); + signupFrame.setVisible(false); + } + + } catch (ClassNotFoundException f) { + f.printStackTrace(); + } catch (SQLException f) { + f.printStackTrace(); + } + + } + }); + + + JButton cancleButton = new JButton("취소"); + cancleButton.setBounds(554, 566, 260, 70); + signupPanel.add(cancleButton); + cancleButton.addActionListener(new ActionListener(){ + @Override + public void actionPerformed(ActionEvent e) { + signupFrame.setVisible(false); + + } + + }); + signupFrame.setVisible(true); + } + + private void loginstart() { + String id = textField.getText(); + String pass = new String(passwordField.getPassword()); + boolean isstart = false; + + try { + Class.forName("oracle.jdbc.OracleDriver"); + String url = "jdbc:oracle:thin:@localhost:1521:xe"; + String user = "Scott"; + String password = "scott"; + + Connection connection = DriverManager.getConnection(url, user, password); + String sql = "SELECT LOGIN_ID, LOGIN_PASSWORD FROM USER_INFO"; + PreparedStatement statement = connection.prepareStatement(sql); + ResultSet resultSet = statement.executeQuery(); + + while (resultSet.next()) { + String login_id = resultSet.getString("LOGIN_ID"); + String login_pass = resultSet.getString("LOGIN_PASSWORD"); + + if (!id.equals(login_id) && !pass.equals(login_pass)) { + isstart = true; + System.out.println("아이디 또는 비밀번호가 일치하지 않습니다."); + break; + }else { + System.out.println("일치합니다"); + } + } + + }catch (ClassNotFoundException f) { + f.printStackTrace(); + } catch (SQLException f) { + f.printStackTrace(); + } + + } +} \ No newline at end of file diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/9b/d0ee3c906078001e1100c37c24aec793 b/.metadata/.plugins/org.eclipse.core.resources/.history/9b/d0ee3c906078001e1100c37c24aec793 new file mode 100644 index 0000000..935daa2 --- /dev/null +++ b/.metadata/.plugins/org.eclipse.core.resources/.history/9b/d0ee3c906078001e1100c37c24aec793 @@ -0,0 +1,406 @@ +package background; + +import java.awt.EventQueue; + +import javax.swing.ImageIcon; +import javax.swing.JFrame; +import javax.swing.JLabel; +import java.awt.BorderLayout; +import java.awt.FlowLayout; +import java.awt.CardLayout; + +import java.awt.BorderLayout; +import java.awt.EventQueue; +import javax.swing.ImageIcon; +import javax.swing.JFrame; +import javax.swing.JPanel; +import javax.swing.border.EmptyBorder; +import javax.swing.border.CompoundBorder; +import javax.swing.border.EtchedBorder; +import javax.swing.border.LineBorder; +import java.awt.Color; +import java.awt.Font; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.PreparedStatement; +import java.sql.ResultSet; +import java.sql.SQLException; + +import javax.swing.JTextField; +import javax.swing.JButton; +import javax.swing.JPasswordField; +import javax.swing.SwingConstants; +import javax.swing.UIManager; + +public class login_screen { + + private JFrame frame; + private JTextField textField; + private JPasswordField passwordField; + + public static void main(String[] args) { + EventQueue.invokeLater(new Runnable() { + public void run() { + try { + login_screen window = new login_screen(); + window.frame.setVisible(true); + } catch (Exception e) { + e.printStackTrace(); + } + } + }); + } + + public login_screen() { + initialize(); + } + + private void initialize() { + frame = new JFrame(); + frame.setTitle("Auto Pocket"); + frame.setExtendedState(JFrame.MAXIMIZED_BOTH); + frame.setUndecorated(true); + + ImagePanel loginPanel = new ImagePanel(new ImageIcon("C:\\Project\\AutoPocket\\src\\Image\\login_background.png").getImage()); + ImagePanel mainloginPanel= new ImagePanel(new ImageIcon("C:\\Project\\AutoPocket\\src\\Image\\main2.png").getImage()); + ImagePanel PocketImg = new ImagePanel(new ImageIcon("C:\\Project\\AutoPocket\\src\\Image\\Pocketmon2.png").getImage()); + ImagePanel titleImg = new ImagePanel(new ImageIcon("C:\\Project\\AutoPocket\\src\\Image\\Title2.png").getImage()); + ImageIcon startImg = new ImageIcon("C:\\Project\\AutoPocket\\src\\Image\\start.png"); + ImageIcon signupImg = new ImageIcon("C:\\Project\\AutoPocket\\src\\Image\\signup.png"); + ImageIcon exitImg = new ImageIcon("C:\\Project\\AutoPocket\\src\\Image\\exit3.png"); + + titleImg.setLocation(428, 10); + PocketImg.setLocation(438, 170); + mainloginPanel.setLocation(610, 540); + + loginPanel.setLayout(null); + mainloginPanel.setLayout(null); + + loginPanel.setPreferredSize(loginPanel.getPreferredSize()); + + loginPanel.add(mainloginPanel); + loginPanel.add(titleImg); + loginPanel.add(PocketImg); + + JButton signupbutton = new JButton(signupImg); + signupbutton.setSize(293, 102); + signupbutton.setLocation(372, 310); + signupbutton.addActionListener(new ActionListener() { + + @Override + public void actionPerformed(ActionEvent e) { + openSignupWindow(); + + } + + }); + + mainloginPanel.add(signupbutton); + JButton exitbutton = new JButton(exitImg); + exitbutton.setForeground(new Color(30, 144, 255)); + exitbutton.addActionListener(new ActionListener(){ + + @Override + public void actionPerformed(ActionEvent e) { + System.exit(0); + + } + + }); + JButton startbutton = new JButton(startImg); + startbutton.setSize(293, 102); + startbutton.setLocation(43, 310); + startbutton.addActionListener(new ActionListener(){ + + @Override + public void actionPerformed(ActionEvent e) { + loginstart(); + } + + }); + mainloginPanel.add(startbutton); + exitbutton.setSize(50, 50); + exitbutton.setLocation(1860, 10); + exitbutton.setBorderPainted(false); + loginPanel.add(exitbutton); + + JLabel lblNewLabel = new JLabel("아이디"); + lblNewLabel.setFont(new Font("나눔고딕", Font.BOLD, 32)); + lblNewLabel.setBounds(88, 90, 149, 69); + mainloginPanel.add(lblNewLabel); + + JLabel lblNewLabel_1 = new JLabel("비밀번호"); + lblNewLabel_1.setFont(new Font("나눔고딕", Font.BOLD, 32)); + lblNewLabel_1.setBounds(88, 187, 149, 84); + mainloginPanel.add(lblNewLabel_1); + + textField = new JTextField(); + textField.setFont(new Font("맑은 고딕", Font.PLAIN, 30)); + textField.setBounds(249, 95, 385, 55); + mainloginPanel.add(textField); + textField.setColumns(10); + + passwordField = new JPasswordField(); + passwordField.setFont(new Font("맑은 고딕", Font.PLAIN, 30)); + passwordField.setBounds(249, 204, 385, 55); + mainloginPanel.add(passwordField); + + frame.getContentPane().add(loginPanel); + frame.pack(); + + } + private void openSignupWindow() { + + JFrame signupFrame = new JFrame("회원가입"); + + ImagePanel signupPanel = new ImagePanel(new ImageIcon("C:\\Project\\AutoPocket\\src\\Image\\signimg2.png").getImage()); + ImageIcon confirmImg = new ImageIcon("C:\\Project\\AutoPocket\\src\\Image\\confirm.png"); + + signupFrame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); + signupFrame.setBounds(510, 350, 900, 700); + signupFrame.setUndecorated(true); + + signupFrame.getContentPane().add(signupPanel); + signupPanel.setLayout(null); + + JLabel idLabel = new JLabel("아이디"); + idLabel.setFont(new Font("나눔고딕", Font.BOLD, 32)); + idLabel.setBounds(80, 50, 117, 46); + signupPanel.add(idLabel); + + JTextField idTextField = new JTextField(); + idTextField.setFont(new Font("맑은 고딕", Font.BOLD, 40)); + idTextField.setBounds(293, 50, 376, 46); + signupPanel.add(idTextField); + + JButton checkIdButton = new JButton(confirmImg); + checkIdButton.setBounds(697, 50, 167, 46); + signupPanel.add(checkIdButton); + checkIdButton.addActionListener(new ActionListener(){ + @Override + public void actionPerformed(ActionEvent e) { + String id = idTextField.getText(); + boolean duplicate = false; + try { + Class.forName("oracle.jdbc.OracleDriver"); + String url = "jdbc:oracle:thin:@localhost:1521:xe"; + String user = "Scott"; + String password = "scott"; + + Connection connection = DriverManager.getConnection(url, user, password); + String sql = "SELECT * FROM USER_INFO WHERE LOGIN_ID = ?"; + PreparedStatement statement = connection.prepareStatement(sql); + statement.setString(1, id); + + ResultSet resultSet = statement.executeQuery(); + while (resultSet.next()) { + String value = resultSet.getString("LOGIN_ID"); + if (id.equals(value)) { + duplicate = true; + break; + } + } + + if (duplicate) { + System.out.println("중복된 아이디가 있음."); + } else { + System.out.println("중복된 아이디 없음."); + } + }catch (ClassNotFoundException f) { + f.printStackTrace(); + }catch (SQLException f) { + f.printStackTrace(); + } + + } + + }); + + JLabel passwordLabel = new JLabel("비밀번호"); + passwordLabel.setFont(new Font("나눔고딕", Font.BOLD, 32)); + passwordLabel.setBounds(80, 129, 140, 46); + signupPanel.add(passwordLabel); + + JPasswordField passwordField = new JPasswordField(); + passwordField.setFont(new Font("맑은 고딕", Font.BOLD, 32)); + passwordField.setBounds(293, 129, 376, 46); + signupPanel.add(passwordField); + + JLabel confirmPasswordLabel = new JLabel("비밀번호 확인"); + confirmPasswordLabel.setFont(new Font("나눔고딕", Font.BOLD, 32)); + confirmPasswordLabel.setBounds(80, 209, 213, 46); + signupPanel.add(confirmPasswordLabel); + + JPasswordField confirmPasswordField = new JPasswordField(); + confirmPasswordField.setFont(new Font("맑은 고딕", Font.BOLD, 32)); + confirmPasswordField.setBounds(293, 209, 376, 46); + signupPanel.add(confirmPasswordField); + + JLabel nicknameLabel = new JLabel("닉네임"); + nicknameLabel.setFont(new Font("나눔고딕", Font.BOLD, 32)); + nicknameLabel.setBounds(80, 450, 100, 46); + signupPanel.add(nicknameLabel); + + JTextField nicknameTextField = new JTextField(); + nicknameTextField.setFont(new Font("맑은 고딕", Font.BOLD, 32)); + nicknameTextField.setBounds(293, 450, 376, 46); + signupPanel.add(nicknameTextField); + + JButton checkNicknameButton = new JButton(confirmImg); + checkNicknameButton.setBounds(697, 450, 167, 46); + signupPanel.add(checkNicknameButton); + checkNicknameButton.addActionListener(new ActionListener(){ + @Override + public void actionPerformed(ActionEvent e) { + String nickname = nicknameTextField.getText(); + boolean duplicate = false; + try { + Class.forName("oracle.jdbc.OracleDriver"); + String url = "jdbc:oracle:thin:@localhost:1521:xe"; + String user = "Scott"; + String password = "scott"; + + Connection connection = DriverManager.getConnection(url, user, password); + String sql = "SELECT * FROM USER_INFO WHERE USER_NAME = ?"; + PreparedStatement statement = connection.prepareStatement(sql); + statement.setString(1, nickname); + + ResultSet resultSet = statement.executeQuery(); + while (resultSet.next()) { + String value = resultSet.getString("USER_NAME"); + if (nickname.equals(value)) { + duplicate = true; + break; + } + } + + if (duplicate) { + System.out.println("중복된 닉네임이 있음."); + } else { + System.out.println("중복된 닉네임 없음."); + } + }catch (ClassNotFoundException f) { + f.printStackTrace(); + }catch (SQLException f) { + f.printStackTrace(); + } + + } + + }); + + JButton signupButton = new JButton("가입"); + signupButton.setBounds(80, 566, 260, 70); + signupPanel.add(signupButton); + signupButton.addActionListener(new ActionListener(){ + @Override + public void actionPerformed(ActionEvent e) { + String id = idTextField.getText(); + String nickname = nicknameTextField.getText(); + String pass = new String(passwordField.getPassword()); + String passconfirm = new String(confirmPasswordField.getPassword()); + boolean isRegistered = false; + + try { + Class.forName("oracle.jdbc.OracleDriver"); + String url = "jdbc:oracle:thin:@localhost:1521:xe"; + String user = "Scott"; + String password = "scott"; + + Connection connection = DriverManager.getConnection(url, user, password); + String sql = "SELECT LOGIN_ID, USER_NAME FROM USER_INFO"; + PreparedStatement statement = connection.prepareStatement(sql); + ResultSet resultSet = statement.executeQuery(); + + while (resultSet.next()) { + String login_id = resultSet.getString("LOGIN_ID"); + String login_nickname = resultSet.getString("USER_NAME"); + + if (id.equals(login_id)) { + isRegistered = true; + System.out.println("아이디가 이미 존재합니다."); + break; + } + + if (nickname.equals(login_nickname)) { + isRegistered = true; + System.out.println("닉네임이 이미 존재합니다."); + break; + } + } + + if (!pass.equals(passconfirm)) { + isRegistered = true; + System.out.println("비밀번호가 일치하지 않습니다."); + } + + if (!isRegistered) { + System.out.println("회원가입에 성공하셨습니다."); + Account ac = new Account(id, pass, nickname); + ac.join_membership(); + signupFrame.setVisible(false); + } + + } catch (ClassNotFoundException f) { + f.printStackTrace(); + } catch (SQLException f) { + f.printStackTrace(); + } + + } + }); + + + JButton cancleButton = new JButton("취소"); + cancleButton.setBounds(554, 566, 260, 70); + signupPanel.add(cancleButton); + cancleButton.addActionListener(new ActionListener(){ + @Override + public void actionPerformed(ActionEvent e) { + signupFrame.setVisible(false); + + } + + }); + signupFrame.setVisible(true); + } + + private void loginstart() { + String id = textField.getText(); + String pass = new String(passwordField.getPassword()); + boolean isstart = false; + + try { + Class.forName("oracle.jdbc.OracleDriver"); + String url = "jdbc:oracle:thin:@localhost:1521:xe"; + String user = "Scott"; + String password = "scott"; + + Connection connection = DriverManager.getConnection(url, user, password); + String sql = "SELECT LOGIN_ID, LOGIN_PASSWORD FROM USER_INFO"; + PreparedStatement statement = connection.prepareStatement(sql); + ResultSet resultSet = statement.executeQuery(); + + while (resultSet.next()) { + String login_id = resultSet.getString("LOGIN_ID"); + String login_pass = resultSet.getString("LOGIN_PASSWORD"); + + if (!id.equals(login_id) && !pass.equals(login_pass)) { + isstart = true; + System.out.println("아이디 또는 비밀번호가 일치하지 않습니다."); + break; + }else { + System.out.println("일치합니다"); + } + } + + }catch (ClassNotFoundException f) { + f.printStackTrace(); + } catch (SQLException f) { + f.printStackTrace(); + } + + } +} \ No newline at end of file diff --git a/.metadata/.plugins/org.eclipse.core.resources/.projects/.org.eclipse.egit.core.cmp/.location b/.metadata/.plugins/org.eclipse.core.resources/.projects/.org.eclipse.egit.core.cmp/.location new file mode 100644 index 0000000..f9d0273 Binary files /dev/null and b/.metadata/.plugins/org.eclipse.core.resources/.projects/.org.eclipse.egit.core.cmp/.location differ diff --git a/.metadata/.plugins/org.eclipse.core.resources/.projects/AutoPocket_ex1/.indexes/properties.index b/.metadata/.plugins/org.eclipse.core.resources/.projects/AutoPocket_ex1/.indexes/properties.index new file mode 100644 index 0000000..1e099f3 Binary files /dev/null and b/.metadata/.plugins/org.eclipse.core.resources/.projects/AutoPocket_ex1/.indexes/properties.index differ diff --git a/.metadata/.plugins/org.eclipse.core.resources/.projects/AutoPocket_ex1/org.eclipse.egit.core/GitProjectData.properties b/.metadata/.plugins/org.eclipse.core.resources/.projects/AutoPocket_ex1/org.eclipse.egit.core/GitProjectData.properties new file mode 100644 index 0000000..3ad59b1 --- /dev/null +++ b/.metadata/.plugins/org.eclipse.core.resources/.projects/AutoPocket_ex1/org.eclipse.egit.core/GitProjectData.properties @@ -0,0 +1,3 @@ +#GitProjectData +#Wed Nov 01 12:10:46 KST 2023 +.gitdir=../.git diff --git a/.metadata/.plugins/org.eclipse.core.resources/.root/.indexes/properties.index b/.metadata/.plugins/org.eclipse.core.resources/.root/.indexes/properties.index new file mode 100644 index 0000000..2cca1f9 Binary files /dev/null and b/.metadata/.plugins/org.eclipse.core.resources/.root/.indexes/properties.index differ diff --git a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.core.resources.prefs b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.core.resources.prefs new file mode 100644 index 0000000..30841eb --- /dev/null +++ b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.core.resources.prefs @@ -0,0 +1,3 @@ +eclipse.preferences.version=1 +encoding=UTF-8 +version=1 diff --git a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.egit.core.prefs b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.egit.core.prefs new file mode 100644 index 0000000..d0488ca --- /dev/null +++ b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.egit.core.prefs @@ -0,0 +1,3 @@ +GitRepositoriesView.GitDirectories=C\:\\ex1\\.git; +GitRepositoriesView.GitDirectories.relative=.git; +eclipse.preferences.version=1 diff --git a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jdt.core.prefs b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jdt.core.prefs new file mode 100644 index 0000000..5f91a9b --- /dev/null +++ b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jdt.core.prefs @@ -0,0 +1,15 @@ +eclipse.preferences.version=1 +org.eclipse.jdt.core.classpathVariable.ECLIPSE_HOME=C\:/Users/nkr42/eclipse/java-2022-12/eclipse/ +org.eclipse.jdt.core.classpathVariable.JRE_LIB=C\:/Users/nkr42/.p2/pool/plugins/org.eclipse.justj.openjdk.hotspot.jre.full.win32.x86_64_19.0.2.v20230129-1123/jre/lib/jrt-fs.jar +org.eclipse.jdt.core.classpathVariable.JRE_SRC=C\:/Users/nkr42/.p2/pool/plugins/org.eclipse.justj.openjdk.hotspot.jre.full.win32.x86_64_19.0.2.v20230129-1123/jre/lib/src.zip +org.eclipse.jdt.core.classpathVariable.JRE_SRCROOT= +org.eclipse.jdt.core.classpathVariable.JUNIT_HOME=C\:/Users/nkr42/.p2/pool/plugins/org.junit_4.13.2.v20211018-1956.jar +org.eclipse.jdt.core.classpathVariable.M2_REPO=C\:/Users/nkr42/.m2/repository +org.eclipse.jdt.core.codeComplete.visibilityCheck=enabled +org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled +org.eclipse.jdt.core.compiler.codegen.targetPlatform=18 +org.eclipse.jdt.core.compiler.compliance=18 +org.eclipse.jdt.core.compiler.problem.assertIdentifier=error +org.eclipse.jdt.core.compiler.problem.enumIdentifier=error +org.eclipse.jdt.core.compiler.release=enabled +org.eclipse.jdt.core.compiler.source=18 diff --git a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jdt.junit.prefs b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jdt.junit.prefs new file mode 100644 index 0000000..31df02c --- /dev/null +++ b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jdt.junit.prefs @@ -0,0 +1,2 @@ +eclipse.preferences.version=1 +org.eclipse.jdt.junit.content_assist_favorite_static_members_migrated=true diff --git a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jdt.launching.prefs b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jdt.launching.prefs new file mode 100644 index 0000000..ee77de3 --- /dev/null +++ b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jdt.launching.prefs @@ -0,0 +1,2 @@ +eclipse.preferences.version=1 +org.eclipse.jdt.launching.PREF_VM_XML=\r\n\r\n \r\n \r\n \r\n\r\n diff --git a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jdt.ui.prefs b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jdt.ui.prefs new file mode 100644 index 0000000..9436db7 --- /dev/null +++ b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jdt.ui.prefs @@ -0,0 +1,89 @@ +content_assist_completion_replacement_background=200,200,0 +content_assist_completion_replacement_foreground=200,0,0 +content_assist_lru_history= +content_assist_number_of_computers=14 +content_assist_parameters_background=52,57,61 +content_assist_parameters_foreground=238,238,238 +content_assist_proposals_background=52,57,61 +content_assist_proposals_foreground=238,238,238 +eclipse.preferences.version=1 +java_bracket=249,250,244 +java_comment_task_tag=154,140,124 +java_default=217,232,247 +java_doc_default=128,128,128 +java_doc_keyword=154,140,124 +java_doc_link=169,156,140 +java_doc_tag=30,120,155 +java_keyword=204,108,29 +java_keyword_bold=false +java_keyword_return=204,108,29 +java_keyword_return_bold=false +java_multi_line_comment=128,128,128 +java_operator=230,230,250 +java_single_line_comment=128,128,128 +java_string=23,198,163 +matchingBracketsColor=249,250,244 +org.eclipse.jdt.ui.formatterprofiles.version=22 +overriddenByCSS=,content_assist_completion_replacement_background,content_assist_completion_replacement_foreground,content_assist_parameters_background,content_assist_parameters_foreground,content_assist_proposals_background,content_assist_proposals_foreground,java_bracket,java_comment_task_tag,java_default,java_doc_default,java_doc_keyword,java_doc_link,java_doc_tag,java_keyword,java_keyword_bold,java_keyword_return,java_keyword_return_bold,java_multi_line_comment,java_operator,java_single_line_comment,java_string,matchingBracketsColor,pf_coloring_argument,pf_coloring_assignment,pf_coloring_comment,pf_coloring_key,pf_coloring_value,semanticHighlighting.abstractClass.color,semanticHighlighting.abstractClass.enabled,semanticHighlighting.abstractMethodInvocation.color,semanticHighlighting.abstractMethodInvocation.enabled,semanticHighlighting.annotation.color,semanticHighlighting.annotation.enabled,semanticHighlighting.annotation.italic,semanticHighlighting.annotationElementReference.color,semanticHighlighting.annotationElementReference.enabled,semanticHighlighting.class.color,semanticHighlighting.class.enabled,semanticHighlighting.deprecatedMember.color,semanticHighlighting.deprecatedMember.enabled,semanticHighlighting.deprecatedMember.underline,semanticHighlighting.deprecatedMember.strikethrough,semanticHighlighting.enum.color,semanticHighlighting.enum.enabled,semanticHighlighting.enum.italic,semanticHighlighting.field.color,semanticHighlighting.field.enabled,semanticHighlighting.inheritedField.color,semanticHighlighting.inheritedMethodInvocation.color,semanticHighlighting.inheritedMethodInvocation.enabled,semanticHighlighting.interface.color,semanticHighlighting.interface.enabled,semanticHighlighting.localVariable.color,semanticHighlighting.localVariable.enabled,semanticHighlighting.localVariableDeclaration.color,semanticHighlighting.localVariableDeclaration.enabled,semanticHighlighting.localVariableDeclaration.bold,semanticHighlighting.method.color,semanticHighlighting.method.enabled,semanticHighlighting.methodDeclarationName.color,semanticHighlighting.methodDeclarationName.enabled,semanticHighlighting.methodDeclarationName.bold,semanticHighlighting.number.color,semanticHighlighting.number.enabled,semanticHighlighting.parameterVariable.color,semanticHighlighting.parameterVariable.enabled,semanticHighlighting.staticField.color,semanticHighlighting.staticField.enabled,semanticHighlighting.staticFinalField.color,semanticHighlighting.staticFinalField.enabled,semanticHighlighting.staticMethodInvocation.color,semanticHighlighting.staticMethodInvocation.enabled,semanticHighlighting.typeArgument.color,semanticHighlighting.typeArgument.enabled,semanticHighlighting.typeParameter.color,semanticHighlighting.typeParameter.enabled,semanticHighlighting.typeParameter.bold,semanticHighlighting.restrictedKeywords.color,semanticHighlighting.restrictedKeywords.bold,sourceHoverBackgroundColor, +pf_coloring_argument=221,40,103 +pf_coloring_assignment=217,232,247 +pf_coloring_comment=128,128,128 +pf_coloring_key=217,232,247 +pf_coloring_value=23,198,163 +semanticHighlighting.abstractClass.color=62,171,230 +semanticHighlighting.abstractClass.enabled=true +semanticHighlighting.abstractMethodInvocation.color=128,246,167 +semanticHighlighting.abstractMethodInvocation.enabled=true +semanticHighlighting.annotation.color=160,160,160 +semanticHighlighting.annotation.enabled=true +semanticHighlighting.annotation.italic=true +semanticHighlighting.annotationElementReference.color=235,75,100 +semanticHighlighting.annotationElementReference.enabled=true +semanticHighlighting.class.color=18,144,195 +semanticHighlighting.class.enabled=true +semanticHighlighting.deprecatedMember.color=128,128,128 +semanticHighlighting.deprecatedMember.enabled=true +semanticHighlighting.deprecatedMember.strikethrough=true +semanticHighlighting.deprecatedMember.underline=false +semanticHighlighting.enum.color=204,129,186 +semanticHighlighting.enum.enabled=true +semanticHighlighting.enum.italic=true +semanticHighlighting.field.color=102,225,248 +semanticHighlighting.field.enabled=true +semanticHighlighting.inheritedField.color=143,143,191 +semanticHighlighting.inheritedMethodInvocation.color=205,246,104 +semanticHighlighting.inheritedMethodInvocation.enabled=true +semanticHighlighting.interface.color=128,242,246 +semanticHighlighting.interface.enabled=true +semanticHighlighting.localVariable.color=243,236,121 +semanticHighlighting.localVariable.enabled=true +semanticHighlighting.localVariableDeclaration.bold=false +semanticHighlighting.localVariableDeclaration.color=242,242,0 +semanticHighlighting.localVariableDeclaration.enabled=true +semanticHighlighting.method.color=167,236,33 +semanticHighlighting.method.enabled=true +semanticHighlighting.methodDeclarationName.bold=false +semanticHighlighting.methodDeclarationName.color=30,181,64 +semanticHighlighting.methodDeclarationName.enabled=true +semanticHighlighting.number.color=104,151,187 +semanticHighlighting.number.enabled=true +semanticHighlighting.parameterVariable.color=121,171,255 +semanticHighlighting.parameterVariable.enabled=true +semanticHighlighting.restrictedKeywords.bold=false +semanticHighlighting.restrictedKeywords.color=204,108,29 +semanticHighlighting.staticField.color=141,218,248 +semanticHighlighting.staticField.enabled=true +semanticHighlighting.staticFinalField.color=141,218,248 +semanticHighlighting.staticFinalField.enabled=true +semanticHighlighting.staticMethodInvocation.color=150,236,63 +semanticHighlighting.staticMethodInvocation.enabled=true +semanticHighlighting.typeArgument.color=177,102,218 +semanticHighlighting.typeArgument.enabled=true +semanticHighlighting.typeParameter.bold=false +semanticHighlighting.typeParameter.color=191,164,164 +semanticHighlighting.typeParameter.enabled=true +sourceHoverBackgroundColor=68,68,68 +spelling_locale_initialized=true +typefilter_migrated_2=true +useAnnotationsPrefPage=true +useQuickDiffPrefPage=true diff --git a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jsch.core.prefs b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jsch.core.prefs new file mode 100644 index 0000000..97dbc26 --- /dev/null +++ b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jsch.core.prefs @@ -0,0 +1,3 @@ +eclipse.preferences.version=1 +org.eclipse.jsch.core.hasChangedDefaultWin32SshHome=true +org.eclipse.jsch.core.hasMigratedSsh2Preferences=true diff --git a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.prefs b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.prefs new file mode 100644 index 0000000..08076f2 --- /dev/null +++ b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.prefs @@ -0,0 +1,2 @@ +eclipse.preferences.version=1 +showIntro=false diff --git a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.urischeme.prefs b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.urischeme.prefs new file mode 100644 index 0000000..855d634 --- /dev/null +++ b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.urischeme.prefs @@ -0,0 +1,2 @@ +eclipse.preferences.version=1 +processedSchemes=,eclipse+command,eclipse+mpc diff --git a/.metadata/.plugins/org.eclipse.egit.core/.org.eclipse.egit.core.cmp/.project b/.metadata/.plugins/org.eclipse.egit.core/.org.eclipse.egit.core.cmp/.project new file mode 100644 index 0000000..3c10856 --- /dev/null +++ b/.metadata/.plugins/org.eclipse.egit.core/.org.eclipse.egit.core.cmp/.project @@ -0,0 +1,11 @@ + + + .org.eclipse.egit.core.cmp + + + + + + + + diff --git a/.metadata/.plugins/org.eclipse.egit.core/.org.eclipse.egit.core.cmp/.settings/org.eclipse.core.resources.prefs b/.metadata/.plugins/org.eclipse.egit.core/.org.eclipse.egit.core.cmp/.settings/org.eclipse.core.resources.prefs new file mode 100644 index 0000000..99f26c0 --- /dev/null +++ b/.metadata/.plugins/org.eclipse.egit.core/.org.eclipse.egit.core.cmp/.settings/org.eclipse.core.resources.prefs @@ -0,0 +1,2 @@ +eclipse.preferences.version=1 +encoding/=UTF-8 diff --git a/.metadata/.plugins/org.eclipse.jdt.core/1124907625.index b/.metadata/.plugins/org.eclipse.jdt.core/1124907625.index new file mode 100644 index 0000000..a7249fb Binary files /dev/null and b/.metadata/.plugins/org.eclipse.jdt.core/1124907625.index differ diff --git a/.metadata/.plugins/org.eclipse.jdt.core/192081947.index b/.metadata/.plugins/org.eclipse.jdt.core/192081947.index new file mode 100644 index 0000000..b2676c3 Binary files /dev/null and b/.metadata/.plugins/org.eclipse.jdt.core/192081947.index differ diff --git a/.metadata/.plugins/org.eclipse.jdt.core/externalLibsTimeStamps b/.metadata/.plugins/org.eclipse.jdt.core/externalLibsTimeStamps new file mode 100644 index 0000000..5056b1d Binary files /dev/null and b/.metadata/.plugins/org.eclipse.jdt.core/externalLibsTimeStamps differ diff --git a/.metadata/.plugins/org.eclipse.jdt.core/javaLikeNames.txt b/.metadata/.plugins/org.eclipse.jdt.core/javaLikeNames.txt new file mode 100644 index 0000000..8586397 --- /dev/null +++ b/.metadata/.plugins/org.eclipse.jdt.core/javaLikeNames.txt @@ -0,0 +1 @@ +java \ No newline at end of file diff --git a/.metadata/.plugins/org.eclipse.jdt.core/variablesAndContainers.dat b/.metadata/.plugins/org.eclipse.jdt.core/variablesAndContainers.dat new file mode 100644 index 0000000..983e182 Binary files /dev/null and b/.metadata/.plugins/org.eclipse.jdt.core/variablesAndContainers.dat differ diff --git a/.metadata/.plugins/org.eclipse.jdt.launching/.install.xml b/.metadata/.plugins/org.eclipse.jdt.launching/.install.xml new file mode 100644 index 0000000..35f7cbb --- /dev/null +++ b/.metadata/.plugins/org.eclipse.jdt.launching/.install.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/.metadata/.plugins/org.eclipse.jdt.launching/libraryInfos.xml b/.metadata/.plugins/org.eclipse.jdt.launching/libraryInfos.xml new file mode 100644 index 0000000..10b7525 --- /dev/null +++ b/.metadata/.plugins/org.eclipse.jdt.launching/libraryInfos.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/.metadata/.plugins/org.eclipse.m2e.core/workspaceState.ser b/.metadata/.plugins/org.eclipse.m2e.core/workspaceState.ser new file mode 100644 index 0000000..abbf8e5 Binary files /dev/null and b/.metadata/.plugins/org.eclipse.m2e.core/workspaceState.ser differ diff --git a/.metadata/.plugins/org.eclipse.oomph.setup/workspace.setup b/.metadata/.plugins/org.eclipse.oomph.setup/workspace.setup new file mode 100644 index 0000000..1f73e14 --- /dev/null +++ b/.metadata/.plugins/org.eclipse.oomph.setup/workspace.setup @@ -0,0 +1,6 @@ + + diff --git a/.metadata/.plugins/org.eclipse.tm.terminal.view.ui/.executables/data.properties b/.metadata/.plugins/org.eclipse.tm.terminal.view.ui/.executables/data.properties new file mode 100644 index 0000000..69d91e4 --- /dev/null +++ b/.metadata/.plugins/org.eclipse.tm.terminal.view.ui/.executables/data.properties @@ -0,0 +1,6 @@ +#Wed Nov 01 11:35:29 KST 2023 +0.Args=--login -i +0.Icon=C\:\\Program Files\\Git\\mingw64\\share\\git\\git-for-windows.ico +0.Name=Git Bash +0.Path=C\:\\Program Files\\Git\\bin\\sh.exe +0.Translate=true diff --git a/.metadata/.plugins/org.eclipse.ui.intro/introstate b/.metadata/.plugins/org.eclipse.ui.intro/introstate new file mode 100644 index 0000000..02f134f --- /dev/null +++ b/.metadata/.plugins/org.eclipse.ui.intro/introstate @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/.metadata/.plugins/org.eclipse.ui.workbench/workingsets.xml b/.metadata/.plugins/org.eclipse.ui.workbench/workingsets.xml new file mode 100644 index 0000000..8bde411 --- /dev/null +++ b/.metadata/.plugins/org.eclipse.ui.workbench/workingsets.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/.metadata/version.ini b/.metadata/version.ini new file mode 100644 index 0000000..88b9109 --- /dev/null +++ b/.metadata/version.ini @@ -0,0 +1,3 @@ +#Mon Dec 04 03:25:11 KST 2023 +org.eclipse.core.runtime=2 +org.eclipse.platform=4.26.0.v20221123-1800 diff --git a/AutoPocket_ex1/.classpath b/AutoPocket_ex1/.classpath new file mode 100644 index 0000000..a15b802 --- /dev/null +++ b/AutoPocket_ex1/.classpath @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/AutoPocket_ex1/.project b/AutoPocket_ex1/.project new file mode 100644 index 0000000..c5e019d --- /dev/null +++ b/AutoPocket_ex1/.project @@ -0,0 +1,17 @@ + + + AutoPocket + + + + + + org.eclipse.jdt.core.javabuilder + + + + + + org.eclipse.jdt.core.javanature + + diff --git a/AutoPocket_ex1/.settings/org.eclipse.core.resources.prefs b/AutoPocket_ex1/.settings/org.eclipse.core.resources.prefs new file mode 100644 index 0000000..ed4a0a5 --- /dev/null +++ b/AutoPocket_ex1/.settings/org.eclipse.core.resources.prefs @@ -0,0 +1,6 @@ +eclipse.preferences.version=1 +encoding//src/background/Obj_Panel3.java=UTF-8 +encoding//src/background/Placement_Screen.java=UTF-8 +encoding//src/background/StartBattle.java=UTF-8 +encoding//src/background/setEnemy.java=UTF-8 +encoding/=MS949 diff --git a/AutoPocket_ex1/.settings/org.eclipse.jdt.core.prefs b/AutoPocket_ex1/.settings/org.eclipse.jdt.core.prefs new file mode 100644 index 0000000..062ed70 --- /dev/null +++ b/AutoPocket_ex1/.settings/org.eclipse.jdt.core.prefs @@ -0,0 +1,14 @@ +eclipse.preferences.version=1 +org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled +org.eclipse.jdt.core.compiler.codegen.targetPlatform=19 +org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve +org.eclipse.jdt.core.compiler.compliance=19 +org.eclipse.jdt.core.compiler.debug.lineNumber=generate +org.eclipse.jdt.core.compiler.debug.localVariable=generate +org.eclipse.jdt.core.compiler.debug.sourceFile=generate +org.eclipse.jdt.core.compiler.problem.assertIdentifier=error +org.eclipse.jdt.core.compiler.problem.enablePreviewFeatures=disabled +org.eclipse.jdt.core.compiler.problem.enumIdentifier=error +org.eclipse.jdt.core.compiler.problem.reportPreviewFeatures=warning +org.eclipse.jdt.core.compiler.release=enabled +org.eclipse.jdt.core.compiler.source=19 diff --git a/AutoPocket_ex1/bin/.gitignore b/AutoPocket_ex1/bin/.gitignore new file mode 100644 index 0000000..ca4fd63 --- /dev/null +++ b/AutoPocket_ex1/bin/.gitignore @@ -0,0 +1,3 @@ +/background/ +/Images/ +/Image/ diff --git a/AutoPocket_ex1/bin/Image/Effectbar.png b/AutoPocket_ex1/bin/Image/Effectbar.png new file mode 100644 index 0000000..3ed9586 Binary files /dev/null and b/AutoPocket_ex1/bin/Image/Effectbar.png differ diff --git a/AutoPocket_ex1/bin/Image/Help.png b/AutoPocket_ex1/bin/Image/Help.png new file mode 100644 index 0000000..93d1035 Binary files /dev/null and b/AutoPocket_ex1/bin/Image/Help.png differ diff --git a/AutoPocket_ex1/bin/Image/ID.png b/AutoPocket_ex1/bin/Image/ID.png new file mode 100644 index 0000000..8345a16 Binary files /dev/null and b/AutoPocket_ex1/bin/Image/ID.png differ diff --git a/AutoPocket_ex1/bin/Image/Pocketmon2.png b/AutoPocket_ex1/bin/Image/Pocketmon2.png new file mode 100644 index 0000000..e1906da Binary files /dev/null and b/AutoPocket_ex1/bin/Image/Pocketmon2.png differ diff --git a/AutoPocket_ex1/bin/Image/Sound.png b/AutoPocket_ex1/bin/Image/Sound.png new file mode 100644 index 0000000..cf255af Binary files /dev/null and b/AutoPocket_ex1/bin/Image/Sound.png differ diff --git a/AutoPocket_ex1/bin/Image/Soundbar.png b/AutoPocket_ex1/bin/Image/Soundbar.png new file mode 100644 index 0000000..121eddf Binary files /dev/null and b/AutoPocket_ex1/bin/Image/Soundbar.png differ diff --git a/AutoPocket_ex1/bin/Image/Title2.png b/AutoPocket_ex1/bin/Image/Title2.png new file mode 100644 index 0000000..9cab6e4 Binary files /dev/null and b/AutoPocket_ex1/bin/Image/Title2.png differ diff --git a/AutoPocket_ex1/bin/Image/cancle.png b/AutoPocket_ex1/bin/Image/cancle.png new file mode 100644 index 0000000..55207d6 Binary files /dev/null and b/AutoPocket_ex1/bin/Image/cancle.png differ diff --git a/AutoPocket_ex1/bin/Image/confirm.png b/AutoPocket_ex1/bin/Image/confirm.png new file mode 100644 index 0000000..6853faf Binary files /dev/null and b/AutoPocket_ex1/bin/Image/confirm.png differ diff --git a/AutoPocket_ex1/bin/Image/delete.png b/AutoPocket_ex1/bin/Image/delete.png new file mode 100644 index 0000000..8bef9d3 Binary files /dev/null and b/AutoPocket_ex1/bin/Image/delete.png differ diff --git a/AutoPocket_ex1/bin/Image/exit.png b/AutoPocket_ex1/bin/Image/exit.png new file mode 100644 index 0000000..b217035 Binary files /dev/null and b/AutoPocket_ex1/bin/Image/exit.png differ diff --git a/AutoPocket_ex1/bin/Image/exit3.png b/AutoPocket_ex1/bin/Image/exit3.png new file mode 100644 index 0000000..9a935a5 Binary files /dev/null and b/AutoPocket_ex1/bin/Image/exit3.png differ diff --git a/AutoPocket_ex1/bin/Image/login_background.png b/AutoPocket_ex1/bin/Image/login_background.png new file mode 100644 index 0000000..c50b00b Binary files /dev/null and b/AutoPocket_ex1/bin/Image/login_background.png differ diff --git a/AutoPocket_ex1/bin/Image/logout.png b/AutoPocket_ex1/bin/Image/logout.png new file mode 100644 index 0000000..0c00024 Binary files /dev/null and b/AutoPocket_ex1/bin/Image/logout.png differ diff --git a/AutoPocket_ex1/bin/Image/main2.png b/AutoPocket_ex1/bin/Image/main2.png new file mode 100644 index 0000000..7723080 Binary files /dev/null and b/AutoPocket_ex1/bin/Image/main2.png differ diff --git a/AutoPocket_ex1/bin/Image/nextBtn.png b/AutoPocket_ex1/bin/Image/nextBtn.png new file mode 100644 index 0000000..2b5d1c2 Binary files /dev/null and b/AutoPocket_ex1/bin/Image/nextBtn.png differ diff --git a/AutoPocket_ex1/bin/Image/option.png b/AutoPocket_ex1/bin/Image/option.png new file mode 100644 index 0000000..ee7224d Binary files /dev/null and b/AutoPocket_ex1/bin/Image/option.png differ diff --git a/AutoPocket_ex1/bin/Image/play.png b/AutoPocket_ex1/bin/Image/play.png new file mode 100644 index 0000000..3d28a59 Binary files /dev/null and b/AutoPocket_ex1/bin/Image/play.png differ diff --git a/AutoPocket_ex1/bin/Image/pocketmonlist.png b/AutoPocket_ex1/bin/Image/pocketmonlist.png new file mode 100644 index 0000000..da7a25f Binary files /dev/null and b/AutoPocket_ex1/bin/Image/pocketmonlist.png differ diff --git a/AutoPocket_ex1/bin/Image/previous.png b/AutoPocket_ex1/bin/Image/previous.png new file mode 100644 index 0000000..5e42943 Binary files /dev/null and b/AutoPocket_ex1/bin/Image/previous.png differ diff --git a/AutoPocket_ex1/bin/Image/record.png b/AutoPocket_ex1/bin/Image/record.png new file mode 100644 index 0000000..cf12aa4 Binary files /dev/null and b/AutoPocket_ex1/bin/Image/record.png differ diff --git a/AutoPocket_ex1/bin/Image/record_test3.png b/AutoPocket_ex1/bin/Image/record_test3.png new file mode 100644 index 0000000..7d973e2 Binary files /dev/null and b/AutoPocket_ex1/bin/Image/record_test3.png differ diff --git a/AutoPocket_ex1/bin/Image/register.png b/AutoPocket_ex1/bin/Image/register.png new file mode 100644 index 0000000..3321659 Binary files /dev/null and b/AutoPocket_ex1/bin/Image/register.png differ diff --git a/AutoPocket_ex1/bin/Image/signimg2.png b/AutoPocket_ex1/bin/Image/signimg2.png new file mode 100644 index 0000000..f398236 Binary files /dev/null and b/AutoPocket_ex1/bin/Image/signimg2.png differ diff --git a/AutoPocket_ex1/bin/Image/signup.png b/AutoPocket_ex1/bin/Image/signup.png new file mode 100644 index 0000000..8160c7d Binary files /dev/null and b/AutoPocket_ex1/bin/Image/signup.png differ diff --git a/AutoPocket_ex1/bin/Image/start.png b/AutoPocket_ex1/bin/Image/start.png new file mode 100644 index 0000000..a76a707 Binary files /dev/null and b/AutoPocket_ex1/bin/Image/start.png differ diff --git a/AutoPocket_ex1/bin/Item_Image/1.png b/AutoPocket_ex1/bin/Item_Image/1.png new file mode 100644 index 0000000..3fc797d Binary files /dev/null and b/AutoPocket_ex1/bin/Item_Image/1.png differ diff --git a/AutoPocket_ex1/bin/Item_Image/10.png b/AutoPocket_ex1/bin/Item_Image/10.png new file mode 100644 index 0000000..98182fe Binary files /dev/null and b/AutoPocket_ex1/bin/Item_Image/10.png differ diff --git a/AutoPocket_ex1/bin/Item_Image/11.png b/AutoPocket_ex1/bin/Item_Image/11.png new file mode 100644 index 0000000..7d7e15a Binary files /dev/null and b/AutoPocket_ex1/bin/Item_Image/11.png differ diff --git a/AutoPocket_ex1/bin/Item_Image/12.png b/AutoPocket_ex1/bin/Item_Image/12.png new file mode 100644 index 0000000..7e79ea4 Binary files /dev/null and b/AutoPocket_ex1/bin/Item_Image/12.png differ diff --git a/AutoPocket_ex1/bin/Item_Image/13.png b/AutoPocket_ex1/bin/Item_Image/13.png new file mode 100644 index 0000000..4e250fe Binary files /dev/null and b/AutoPocket_ex1/bin/Item_Image/13.png differ diff --git a/AutoPocket_ex1/bin/Item_Image/14.png b/AutoPocket_ex1/bin/Item_Image/14.png new file mode 100644 index 0000000..b40400b Binary files /dev/null and b/AutoPocket_ex1/bin/Item_Image/14.png differ diff --git a/AutoPocket_ex1/bin/Item_Image/15.png b/AutoPocket_ex1/bin/Item_Image/15.png new file mode 100644 index 0000000..0f5a131 Binary files /dev/null and b/AutoPocket_ex1/bin/Item_Image/15.png differ diff --git a/AutoPocket_ex1/bin/Item_Image/16.png b/AutoPocket_ex1/bin/Item_Image/16.png new file mode 100644 index 0000000..f516e7a Binary files /dev/null and b/AutoPocket_ex1/bin/Item_Image/16.png differ diff --git a/AutoPocket_ex1/bin/Item_Image/17.png b/AutoPocket_ex1/bin/Item_Image/17.png new file mode 100644 index 0000000..aa06789 Binary files /dev/null and b/AutoPocket_ex1/bin/Item_Image/17.png differ diff --git a/AutoPocket_ex1/bin/Item_Image/18.png b/AutoPocket_ex1/bin/Item_Image/18.png new file mode 100644 index 0000000..d40e0c1 Binary files /dev/null and b/AutoPocket_ex1/bin/Item_Image/18.png differ diff --git a/AutoPocket_ex1/bin/Item_Image/19.png b/AutoPocket_ex1/bin/Item_Image/19.png new file mode 100644 index 0000000..cb59719 Binary files /dev/null and b/AutoPocket_ex1/bin/Item_Image/19.png differ diff --git a/AutoPocket_ex1/bin/Item_Image/2.png b/AutoPocket_ex1/bin/Item_Image/2.png new file mode 100644 index 0000000..5dcb311 Binary files /dev/null and b/AutoPocket_ex1/bin/Item_Image/2.png differ diff --git a/AutoPocket_ex1/bin/Item_Image/20.png b/AutoPocket_ex1/bin/Item_Image/20.png new file mode 100644 index 0000000..1d5658e Binary files /dev/null and b/AutoPocket_ex1/bin/Item_Image/20.png differ diff --git a/AutoPocket_ex1/bin/Item_Image/21.png b/AutoPocket_ex1/bin/Item_Image/21.png new file mode 100644 index 0000000..95dd91d Binary files /dev/null and b/AutoPocket_ex1/bin/Item_Image/21.png differ diff --git a/AutoPocket_ex1/bin/Item_Image/22.png b/AutoPocket_ex1/bin/Item_Image/22.png new file mode 100644 index 0000000..82c1f82 Binary files /dev/null and b/AutoPocket_ex1/bin/Item_Image/22.png differ diff --git a/AutoPocket_ex1/bin/Item_Image/23.png b/AutoPocket_ex1/bin/Item_Image/23.png new file mode 100644 index 0000000..698563b Binary files /dev/null and b/AutoPocket_ex1/bin/Item_Image/23.png differ diff --git a/AutoPocket_ex1/bin/Item_Image/24.png b/AutoPocket_ex1/bin/Item_Image/24.png new file mode 100644 index 0000000..f408e64 Binary files /dev/null and b/AutoPocket_ex1/bin/Item_Image/24.png differ diff --git a/AutoPocket_ex1/bin/Item_Image/3.png b/AutoPocket_ex1/bin/Item_Image/3.png new file mode 100644 index 0000000..141e611 Binary files /dev/null and b/AutoPocket_ex1/bin/Item_Image/3.png differ diff --git a/AutoPocket_ex1/bin/Item_Image/4.png b/AutoPocket_ex1/bin/Item_Image/4.png new file mode 100644 index 0000000..1e475b0 Binary files /dev/null and b/AutoPocket_ex1/bin/Item_Image/4.png differ diff --git a/AutoPocket_ex1/bin/Item_Image/5.png b/AutoPocket_ex1/bin/Item_Image/5.png new file mode 100644 index 0000000..1bd4699 Binary files /dev/null and b/AutoPocket_ex1/bin/Item_Image/5.png differ diff --git a/AutoPocket_ex1/bin/Item_Image/6.png b/AutoPocket_ex1/bin/Item_Image/6.png new file mode 100644 index 0000000..e408552 Binary files /dev/null and b/AutoPocket_ex1/bin/Item_Image/6.png differ diff --git a/AutoPocket_ex1/bin/Item_Image/7.png b/AutoPocket_ex1/bin/Item_Image/7.png new file mode 100644 index 0000000..e8443e1 Binary files /dev/null and b/AutoPocket_ex1/bin/Item_Image/7.png differ diff --git a/AutoPocket_ex1/bin/Item_Image/8.png b/AutoPocket_ex1/bin/Item_Image/8.png new file mode 100644 index 0000000..8958de3 Binary files /dev/null and b/AutoPocket_ex1/bin/Item_Image/8.png differ diff --git a/AutoPocket_ex1/bin/Item_Image/9.png b/AutoPocket_ex1/bin/Item_Image/9.png new file mode 100644 index 0000000..d146a54 Binary files /dev/null and b/AutoPocket_ex1/bin/Item_Image/9.png differ diff --git a/AutoPocket_ex1/bin/Sound/backgroundsound.wav b/AutoPocket_ex1/bin/Sound/backgroundsound.wav new file mode 100644 index 0000000..7f16fe5 Binary files /dev/null and b/AutoPocket_ex1/bin/Sound/backgroundsound.wav differ diff --git a/AutoPocket_ex1/bin/pocketImg/1.png b/AutoPocket_ex1/bin/pocketImg/1.png new file mode 100644 index 0000000..b9dea16 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImg/1.png differ diff --git a/AutoPocket_ex1/bin/pocketImg/10.png b/AutoPocket_ex1/bin/pocketImg/10.png new file mode 100644 index 0000000..70861c5 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImg/10.png differ diff --git a/AutoPocket_ex1/bin/pocketImg/11.png b/AutoPocket_ex1/bin/pocketImg/11.png new file mode 100644 index 0000000..f1ad760 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImg/11.png differ diff --git a/AutoPocket_ex1/bin/pocketImg/12.png b/AutoPocket_ex1/bin/pocketImg/12.png new file mode 100644 index 0000000..f7bec50 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImg/12.png differ diff --git a/AutoPocket_ex1/bin/pocketImg/13.png b/AutoPocket_ex1/bin/pocketImg/13.png new file mode 100644 index 0000000..9cd4248 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImg/13.png differ diff --git a/AutoPocket_ex1/bin/pocketImg/14.png b/AutoPocket_ex1/bin/pocketImg/14.png new file mode 100644 index 0000000..4036838 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImg/14.png differ diff --git a/AutoPocket_ex1/bin/pocketImg/15.png b/AutoPocket_ex1/bin/pocketImg/15.png new file mode 100644 index 0000000..8116ee0 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImg/15.png differ diff --git a/AutoPocket_ex1/bin/pocketImg/16.png b/AutoPocket_ex1/bin/pocketImg/16.png new file mode 100644 index 0000000..5182673 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImg/16.png differ diff --git a/AutoPocket_ex1/bin/pocketImg/17.png b/AutoPocket_ex1/bin/pocketImg/17.png new file mode 100644 index 0000000..8a3ebb5 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImg/17.png differ diff --git a/AutoPocket_ex1/bin/pocketImg/18.png b/AutoPocket_ex1/bin/pocketImg/18.png new file mode 100644 index 0000000..a21521d Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImg/18.png differ diff --git a/AutoPocket_ex1/bin/pocketImg/19.png b/AutoPocket_ex1/bin/pocketImg/19.png new file mode 100644 index 0000000..9e55719 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImg/19.png differ diff --git a/AutoPocket_ex1/bin/pocketImg/2.png b/AutoPocket_ex1/bin/pocketImg/2.png new file mode 100644 index 0000000..17fc442 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImg/2.png differ diff --git a/AutoPocket_ex1/bin/pocketImg/20.png b/AutoPocket_ex1/bin/pocketImg/20.png new file mode 100644 index 0000000..a4cf12e Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImg/20.png differ diff --git a/AutoPocket_ex1/bin/pocketImg/21.png b/AutoPocket_ex1/bin/pocketImg/21.png new file mode 100644 index 0000000..af13cfb Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImg/21.png differ diff --git a/AutoPocket_ex1/bin/pocketImg/22.png b/AutoPocket_ex1/bin/pocketImg/22.png new file mode 100644 index 0000000..22d1e0b Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImg/22.png differ diff --git a/AutoPocket_ex1/bin/pocketImg/23.png b/AutoPocket_ex1/bin/pocketImg/23.png new file mode 100644 index 0000000..0f841af Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImg/23.png differ diff --git a/AutoPocket_ex1/bin/pocketImg/24.png b/AutoPocket_ex1/bin/pocketImg/24.png new file mode 100644 index 0000000..6d81ad5 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImg/24.png differ diff --git a/AutoPocket_ex1/bin/pocketImg/25.png b/AutoPocket_ex1/bin/pocketImg/25.png new file mode 100644 index 0000000..f6d8ee5 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImg/25.png differ diff --git a/AutoPocket_ex1/bin/pocketImg/26.png b/AutoPocket_ex1/bin/pocketImg/26.png new file mode 100644 index 0000000..78137d4 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImg/26.png differ diff --git a/AutoPocket_ex1/bin/pocketImg/27.png b/AutoPocket_ex1/bin/pocketImg/27.png new file mode 100644 index 0000000..04c8132 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImg/27.png differ diff --git a/AutoPocket_ex1/bin/pocketImg/28.png b/AutoPocket_ex1/bin/pocketImg/28.png new file mode 100644 index 0000000..5623abd Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImg/28.png differ diff --git a/AutoPocket_ex1/bin/pocketImg/29.png b/AutoPocket_ex1/bin/pocketImg/29.png new file mode 100644 index 0000000..b607520 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImg/29.png differ diff --git a/AutoPocket_ex1/bin/pocketImg/3.png b/AutoPocket_ex1/bin/pocketImg/3.png new file mode 100644 index 0000000..398b4d3 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImg/3.png differ diff --git a/AutoPocket_ex1/bin/pocketImg/30.png b/AutoPocket_ex1/bin/pocketImg/30.png new file mode 100644 index 0000000..4621f76 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImg/30.png differ diff --git a/AutoPocket_ex1/bin/pocketImg/31.png b/AutoPocket_ex1/bin/pocketImg/31.png new file mode 100644 index 0000000..9fc9ef9 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImg/31.png differ diff --git a/AutoPocket_ex1/bin/pocketImg/32.png b/AutoPocket_ex1/bin/pocketImg/32.png new file mode 100644 index 0000000..81b4737 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImg/32.png differ diff --git a/AutoPocket_ex1/bin/pocketImg/33.png b/AutoPocket_ex1/bin/pocketImg/33.png new file mode 100644 index 0000000..676e09c Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImg/33.png differ diff --git a/AutoPocket_ex1/bin/pocketImg/34.png b/AutoPocket_ex1/bin/pocketImg/34.png new file mode 100644 index 0000000..e3466de Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImg/34.png differ diff --git a/AutoPocket_ex1/bin/pocketImg/35.png b/AutoPocket_ex1/bin/pocketImg/35.png new file mode 100644 index 0000000..277eabf Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImg/35.png differ diff --git a/AutoPocket_ex1/bin/pocketImg/36.png b/AutoPocket_ex1/bin/pocketImg/36.png new file mode 100644 index 0000000..f46f3fa Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImg/36.png differ diff --git a/AutoPocket_ex1/bin/pocketImg/37.png b/AutoPocket_ex1/bin/pocketImg/37.png new file mode 100644 index 0000000..47179fa Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImg/37.png differ diff --git a/AutoPocket_ex1/bin/pocketImg/38.png b/AutoPocket_ex1/bin/pocketImg/38.png new file mode 100644 index 0000000..c9e8b56 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImg/38.png differ diff --git a/AutoPocket_ex1/bin/pocketImg/39.png b/AutoPocket_ex1/bin/pocketImg/39.png new file mode 100644 index 0000000..b5c50e8 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImg/39.png differ diff --git a/AutoPocket_ex1/bin/pocketImg/4.png b/AutoPocket_ex1/bin/pocketImg/4.png new file mode 100644 index 0000000..5318751 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImg/4.png differ diff --git a/AutoPocket_ex1/bin/pocketImg/40.png b/AutoPocket_ex1/bin/pocketImg/40.png new file mode 100644 index 0000000..5841cd5 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImg/40.png differ diff --git a/AutoPocket_ex1/bin/pocketImg/41.png b/AutoPocket_ex1/bin/pocketImg/41.png new file mode 100644 index 0000000..ea1a402 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImg/41.png differ diff --git a/AutoPocket_ex1/bin/pocketImg/42.png b/AutoPocket_ex1/bin/pocketImg/42.png new file mode 100644 index 0000000..2af921c Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImg/42.png differ diff --git a/AutoPocket_ex1/bin/pocketImg/43.png b/AutoPocket_ex1/bin/pocketImg/43.png new file mode 100644 index 0000000..b9d1269 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImg/43.png differ diff --git a/AutoPocket_ex1/bin/pocketImg/44.png b/AutoPocket_ex1/bin/pocketImg/44.png new file mode 100644 index 0000000..c2225c5 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImg/44.png differ diff --git a/AutoPocket_ex1/bin/pocketImg/45.png b/AutoPocket_ex1/bin/pocketImg/45.png new file mode 100644 index 0000000..93f948d Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImg/45.png differ diff --git a/AutoPocket_ex1/bin/pocketImg/46.png b/AutoPocket_ex1/bin/pocketImg/46.png new file mode 100644 index 0000000..f341caa Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImg/46.png differ diff --git a/AutoPocket_ex1/bin/pocketImg/47.png b/AutoPocket_ex1/bin/pocketImg/47.png new file mode 100644 index 0000000..d22bfad Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImg/47.png differ diff --git a/AutoPocket_ex1/bin/pocketImg/48.png b/AutoPocket_ex1/bin/pocketImg/48.png new file mode 100644 index 0000000..c4f6212 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImg/48.png differ diff --git a/AutoPocket_ex1/bin/pocketImg/49.png b/AutoPocket_ex1/bin/pocketImg/49.png new file mode 100644 index 0000000..e0b2881 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImg/49.png differ diff --git a/AutoPocket_ex1/bin/pocketImg/5.png b/AutoPocket_ex1/bin/pocketImg/5.png new file mode 100644 index 0000000..2d438ff Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImg/5.png differ diff --git a/AutoPocket_ex1/bin/pocketImg/50.png b/AutoPocket_ex1/bin/pocketImg/50.png new file mode 100644 index 0000000..7e65594 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImg/50.png differ diff --git a/AutoPocket_ex1/bin/pocketImg/51.png b/AutoPocket_ex1/bin/pocketImg/51.png new file mode 100644 index 0000000..c078e00 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImg/51.png differ diff --git a/AutoPocket_ex1/bin/pocketImg/52.png b/AutoPocket_ex1/bin/pocketImg/52.png new file mode 100644 index 0000000..219a1de Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImg/52.png differ diff --git a/AutoPocket_ex1/bin/pocketImg/53.png b/AutoPocket_ex1/bin/pocketImg/53.png new file mode 100644 index 0000000..bc7b941 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImg/53.png differ diff --git a/AutoPocket_ex1/bin/pocketImg/54.png b/AutoPocket_ex1/bin/pocketImg/54.png new file mode 100644 index 0000000..9c9f94f Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImg/54.png differ diff --git a/AutoPocket_ex1/bin/pocketImg/55.png b/AutoPocket_ex1/bin/pocketImg/55.png new file mode 100644 index 0000000..aca667c Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImg/55.png differ diff --git a/AutoPocket_ex1/bin/pocketImg/56.png b/AutoPocket_ex1/bin/pocketImg/56.png new file mode 100644 index 0000000..40b028b Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImg/56.png differ diff --git a/AutoPocket_ex1/bin/pocketImg/57.png b/AutoPocket_ex1/bin/pocketImg/57.png new file mode 100644 index 0000000..0a37f44 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImg/57.png differ diff --git a/AutoPocket_ex1/bin/pocketImg/58.png b/AutoPocket_ex1/bin/pocketImg/58.png new file mode 100644 index 0000000..ba1d9bb Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImg/58.png differ diff --git a/AutoPocket_ex1/bin/pocketImg/59.png b/AutoPocket_ex1/bin/pocketImg/59.png new file mode 100644 index 0000000..3a29c2c Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImg/59.png differ diff --git a/AutoPocket_ex1/bin/pocketImg/6.png b/AutoPocket_ex1/bin/pocketImg/6.png new file mode 100644 index 0000000..53f5a1e Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImg/6.png differ diff --git a/AutoPocket_ex1/bin/pocketImg/60.png b/AutoPocket_ex1/bin/pocketImg/60.png new file mode 100644 index 0000000..c0da35e Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImg/60.png differ diff --git a/AutoPocket_ex1/bin/pocketImg/7.png b/AutoPocket_ex1/bin/pocketImg/7.png new file mode 100644 index 0000000..24e4b1d Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImg/7.png differ diff --git a/AutoPocket_ex1/bin/pocketImg/8.png b/AutoPocket_ex1/bin/pocketImg/8.png new file mode 100644 index 0000000..fb79fa7 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImg/8.png differ diff --git a/AutoPocket_ex1/bin/pocketImg/9.png b/AutoPocket_ex1/bin/pocketImg/9.png new file mode 100644 index 0000000..dc46c2a Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImg/9.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv2/1.png b/AutoPocket_ex1/bin/pocketImgLv2/1.png new file mode 100644 index 0000000..83295b7 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv2/1.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv2/10.png b/AutoPocket_ex1/bin/pocketImgLv2/10.png new file mode 100644 index 0000000..44e99cb Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv2/10.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv2/11.png b/AutoPocket_ex1/bin/pocketImgLv2/11.png new file mode 100644 index 0000000..c6adf55 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv2/11.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv2/12.png b/AutoPocket_ex1/bin/pocketImgLv2/12.png new file mode 100644 index 0000000..3886d5f Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv2/12.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv2/13.png b/AutoPocket_ex1/bin/pocketImgLv2/13.png new file mode 100644 index 0000000..82223bf Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv2/13.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv2/14.png b/AutoPocket_ex1/bin/pocketImgLv2/14.png new file mode 100644 index 0000000..d9b3736 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv2/14.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv2/15.png b/AutoPocket_ex1/bin/pocketImgLv2/15.png new file mode 100644 index 0000000..5d079fe Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv2/15.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv2/16.png b/AutoPocket_ex1/bin/pocketImgLv2/16.png new file mode 100644 index 0000000..adacea5 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv2/16.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv2/17.png b/AutoPocket_ex1/bin/pocketImgLv2/17.png new file mode 100644 index 0000000..4726891 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv2/17.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv2/18.png b/AutoPocket_ex1/bin/pocketImgLv2/18.png new file mode 100644 index 0000000..001480d Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv2/18.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv2/19.png b/AutoPocket_ex1/bin/pocketImgLv2/19.png new file mode 100644 index 0000000..d647cbe Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv2/19.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv2/2.png b/AutoPocket_ex1/bin/pocketImgLv2/2.png new file mode 100644 index 0000000..ac99e42 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv2/2.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv2/20.png b/AutoPocket_ex1/bin/pocketImgLv2/20.png new file mode 100644 index 0000000..33689a5 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv2/20.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv2/21.png b/AutoPocket_ex1/bin/pocketImgLv2/21.png new file mode 100644 index 0000000..6948047 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv2/21.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv2/22.png b/AutoPocket_ex1/bin/pocketImgLv2/22.png new file mode 100644 index 0000000..3075ae7 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv2/22.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv2/23.png b/AutoPocket_ex1/bin/pocketImgLv2/23.png new file mode 100644 index 0000000..1a8b414 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv2/23.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv2/24.png b/AutoPocket_ex1/bin/pocketImgLv2/24.png new file mode 100644 index 0000000..1555a24 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv2/24.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv2/25.png b/AutoPocket_ex1/bin/pocketImgLv2/25.png new file mode 100644 index 0000000..486f350 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv2/25.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv2/26.png b/AutoPocket_ex1/bin/pocketImgLv2/26.png new file mode 100644 index 0000000..56cb6bf Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv2/26.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv2/27.png b/AutoPocket_ex1/bin/pocketImgLv2/27.png new file mode 100644 index 0000000..92b3ba4 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv2/27.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv2/28.png b/AutoPocket_ex1/bin/pocketImgLv2/28.png new file mode 100644 index 0000000..b54ac3b Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv2/28.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv2/29.png b/AutoPocket_ex1/bin/pocketImgLv2/29.png new file mode 100644 index 0000000..2e483d5 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv2/29.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv2/3.png b/AutoPocket_ex1/bin/pocketImgLv2/3.png new file mode 100644 index 0000000..a221150 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv2/3.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv2/30.png b/AutoPocket_ex1/bin/pocketImgLv2/30.png new file mode 100644 index 0000000..6f31dcb Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv2/30.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv2/31.png b/AutoPocket_ex1/bin/pocketImgLv2/31.png new file mode 100644 index 0000000..4970c6a Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv2/31.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv2/32.png b/AutoPocket_ex1/bin/pocketImgLv2/32.png new file mode 100644 index 0000000..727f0bf Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv2/32.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv2/33.png b/AutoPocket_ex1/bin/pocketImgLv2/33.png new file mode 100644 index 0000000..55f4030 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv2/33.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv2/34.png b/AutoPocket_ex1/bin/pocketImgLv2/34.png new file mode 100644 index 0000000..92f3731 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv2/34.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv2/35.png b/AutoPocket_ex1/bin/pocketImgLv2/35.png new file mode 100644 index 0000000..a55ab8a Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv2/35.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv2/36.png b/AutoPocket_ex1/bin/pocketImgLv2/36.png new file mode 100644 index 0000000..ef75f22 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv2/36.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv2/37.png b/AutoPocket_ex1/bin/pocketImgLv2/37.png new file mode 100644 index 0000000..039c509 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv2/37.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv2/38.png b/AutoPocket_ex1/bin/pocketImgLv2/38.png new file mode 100644 index 0000000..02f50a9 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv2/38.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv2/39.png b/AutoPocket_ex1/bin/pocketImgLv2/39.png new file mode 100644 index 0000000..1f6d836 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv2/39.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv2/4.png b/AutoPocket_ex1/bin/pocketImgLv2/4.png new file mode 100644 index 0000000..deb6963 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv2/4.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv2/40.png b/AutoPocket_ex1/bin/pocketImgLv2/40.png new file mode 100644 index 0000000..188397c Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv2/40.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv2/41.png b/AutoPocket_ex1/bin/pocketImgLv2/41.png new file mode 100644 index 0000000..7030a85 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv2/41.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv2/42.png b/AutoPocket_ex1/bin/pocketImgLv2/42.png new file mode 100644 index 0000000..73a80b6 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv2/42.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv2/43.png b/AutoPocket_ex1/bin/pocketImgLv2/43.png new file mode 100644 index 0000000..738c5b7 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv2/43.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv2/44.png b/AutoPocket_ex1/bin/pocketImgLv2/44.png new file mode 100644 index 0000000..943738e Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv2/44.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv2/45.png b/AutoPocket_ex1/bin/pocketImgLv2/45.png new file mode 100644 index 0000000..49736f0 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv2/45.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv2/46.png b/AutoPocket_ex1/bin/pocketImgLv2/46.png new file mode 100644 index 0000000..cf57db8 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv2/46.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv2/47.png b/AutoPocket_ex1/bin/pocketImgLv2/47.png new file mode 100644 index 0000000..6a8a491 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv2/47.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv2/48.png b/AutoPocket_ex1/bin/pocketImgLv2/48.png new file mode 100644 index 0000000..d84340b Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv2/48.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv2/49.png b/AutoPocket_ex1/bin/pocketImgLv2/49.png new file mode 100644 index 0000000..b33fd91 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv2/49.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv2/5.png b/AutoPocket_ex1/bin/pocketImgLv2/5.png new file mode 100644 index 0000000..007c746 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv2/5.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv2/50.png b/AutoPocket_ex1/bin/pocketImgLv2/50.png new file mode 100644 index 0000000..3a16b98 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv2/50.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv2/51.png b/AutoPocket_ex1/bin/pocketImgLv2/51.png new file mode 100644 index 0000000..0ccfbe1 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv2/51.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv2/52.png b/AutoPocket_ex1/bin/pocketImgLv2/52.png new file mode 100644 index 0000000..fd8033d Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv2/52.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv2/53.png b/AutoPocket_ex1/bin/pocketImgLv2/53.png new file mode 100644 index 0000000..fcc6fdb Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv2/53.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv2/54.png b/AutoPocket_ex1/bin/pocketImgLv2/54.png new file mode 100644 index 0000000..fa3d339 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv2/54.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv2/55.png b/AutoPocket_ex1/bin/pocketImgLv2/55.png new file mode 100644 index 0000000..d9481a3 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv2/55.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv2/56.png b/AutoPocket_ex1/bin/pocketImgLv2/56.png new file mode 100644 index 0000000..09192b4 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv2/56.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv2/57.png b/AutoPocket_ex1/bin/pocketImgLv2/57.png new file mode 100644 index 0000000..5a7c502 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv2/57.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv2/58.png b/AutoPocket_ex1/bin/pocketImgLv2/58.png new file mode 100644 index 0000000..7afd6c7 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv2/58.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv2/59.png b/AutoPocket_ex1/bin/pocketImgLv2/59.png new file mode 100644 index 0000000..3b9fdfc Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv2/59.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv2/6.png b/AutoPocket_ex1/bin/pocketImgLv2/6.png new file mode 100644 index 0000000..923c002 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv2/6.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv2/60.png b/AutoPocket_ex1/bin/pocketImgLv2/60.png new file mode 100644 index 0000000..8ef39c8 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv2/60.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv2/7.png b/AutoPocket_ex1/bin/pocketImgLv2/7.png new file mode 100644 index 0000000..53a1dc4 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv2/7.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv2/8.png b/AutoPocket_ex1/bin/pocketImgLv2/8.png new file mode 100644 index 0000000..bab4ad3 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv2/8.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv2/9.png b/AutoPocket_ex1/bin/pocketImgLv2/9.png new file mode 100644 index 0000000..4189791 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv2/9.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv3/1.png b/AutoPocket_ex1/bin/pocketImgLv3/1.png new file mode 100644 index 0000000..4e0c3a7 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv3/1.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv3/10.png b/AutoPocket_ex1/bin/pocketImgLv3/10.png new file mode 100644 index 0000000..2102d3a Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv3/10.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv3/11.png b/AutoPocket_ex1/bin/pocketImgLv3/11.png new file mode 100644 index 0000000..341cf14 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv3/11.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv3/12.png b/AutoPocket_ex1/bin/pocketImgLv3/12.png new file mode 100644 index 0000000..6215aeb Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv3/12.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv3/13.png b/AutoPocket_ex1/bin/pocketImgLv3/13.png new file mode 100644 index 0000000..c07527d Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv3/13.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv3/14.png b/AutoPocket_ex1/bin/pocketImgLv3/14.png new file mode 100644 index 0000000..0c984e1 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv3/14.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv3/15.png b/AutoPocket_ex1/bin/pocketImgLv3/15.png new file mode 100644 index 0000000..a6050df Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv3/15.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv3/16.png b/AutoPocket_ex1/bin/pocketImgLv3/16.png new file mode 100644 index 0000000..5796bae Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv3/16.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv3/17.png b/AutoPocket_ex1/bin/pocketImgLv3/17.png new file mode 100644 index 0000000..504473f Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv3/17.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv3/18.png b/AutoPocket_ex1/bin/pocketImgLv3/18.png new file mode 100644 index 0000000..3524e72 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv3/18.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv3/19.png b/AutoPocket_ex1/bin/pocketImgLv3/19.png new file mode 100644 index 0000000..71ba6f0 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv3/19.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv3/2.png b/AutoPocket_ex1/bin/pocketImgLv3/2.png new file mode 100644 index 0000000..05c0fcc Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv3/2.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv3/20.png b/AutoPocket_ex1/bin/pocketImgLv3/20.png new file mode 100644 index 0000000..3ca5f8d Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv3/20.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv3/21.png b/AutoPocket_ex1/bin/pocketImgLv3/21.png new file mode 100644 index 0000000..37cedb7 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv3/21.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv3/22.png b/AutoPocket_ex1/bin/pocketImgLv3/22.png new file mode 100644 index 0000000..9013d19 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv3/22.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv3/23.png b/AutoPocket_ex1/bin/pocketImgLv3/23.png new file mode 100644 index 0000000..7274386 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv3/23.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv3/24.png b/AutoPocket_ex1/bin/pocketImgLv3/24.png new file mode 100644 index 0000000..41a9b5a Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv3/24.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv3/25.png b/AutoPocket_ex1/bin/pocketImgLv3/25.png new file mode 100644 index 0000000..cf839ce Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv3/25.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv3/26.png b/AutoPocket_ex1/bin/pocketImgLv3/26.png new file mode 100644 index 0000000..02a26ef Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv3/26.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv3/27.png b/AutoPocket_ex1/bin/pocketImgLv3/27.png new file mode 100644 index 0000000..9070557 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv3/27.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv3/28.png b/AutoPocket_ex1/bin/pocketImgLv3/28.png new file mode 100644 index 0000000..d028162 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv3/28.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv3/29.png b/AutoPocket_ex1/bin/pocketImgLv3/29.png new file mode 100644 index 0000000..d6ff37e Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv3/29.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv3/3.png b/AutoPocket_ex1/bin/pocketImgLv3/3.png new file mode 100644 index 0000000..2fa807b Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv3/3.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv3/30.png b/AutoPocket_ex1/bin/pocketImgLv3/30.png new file mode 100644 index 0000000..a3efd6b Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv3/30.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv3/31.png b/AutoPocket_ex1/bin/pocketImgLv3/31.png new file mode 100644 index 0000000..2459dc9 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv3/31.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv3/32.png b/AutoPocket_ex1/bin/pocketImgLv3/32.png new file mode 100644 index 0000000..c22ee15 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv3/32.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv3/33.png b/AutoPocket_ex1/bin/pocketImgLv3/33.png new file mode 100644 index 0000000..7f07240 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv3/33.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv3/34.png b/AutoPocket_ex1/bin/pocketImgLv3/34.png new file mode 100644 index 0000000..e7847cc Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv3/34.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv3/35.png b/AutoPocket_ex1/bin/pocketImgLv3/35.png new file mode 100644 index 0000000..ac533fe Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv3/35.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv3/36.png b/AutoPocket_ex1/bin/pocketImgLv3/36.png new file mode 100644 index 0000000..f899158 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv3/36.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv3/37.png b/AutoPocket_ex1/bin/pocketImgLv3/37.png new file mode 100644 index 0000000..95d8cc0 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv3/37.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv3/38.png b/AutoPocket_ex1/bin/pocketImgLv3/38.png new file mode 100644 index 0000000..8305d9c Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv3/38.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv3/39.png b/AutoPocket_ex1/bin/pocketImgLv3/39.png new file mode 100644 index 0000000..fd9a98c Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv3/39.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv3/4.png b/AutoPocket_ex1/bin/pocketImgLv3/4.png new file mode 100644 index 0000000..e8df22d Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv3/4.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv3/40.png b/AutoPocket_ex1/bin/pocketImgLv3/40.png new file mode 100644 index 0000000..ce56641 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv3/40.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv3/41.png b/AutoPocket_ex1/bin/pocketImgLv3/41.png new file mode 100644 index 0000000..ebae548 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv3/41.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv3/42.png b/AutoPocket_ex1/bin/pocketImgLv3/42.png new file mode 100644 index 0000000..97c90e1 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv3/42.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv3/43.png b/AutoPocket_ex1/bin/pocketImgLv3/43.png new file mode 100644 index 0000000..6d690e1 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv3/43.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv3/44.png b/AutoPocket_ex1/bin/pocketImgLv3/44.png new file mode 100644 index 0000000..eb04636 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv3/44.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv3/45.png b/AutoPocket_ex1/bin/pocketImgLv3/45.png new file mode 100644 index 0000000..f1e2f07 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv3/45.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv3/46.png b/AutoPocket_ex1/bin/pocketImgLv3/46.png new file mode 100644 index 0000000..729ec34 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv3/46.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv3/47.png b/AutoPocket_ex1/bin/pocketImgLv3/47.png new file mode 100644 index 0000000..37505d6 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv3/47.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv3/48.png b/AutoPocket_ex1/bin/pocketImgLv3/48.png new file mode 100644 index 0000000..f6a152e Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv3/48.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv3/49.png b/AutoPocket_ex1/bin/pocketImgLv3/49.png new file mode 100644 index 0000000..79e09d9 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv3/49.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv3/5.png b/AutoPocket_ex1/bin/pocketImgLv3/5.png new file mode 100644 index 0000000..cdb5356 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv3/5.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv3/50.png b/AutoPocket_ex1/bin/pocketImgLv3/50.png new file mode 100644 index 0000000..1aed5f6 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv3/50.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv3/51.png b/AutoPocket_ex1/bin/pocketImgLv3/51.png new file mode 100644 index 0000000..b2aa3ae Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv3/51.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv3/52.png b/AutoPocket_ex1/bin/pocketImgLv3/52.png new file mode 100644 index 0000000..2068320 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv3/52.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv3/53.png b/AutoPocket_ex1/bin/pocketImgLv3/53.png new file mode 100644 index 0000000..73a7701 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv3/53.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv3/54.png b/AutoPocket_ex1/bin/pocketImgLv3/54.png new file mode 100644 index 0000000..3980cac Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv3/54.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv3/55.png b/AutoPocket_ex1/bin/pocketImgLv3/55.png new file mode 100644 index 0000000..cc15571 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv3/55.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv3/56.png b/AutoPocket_ex1/bin/pocketImgLv3/56.png new file mode 100644 index 0000000..63f01a6 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv3/56.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv3/57.png b/AutoPocket_ex1/bin/pocketImgLv3/57.png new file mode 100644 index 0000000..b5cfb49 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv3/57.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv3/58.png b/AutoPocket_ex1/bin/pocketImgLv3/58.png new file mode 100644 index 0000000..6bd31e9 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv3/58.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv3/59.png b/AutoPocket_ex1/bin/pocketImgLv3/59.png new file mode 100644 index 0000000..d69aa35 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv3/59.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv3/6.png b/AutoPocket_ex1/bin/pocketImgLv3/6.png new file mode 100644 index 0000000..ee62670 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv3/6.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv3/60.png b/AutoPocket_ex1/bin/pocketImgLv3/60.png new file mode 100644 index 0000000..8ea4c93 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv3/60.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv3/7.png b/AutoPocket_ex1/bin/pocketImgLv3/7.png new file mode 100644 index 0000000..7c47f59 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv3/7.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv3/8.png b/AutoPocket_ex1/bin/pocketImgLv3/8.png new file mode 100644 index 0000000..6af4b32 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv3/8.png differ diff --git a/AutoPocket_ex1/bin/pocketImgLv3/9.png b/AutoPocket_ex1/bin/pocketImgLv3/9.png new file mode 100644 index 0000000..3f57d08 Binary files /dev/null and b/AutoPocket_ex1/bin/pocketImgLv3/9.png differ diff --git a/AutoPocket_ex1/jgoodies-forms-1.8.0-sources.jar b/AutoPocket_ex1/jgoodies-forms-1.8.0-sources.jar new file mode 100644 index 0000000..79164c3 Binary files /dev/null and b/AutoPocket_ex1/jgoodies-forms-1.8.0-sources.jar differ diff --git a/AutoPocket_ex1/jgoodies-forms-1.8.0.jar b/AutoPocket_ex1/jgoodies-forms-1.8.0.jar new file mode 100644 index 0000000..532282b Binary files /dev/null and b/AutoPocket_ex1/jgoodies-forms-1.8.0.jar differ diff --git a/AutoPocket_ex1/miglayout-src.zip b/AutoPocket_ex1/miglayout-src.zip new file mode 100644 index 0000000..9c51c32 Binary files /dev/null and b/AutoPocket_ex1/miglayout-src.zip differ diff --git a/AutoPocket_ex1/miglayout15-swing.jar b/AutoPocket_ex1/miglayout15-swing.jar new file mode 100644 index 0000000..e82aba8 Binary files /dev/null and b/AutoPocket_ex1/miglayout15-swing.jar differ diff --git a/AutoPocket_ex1/src/Image/Effectbar.png b/AutoPocket_ex1/src/Image/Effectbar.png new file mode 100644 index 0000000..3ed9586 Binary files /dev/null and b/AutoPocket_ex1/src/Image/Effectbar.png differ diff --git a/AutoPocket_ex1/src/Image/Help.png b/AutoPocket_ex1/src/Image/Help.png new file mode 100644 index 0000000..93d1035 Binary files /dev/null and b/AutoPocket_ex1/src/Image/Help.png differ diff --git a/AutoPocket_ex1/src/Image/ID.png b/AutoPocket_ex1/src/Image/ID.png new file mode 100644 index 0000000..8345a16 Binary files /dev/null and b/AutoPocket_ex1/src/Image/ID.png differ diff --git a/AutoPocket_ex1/src/Image/Pocketmon2.png b/AutoPocket_ex1/src/Image/Pocketmon2.png new file mode 100644 index 0000000..e1906da Binary files /dev/null and b/AutoPocket_ex1/src/Image/Pocketmon2.png differ diff --git a/AutoPocket_ex1/src/Image/Sound.png b/AutoPocket_ex1/src/Image/Sound.png new file mode 100644 index 0000000..cf255af Binary files /dev/null and b/AutoPocket_ex1/src/Image/Sound.png differ diff --git a/AutoPocket_ex1/src/Image/Soundbar.png b/AutoPocket_ex1/src/Image/Soundbar.png new file mode 100644 index 0000000..121eddf Binary files /dev/null and b/AutoPocket_ex1/src/Image/Soundbar.png differ diff --git a/AutoPocket_ex1/src/Image/Title2.png b/AutoPocket_ex1/src/Image/Title2.png new file mode 100644 index 0000000..9cab6e4 Binary files /dev/null and b/AutoPocket_ex1/src/Image/Title2.png differ diff --git a/AutoPocket_ex1/src/Image/ball.png b/AutoPocket_ex1/src/Image/ball.png new file mode 100644 index 0000000..23627bb Binary files /dev/null and b/AutoPocket_ex1/src/Image/ball.png differ diff --git a/AutoPocket_ex1/src/Image/cancle.png b/AutoPocket_ex1/src/Image/cancle.png new file mode 100644 index 0000000..55207d6 Binary files /dev/null and b/AutoPocket_ex1/src/Image/cancle.png differ diff --git a/AutoPocket_ex1/src/Image/confirm.png b/AutoPocket_ex1/src/Image/confirm.png new file mode 100644 index 0000000..6853faf Binary files /dev/null and b/AutoPocket_ex1/src/Image/confirm.png differ diff --git a/AutoPocket_ex1/src/Image/delete.png b/AutoPocket_ex1/src/Image/delete.png new file mode 100644 index 0000000..8bef9d3 Binary files /dev/null and b/AutoPocket_ex1/src/Image/delete.png differ diff --git a/AutoPocket_ex1/src/Image/exit.png b/AutoPocket_ex1/src/Image/exit.png new file mode 100644 index 0000000..b217035 Binary files /dev/null and b/AutoPocket_ex1/src/Image/exit.png differ diff --git a/AutoPocket_ex1/src/Image/exit3.png b/AutoPocket_ex1/src/Image/exit3.png new file mode 100644 index 0000000..9a935a5 Binary files /dev/null and b/AutoPocket_ex1/src/Image/exit3.png differ diff --git a/AutoPocket_ex1/src/Image/login_background.png b/AutoPocket_ex1/src/Image/login_background.png new file mode 100644 index 0000000..c50b00b Binary files /dev/null and b/AutoPocket_ex1/src/Image/login_background.png differ diff --git a/AutoPocket_ex1/src/Image/logout.png b/AutoPocket_ex1/src/Image/logout.png new file mode 100644 index 0000000..0c00024 Binary files /dev/null and b/AutoPocket_ex1/src/Image/logout.png differ diff --git a/AutoPocket_ex1/src/Image/main2.png b/AutoPocket_ex1/src/Image/main2.png new file mode 100644 index 0000000..7723080 Binary files /dev/null and b/AutoPocket_ex1/src/Image/main2.png differ diff --git a/AutoPocket_ex1/src/Image/nextBtn.png b/AutoPocket_ex1/src/Image/nextBtn.png new file mode 100644 index 0000000..2b5d1c2 Binary files /dev/null and b/AutoPocket_ex1/src/Image/nextBtn.png differ diff --git a/AutoPocket_ex1/src/Image/option.png b/AutoPocket_ex1/src/Image/option.png new file mode 100644 index 0000000..ee7224d Binary files /dev/null and b/AutoPocket_ex1/src/Image/option.png differ diff --git a/AutoPocket_ex1/src/Image/play.png b/AutoPocket_ex1/src/Image/play.png new file mode 100644 index 0000000..3d28a59 Binary files /dev/null and b/AutoPocket_ex1/src/Image/play.png differ diff --git a/AutoPocket_ex1/src/Image/pocketmonlist.png b/AutoPocket_ex1/src/Image/pocketmonlist.png new file mode 100644 index 0000000..da7a25f Binary files /dev/null and b/AutoPocket_ex1/src/Image/pocketmonlist.png differ diff --git a/AutoPocket_ex1/src/Image/previous.png b/AutoPocket_ex1/src/Image/previous.png new file mode 100644 index 0000000..5e42943 Binary files /dev/null and b/AutoPocket_ex1/src/Image/previous.png differ diff --git a/AutoPocket_ex1/src/Image/record.png b/AutoPocket_ex1/src/Image/record.png new file mode 100644 index 0000000..cf12aa4 Binary files /dev/null and b/AutoPocket_ex1/src/Image/record.png differ diff --git a/AutoPocket_ex1/src/Image/record_test3.png b/AutoPocket_ex1/src/Image/record_test3.png new file mode 100644 index 0000000..7d973e2 Binary files /dev/null and b/AutoPocket_ex1/src/Image/record_test3.png differ diff --git a/AutoPocket_ex1/src/Image/register.png b/AutoPocket_ex1/src/Image/register.png new file mode 100644 index 0000000..3321659 Binary files /dev/null and b/AutoPocket_ex1/src/Image/register.png differ diff --git a/AutoPocket_ex1/src/Image/signimg2.png b/AutoPocket_ex1/src/Image/signimg2.png new file mode 100644 index 0000000..f398236 Binary files /dev/null and b/AutoPocket_ex1/src/Image/signimg2.png differ diff --git a/AutoPocket_ex1/src/Image/signup.png b/AutoPocket_ex1/src/Image/signup.png new file mode 100644 index 0000000..8160c7d Binary files /dev/null and b/AutoPocket_ex1/src/Image/signup.png differ diff --git a/AutoPocket_ex1/src/Image/start.png b/AutoPocket_ex1/src/Image/start.png new file mode 100644 index 0000000..a76a707 Binary files /dev/null and b/AutoPocket_ex1/src/Image/start.png differ diff --git a/AutoPocket_ex1/src/Images/1.png b/AutoPocket_ex1/src/Images/1.png new file mode 100644 index 0000000..70beb2a Binary files /dev/null and b/AutoPocket_ex1/src/Images/1.png differ diff --git a/AutoPocket_ex1/src/Images/10.png b/AutoPocket_ex1/src/Images/10.png new file mode 100644 index 0000000..468df9e Binary files /dev/null and b/AutoPocket_ex1/src/Images/10.png differ diff --git a/AutoPocket_ex1/src/Images/11.png b/AutoPocket_ex1/src/Images/11.png new file mode 100644 index 0000000..d622a6d Binary files /dev/null and b/AutoPocket_ex1/src/Images/11.png differ diff --git a/AutoPocket_ex1/src/Images/12.png b/AutoPocket_ex1/src/Images/12.png new file mode 100644 index 0000000..51991e6 Binary files /dev/null and b/AutoPocket_ex1/src/Images/12.png differ diff --git a/AutoPocket_ex1/src/Images/13.png b/AutoPocket_ex1/src/Images/13.png new file mode 100644 index 0000000..55bae78 Binary files /dev/null and b/AutoPocket_ex1/src/Images/13.png differ diff --git a/AutoPocket_ex1/src/Images/14.png b/AutoPocket_ex1/src/Images/14.png new file mode 100644 index 0000000..4d34181 Binary files /dev/null and b/AutoPocket_ex1/src/Images/14.png differ diff --git a/AutoPocket_ex1/src/Images/15.png b/AutoPocket_ex1/src/Images/15.png new file mode 100644 index 0000000..de1c624 Binary files /dev/null and b/AutoPocket_ex1/src/Images/15.png differ diff --git a/AutoPocket_ex1/src/Images/16.png b/AutoPocket_ex1/src/Images/16.png new file mode 100644 index 0000000..35848cf Binary files /dev/null and b/AutoPocket_ex1/src/Images/16.png differ diff --git a/AutoPocket_ex1/src/Images/17.png b/AutoPocket_ex1/src/Images/17.png new file mode 100644 index 0000000..e8c294e Binary files /dev/null and b/AutoPocket_ex1/src/Images/17.png differ diff --git a/AutoPocket_ex1/src/Images/18.png b/AutoPocket_ex1/src/Images/18.png new file mode 100644 index 0000000..008ce5b Binary files /dev/null and b/AutoPocket_ex1/src/Images/18.png differ diff --git a/AutoPocket_ex1/src/Images/19.png b/AutoPocket_ex1/src/Images/19.png new file mode 100644 index 0000000..fc74ca2 Binary files /dev/null and b/AutoPocket_ex1/src/Images/19.png differ diff --git a/AutoPocket_ex1/src/Images/2.png b/AutoPocket_ex1/src/Images/2.png new file mode 100644 index 0000000..413a569 Binary files /dev/null and b/AutoPocket_ex1/src/Images/2.png differ diff --git a/AutoPocket_ex1/src/Images/20.png b/AutoPocket_ex1/src/Images/20.png new file mode 100644 index 0000000..451ab59 Binary files /dev/null and b/AutoPocket_ex1/src/Images/20.png differ diff --git a/AutoPocket_ex1/src/Images/21.png b/AutoPocket_ex1/src/Images/21.png new file mode 100644 index 0000000..7b510c7 Binary files /dev/null and b/AutoPocket_ex1/src/Images/21.png differ diff --git a/AutoPocket_ex1/src/Images/22.png b/AutoPocket_ex1/src/Images/22.png new file mode 100644 index 0000000..c0287c5 Binary files /dev/null and b/AutoPocket_ex1/src/Images/22.png differ diff --git a/AutoPocket_ex1/src/Images/23.png b/AutoPocket_ex1/src/Images/23.png new file mode 100644 index 0000000..b81397f Binary files /dev/null and b/AutoPocket_ex1/src/Images/23.png differ diff --git a/AutoPocket_ex1/src/Images/24.png b/AutoPocket_ex1/src/Images/24.png new file mode 100644 index 0000000..e835b24 Binary files /dev/null and b/AutoPocket_ex1/src/Images/24.png differ diff --git a/AutoPocket_ex1/src/Images/25.png b/AutoPocket_ex1/src/Images/25.png new file mode 100644 index 0000000..0427f5c Binary files /dev/null and b/AutoPocket_ex1/src/Images/25.png differ diff --git a/AutoPocket_ex1/src/Images/26.png b/AutoPocket_ex1/src/Images/26.png new file mode 100644 index 0000000..ca7def2 Binary files /dev/null and b/AutoPocket_ex1/src/Images/26.png differ diff --git a/AutoPocket_ex1/src/Images/27.png b/AutoPocket_ex1/src/Images/27.png new file mode 100644 index 0000000..d083efe Binary files /dev/null and b/AutoPocket_ex1/src/Images/27.png differ diff --git a/AutoPocket_ex1/src/Images/28.png b/AutoPocket_ex1/src/Images/28.png new file mode 100644 index 0000000..f437252 Binary files /dev/null and b/AutoPocket_ex1/src/Images/28.png differ diff --git a/AutoPocket_ex1/src/Images/29.png b/AutoPocket_ex1/src/Images/29.png new file mode 100644 index 0000000..bb9304b Binary files /dev/null and b/AutoPocket_ex1/src/Images/29.png differ diff --git a/AutoPocket_ex1/src/Images/2_1.png b/AutoPocket_ex1/src/Images/2_1.png new file mode 100644 index 0000000..3cb09c1 Binary files /dev/null and b/AutoPocket_ex1/src/Images/2_1.png differ diff --git a/AutoPocket_ex1/src/Images/2_10.png b/AutoPocket_ex1/src/Images/2_10.png new file mode 100644 index 0000000..9c8fb98 Binary files /dev/null and b/AutoPocket_ex1/src/Images/2_10.png differ diff --git a/AutoPocket_ex1/src/Images/2_11.png b/AutoPocket_ex1/src/Images/2_11.png new file mode 100644 index 0000000..56b988c Binary files /dev/null and b/AutoPocket_ex1/src/Images/2_11.png differ diff --git a/AutoPocket_ex1/src/Images/2_12.png b/AutoPocket_ex1/src/Images/2_12.png new file mode 100644 index 0000000..4aa059b Binary files /dev/null and b/AutoPocket_ex1/src/Images/2_12.png differ diff --git a/AutoPocket_ex1/src/Images/2_13.png b/AutoPocket_ex1/src/Images/2_13.png new file mode 100644 index 0000000..9f9f119 Binary files /dev/null and b/AutoPocket_ex1/src/Images/2_13.png differ diff --git a/AutoPocket_ex1/src/Images/2_14.png b/AutoPocket_ex1/src/Images/2_14.png new file mode 100644 index 0000000..4892dff Binary files /dev/null and b/AutoPocket_ex1/src/Images/2_14.png differ diff --git a/AutoPocket_ex1/src/Images/2_15.png b/AutoPocket_ex1/src/Images/2_15.png new file mode 100644 index 0000000..76fb7ad Binary files /dev/null and b/AutoPocket_ex1/src/Images/2_15.png differ diff --git a/AutoPocket_ex1/src/Images/2_16.png b/AutoPocket_ex1/src/Images/2_16.png new file mode 100644 index 0000000..0a2aaab Binary files /dev/null and b/AutoPocket_ex1/src/Images/2_16.png differ diff --git a/AutoPocket_ex1/src/Images/2_17.png b/AutoPocket_ex1/src/Images/2_17.png new file mode 100644 index 0000000..0bf89fb Binary files /dev/null and b/AutoPocket_ex1/src/Images/2_17.png differ diff --git a/AutoPocket_ex1/src/Images/2_18.png b/AutoPocket_ex1/src/Images/2_18.png new file mode 100644 index 0000000..aa3fc20 Binary files /dev/null and b/AutoPocket_ex1/src/Images/2_18.png differ diff --git a/AutoPocket_ex1/src/Images/2_19.png b/AutoPocket_ex1/src/Images/2_19.png new file mode 100644 index 0000000..a32db55 Binary files /dev/null and b/AutoPocket_ex1/src/Images/2_19.png differ diff --git a/AutoPocket_ex1/src/Images/2_2.png b/AutoPocket_ex1/src/Images/2_2.png new file mode 100644 index 0000000..ddc2ed0 Binary files /dev/null and b/AutoPocket_ex1/src/Images/2_2.png differ diff --git a/AutoPocket_ex1/src/Images/2_20.png b/AutoPocket_ex1/src/Images/2_20.png new file mode 100644 index 0000000..40abc4c Binary files /dev/null and b/AutoPocket_ex1/src/Images/2_20.png differ diff --git a/AutoPocket_ex1/src/Images/2_21.png b/AutoPocket_ex1/src/Images/2_21.png new file mode 100644 index 0000000..171c48b Binary files /dev/null and b/AutoPocket_ex1/src/Images/2_21.png differ diff --git a/AutoPocket_ex1/src/Images/2_22.png b/AutoPocket_ex1/src/Images/2_22.png new file mode 100644 index 0000000..a90a967 Binary files /dev/null and b/AutoPocket_ex1/src/Images/2_22.png differ diff --git a/AutoPocket_ex1/src/Images/2_23.png b/AutoPocket_ex1/src/Images/2_23.png new file mode 100644 index 0000000..c3ac249 Binary files /dev/null and b/AutoPocket_ex1/src/Images/2_23.png differ diff --git a/AutoPocket_ex1/src/Images/2_24.png b/AutoPocket_ex1/src/Images/2_24.png new file mode 100644 index 0000000..58792cf Binary files /dev/null and b/AutoPocket_ex1/src/Images/2_24.png differ diff --git a/AutoPocket_ex1/src/Images/2_25.png b/AutoPocket_ex1/src/Images/2_25.png new file mode 100644 index 0000000..5bf244a Binary files /dev/null and b/AutoPocket_ex1/src/Images/2_25.png differ diff --git a/AutoPocket_ex1/src/Images/2_26.png b/AutoPocket_ex1/src/Images/2_26.png new file mode 100644 index 0000000..a1a2faa Binary files /dev/null and b/AutoPocket_ex1/src/Images/2_26.png differ diff --git a/AutoPocket_ex1/src/Images/2_27.png b/AutoPocket_ex1/src/Images/2_27.png new file mode 100644 index 0000000..3a7fb5c Binary files /dev/null and b/AutoPocket_ex1/src/Images/2_27.png differ diff --git a/AutoPocket_ex1/src/Images/2_28.png b/AutoPocket_ex1/src/Images/2_28.png new file mode 100644 index 0000000..1e337ed Binary files /dev/null and b/AutoPocket_ex1/src/Images/2_28.png differ diff --git a/AutoPocket_ex1/src/Images/2_29.png b/AutoPocket_ex1/src/Images/2_29.png new file mode 100644 index 0000000..7a66ee2 Binary files /dev/null and b/AutoPocket_ex1/src/Images/2_29.png differ diff --git a/AutoPocket_ex1/src/Images/2_3.png b/AutoPocket_ex1/src/Images/2_3.png new file mode 100644 index 0000000..172e802 Binary files /dev/null and b/AutoPocket_ex1/src/Images/2_3.png differ diff --git a/AutoPocket_ex1/src/Images/2_30.png b/AutoPocket_ex1/src/Images/2_30.png new file mode 100644 index 0000000..cec3623 Binary files /dev/null and b/AutoPocket_ex1/src/Images/2_30.png differ diff --git a/AutoPocket_ex1/src/Images/2_31.png b/AutoPocket_ex1/src/Images/2_31.png new file mode 100644 index 0000000..0f6c5ff Binary files /dev/null and b/AutoPocket_ex1/src/Images/2_31.png differ diff --git a/AutoPocket_ex1/src/Images/2_32.png b/AutoPocket_ex1/src/Images/2_32.png new file mode 100644 index 0000000..8c9ae4a Binary files /dev/null and b/AutoPocket_ex1/src/Images/2_32.png differ diff --git a/AutoPocket_ex1/src/Images/2_33.png b/AutoPocket_ex1/src/Images/2_33.png new file mode 100644 index 0000000..f8a9393 Binary files /dev/null and b/AutoPocket_ex1/src/Images/2_33.png differ diff --git a/AutoPocket_ex1/src/Images/2_34.png b/AutoPocket_ex1/src/Images/2_34.png new file mode 100644 index 0000000..ed1b9a1 Binary files /dev/null and b/AutoPocket_ex1/src/Images/2_34.png differ diff --git a/AutoPocket_ex1/src/Images/2_35.png b/AutoPocket_ex1/src/Images/2_35.png new file mode 100644 index 0000000..1bb1aa3 Binary files /dev/null and b/AutoPocket_ex1/src/Images/2_35.png differ diff --git a/AutoPocket_ex1/src/Images/2_36.png b/AutoPocket_ex1/src/Images/2_36.png new file mode 100644 index 0000000..371e064 Binary files /dev/null and b/AutoPocket_ex1/src/Images/2_36.png differ diff --git a/AutoPocket_ex1/src/Images/2_37.png b/AutoPocket_ex1/src/Images/2_37.png new file mode 100644 index 0000000..63a26f9 Binary files /dev/null and b/AutoPocket_ex1/src/Images/2_37.png differ diff --git a/AutoPocket_ex1/src/Images/2_38.png b/AutoPocket_ex1/src/Images/2_38.png new file mode 100644 index 0000000..e6638f0 Binary files /dev/null and b/AutoPocket_ex1/src/Images/2_38.png differ diff --git a/AutoPocket_ex1/src/Images/2_39.png b/AutoPocket_ex1/src/Images/2_39.png new file mode 100644 index 0000000..ddc78e8 Binary files /dev/null and b/AutoPocket_ex1/src/Images/2_39.png differ diff --git a/AutoPocket_ex1/src/Images/2_4.png b/AutoPocket_ex1/src/Images/2_4.png new file mode 100644 index 0000000..14e0731 Binary files /dev/null and b/AutoPocket_ex1/src/Images/2_4.png differ diff --git a/AutoPocket_ex1/src/Images/2_40.png b/AutoPocket_ex1/src/Images/2_40.png new file mode 100644 index 0000000..591f08e Binary files /dev/null and b/AutoPocket_ex1/src/Images/2_40.png differ diff --git a/AutoPocket_ex1/src/Images/2_41.png b/AutoPocket_ex1/src/Images/2_41.png new file mode 100644 index 0000000..9b46c77 Binary files /dev/null and b/AutoPocket_ex1/src/Images/2_41.png differ diff --git a/AutoPocket_ex1/src/Images/2_42.png b/AutoPocket_ex1/src/Images/2_42.png new file mode 100644 index 0000000..13a4b74 Binary files /dev/null and b/AutoPocket_ex1/src/Images/2_42.png differ diff --git a/AutoPocket_ex1/src/Images/2_43.png b/AutoPocket_ex1/src/Images/2_43.png new file mode 100644 index 0000000..869655d Binary files /dev/null and b/AutoPocket_ex1/src/Images/2_43.png differ diff --git a/AutoPocket_ex1/src/Images/2_44.png b/AutoPocket_ex1/src/Images/2_44.png new file mode 100644 index 0000000..964d59a Binary files /dev/null and b/AutoPocket_ex1/src/Images/2_44.png differ diff --git a/AutoPocket_ex1/src/Images/2_45.png b/AutoPocket_ex1/src/Images/2_45.png new file mode 100644 index 0000000..5f7478b Binary files /dev/null and b/AutoPocket_ex1/src/Images/2_45.png differ diff --git a/AutoPocket_ex1/src/Images/2_46.png b/AutoPocket_ex1/src/Images/2_46.png new file mode 100644 index 0000000..41aebfd Binary files /dev/null and b/AutoPocket_ex1/src/Images/2_46.png differ diff --git a/AutoPocket_ex1/src/Images/2_47.png b/AutoPocket_ex1/src/Images/2_47.png new file mode 100644 index 0000000..c657797 Binary files /dev/null and b/AutoPocket_ex1/src/Images/2_47.png differ diff --git a/AutoPocket_ex1/src/Images/2_48.png b/AutoPocket_ex1/src/Images/2_48.png new file mode 100644 index 0000000..0d20c46 Binary files /dev/null and b/AutoPocket_ex1/src/Images/2_48.png differ diff --git a/AutoPocket_ex1/src/Images/2_49.png b/AutoPocket_ex1/src/Images/2_49.png new file mode 100644 index 0000000..00d912e Binary files /dev/null and b/AutoPocket_ex1/src/Images/2_49.png differ diff --git a/AutoPocket_ex1/src/Images/2_5.png b/AutoPocket_ex1/src/Images/2_5.png new file mode 100644 index 0000000..45a0178 Binary files /dev/null and b/AutoPocket_ex1/src/Images/2_5.png differ diff --git a/AutoPocket_ex1/src/Images/2_50.png b/AutoPocket_ex1/src/Images/2_50.png new file mode 100644 index 0000000..e51658c Binary files /dev/null and b/AutoPocket_ex1/src/Images/2_50.png differ diff --git a/AutoPocket_ex1/src/Images/2_51.png b/AutoPocket_ex1/src/Images/2_51.png new file mode 100644 index 0000000..5481731 Binary files /dev/null and b/AutoPocket_ex1/src/Images/2_51.png differ diff --git a/AutoPocket_ex1/src/Images/2_52.png b/AutoPocket_ex1/src/Images/2_52.png new file mode 100644 index 0000000..e4792a9 Binary files /dev/null and b/AutoPocket_ex1/src/Images/2_52.png differ diff --git a/AutoPocket_ex1/src/Images/2_53.png b/AutoPocket_ex1/src/Images/2_53.png new file mode 100644 index 0000000..8e1ee42 Binary files /dev/null and b/AutoPocket_ex1/src/Images/2_53.png differ diff --git a/AutoPocket_ex1/src/Images/2_54.png b/AutoPocket_ex1/src/Images/2_54.png new file mode 100644 index 0000000..a4109e1 Binary files /dev/null and b/AutoPocket_ex1/src/Images/2_54.png differ diff --git a/AutoPocket_ex1/src/Images/2_55.png b/AutoPocket_ex1/src/Images/2_55.png new file mode 100644 index 0000000..2a01bd0 Binary files /dev/null and b/AutoPocket_ex1/src/Images/2_55.png differ diff --git a/AutoPocket_ex1/src/Images/2_56.png b/AutoPocket_ex1/src/Images/2_56.png new file mode 100644 index 0000000..1a7fcaf Binary files /dev/null and b/AutoPocket_ex1/src/Images/2_56.png differ diff --git a/AutoPocket_ex1/src/Images/2_57.png b/AutoPocket_ex1/src/Images/2_57.png new file mode 100644 index 0000000..dff7a75 Binary files /dev/null and b/AutoPocket_ex1/src/Images/2_57.png differ diff --git a/AutoPocket_ex1/src/Images/2_58.png b/AutoPocket_ex1/src/Images/2_58.png new file mode 100644 index 0000000..517a3c2 Binary files /dev/null and b/AutoPocket_ex1/src/Images/2_58.png differ diff --git a/AutoPocket_ex1/src/Images/2_59.png b/AutoPocket_ex1/src/Images/2_59.png new file mode 100644 index 0000000..50612a3 Binary files /dev/null and b/AutoPocket_ex1/src/Images/2_59.png differ diff --git a/AutoPocket_ex1/src/Images/2_6.png b/AutoPocket_ex1/src/Images/2_6.png new file mode 100644 index 0000000..a9820ce Binary files /dev/null and b/AutoPocket_ex1/src/Images/2_6.png differ diff --git a/AutoPocket_ex1/src/Images/2_60.png b/AutoPocket_ex1/src/Images/2_60.png new file mode 100644 index 0000000..fbf3a65 Binary files /dev/null and b/AutoPocket_ex1/src/Images/2_60.png differ diff --git a/AutoPocket_ex1/src/Images/2_7.png b/AutoPocket_ex1/src/Images/2_7.png new file mode 100644 index 0000000..4188909 Binary files /dev/null and b/AutoPocket_ex1/src/Images/2_7.png differ diff --git a/AutoPocket_ex1/src/Images/2_8.png b/AutoPocket_ex1/src/Images/2_8.png new file mode 100644 index 0000000..c3c3152 Binary files /dev/null and b/AutoPocket_ex1/src/Images/2_8.png differ diff --git a/AutoPocket_ex1/src/Images/2_9.png b/AutoPocket_ex1/src/Images/2_9.png new file mode 100644 index 0000000..f383ce0 Binary files /dev/null and b/AutoPocket_ex1/src/Images/2_9.png differ diff --git a/AutoPocket_ex1/src/Images/3.png b/AutoPocket_ex1/src/Images/3.png new file mode 100644 index 0000000..eb241ad Binary files /dev/null and b/AutoPocket_ex1/src/Images/3.png differ diff --git a/AutoPocket_ex1/src/Images/30.png b/AutoPocket_ex1/src/Images/30.png new file mode 100644 index 0000000..57276f5 Binary files /dev/null and b/AutoPocket_ex1/src/Images/30.png differ diff --git a/AutoPocket_ex1/src/Images/31.png b/AutoPocket_ex1/src/Images/31.png new file mode 100644 index 0000000..dbc36b0 Binary files /dev/null and b/AutoPocket_ex1/src/Images/31.png differ diff --git a/AutoPocket_ex1/src/Images/32.png b/AutoPocket_ex1/src/Images/32.png new file mode 100644 index 0000000..2694885 Binary files /dev/null and b/AutoPocket_ex1/src/Images/32.png differ diff --git a/AutoPocket_ex1/src/Images/33.png b/AutoPocket_ex1/src/Images/33.png new file mode 100644 index 0000000..21dc575 Binary files /dev/null and b/AutoPocket_ex1/src/Images/33.png differ diff --git a/AutoPocket_ex1/src/Images/34.png b/AutoPocket_ex1/src/Images/34.png new file mode 100644 index 0000000..676c668 Binary files /dev/null and b/AutoPocket_ex1/src/Images/34.png differ diff --git a/AutoPocket_ex1/src/Images/35.png b/AutoPocket_ex1/src/Images/35.png new file mode 100644 index 0000000..f48566a Binary files /dev/null and b/AutoPocket_ex1/src/Images/35.png differ diff --git a/AutoPocket_ex1/src/Images/36.png b/AutoPocket_ex1/src/Images/36.png new file mode 100644 index 0000000..fbd07c1 Binary files /dev/null and b/AutoPocket_ex1/src/Images/36.png differ diff --git a/AutoPocket_ex1/src/Images/37.png b/AutoPocket_ex1/src/Images/37.png new file mode 100644 index 0000000..7d9bca1 Binary files /dev/null and b/AutoPocket_ex1/src/Images/37.png differ diff --git a/AutoPocket_ex1/src/Images/38.png b/AutoPocket_ex1/src/Images/38.png new file mode 100644 index 0000000..ff0f094 Binary files /dev/null and b/AutoPocket_ex1/src/Images/38.png differ diff --git a/AutoPocket_ex1/src/Images/39.png b/AutoPocket_ex1/src/Images/39.png new file mode 100644 index 0000000..a8e53bd Binary files /dev/null and b/AutoPocket_ex1/src/Images/39.png differ diff --git a/AutoPocket_ex1/src/Images/3_1.png b/AutoPocket_ex1/src/Images/3_1.png new file mode 100644 index 0000000..f7ec12e Binary files /dev/null and b/AutoPocket_ex1/src/Images/3_1.png differ diff --git a/AutoPocket_ex1/src/Images/3_10.png b/AutoPocket_ex1/src/Images/3_10.png new file mode 100644 index 0000000..9c8fb98 Binary files /dev/null and b/AutoPocket_ex1/src/Images/3_10.png differ diff --git a/AutoPocket_ex1/src/Images/3_11.png b/AutoPocket_ex1/src/Images/3_11.png new file mode 100644 index 0000000..926ffe6 Binary files /dev/null and b/AutoPocket_ex1/src/Images/3_11.png differ diff --git a/AutoPocket_ex1/src/Images/3_12.png b/AutoPocket_ex1/src/Images/3_12.png new file mode 100644 index 0000000..5d3970e Binary files /dev/null and b/AutoPocket_ex1/src/Images/3_12.png differ diff --git a/AutoPocket_ex1/src/Images/3_13.png b/AutoPocket_ex1/src/Images/3_13.png new file mode 100644 index 0000000..62c6f40 Binary files /dev/null and b/AutoPocket_ex1/src/Images/3_13.png differ diff --git a/AutoPocket_ex1/src/Images/3_14.png b/AutoPocket_ex1/src/Images/3_14.png new file mode 100644 index 0000000..4892dff Binary files /dev/null and b/AutoPocket_ex1/src/Images/3_14.png differ diff --git a/AutoPocket_ex1/src/Images/3_15.png b/AutoPocket_ex1/src/Images/3_15.png new file mode 100644 index 0000000..76fb7ad Binary files /dev/null and b/AutoPocket_ex1/src/Images/3_15.png differ diff --git a/AutoPocket_ex1/src/Images/3_16.png b/AutoPocket_ex1/src/Images/3_16.png new file mode 100644 index 0000000..83ff687 Binary files /dev/null and b/AutoPocket_ex1/src/Images/3_16.png differ diff --git a/AutoPocket_ex1/src/Images/3_17.png b/AutoPocket_ex1/src/Images/3_17.png new file mode 100644 index 0000000..0ed4ca0 Binary files /dev/null and b/AutoPocket_ex1/src/Images/3_17.png differ diff --git a/AutoPocket_ex1/src/Images/3_18.png b/AutoPocket_ex1/src/Images/3_18.png new file mode 100644 index 0000000..aa3fc20 Binary files /dev/null and b/AutoPocket_ex1/src/Images/3_18.png differ diff --git a/AutoPocket_ex1/src/Images/3_19.png b/AutoPocket_ex1/src/Images/3_19.png new file mode 100644 index 0000000..29187f2 Binary files /dev/null and b/AutoPocket_ex1/src/Images/3_19.png differ diff --git a/AutoPocket_ex1/src/Images/3_2.png b/AutoPocket_ex1/src/Images/3_2.png new file mode 100644 index 0000000..e4ce80d Binary files /dev/null and b/AutoPocket_ex1/src/Images/3_2.png differ diff --git a/AutoPocket_ex1/src/Images/3_20.png b/AutoPocket_ex1/src/Images/3_20.png new file mode 100644 index 0000000..bc07196 Binary files /dev/null and b/AutoPocket_ex1/src/Images/3_20.png differ diff --git a/AutoPocket_ex1/src/Images/3_21.png b/AutoPocket_ex1/src/Images/3_21.png new file mode 100644 index 0000000..6969d21 Binary files /dev/null and b/AutoPocket_ex1/src/Images/3_21.png differ diff --git a/AutoPocket_ex1/src/Images/3_22.png b/AutoPocket_ex1/src/Images/3_22.png new file mode 100644 index 0000000..a361b60 Binary files /dev/null and b/AutoPocket_ex1/src/Images/3_22.png differ diff --git a/AutoPocket_ex1/src/Images/3_23.png b/AutoPocket_ex1/src/Images/3_23.png new file mode 100644 index 0000000..e9a445e Binary files /dev/null and b/AutoPocket_ex1/src/Images/3_23.png differ diff --git a/AutoPocket_ex1/src/Images/3_24.png b/AutoPocket_ex1/src/Images/3_24.png new file mode 100644 index 0000000..4107e45 Binary files /dev/null and b/AutoPocket_ex1/src/Images/3_24.png differ diff --git a/AutoPocket_ex1/src/Images/3_25.png b/AutoPocket_ex1/src/Images/3_25.png new file mode 100644 index 0000000..f7995da Binary files /dev/null and b/AutoPocket_ex1/src/Images/3_25.png differ diff --git a/AutoPocket_ex1/src/Images/3_26.png b/AutoPocket_ex1/src/Images/3_26.png new file mode 100644 index 0000000..5d150e3 Binary files /dev/null and b/AutoPocket_ex1/src/Images/3_26.png differ diff --git a/AutoPocket_ex1/src/Images/3_27.png b/AutoPocket_ex1/src/Images/3_27.png new file mode 100644 index 0000000..9740e14 Binary files /dev/null and b/AutoPocket_ex1/src/Images/3_27.png differ diff --git a/AutoPocket_ex1/src/Images/3_28.png b/AutoPocket_ex1/src/Images/3_28.png new file mode 100644 index 0000000..a3a4037 Binary files /dev/null and b/AutoPocket_ex1/src/Images/3_28.png differ diff --git a/AutoPocket_ex1/src/Images/3_29.png b/AutoPocket_ex1/src/Images/3_29.png new file mode 100644 index 0000000..7a66ee2 Binary files /dev/null and b/AutoPocket_ex1/src/Images/3_29.png differ diff --git a/AutoPocket_ex1/src/Images/3_3.png b/AutoPocket_ex1/src/Images/3_3.png new file mode 100644 index 0000000..0006da5 Binary files /dev/null and b/AutoPocket_ex1/src/Images/3_3.png differ diff --git a/AutoPocket_ex1/src/Images/3_30.png b/AutoPocket_ex1/src/Images/3_30.png new file mode 100644 index 0000000..5a7d491 Binary files /dev/null and b/AutoPocket_ex1/src/Images/3_30.png differ diff --git a/AutoPocket_ex1/src/Images/3_31.png b/AutoPocket_ex1/src/Images/3_31.png new file mode 100644 index 0000000..0f6c5ff Binary files /dev/null and b/AutoPocket_ex1/src/Images/3_31.png differ diff --git a/AutoPocket_ex1/src/Images/3_32.png b/AutoPocket_ex1/src/Images/3_32.png new file mode 100644 index 0000000..0974325 Binary files /dev/null and b/AutoPocket_ex1/src/Images/3_32.png differ diff --git a/AutoPocket_ex1/src/Images/3_33.png b/AutoPocket_ex1/src/Images/3_33.png new file mode 100644 index 0000000..9b9c66f Binary files /dev/null and b/AutoPocket_ex1/src/Images/3_33.png differ diff --git a/AutoPocket_ex1/src/Images/3_34.png b/AutoPocket_ex1/src/Images/3_34.png new file mode 100644 index 0000000..c90a0a1 Binary files /dev/null and b/AutoPocket_ex1/src/Images/3_34.png differ diff --git a/AutoPocket_ex1/src/Images/3_35.png b/AutoPocket_ex1/src/Images/3_35.png new file mode 100644 index 0000000..1bb1aa3 Binary files /dev/null and b/AutoPocket_ex1/src/Images/3_35.png differ diff --git a/AutoPocket_ex1/src/Images/3_36.png b/AutoPocket_ex1/src/Images/3_36.png new file mode 100644 index 0000000..371e064 Binary files /dev/null and b/AutoPocket_ex1/src/Images/3_36.png differ diff --git a/AutoPocket_ex1/src/Images/3_37.png b/AutoPocket_ex1/src/Images/3_37.png new file mode 100644 index 0000000..2247f5e Binary files /dev/null and b/AutoPocket_ex1/src/Images/3_37.png differ diff --git a/AutoPocket_ex1/src/Images/3_38.png b/AutoPocket_ex1/src/Images/3_38.png new file mode 100644 index 0000000..e6638f0 Binary files /dev/null and b/AutoPocket_ex1/src/Images/3_38.png differ diff --git a/AutoPocket_ex1/src/Images/3_39.png b/AutoPocket_ex1/src/Images/3_39.png new file mode 100644 index 0000000..a82e8f4 Binary files /dev/null and b/AutoPocket_ex1/src/Images/3_39.png differ diff --git a/AutoPocket_ex1/src/Images/3_4.png b/AutoPocket_ex1/src/Images/3_4.png new file mode 100644 index 0000000..97b6c2f Binary files /dev/null and b/AutoPocket_ex1/src/Images/3_4.png differ diff --git a/AutoPocket_ex1/src/Images/3_40.png b/AutoPocket_ex1/src/Images/3_40.png new file mode 100644 index 0000000..2db69bc Binary files /dev/null and b/AutoPocket_ex1/src/Images/3_40.png differ diff --git a/AutoPocket_ex1/src/Images/3_41.png b/AutoPocket_ex1/src/Images/3_41.png new file mode 100644 index 0000000..9b46c77 Binary files /dev/null and b/AutoPocket_ex1/src/Images/3_41.png differ diff --git a/AutoPocket_ex1/src/Images/3_42.png b/AutoPocket_ex1/src/Images/3_42.png new file mode 100644 index 0000000..2a3a6ce Binary files /dev/null and b/AutoPocket_ex1/src/Images/3_42.png differ diff --git a/AutoPocket_ex1/src/Images/3_43.png b/AutoPocket_ex1/src/Images/3_43.png new file mode 100644 index 0000000..6d7d429 Binary files /dev/null and b/AutoPocket_ex1/src/Images/3_43.png differ diff --git a/AutoPocket_ex1/src/Images/3_44.png b/AutoPocket_ex1/src/Images/3_44.png new file mode 100644 index 0000000..f2fb357 Binary files /dev/null and b/AutoPocket_ex1/src/Images/3_44.png differ diff --git a/AutoPocket_ex1/src/Images/3_45.png b/AutoPocket_ex1/src/Images/3_45.png new file mode 100644 index 0000000..d554158 Binary files /dev/null and b/AutoPocket_ex1/src/Images/3_45.png differ diff --git a/AutoPocket_ex1/src/Images/3_46.png b/AutoPocket_ex1/src/Images/3_46.png new file mode 100644 index 0000000..0a3bccc Binary files /dev/null and b/AutoPocket_ex1/src/Images/3_46.png differ diff --git a/AutoPocket_ex1/src/Images/3_47.png b/AutoPocket_ex1/src/Images/3_47.png new file mode 100644 index 0000000..a3ba5d6 Binary files /dev/null and b/AutoPocket_ex1/src/Images/3_47.png differ diff --git a/AutoPocket_ex1/src/Images/3_48.png b/AutoPocket_ex1/src/Images/3_48.png new file mode 100644 index 0000000..0d20c46 Binary files /dev/null and b/AutoPocket_ex1/src/Images/3_48.png differ diff --git a/AutoPocket_ex1/src/Images/3_49.png b/AutoPocket_ex1/src/Images/3_49.png new file mode 100644 index 0000000..00d912e Binary files /dev/null and b/AutoPocket_ex1/src/Images/3_49.png differ diff --git a/AutoPocket_ex1/src/Images/3_5.png b/AutoPocket_ex1/src/Images/3_5.png new file mode 100644 index 0000000..45a0178 Binary files /dev/null and b/AutoPocket_ex1/src/Images/3_5.png differ diff --git a/AutoPocket_ex1/src/Images/3_50.png b/AutoPocket_ex1/src/Images/3_50.png new file mode 100644 index 0000000..43e2a9a Binary files /dev/null and b/AutoPocket_ex1/src/Images/3_50.png differ diff --git a/AutoPocket_ex1/src/Images/3_51.png b/AutoPocket_ex1/src/Images/3_51.png new file mode 100644 index 0000000..5481731 Binary files /dev/null and b/AutoPocket_ex1/src/Images/3_51.png differ diff --git a/AutoPocket_ex1/src/Images/3_52.png b/AutoPocket_ex1/src/Images/3_52.png new file mode 100644 index 0000000..e4792a9 Binary files /dev/null and b/AutoPocket_ex1/src/Images/3_52.png differ diff --git a/AutoPocket_ex1/src/Images/3_53.png b/AutoPocket_ex1/src/Images/3_53.png new file mode 100644 index 0000000..c515409 Binary files /dev/null and b/AutoPocket_ex1/src/Images/3_53.png differ diff --git a/AutoPocket_ex1/src/Images/3_54.png b/AutoPocket_ex1/src/Images/3_54.png new file mode 100644 index 0000000..a4109e1 Binary files /dev/null and b/AutoPocket_ex1/src/Images/3_54.png differ diff --git a/AutoPocket_ex1/src/Images/3_55.png b/AutoPocket_ex1/src/Images/3_55.png new file mode 100644 index 0000000..9259eac Binary files /dev/null and b/AutoPocket_ex1/src/Images/3_55.png differ diff --git a/AutoPocket_ex1/src/Images/3_56.png b/AutoPocket_ex1/src/Images/3_56.png new file mode 100644 index 0000000..c4b1484 Binary files /dev/null and b/AutoPocket_ex1/src/Images/3_56.png differ diff --git a/AutoPocket_ex1/src/Images/3_57.png b/AutoPocket_ex1/src/Images/3_57.png new file mode 100644 index 0000000..dff7a75 Binary files /dev/null and b/AutoPocket_ex1/src/Images/3_57.png differ diff --git a/AutoPocket_ex1/src/Images/3_58.png b/AutoPocket_ex1/src/Images/3_58.png new file mode 100644 index 0000000..517a3c2 Binary files /dev/null and b/AutoPocket_ex1/src/Images/3_58.png differ diff --git a/AutoPocket_ex1/src/Images/3_59.png b/AutoPocket_ex1/src/Images/3_59.png new file mode 100644 index 0000000..50612a3 Binary files /dev/null and b/AutoPocket_ex1/src/Images/3_59.png differ diff --git a/AutoPocket_ex1/src/Images/3_6.png b/AutoPocket_ex1/src/Images/3_6.png new file mode 100644 index 0000000..a9820ce Binary files /dev/null and b/AutoPocket_ex1/src/Images/3_6.png differ diff --git a/AutoPocket_ex1/src/Images/3_60.png b/AutoPocket_ex1/src/Images/3_60.png new file mode 100644 index 0000000..fc8c2cf Binary files /dev/null and b/AutoPocket_ex1/src/Images/3_60.png differ diff --git a/AutoPocket_ex1/src/Images/3_7.png b/AutoPocket_ex1/src/Images/3_7.png new file mode 100644 index 0000000..4188909 Binary files /dev/null and b/AutoPocket_ex1/src/Images/3_7.png differ diff --git a/AutoPocket_ex1/src/Images/3_8.png b/AutoPocket_ex1/src/Images/3_8.png new file mode 100644 index 0000000..251d55d Binary files /dev/null and b/AutoPocket_ex1/src/Images/3_8.png differ diff --git a/AutoPocket_ex1/src/Images/3_9.png b/AutoPocket_ex1/src/Images/3_9.png new file mode 100644 index 0000000..c58601b Binary files /dev/null and b/AutoPocket_ex1/src/Images/3_9.png differ diff --git a/AutoPocket_ex1/src/Images/4.png b/AutoPocket_ex1/src/Images/4.png new file mode 100644 index 0000000..af107e0 Binary files /dev/null and b/AutoPocket_ex1/src/Images/4.png differ diff --git a/AutoPocket_ex1/src/Images/40.png b/AutoPocket_ex1/src/Images/40.png new file mode 100644 index 0000000..b84b40a Binary files /dev/null and b/AutoPocket_ex1/src/Images/40.png differ diff --git a/AutoPocket_ex1/src/Images/41.png b/AutoPocket_ex1/src/Images/41.png new file mode 100644 index 0000000..3581135 Binary files /dev/null and b/AutoPocket_ex1/src/Images/41.png differ diff --git a/AutoPocket_ex1/src/Images/42.png b/AutoPocket_ex1/src/Images/42.png new file mode 100644 index 0000000..ea1f50a Binary files /dev/null and b/AutoPocket_ex1/src/Images/42.png differ diff --git a/AutoPocket_ex1/src/Images/43.png b/AutoPocket_ex1/src/Images/43.png new file mode 100644 index 0000000..9da0c62 Binary files /dev/null and b/AutoPocket_ex1/src/Images/43.png differ diff --git a/AutoPocket_ex1/src/Images/44.png b/AutoPocket_ex1/src/Images/44.png new file mode 100644 index 0000000..f752e06 Binary files /dev/null and b/AutoPocket_ex1/src/Images/44.png differ diff --git a/AutoPocket_ex1/src/Images/45.png b/AutoPocket_ex1/src/Images/45.png new file mode 100644 index 0000000..6771bcb Binary files /dev/null and b/AutoPocket_ex1/src/Images/45.png differ diff --git a/AutoPocket_ex1/src/Images/46.png b/AutoPocket_ex1/src/Images/46.png new file mode 100644 index 0000000..10a42b3 Binary files /dev/null and b/AutoPocket_ex1/src/Images/46.png differ diff --git a/AutoPocket_ex1/src/Images/47.png b/AutoPocket_ex1/src/Images/47.png new file mode 100644 index 0000000..57458b3 Binary files /dev/null and b/AutoPocket_ex1/src/Images/47.png differ diff --git a/AutoPocket_ex1/src/Images/48.png b/AutoPocket_ex1/src/Images/48.png new file mode 100644 index 0000000..4d544c0 Binary files /dev/null and b/AutoPocket_ex1/src/Images/48.png differ diff --git a/AutoPocket_ex1/src/Images/49.png b/AutoPocket_ex1/src/Images/49.png new file mode 100644 index 0000000..3cd3f16 Binary files /dev/null and b/AutoPocket_ex1/src/Images/49.png differ diff --git a/AutoPocket_ex1/src/Images/5.png b/AutoPocket_ex1/src/Images/5.png new file mode 100644 index 0000000..6e9c95f Binary files /dev/null and b/AutoPocket_ex1/src/Images/5.png differ diff --git a/AutoPocket_ex1/src/Images/50.png b/AutoPocket_ex1/src/Images/50.png new file mode 100644 index 0000000..a45dfd8 Binary files /dev/null and b/AutoPocket_ex1/src/Images/50.png differ diff --git a/AutoPocket_ex1/src/Images/51.png b/AutoPocket_ex1/src/Images/51.png new file mode 100644 index 0000000..ab9e87e Binary files /dev/null and b/AutoPocket_ex1/src/Images/51.png differ diff --git a/AutoPocket_ex1/src/Images/52.png b/AutoPocket_ex1/src/Images/52.png new file mode 100644 index 0000000..8b9ec95 Binary files /dev/null and b/AutoPocket_ex1/src/Images/52.png differ diff --git a/AutoPocket_ex1/src/Images/53.png b/AutoPocket_ex1/src/Images/53.png new file mode 100644 index 0000000..a857198 Binary files /dev/null and b/AutoPocket_ex1/src/Images/53.png differ diff --git a/AutoPocket_ex1/src/Images/54.png b/AutoPocket_ex1/src/Images/54.png new file mode 100644 index 0000000..b836fab Binary files /dev/null and b/AutoPocket_ex1/src/Images/54.png differ diff --git a/AutoPocket_ex1/src/Images/55.png b/AutoPocket_ex1/src/Images/55.png new file mode 100644 index 0000000..0442025 Binary files /dev/null and b/AutoPocket_ex1/src/Images/55.png differ diff --git a/AutoPocket_ex1/src/Images/56.png b/AutoPocket_ex1/src/Images/56.png new file mode 100644 index 0000000..b3d878c Binary files /dev/null and b/AutoPocket_ex1/src/Images/56.png differ diff --git a/AutoPocket_ex1/src/Images/57.png b/AutoPocket_ex1/src/Images/57.png new file mode 100644 index 0000000..dff7a75 Binary files /dev/null and b/AutoPocket_ex1/src/Images/57.png differ diff --git a/AutoPocket_ex1/src/Images/58.png b/AutoPocket_ex1/src/Images/58.png new file mode 100644 index 0000000..2313215 Binary files /dev/null and b/AutoPocket_ex1/src/Images/58.png differ diff --git a/AutoPocket_ex1/src/Images/59.png b/AutoPocket_ex1/src/Images/59.png new file mode 100644 index 0000000..cea6973 Binary files /dev/null and b/AutoPocket_ex1/src/Images/59.png differ diff --git a/AutoPocket_ex1/src/Images/6.png b/AutoPocket_ex1/src/Images/6.png new file mode 100644 index 0000000..16378cb Binary files /dev/null and b/AutoPocket_ex1/src/Images/6.png differ diff --git a/AutoPocket_ex1/src/Images/60.png b/AutoPocket_ex1/src/Images/60.png new file mode 100644 index 0000000..29652f9 Binary files /dev/null and b/AutoPocket_ex1/src/Images/60.png differ diff --git a/AutoPocket_ex1/src/Images/7.png b/AutoPocket_ex1/src/Images/7.png new file mode 100644 index 0000000..996a71e Binary files /dev/null and b/AutoPocket_ex1/src/Images/7.png differ diff --git a/AutoPocket_ex1/src/Images/8.png b/AutoPocket_ex1/src/Images/8.png new file mode 100644 index 0000000..da291f6 Binary files /dev/null and b/AutoPocket_ex1/src/Images/8.png differ diff --git a/AutoPocket_ex1/src/Images/9.png b/AutoPocket_ex1/src/Images/9.png new file mode 100644 index 0000000..390a748 Binary files /dev/null and b/AutoPocket_ex1/src/Images/9.png differ diff --git a/AutoPocket_ex1/src/Images/Help.png b/AutoPocket_ex1/src/Images/Help.png new file mode 100644 index 0000000..93d1035 Binary files /dev/null and b/AutoPocket_ex1/src/Images/Help.png differ diff --git a/AutoPocket_ex1/src/Images/ID.png b/AutoPocket_ex1/src/Images/ID.png new file mode 100644 index 0000000..8345a16 Binary files /dev/null and b/AutoPocket_ex1/src/Images/ID.png differ diff --git a/AutoPocket_ex1/src/Images/Next_Battle.png b/AutoPocket_ex1/src/Images/Next_Battle.png new file mode 100644 index 0000000..4b342ee Binary files /dev/null and b/AutoPocket_ex1/src/Images/Next_Battle.png differ diff --git a/AutoPocket_ex1/src/Images/Pocketmon2.png b/AutoPocket_ex1/src/Images/Pocketmon2.png new file mode 100644 index 0000000..e1906da Binary files /dev/null and b/AutoPocket_ex1/src/Images/Pocketmon2.png differ diff --git a/AutoPocket_ex1/src/Images/Title2.png b/AutoPocket_ex1/src/Images/Title2.png new file mode 100644 index 0000000..9cab6e4 Binary files /dev/null and b/AutoPocket_ex1/src/Images/Title2.png differ diff --git a/AutoPocket_ex1/src/Images/base_level.png b/AutoPocket_ex1/src/Images/base_level.png new file mode 100644 index 0000000..ceed7eb Binary files /dev/null and b/AutoPocket_ex1/src/Images/base_level.png differ diff --git a/AutoPocket_ex1/src/Images/cancle.png b/AutoPocket_ex1/src/Images/cancle.png new file mode 100644 index 0000000..55207d6 Binary files /dev/null and b/AutoPocket_ex1/src/Images/cancle.png differ diff --git a/AutoPocket_ex1/src/Images/check.png b/AutoPocket_ex1/src/Images/check.png new file mode 100644 index 0000000..aff53e0 Binary files /dev/null and b/AutoPocket_ex1/src/Images/check.png differ diff --git a/AutoPocket_ex1/src/Images/combat_background.png b/AutoPocket_ex1/src/Images/combat_background.png new file mode 100644 index 0000000..1e327d1 Binary files /dev/null and b/AutoPocket_ex1/src/Images/combat_background.png differ diff --git a/AutoPocket_ex1/src/Images/confirm.png b/AutoPocket_ex1/src/Images/confirm.png new file mode 100644 index 0000000..6853faf Binary files /dev/null and b/AutoPocket_ex1/src/Images/confirm.png differ diff --git a/AutoPocket_ex1/src/Images/exit3.png b/AutoPocket_ex1/src/Images/exit3.png new file mode 100644 index 0000000..9a935a5 Binary files /dev/null and b/AutoPocket_ex1/src/Images/exit3.png differ diff --git a/AutoPocket_ex1/src/Images/exit4.png b/AutoPocket_ex1/src/Images/exit4.png new file mode 100644 index 0000000..b217035 Binary files /dev/null and b/AutoPocket_ex1/src/Images/exit4.png differ diff --git a/AutoPocket_ex1/src/Images/item1.png b/AutoPocket_ex1/src/Images/item1.png new file mode 100644 index 0000000..afd9596 Binary files /dev/null and b/AutoPocket_ex1/src/Images/item1.png differ diff --git a/AutoPocket_ex1/src/Images/item_1.png b/AutoPocket_ex1/src/Images/item_1.png new file mode 100644 index 0000000..c663a83 Binary files /dev/null and b/AutoPocket_ex1/src/Images/item_1.png differ diff --git a/AutoPocket_ex1/src/Images/location1.png b/AutoPocket_ex1/src/Images/location1.png new file mode 100644 index 0000000..7bd6094 Binary files /dev/null and b/AutoPocket_ex1/src/Images/location1.png differ diff --git a/AutoPocket_ex1/src/Images/location2.png b/AutoPocket_ex1/src/Images/location2.png new file mode 100644 index 0000000..5d1fdae Binary files /dev/null and b/AutoPocket_ex1/src/Images/location2.png differ diff --git a/AutoPocket_ex1/src/Images/location3.png b/AutoPocket_ex1/src/Images/location3.png new file mode 100644 index 0000000..00f6586 Binary files /dev/null and b/AutoPocket_ex1/src/Images/location3.png differ diff --git a/AutoPocket_ex1/src/Images/location_1.png b/AutoPocket_ex1/src/Images/location_1.png new file mode 100644 index 0000000..26e8d7e Binary files /dev/null and b/AutoPocket_ex1/src/Images/location_1.png differ diff --git a/AutoPocket_ex1/src/Images/login_background.png b/AutoPocket_ex1/src/Images/login_background.png new file mode 100644 index 0000000..c50b00b Binary files /dev/null and b/AutoPocket_ex1/src/Images/login_background.png differ diff --git a/AutoPocket_ex1/src/Images/main2.png b/AutoPocket_ex1/src/Images/main2.png new file mode 100644 index 0000000..7723080 Binary files /dev/null and b/AutoPocket_ex1/src/Images/main2.png differ diff --git a/AutoPocket_ex1/src/Images/nextBtn2.jpg b/AutoPocket_ex1/src/Images/nextBtn2.jpg new file mode 100644 index 0000000..c090a03 Binary files /dev/null and b/AutoPocket_ex1/src/Images/nextBtn2.jpg differ diff --git a/AutoPocket_ex1/src/Images/next_btn.png b/AutoPocket_ex1/src/Images/next_btn.png new file mode 100644 index 0000000..29c3108 Binary files /dev/null and b/AutoPocket_ex1/src/Images/next_btn.png differ diff --git a/AutoPocket_ex1/src/Images/no_check.png b/AutoPocket_ex1/src/Images/no_check.png new file mode 100644 index 0000000..2d92523 Binary files /dev/null and b/AutoPocket_ex1/src/Images/no_check.png differ diff --git a/AutoPocket_ex1/src/Images/option.png b/AutoPocket_ex1/src/Images/option.png new file mode 100644 index 0000000..ee7224d Binary files /dev/null and b/AutoPocket_ex1/src/Images/option.png differ diff --git a/AutoPocket_ex1/src/Images/placement_background.png b/AutoPocket_ex1/src/Images/placement_background.png new file mode 100644 index 0000000..a9ddbfb Binary files /dev/null and b/AutoPocket_ex1/src/Images/placement_background.png differ diff --git a/AutoPocket_ex1/src/Images/play.png b/AutoPocket_ex1/src/Images/play.png new file mode 100644 index 0000000..3d28a59 Binary files /dev/null and b/AutoPocket_ex1/src/Images/play.png differ diff --git a/AutoPocket_ex1/src/Images/pocketmonlist.png b/AutoPocket_ex1/src/Images/pocketmonlist.png new file mode 100644 index 0000000..da7a25f Binary files /dev/null and b/AutoPocket_ex1/src/Images/pocketmonlist.png differ diff --git a/AutoPocket_ex1/src/Images/previous.jpg b/AutoPocket_ex1/src/Images/previous.jpg new file mode 100644 index 0000000..aa9b017 Binary files /dev/null and b/AutoPocket_ex1/src/Images/previous.jpg differ diff --git a/AutoPocket_ex1/src/Images/prozen.png b/AutoPocket_ex1/src/Images/prozen.png new file mode 100644 index 0000000..8d29587 Binary files /dev/null and b/AutoPocket_ex1/src/Images/prozen.png differ diff --git a/AutoPocket_ex1/src/Images/prozen_obj.png b/AutoPocket_ex1/src/Images/prozen_obj.png new file mode 100644 index 0000000..42e5fc1 Binary files /dev/null and b/AutoPocket_ex1/src/Images/prozen_obj.png differ diff --git a/AutoPocket_ex1/src/Images/record.png b/AutoPocket_ex1/src/Images/record.png new file mode 100644 index 0000000..cf12aa4 Binary files /dev/null and b/AutoPocket_ex1/src/Images/record.png differ diff --git a/AutoPocket_ex1/src/Images/record_test3.png b/AutoPocket_ex1/src/Images/record_test3.png new file mode 100644 index 0000000..7d973e2 Binary files /dev/null and b/AutoPocket_ex1/src/Images/record_test3.png differ diff --git a/AutoPocket_ex1/src/Images/register.png b/AutoPocket_ex1/src/Images/register.png new file mode 100644 index 0000000..3321659 Binary files /dev/null and b/AutoPocket_ex1/src/Images/register.png differ diff --git a/AutoPocket_ex1/src/Images/reroll.png b/AutoPocket_ex1/src/Images/reroll.png new file mode 100644 index 0000000..c1c436b Binary files /dev/null and b/AutoPocket_ex1/src/Images/reroll.png differ diff --git a/AutoPocket_ex1/src/Images/select2_level.png b/AutoPocket_ex1/src/Images/select2_level.png new file mode 100644 index 0000000..085b2ff Binary files /dev/null and b/AutoPocket_ex1/src/Images/select2_level.png differ diff --git a/AutoPocket_ex1/src/Images/select_level.png b/AutoPocket_ex1/src/Images/select_level.png new file mode 100644 index 0000000..6c0034a Binary files /dev/null and b/AutoPocket_ex1/src/Images/select_level.png differ diff --git a/AutoPocket_ex1/src/Images/select_location.png b/AutoPocket_ex1/src/Images/select_location.png new file mode 100644 index 0000000..06844d8 Binary files /dev/null and b/AutoPocket_ex1/src/Images/select_location.png differ diff --git a/AutoPocket_ex1/src/Images/sell.png b/AutoPocket_ex1/src/Images/sell.png new file mode 100644 index 0000000..63a7588 Binary files /dev/null and b/AutoPocket_ex1/src/Images/sell.png differ diff --git a/AutoPocket_ex1/src/Images/sell_1.png b/AutoPocket_ex1/src/Images/sell_1.png new file mode 100644 index 0000000..ba0f7a5 Binary files /dev/null and b/AutoPocket_ex1/src/Images/sell_1.png differ diff --git a/AutoPocket_ex1/src/Images/shop_damage.png b/AutoPocket_ex1/src/Images/shop_damage.png new file mode 100644 index 0000000..97390e9 Binary files /dev/null and b/AutoPocket_ex1/src/Images/shop_damage.png differ diff --git a/AutoPocket_ex1/src/Images/shop_heart.png b/AutoPocket_ex1/src/Images/shop_heart.png new file mode 100644 index 0000000..e242c79 Binary files /dev/null and b/AutoPocket_ex1/src/Images/shop_heart.png differ diff --git a/AutoPocket_ex1/src/Images/signimg2.png b/AutoPocket_ex1/src/Images/signimg2.png new file mode 100644 index 0000000..f398236 Binary files /dev/null and b/AutoPocket_ex1/src/Images/signimg2.png differ diff --git a/AutoPocket_ex1/src/Images/signup.png b/AutoPocket_ex1/src/Images/signup.png new file mode 100644 index 0000000..8160c7d Binary files /dev/null and b/AutoPocket_ex1/src/Images/signup.png differ diff --git a/AutoPocket_ex1/src/Images/start.png b/AutoPocket_ex1/src/Images/start.png new file mode 100644 index 0000000..a76a707 Binary files /dev/null and b/AutoPocket_ex1/src/Images/start.png differ diff --git a/AutoPocket_ex1/src/Images/user_coin.png b/AutoPocket_ex1/src/Images/user_coin.png new file mode 100644 index 0000000..5b42452 Binary files /dev/null and b/AutoPocket_ex1/src/Images/user_coin.png differ diff --git a/AutoPocket_ex1/src/Images/user_heart.png b/AutoPocket_ex1/src/Images/user_heart.png new file mode 100644 index 0000000..b9add46 Binary files /dev/null and b/AutoPocket_ex1/src/Images/user_heart.png differ diff --git a/AutoPocket_ex1/src/Images/user_win.png b/AutoPocket_ex1/src/Images/user_win.png new file mode 100644 index 0000000..d98a47d Binary files /dev/null and b/AutoPocket_ex1/src/Images/user_win.png differ diff --git a/AutoPocket_ex1/src/Item_Image/1.png b/AutoPocket_ex1/src/Item_Image/1.png new file mode 100644 index 0000000..3fc797d Binary files /dev/null and b/AutoPocket_ex1/src/Item_Image/1.png differ diff --git a/AutoPocket_ex1/src/Item_Image/10.png b/AutoPocket_ex1/src/Item_Image/10.png new file mode 100644 index 0000000..98182fe Binary files /dev/null and b/AutoPocket_ex1/src/Item_Image/10.png differ diff --git a/AutoPocket_ex1/src/Item_Image/11.png b/AutoPocket_ex1/src/Item_Image/11.png new file mode 100644 index 0000000..7d7e15a Binary files /dev/null and b/AutoPocket_ex1/src/Item_Image/11.png differ diff --git a/AutoPocket_ex1/src/Item_Image/12.png b/AutoPocket_ex1/src/Item_Image/12.png new file mode 100644 index 0000000..7e79ea4 Binary files /dev/null and b/AutoPocket_ex1/src/Item_Image/12.png differ diff --git a/AutoPocket_ex1/src/Item_Image/13.png b/AutoPocket_ex1/src/Item_Image/13.png new file mode 100644 index 0000000..4e250fe Binary files /dev/null and b/AutoPocket_ex1/src/Item_Image/13.png differ diff --git a/AutoPocket_ex1/src/Item_Image/14.png b/AutoPocket_ex1/src/Item_Image/14.png new file mode 100644 index 0000000..b40400b Binary files /dev/null and b/AutoPocket_ex1/src/Item_Image/14.png differ diff --git a/AutoPocket_ex1/src/Item_Image/15.png b/AutoPocket_ex1/src/Item_Image/15.png new file mode 100644 index 0000000..0f5a131 Binary files /dev/null and b/AutoPocket_ex1/src/Item_Image/15.png differ diff --git a/AutoPocket_ex1/src/Item_Image/16.png b/AutoPocket_ex1/src/Item_Image/16.png new file mode 100644 index 0000000..f516e7a Binary files /dev/null and b/AutoPocket_ex1/src/Item_Image/16.png differ diff --git a/AutoPocket_ex1/src/Item_Image/17.png b/AutoPocket_ex1/src/Item_Image/17.png new file mode 100644 index 0000000..aa06789 Binary files /dev/null and b/AutoPocket_ex1/src/Item_Image/17.png differ diff --git a/AutoPocket_ex1/src/Item_Image/18.png b/AutoPocket_ex1/src/Item_Image/18.png new file mode 100644 index 0000000..d40e0c1 Binary files /dev/null and b/AutoPocket_ex1/src/Item_Image/18.png differ diff --git a/AutoPocket_ex1/src/Item_Image/19.png b/AutoPocket_ex1/src/Item_Image/19.png new file mode 100644 index 0000000..cb59719 Binary files /dev/null and b/AutoPocket_ex1/src/Item_Image/19.png differ diff --git a/AutoPocket_ex1/src/Item_Image/2.png b/AutoPocket_ex1/src/Item_Image/2.png new file mode 100644 index 0000000..5dcb311 Binary files /dev/null and b/AutoPocket_ex1/src/Item_Image/2.png differ diff --git a/AutoPocket_ex1/src/Item_Image/20.png b/AutoPocket_ex1/src/Item_Image/20.png new file mode 100644 index 0000000..1d5658e Binary files /dev/null and b/AutoPocket_ex1/src/Item_Image/20.png differ diff --git a/AutoPocket_ex1/src/Item_Image/21.png b/AutoPocket_ex1/src/Item_Image/21.png new file mode 100644 index 0000000..95dd91d Binary files /dev/null and b/AutoPocket_ex1/src/Item_Image/21.png differ diff --git a/AutoPocket_ex1/src/Item_Image/22.png b/AutoPocket_ex1/src/Item_Image/22.png new file mode 100644 index 0000000..82c1f82 Binary files /dev/null and b/AutoPocket_ex1/src/Item_Image/22.png differ diff --git a/AutoPocket_ex1/src/Item_Image/23.png b/AutoPocket_ex1/src/Item_Image/23.png new file mode 100644 index 0000000..698563b Binary files /dev/null and b/AutoPocket_ex1/src/Item_Image/23.png differ diff --git a/AutoPocket_ex1/src/Item_Image/24.png b/AutoPocket_ex1/src/Item_Image/24.png new file mode 100644 index 0000000..f408e64 Binary files /dev/null and b/AutoPocket_ex1/src/Item_Image/24.png differ diff --git a/AutoPocket_ex1/src/Item_Image/3.png b/AutoPocket_ex1/src/Item_Image/3.png new file mode 100644 index 0000000..141e611 Binary files /dev/null and b/AutoPocket_ex1/src/Item_Image/3.png differ diff --git a/AutoPocket_ex1/src/Item_Image/4.png b/AutoPocket_ex1/src/Item_Image/4.png new file mode 100644 index 0000000..1e475b0 Binary files /dev/null and b/AutoPocket_ex1/src/Item_Image/4.png differ diff --git a/AutoPocket_ex1/src/Item_Image/5.png b/AutoPocket_ex1/src/Item_Image/5.png new file mode 100644 index 0000000..1bd4699 Binary files /dev/null and b/AutoPocket_ex1/src/Item_Image/5.png differ diff --git a/AutoPocket_ex1/src/Item_Image/6.png b/AutoPocket_ex1/src/Item_Image/6.png new file mode 100644 index 0000000..e408552 Binary files /dev/null and b/AutoPocket_ex1/src/Item_Image/6.png differ diff --git a/AutoPocket_ex1/src/Item_Image/7.png b/AutoPocket_ex1/src/Item_Image/7.png new file mode 100644 index 0000000..e8443e1 Binary files /dev/null and b/AutoPocket_ex1/src/Item_Image/7.png differ diff --git a/AutoPocket_ex1/src/Item_Image/8.png b/AutoPocket_ex1/src/Item_Image/8.png new file mode 100644 index 0000000..8958de3 Binary files /dev/null and b/AutoPocket_ex1/src/Item_Image/8.png differ diff --git a/AutoPocket_ex1/src/Item_Image/9.png b/AutoPocket_ex1/src/Item_Image/9.png new file mode 100644 index 0000000..d146a54 Binary files /dev/null and b/AutoPocket_ex1/src/Item_Image/9.png differ diff --git a/AutoPocket_ex1/src/Sound/backgroundsound.wav b/AutoPocket_ex1/src/Sound/backgroundsound.wav new file mode 100644 index 0000000..7f16fe5 Binary files /dev/null and b/AutoPocket_ex1/src/Sound/backgroundsound.wav differ diff --git a/AutoPocket_ex1/src/background/Account.java b/AutoPocket_ex1/src/background/Account.java new file mode 100644 index 0000000..04f4574 --- /dev/null +++ b/AutoPocket_ex1/src/background/Account.java @@ -0,0 +1,204 @@ +package background; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.PreparedStatement; +import java.sql.ResultSet; +import java.sql.SQLException; +import java.sql.SQLIntegrityConstraintViolationException; + + +public class Account { + private String DB_user = "JUNG"; + private String DB_password = "1234"; + private String DB_url = "jdbc:oracle:thin:@119.195.135.42:1521:xe"; + private String login_id; + private String login_password; + private String login_name; + private String sql = ""; + private int pk; + + public String getLogin_id() { + return login_id; + } + + + + public void setLogin_id(String login_id) { + this.login_id = login_id; + } + + + + public String getLogin_password() { + return login_password; + } + + + + public void setLogin_password(String login_password) { + this.login_password = login_password; + } + + + + public String getLogin_name() { + return login_name; + } + + + + public void setLogin_name(String login_name) { + this.login_name = login_name; + } + + public int getPk() { + return pk; + } + + + + public void setPk(int pk) { + this.pk = pk; + } + + + public void join_membership() { + String sql = ""; + try { + Class.forName("oracle.jdbc.OracleDriver"); + Connection con = DriverManager.getConnection(DB_url, DB_user, DB_password); + + sql = "INSERT INTO USER_INFO(USER_ID,LOGIN_ID,LOGIN_PASSWORD,USER_NAME)" + + "VALUES(SEQ_USER_INFO.NEXTVAL,?,?,?)"; + + PreparedStatement pstmt = con.prepareStatement(sql); + pstmt.setString(1, this.login_id); + pstmt.setString(2, this.login_password); + pstmt.setString(3, this.login_name); + pstmt.executeUpdate(); + + + }catch (ClassNotFoundException e) { + e.printStackTrace(); + }catch (SQLException e) { + if (e instanceof SQLIntegrityConstraintViolationException) { + System.out.println("Error"); + } else { + e.printStackTrace(); + } + } + } + + public boolean login() { + try { + Class.forName("oracle.jdbc.OracleDriver"); + Connection con = DriverManager.getConnection(DB_url, DB_user, DB_password); + + sql = "SELECT LOGIN_ID, LOGIN_PASSWORD FROM USER_INFO"; + PreparedStatement pstmt = con.prepareStatement(sql); + ResultSet resultSet = pstmt.executeQuery(); + + // ???? ??? ? 비?번호 ?? + while (resultSet.next()) { + String login_id = resultSet.getString("LOGIN_ID"); + String login_password = resultSet.getString("LOGIN_PASSWORD"); + + if (this.login_id.equals(login_id) && this.login_password.equals(login_password)) { + System.out.println("α ϼ̽ϴ!"); + return true; + } + } + + // ?치하? 값이 ?? ? + System.out.println("??? ?? 비?번호? ?치하? ????."); + return false; + } catch (ClassNotFoundException e) { + e.printStackTrace(); + } catch (SQLException e) { + e.printStackTrace(); + } + + // ?? 발생 ?? + return false; + } + + public int pknum(String login_id, String login_password) { + + try { + Class.forName("oracle.jdbc.OracleDriver"); + + Connection con = DriverManager.getConnection(DB_url, DB_user, DB_password); + String sql = "SELECT USER_ID FROM USER_INFO WHERE LOGIN_ID = ? AND LOGIN_PASSWORD = ?"; + PreparedStatement pstmt = con.prepareStatement(sql); + pstmt.setString(1, this.login_id); + pstmt.setString(2, this.login_password); + + ResultSet resultSet = pstmt.executeQuery(); + + if (resultSet.next()) { + pk = resultSet.getInt("USER_ID"); + } + } catch (ClassNotFoundException e) { + e.printStackTrace(); + } catch (SQLException e) { + e.printStackTrace(); + } + return pk; + } + + public String getNickname(int pk) { + String nickname = null; + + try { + Class.forName("oracle.jdbc.OracleDriver"); + + Connection con = DriverManager.getConnection(DB_url, DB_user, DB_password); + String sql = "SELECT USER_NAME FROM USER_INFO WHERE USER_ID = ?"; + PreparedStatement pstmt = con.prepareStatement(sql); + pstmt.setInt(1, pk); + + ResultSet resultSet = pstmt.executeQuery(); + + if (resultSet.next()) { + nickname = resultSet.getString("USER_NAME"); + } + } catch (ClassNotFoundException e) { + e.printStackTrace(); + } catch (SQLException e) { + e.printStackTrace(); + } + + return nickname; + } + + + public void accountDelete(int pk) { + try { + Class.forName("oracle.jdbc.OracleDriver"); + + Connection con = DriverManager.getConnection(DB_url, DB_user, DB_password); + String sql = "DELETE FROM USER_INFO WHERE USER_ID = ?"; + PreparedStatement pstmt = con.prepareStatement(sql); + pstmt.setInt(1, pk); + + int rowsAffected = pstmt.executeUpdate(); + + if (rowsAffected > 0) { + System.out.println(" Ϸ߽ϴ."); + } else { + System.out.println("ġϴ ϴ."); + } + + con.close(); + + } catch (ClassNotFoundException e) { + e.printStackTrace(); + } catch (SQLException e) { + e.printStackTrace(); + } + } + + +} + diff --git a/AutoPocket_ex1/src/background/Battle.java b/AutoPocket_ex1/src/background/Battle.java new file mode 100644 index 0000000..1d75427 --- /dev/null +++ b/AutoPocket_ex1/src/background/Battle.java @@ -0,0 +1,2364 @@ +package background; + +import java.util.LinkedList; +import java.util.Random; +import java.util.Scanner; + +public class Battle { + Scanner sc = new Scanner(System.in); + private LinkedList friendly; // �븘援� 由ъ뒪�듃 + private LinkedList enemy; // �쟻援� 由ъ뒪�듃 + private LinkedList forreplace; // + Random random = new Random(); + int turnNum; // �꽩 �닔 + int friendlyMaxPalceNum = 5; // �븘援� �궓�븘�엳�뒗 �닔 + int enemyMaxPalceNum = 5; // �쟻援� �궓�븘�엳�뒗 �닔 + + boolean friendlyFirstHit38 = true; // 38踰� �룷耳볥が�씠 泥섏쓬 留욎븯�뒗吏� �솗�씤 true�씠硫� �븞 留욎쓬 + boolean friendlyFirstHit[] = { false, false, false, false, false }; // 踰꾩꽢 �슚怨쇱슜 泥섏쓬�쑝濡� 留욎븯�뒗吏� �솗�씤 1�씠硫� �븞 留욎쓬 + int findEffect[] = { 0, 0, 0, 0, 0 }; // 踰꾩꽢 �슚怨� 李얘린�슜 + boolean replaceFirstHit[] = { false, false, false, false, false }; // 踰꾩꽢�슚怨� �옄由� 諛붽씀湲곗슜 + + boolean enemyFirstHit38 = true; // 38踰� �룷耳볥が�씠 泥섏쓬 留욎븯�뒗吏� �솗�씤 true�씠硫� �븞 留욎쓬 + boolean enemyFirstHit[] = { false, false, false, false, false }; // 踰꾩꽢 �슚怨� �슜 泥섏쓬�쑝濡� 留욎븯�뒗吏� �솗�씤 1�씠硫� �븞 留욎쓬 + + int friendlyHP45 = 0; // 45踰� �룷耳볥が 泥대젰 ���옣 �뵾�빐�웾 20% �룎�젮以섏빞�븿 + int enemyHP45 = 0; + + int replaceHitNum[] = { -1, -1, -1, -1, -1 }; + int whoHitEnemy[] = { -1, -1, -1, -1, -1 }; // �쟻援� 怨듦꺽�븳 �븘援� �쐞移� ���옣 + int whoHitFriendly[] = { -1, -1, -1, -1, -1 }; // �븘援� 怨듦꺽�븳 �쟻援� �쐞移� ���옣 + + int replacePoisonNum[] = { 0, 0, 0, 0, 0 }; + int friendlyPoisonNum[] = { 0, 0, 0, 0, 0 }; // �븘援� �룆 �뵾�빐�웾 ���옣 + int enemyPoisonNum[] = { 0, 0, 0, 0, 0 }; // �쟻援� �룆 �뵾�빐�웾 ���옣 + + Pokemon dan = new Pokemon(61, 2, 1, "�떒�뜲湲�", "踰뚮젅", 1, 2, 2, "湲곗젅 �떆 �뒫�젰 �뾾�뒗 2/2�떒�뜲湲� 2 �냼�솚"); + Pokemon mang = new Pokemon(62, 1, 1, "留앺궎", "寃⑺닾", 2, 3, 2, "湲곗젅 �떆 �뒫�젰 �뾾�뒗 留앺궎 �냼�솚"); + Pokemon mo = new Pokemon(63, 1, 1, "紐⑤떎�뵾", "��", 3, 3, 3, "湲곗젅 �떆 泥대젰 2諛곗씤 �뒫�젰 �뾾�뒗 紐⑤떎�뵾 2 �냼�솚"); + + public Battle(int turnNum, Pokemon f1, Pokemon f2, Pokemon f3, Pokemon f4, Pokemon f5, int findEffect[]) { + this.friendly = new LinkedList<>(); + this.enemy = new LinkedList<>(); + this.forreplace = new LinkedList<>(); + this.findEffect = findEffect; + this.turnNum = turnNum; + forreplace.add(null); + forreplace.add(null); + forreplace.add(null); + forreplace.add(null); + forreplace.add(null); + friendly.add(0, null); + friendly.add(1, null); + friendly.add(2, null); + friendly.add(3, null); + friendly.add(4, null); + friendly.set(0, f5); + friendly.set(1, f4); + friendly.set(2, f3); + friendly.set(3, f2); + friendly.set(4, f1); + settingEnemy(); + findEffect(); + } + + int run() { + friendlyGoFront(); // �븘援� 諛곗튂 議곗젙 ( �븵�쑝濡� �븸湲곌린 ) + enemyGoFront(); // �쟻援� 諛곗튂 議곗젙 ( �븵�쑝濡� �븸湲곌린 ) + settingFriendlySummonModapi(); // �븘援� 紐⑤떎�뵾 �뒫�젰 援ы쁽 + settingEnemySummonModapi(); // �쟻援� 紐⑤떎�뵾 �뒫�젰 援ы쁽 + show(); + next(); + useStartBattleAbility(); // ��寃� �떆�옉 �떆 �뒫�젰 + next(); + isDownFriendly(); // �븘援� 湲곗젅 �솗�씤 + next(); + isDownEnemy(); // �쟻援� 湲곗젅 �솗�씤 + next(); + show(); + next(); + if (winFriendly()) { // �듅由� �솗�씤 + return 1; + } else if (winEnemy()) { + return -1; + } + useFriendlyHitAbility(); // �븘援곗씠 怨듦꺽�뿉 留욎쓣 �떆 �뒫�젰 諛쒕룞 + next(); + useEnemyHitAbility(); // �쟻援곗씠 怨듦꺽�뿉 留욎쓣 �떆 �뒫�젰 諛쒕룞 + next(); + isDownFriendly(); + next(); + isDownEnemy(); + next(); + show(); + while (true) { + if (winFriendly()) { + return 1; + } else if (winEnemy()) { + return -1; + } + hitEnemy(); + next(); + hitFriendly(); + next(); + isDownFriendly(); + next(); + isDownEnemy(); + next(); + if (winFriendly()) { + return 1; + } else if (winEnemy()) { + return -1; + } + show(); + next(); + friendlyAttackAbility(0); + next(); + enemyAttackAbility(0); + next(); + isDownFriendly(); + next(); + isDownEnemy(); + next(); + if (winFriendly()) { + return 1; + } else if (winEnemy()) { + return -1; + } + show(); + next(); + useFriendlyHitAbility(); + next(); + useEnemyHitAbility(); + next(); + isDownFriendly(); + next(); + isDownEnemy(); + next(); + if (winFriendly()) { + return 1; + } else if (winEnemy()) { + return -1; + } + show(); + next(); + } + } + + void next() { + System.out.println("�븘臾닿굅�굹 �엯�젰"); + System.out.print(">>"); + String s = sc.next(); + } + + void settingEnemy() { + setEnemy e = new setEnemy(turnNum); + enemy = e.settingEnemy(); + } + + void findEffect() { // 諛곗튂 �떒怨꾩쓽 �슚怨쇰�� 媛��졇�� 1�씠硫� 踰꾩꽢�슚怨� ���옣 + for (int i = 0; i < 5; i++) { + if (findEffect[i] == 1) { + friendlyFirstHit[i] = true; + findEffect[i] = 0; + } else { + friendlyFirstHit[i] = false; + findEffect[i] = 0; + } + } + } + + void hitFriendly() { + System.out.println("<<< �쟻援곗쓽 怨듦꺽!! >>>"); + int adjustNum = enemy.get(0).getPower(); + if (friendly.get(0).getPokemonNum() == 38 && friendlyFirstHit38) { // 泥섏쓬�쑝濡� 怨듦꺽�뿉 留욎쓣 �떆 臾댁떆 �빀�땲�떎 + System.out.println("<<< " + friendly.get(0).getName() + " �뒫�젰 �궗�슜! >>>"); + System.out.println("<<< 怨듦꺽�씠 臾댁떆 �릺�뿀�뒿�땲�떎! >>>"); + friendlyFirstHit38 = false; + return; + } + if (friendlyFirstHit[0]) { + System.out.println("<<< 踰꾩꽢 �슚怨�! 怨듦꺽�씠 臾댁떆 �릺�뿀�뒿�땲�떎! >>>"); + friendlyFirstHit[0] = false; + return; + } + if (friendly.get(0).getPokemonNum() == 32) { // 10% �솗瑜좊줈 �쟻援곗쓽 怨듦꺽�쓣 臾댁떆 + int rNum = random.nextInt(10); + if (rNum == 7) { + System.out.println("<<< " + friendly.get(0).getName() + " �뒫�젰 �궗�슜! >>>"); + System.out.println("<<< 怨듦꺽�씠 臾댁떆 �릺�뿀�뒿�땲�떎! >>>"); + return; + } + } + if (friendly.get(0).getPokemonNum() == 59) { // 諛쏅뒗 �뵾�빐媛� �젅諛섏씠 �맗�땲�떎. + System.out.println("<<< " + friendly.get(0).getName() + " �뒫�젰 �궗�슜! >>>"); + System.out.println("<<< �뵾�빐瑜� �젅諛섎쭔 諛쏆뒿�땲�떎! >>>"); + friendlyHealthAdjust(0, -(adjustNum / 2)); + System.out.println("<<< " + friendly.get(0).getName() + "�뿉寃� " + (adjustNum / 2) + "留뚰겮 �뵾�빐! >>> "); + return; + } else { + friendlyHealthAdjust(0, -(adjustNum)); + System.out.println("<<< " + friendly.get(0).getName() + "�뿉寃� " + adjustNum + "留뚰겮 �뵾�빐! >>> "); + if (friendlyPoisonNum[0] > 0) { + System.out.println("<<< �룆 異붽� �뵾�빐! >>>"); + friendlyHealthAdjust(0, -1); + friendlyPoisonNum[0]--; + } + return; + } + } + + void hitEnemy() { + System.out.println("<<< �븘援곗쓽 怨듦꺽!! >>>"); + int adjustNum = friendly.get(0).getPower(); + if (enemy.get(0).getPokemonNum() == 38 && enemyFirstHit38) { // 泥섏쓬�쑝濡� 怨듦꺽�뿉 留욎쓣 �떆 臾댁떆 �빀�땲�떎 + System.out.println("<<< " + enemy.get(0).getName() + " �뒫�젰 �궗�슜! >>>"); + System.out.println("<<< 怨듦꺽�씠 臾댁떆 �릺�뿀�뒿�땲�떎! >>>"); + enemyFirstHit38 = false; + return; + } + if (enemyFirstHit[0]) { + System.out.println("<<< 踰꾩꽢 �슚怨�! 怨듦꺽�씠 臾댁떆 �릺�뿀�뒿�땲�떎! >>>"); + enemyFirstHit[0] = false; + return; + } + if (enemy.get(0).getPokemonNum() == 32) { // 10% �솗瑜좊줈 �쟻援곗쓽 怨듦꺽�쓣 臾댁떆 + int rNum = random.nextInt(10); + if (rNum == 7) { + System.out.println("<<< " + enemy.get(0).getName() + " �뒫�젰 �궗�슜! >>>"); + System.out.println("<<< 怨듦꺽�씠 臾댁떆 �릺�뿀�뒿�땲�떎! >>>"); + return; + } + } + if (enemy.get(0).getPokemonNum() == 59) { // 諛쏅뒗 �뵾�빐媛� �젅諛섏씠 �맗�땲�떎. + System.out.println("<<< " + enemy.get(0).getName() + " �뒫�젰 �궗�슜! >>>"); + System.out.println("<<< �뵾�빐瑜� �젅諛섎쭔 諛쏆뒿�땲�떎! >>>"); + enemyHealthAdjust(0, -(adjustNum / 2)); + System.out.println("<<< " + enemy.get(0).getName() + "�뿉寃� " + (adjustNum / 2) + "留뚰겮 �뵾�빐! >>> "); + return; + } else { + enemyHealthAdjust(0, -(adjustNum)); + System.out.println("<<< " + enemy.get(0).getName() + "�뿉寃� " + adjustNum + "留뚰겮 �뵾�빐! >>> "); + if (enemyPoisonNum[0] > 0) { + System.out.println("<<< �룆 異붽� �뵾�빐! >>>"); + enemyHealthAdjust(0, -1); + enemyPoisonNum[0]--; + return; + } + return; + } + } + + void useStartBattleAbility() { // ��寃� �떆�옉 �떆 �뒫�젰 �궗�슜 + System.out.println("<<< ��寃� �떆�옉 �떆 �뒫�젰 諛쒕룞 >>>"); + int i = 0; + for (Pokemon p : friendly) { + if (p != null) { + friendlyStartBattleAbility(i); + i++; + } else { + i++; + } + } + i = 0; + for (Pokemon p : enemy) { + if (p != null) { + enemyStartBattleAbility(i); + i++; + } else { + i++; + } + } + } + + void useFriendlyHitAbility() { // 怨듦꺽�뿉 留욎쓣 �떆 �뒫�젰 �궗�슜 + System.out.println("<<< �븘援곗씠 怨듦꺽�뿉 留욎쓣 �떆 �뒫�젰 諛쒕룞 >>>"); + for (int i = 0; i < remainFriendlyNum(); i++) { + if (whoHitFriendly[i] != -1) { + friendlyHitAbility(i); + whoHitFriendly[i] = -1; + } + } + } + + void useEnemyHitAbility() { // 怨듦꺽�뿉 留욎쓣 �떆 �뒫�젰 �궗�슜 + System.out.println("<<< �쟻援곗씠 怨듦꺽�뿉 留욎쓣 �떆 �뒫�젰 諛쒕룞 >>>"); + for (int i = 0; i < remainEnemyNum(); i++) { + if (whoHitEnemy[i] != 0) { + enemyHitAbility(i); + whoHitEnemy[i] = -1; + } + } + } + + int remainFriendlyNum() { // �븘援곗쓽 �쐞移섏� �븘援곗쓽 �궓�� �닔瑜� 諛섑솚 + int i = 0; + for (Pokemon p : friendly) { + if (p != null) { + i++; + } + } + return i; + } + + int remainEnemyNum() { // �쟻援곗쓽 �쐞移섏� �븘援곗쓽 �궓�� �닔瑜� 諛섑솚 + int i = 0; + for (Pokemon p : enemy) { + if (p != null) { + i++; + } + } + return i; + } + + void show() { // �쁽�젣 �긽�솴 蹂댁뿬二쇨린 + System.out.println("<<<�븘援� vs �쟻援�>>>"); + for (int i = remainFriendlyNum() - 1; i >= 0; i--) { + if (friendly.get(i) != null) { + System.out.print(" // " + (i + 1) + "踰� " + friendly.get(i).getName() + " 怨듦꺽�젰 : " + + friendly.get(i).getPower() + " 泥대젰 : " + friendly.get(i).getHealth()); + } + + } + System.out.print(" // VS "); + for (int i = 0; i < remainEnemyNum(); i++) { + System.out.print(" // " + (i + 1) + "踰� " + enemy.get(i).getName() + " 怨듦꺽�젰 : " + enemy.get(i).getPower() + + " 泥대젰 : " + enemy.get(i).getHealth()); + } + System.out.println(""); + } + + void friendlyGoFront() { // �븵�뿉 �룷耳볥が�씠 �뾾�쑝硫� �븵�쑝濡� 梨꾩슫�떎. �뮘媛� null�씠怨� 5�씠�긽�씠硫� �궘�젣 ------ + System.out.println("<<< �븘援� 諛곗튂 議곗젙 >>>"); + int j = 0; + for (int i = 0; i < friendlyMaxPalceNum; i++) { + if (friendly.get(i) != null) { + forreplace.add(j, friendly.get(i)); + replaceHitNum[j] = whoHitFriendly[i]; + replacePoisonNum[j] = friendlyPoisonNum[i]; + replaceFirstHit[j] = friendlyFirstHit[i]; + j++; + if (i > 4) { + friendly.remove(i); + } else { + friendly.set(i, null); + } + whoHitFriendly[i] = -1; + friendlyPoisonNum[i] = 0; + friendlyFirstHit[i] = false; + } + whoHitFriendly[i] = -1; + friendlyPoisonNum[i] = 0; + friendlyFirstHit[i] = false; + } + for (int i = 0; i < j; i++) { + friendly.set(i, forreplace.get(i)); + whoHitFriendly[i] = replaceHitNum[i]; + friendlyPoisonNum[i] = replacePoisonNum[i]; + friendlyFirstHit[i] = replaceFirstHit[i]; + forreplace.set(i, null); + } + friendlyMaxPalceNum = remainFriendlyNum(); + } + + void friendlyGoBack() { // �뮘濡� �븳 移몄뵫 誘몃,�떎. + System.out.println("<<< �븘援� 諛곗튂 議곗젙 >>>"); + int number = remainFriendlyNum(); + enemy.add(0, null); + for (int i = number; i > 0; i--) { + whoHitFriendly[i] = whoHitFriendly[i - 1]; + friendlyPoisonNum[i] = friendlyPoisonNum[i - 1]; + friendlyFirstHit[i] = friendlyFirstHit[i - 1]; + } + whoHitFriendly[0] = -1; + friendlyPoisonNum[0] = 0; + friendlyFirstHit[0] = false; + friendlyMaxPalceNum++; + } + + void enemyGoFront() { // �븵�뿉 �룷耳볥が�씠 �뾾�쑝硫� �븵�쑝濡� 梨꾩슫�떎. �뮘媛� null�씠怨� 5�씠�긽�씠硫� �궘�젣 + System.out.println("<<< �쟻援� 諛곗튂 議곗젙 >>>"); + int j = 0; + for (int i = 0; i < enemyMaxPalceNum; i++) { + if (enemy.get(i) != null) { + forreplace.add(j, enemy.get(i)); + replaceHitNum[j] = whoHitEnemy[i]; + replacePoisonNum[j] = enemyPoisonNum[i]; + replaceFirstHit[j] = enemyFirstHit[i]; + j++; + if (i > 4) { + enemy.remove(i); + } else { + enemy.set(i, null); + } + whoHitEnemy[i] = -1; + enemyPoisonNum[i] = 0; + enemyFirstHit[i] = false; + } + whoHitEnemy[i] = -1; + enemyPoisonNum[i] = 0; + enemyFirstHit[i] = false; + } + for (int i = 0; i <= j; i++) { + enemy.set(i, forreplace.get(i)); + whoHitEnemy[i] = replaceHitNum[i]; + enemyPoisonNum[i] = replacePoisonNum[i]; + enemyFirstHit[i] = replaceFirstHit[i]; + forreplace.set(i, null); + } + enemyMaxPalceNum = remainEnemyNum(); + } + + void enemyGoBack() { // �뮘濡� �븳 移몄뵫 誘몃,�떎. + System.out.println("<<< �쟻援� 諛곗튂 議곗젙 >>>"); + int number = remainEnemyNum(); + enemy.add(0, null); + for (int i = number; i > 0; i--) { + whoHitEnemy[i] = whoHitEnemy[i - 1]; + enemyPoisonNum[i] = enemyPoisonNum[i - 1]; + enemyFirstHit[i] = enemyFirstHit[i - 1]; + } + whoHitEnemy[0] = -1; + enemyPoisonNum[0] = 0; + enemyFirstHit[0] = false; + enemyMaxPalceNum++; + } + + boolean winEnemy() { + if (remainFriendlyNum() == 0) { + System.out.println("<<< �쟻援� �듅由�! >>>"); + return true; + } + return false; + } + + boolean winFriendly() { + if (remainEnemyNum() == 0) { + System.out.println("<<< �븘援� �듅由�! >>>"); + return true; + } + return false; + } + + void isDownFriendly() { // 湲곗젅 �떆 �뾾�븻�떎 + System.out.println("<<< �븘援� 湲곗젅 �솗�씤 >>>"); + for (int i = 0; i < remainFriendlyNum(); i++) { + if (friendly.get(i) != null) { + if (friendly.get(i).getHealth() <= 0) { + System.out.println("<<< " + friendly.get(i).getName() + " 湲곗젅! >>>"); + friendlyFrontDownAbility(i); + friendlyDownAbility(i); + friendlyGoFront(); + } + } + + } + } + + void isDownEnemy() { // 湲곗젅 �떆 �뾾�븻�떎 + System.out.println("<<< �쟻援� 湲곗젅 �솗�씤 >>>"); + for (int i = 0; i < remainEnemyNum(); i++) { + if (enemy.get(i) != null) { + if (enemy.get(i).getHealth() <= 0) { + System.out.println("<<< " + enemy.get(i).getName() + " 湲곗젅! >>>"); + enemyFrontDownAbility(i); + enemyDownAbility(i); + enemyGoFront(); + } + } + + } + } + + void friendlyHealthAdjust(int placeNum, int adjustNum) { // �븘援� 泥대젰 議곗젙 + if (friendly.get(placeNum) != null) { + if (placeNum < 4 && friendly.get(placeNum + 1) != null) { + if (friendly.get(placeNum + 1).getPokemonNum() == 42) { + System.out.println("<<< " + friendly.get(placeNum + 1).getName() + " �뒫�젰 �궗�슜! >>>"); + friendly.get(placeNum).setHealth(friendly.get(placeNum).getHealth() + (adjustNum / 10 * 8)); + friendly.get(placeNum + 1).setHealth(friendly.get(placeNum + 1).getHealth() + (adjustNum / 10 * 2)); + System.out.println("<<< " + friendly.get(placeNum + 1).getName() + " 媛� " + + (friendly.get(placeNum).getHealth() + adjustNum) / 10 * 2 + " 留뚰겮 ���떊 留욎븘以ъ뒿�땲�떎! >>>"); + return; + } + } + friendly.get(placeNum).setHealth(friendly.get(placeNum).getHealth() + adjustNum); + return; + } + } + + void friendlyPowerAdjust(int placeNum, int adjustNum) { // �븘援� 怨듦꺽�젰 議곗젙 + if (friendly.get(placeNum) != null) + friendly.get(placeNum).setPower(friendly.get(placeNum).getPower() + adjustNum); + } + + void enemyHealthAdjust(int placeNum, int adjustNum) { // �쟻援� 泥대젰 議곗젙 + if (enemy.get(placeNum) != null) { + if (placeNum < 4 && enemy.get(placeNum + 1) != null) { + if (enemy.get(placeNum + 1).getPokemonNum() == 42) { // �븵�뿉 �엳�뒗 �븘援� 怨듦꺽�뿉 留욎쓣 �떆 // 20% ���떊 留욎븘以띾땲�떎. + System.out.println("<<< " + enemy.get(placeNum + 1).getName() + " �뒫�젰 �궗�슜! >>>"); + enemy.get(placeNum).setHealth(enemy.get(placeNum).getHealth() + (adjustNum / 10 * 8)); + enemy.get(placeNum + 1).setHealth(enemy.get(placeNum + 1).getHealth() + (adjustNum / 10 * 2)); + System.out.println("<<< " + enemy.get(placeNum + 1).getName() + " 媛� " + + (enemy.get(placeNum).getHealth() + adjustNum) / 10 * 2 + " 留뚰겮 ���떊 留욎븘以ъ뒿�땲�떎! >>>"); + return; + } + } + enemy.get(placeNum).setHealth(enemy.get(placeNum).getHealth() + adjustNum); + return; + } + } + + void enemyPowerAdjust(int placeNum, int adjustNum) { // �쟻援� 怨듦꺽�젰 議곗젙 + if (enemy.get(placeNum) != null) + enemy.get(placeNum).setPower(enemy.get(placeNum).getPower() + adjustNum); + } + + void findHitEnemy(int hit, int who) { // �쟻援곗쓣 �븣由� �븘援곗쓽 �쐞移섎�� ���옣 + if (whoHitEnemy[hit] == -1) { + whoHitEnemy[hit] = who; + } + } + + void findHitfriendly(int hit, int who) {// �븘援곗쓣 �븣由� �쟻援곗쓽 �쐞移섎�� ���옣 + if (whoHitFriendly[hit] == -1) { + whoHitFriendly[hit] = who; + } + } + + void friendlyAbillity45() {// 45踰� �뒫�젰�쓣 �쐞�빐 HP ���옣 + for (Pokemon p : friendly) { + if (p.getPokemonNum() == 45) { + friendlyHP45 = p.getHealth(); + return; + } + } + } + + void enemyAbillity45() {// 45踰� �뒫�젰�쓣 �쐞�빐 HP ���옣 + for (Pokemon p : enemy) { + if (p.getPokemonNum() == 45) { + enemyHP45 = p.getHealth(); + return; + } + } + } + + void settingFriendlySummonModapi() { // 紐⑤떎�뵾 �뒫�젰 �꽭�똿 + System.out.println("<<< �븘援� 紐⑤떎�뵾 �뒫�젰 援ы쁽 >>>"); + for (int i = 0; i < remainFriendlyNum(); i++) { + if (friendly.get(i).getPokemonNum() == 28) { + mo.setHealth(friendly.get(i).getHealth() * 2); + } + } + mo.setHealth(3); + } + + void settingEnemySummonModapi() { // 紐⑤떎�뵾 �뒫�젰 �꽭�똿 + System.out.println("<<< �쟻援� 紐⑤떎�뵾 �뒫�젰 援ы쁽 >>>"); + for (int i = 0; i < remainEnemyNum(); i++) { + if (enemy.get(i).getPokemonNum() == 28) { + mo.setHealth(enemy.get(i).getHealth() * 2); + } + } + mo.setHealth(3); + } + + // ------------ �뒫�젰 �븿�닔 ----------------- + + int findFriendlylv(int pokemonNum) { + for (int i = 0; i < remainFriendlyNum(); i++) { + if (friendly.get(i) != null) { + if (friendly.get(i).getPokemonNum() == pokemonNum) { + return friendly.get(i).getLv(); + } + } + } + return -1; + } + + void friendlyStartBattleAbility(int placeNum) { // ��寃� �떆�옉 �떆 �뒫�젰 + int lv54 = findFriendlylv(54); + int lv = friendly.get(placeNum).getLv(); + switch (friendly.get(placeNum).getPokemonNum()) { + case 3: { // ��寃� �떆�옉 �떆 �쟻援� �옖�뜡 �븯�굹�뿉寃� 2, 3, 4 �뵾�빐 + int abilityNum = lv + 1; + while (true) { + int rNum = random.nextInt(remainEnemyNum()); + if (enemy.get(rNum) != null) { + System.out.println("<<< " + friendly.get(placeNum).getName() + " �뒫�젰 �궗�슜! >>>"); + System.out.println("<<< " + friendly.get(placeNum).getAbility() + " >>>"); + if (friendlyFindPokemon(54)) { + if (rNum - 1 >= 0 && enemy.get(rNum - 1) != null) { + if (enemy.get(rNum - 1).getPokemonNum() == 52) { + System.out.println("<<< " + enemy.get(rNum - 1).getName() + " �뒫�젰 �궗�슜! >>>"); + rNum -= 1; + System.out.println("<<< ���떊 留욎뒿�땲�떎! >>>"); + } + } + System.out.println("<<< " + "戮�戮��씪" + "�쓽 異붽� �뒫�젰 �궗�슜! >>>"); + enemyHealthAdjust(rNum, -(abilityNum + lv54)); + findHitEnemy(rNum, placeNum); + System.out + .println("<<< " + enemy.get(rNum).getName() + "�뿉寃� " + (abilityNum + lv54) + " �뵾�빐! >>>"); + } else { + if (rNum - 1 >= 0 && enemy.get(rNum - 1) != null) { + if (enemy.get(rNum - 1).getPokemonNum() == 52) { + System.out.println("<<< " + enemy.get(rNum - 1).getName() + " �뒫�젰 �궗�슜! >>>"); + rNum -= 1; + System.out.println("<<< ���떊 留욎뒿�땲�떎! >>>"); + } + } + enemyHealthAdjust(rNum, -abilityNum); + findHitEnemy(rNum, placeNum); + System.out.println("<<< " + enemy.get(rNum).getName() + "�뿉寃� " + (abilityNum) + " �뵾�빐! >>>"); + } + return; + } + } + } + case 10: { // ��寃� �떆�옉 �떆 媛��옣 �뮘�뿉 �엳�뒗 �쟻援� 1, 2, 3 �뵾�빐 + int enemyPlaceNum = remainEnemyNum() - 1; + int abilityNum = lv; + if (enemyPlaceNum < 0) { + return; + } + System.out.println("<<< " + friendly.get(placeNum).getName() + " �뒫�젰 �궗�슜! >>>"); + if (friendlyFindPokemon(54)) { + if (enemyPlaceNum - 1 >= 0 && enemy.get(enemyPlaceNum - 1) != null) { + if (enemy.get(enemyPlaceNum - 1).getPokemonNum() == 52) { + System.out.println("<<< " + enemy.get(enemyPlaceNum - 1).getName() + " �뒫�젰 �궗�슜! >>>"); + enemyPlaceNum -= 1; + System.out.println("<<< ���떊 留욎뒿�땲�떎! >>>"); + } + } + System.out.println("<<< " + "戮�戮��씪" + "�쓽 異붽� �뒫�젰 �궗�슜! >>>"); + enemyHealthAdjust(enemyPlaceNum, -(abilityNum + lv54)); + findHitEnemy(enemyPlaceNum, placeNum); + System.out.println( + "<<< " + enemy.get(enemyPlaceNum).getName() + "�뿉寃� " + (abilityNum + lv54) + " �뵾�빐! >>>"); + } else { + if (enemyPlaceNum - 1 >= 0 && enemy.get(enemyPlaceNum - 1) != null) { + if (enemy.get(enemyPlaceNum - 1).getPokemonNum() == 52) { + System.out.println("<<< " + enemy.get(enemyPlaceNum - 1).getName() + " �뒫�젰 �궗�슜! >>>"); + enemyPlaceNum -= 1; + System.out.println("<<< ���떊 留욎뒿�땲�떎! >>>"); + } + } + enemyHealthAdjust(enemyPlaceNum, -abilityNum); + findHitEnemy(enemyPlaceNum, placeNum); + System.out.println("<<< " + enemy.get(enemyPlaceNum).getName() + "�뿉寃� " + (abilityNum) + " �뵾�빐! >>>"); + } + return; + + } + case 12: { // ��寃� �떆�옉 �떆 紐⑤뱺 �쟻援� 1, 2, 3 �뵾�빐 + int enemyPlaceNum = remainEnemyNum(); + int abilityNum = lv; + System.out.println("<<< " + friendly.get(placeNum).getName() + " �뒫�젰 �궗�슜>>>"); + for (int i = 0; i < enemyPlaceNum; i++) { + if (friendlyFindPokemon(54)) { + if (i - 1 >= 0 && enemy.get(i - 1) != null) { + if (enemy.get(i - 1).getPokemonNum() == 52 || i - 1 >= 0) { + System.out.println("<<< " + enemy.get(i - 1).getName() + " �뒫�젰 �궗�슜! >>>"); + System.out.println("<<< ���떊 留욎뒿�땲�떎! >>>"); + System.out.println("<<< " + "戮�戮��씪" + "�쓽 異붽� �뒫�젰 �궗�슜! >>>"); + enemyHealthAdjust(i - 1, -(abilityNum + lv54)); + findHitEnemy(enemyPlaceNum - 1, placeNum); + System.out.println( + "<<< " + enemy.get(i - 1).getName() + "�뿉寃� " + (abilityNum + lv54) + " �뵾�빐! >>>"); + } + } else { + System.out.println("<<< " + "戮�戮��씪" + "�쓽 異붽� �뒫�젰 �궗�슜! >>>"); + enemyHealthAdjust(i, -(abilityNum + lv54)); + findHitEnemy(enemyPlaceNum, placeNum); + System.out.println("<<< " + enemy.get(i).getName() + "�뿉寃� " + (abilityNum + lv54) + " �뵾�빐! >>>"); + } + } else { + if (i - 1 >= 0 && enemy.get(i - 1) != null) { + if (enemy.get(i - 1).getPokemonNum() == 52) { + System.out.println("<<< " + enemy.get(i - 1).getName() + " �뒫�젰 �궗�슜! >>>"); + System.out.println("<<< ���떊 留욎뒿�땲�떎! >>>"); + enemyHealthAdjust(i - 1, -abilityNum); + findHitEnemy(enemyPlaceNum - 1, placeNum); + System.out.println("<<< " + enemy.get(i - 1).getName() + "�뿉寃� " + (abilityNum) + " �뵾�빐! >>>"); + } + } else { + enemyHealthAdjust(i, -abilityNum); + findHitEnemy(enemyPlaceNum, placeNum); + System.out.println("<<< " + enemy.get(i).getName() + "�뿉寃� " + (abilityNum) + " �뵾�빐! >>>"); + } + } + } + return; + } + case 23: { // ��寃� �떆�옉 �떆 �븵�뿉 �엳�뒗 �븘援곗뿉寃� 泥대젰 50%, 70%, 100% 留뚰겮 利앷� + if (placeNum != 0) { + System.out.println("<<< " + friendly.get(placeNum).getName() + " �뒫�젰 �궗�슜! >>>"); + int adjustNum = friendly.get(placeNum).getHealth() / 2; + if (lv == 2) { + adjustNum = friendly.get(placeNum).getHealth() * 7 / 10; + } else if (lv == 3) { + adjustNum = friendly.get(placeNum).getHealth(); + } + friendlyHealthAdjust(placeNum - 1, adjustNum); + System.out + .println("<<< " + friendly.get(placeNum - 1).getName() + "�뿉寃� 泥대젰 " + adjustNum + "留뚰겮 利앷�! >>>"); + return; + } + return; + } + case 26: { // ��寃� �떆�옉 �떆 �븵�뿉 �엳�뒗 �븘援곗뿉寃� 怨듦꺽�젰 50%, 70%, 100% 留뚰겮 異붽� + int lv25 = findFriendlylv(25); + if (placeNum != 0) { + System.out.println("<<< " + friendly.get(placeNum).getName() + " �뒫�젰 �궗�슜! >>>"); + int adjustNum = friendly.get(placeNum).getPower() / 2; + if (lv == 2) { + adjustNum = friendly.get(placeNum).getPower() * 7 / 10; + } else if (lv == 3) { + adjustNum = friendly.get(placeNum).getPower(); + } + friendlyPowerAdjust(placeNum - 1, adjustNum); + System.out + .println("<<< " + friendly.get(placeNum - 1).getName() + "�뿉寃� 怨듦꺽�젰 " + adjustNum + "留뚰겮 利앷�! >>>"); + if (friendlyFindPokemon(25)) { + System.out.println("<<< " + "諛쒖콡�씠" + "�쓽 異붽� �뒫�젰 �궗�슜! >>>"); + friendlyPowerAdjust(placeNum - 1, lv25); + System.out + .println("<<< " + friendly.get(placeNum - 1).getName() + "�뿉寃� 怨듦꺽�젰 " + lv25 + " 留뚰겮 利앷�! >>>"); + } + return; + } + return; + } + case 29: {// ��寃� �떆�옉 �떆 媛��옣 �뮘�뿉 �엳�뒗 �쟻援곗뿉寃� 1, 2, 3 �룆 �뵾�빐 + int abilityNum = lv; + System.out.println("<<< " + friendly.get(placeNum).getName() + " �뒫�젰 �궗�슜! >>>"); + int enemyPlaceNum = remainEnemyNum() - 1; + if (enemyPlaceNum - 1 >= 0 && enemy.get(enemyPlaceNum - 1) != null) { + if (enemy.get(enemyPlaceNum - 1).getPokemonNum() == 52) { + System.out.println("<<< " + enemy.get(enemyPlaceNum - 1).getName() + " �뒫�젰 �궗�슜! >>>"); + enemyPlaceNum -= 1; + System.out.println("<<< ���떊 留욎뒿�땲�떎! >>>"); + } + } + friendlyPoisonNum[enemyPlaceNum] += abilityNum; + System.out.println("<<< " + enemy.get(enemyPlaceNum).getName() + "�뿉寃� " + abilityNum + " �룆 �뵾�빐! >>>"); + return; + } + case 31: { // ��寃� �떆�옉 �떆 紐⑤뱺 �쑀�떅 1, 2, 3 �뵾�빐 + int abilityNum = lv; + int friendlyNum = remainFriendlyNum(); + int enemyNum = remainEnemyNum(); + System.out.println("<<< " + friendly.get(placeNum).getName() + " �뒫�젰 �궗�슜! >>>"); + for (int i = 0; i < friendlyNum; i++) { + if (i - 1 >= 0 && friendly.get(i - 1) != null) { + if (friendly.get(i - 1).getPokemonNum() == 52) { + System.out.println("<<< " + friendly.get(i - 1).getName() + " �뒫�젰 �궗�슜! >>>"); + System.out.println("<<< ���떊 留욎뒿�땲�떎! >>>"); + friendlyHealthAdjust(i - 1, -abilityNum); + System.out.println("<<< " + friendly.get(i - 1).getName() + "�뿉寃� " + abilityNum + " �뵾�빐! >>>"); + findHitfriendly(i - 1, -1); + } + } else { + friendlyHealthAdjust(i, -abilityNum); + System.out.println("<<< " + friendly.get(i).getName() + "�뿉寃� " + abilityNum + " �뵾�빐! >>>"); + findHitfriendly(i, -1); + } + + } + if (friendlyFindPokemon(54)) { + System.out.println("<<< " + "戮�戮��씪" + "�쓽 異붽� �뒫�젰 �궗�슜! >>>"); + for (int i = 0; i < enemyNum; i++) { + if (i - 1 >= 0 && enemy.get(i - 1) != null) { + if (enemy.get(i - 1).getPokemonNum() == 52) { + System.out.println("<<< " + enemy.get(i - 1).getName() + " �뒫�젰 �궗�슜! >>>"); + System.out.println("<<< ���떊 留욎뒿�땲�떎! >>>"); + enemyHealthAdjust(i - 1, -(abilityNum + lv54)); + findHitEnemy(i - 1, placeNum); + System.out.println( + "<<< " + enemy.get(i - 1).getName() + "�뿉寃� " + (abilityNum + lv54) + " �뵾�빐! >>>"); + } + } else { + enemyHealthAdjust(i, -(lv54 + abilityNum)); + findHitEnemy(i, placeNum); + System.out.println("<<< " + enemy.get(i).getName() + "�뿉寃� " + (abilityNum + lv54) + " �뵾�빐! >>>"); + } + } + } else { + for (int i = 0; i < enemyNum; i++) { + if (i - 1 >= 0 && enemy.get(i - 1) != null) { + if (enemy.get(i - 1).getPokemonNum() == 52) { + System.out.println("<<< " + enemy.get(i - 1).getName() + " �뒫�젰 �궗�슜! >>>"); + System.out.println("<<< ���떊 留욎뒿�땲�떎! >>>"); + enemyHealthAdjust(i - 1, -abilityNum); + findHitEnemy(i - 1, placeNum); + System.out.println("<<< " + enemy.get(i - 1).getName() + "�뿉寃� " + (abilityNum) + " �뵾�빐! >>>"); + } + } else { + enemyHealthAdjust(i, -abilityNum); + findHitEnemy(i, placeNum); + System.out.println("<<< " + enemy.get(i).getName() + "�뿉寃� " + (abilityNum) + " �뵾�빐! >>>"); + } + } + } + return; + } + case 37: { // ��寃� �떆�옉 �떆 紐⑤뱺 �븘援곗쓽 泥대젰 30%, 40%, 50% 留뚰겮 利앷� + int friendlyNum = remainFriendlyNum(); + System.out.println("<<< " + friendly.get(placeNum).getName() + " �뒫�젰 �궗�슜! >>>"); + int adjustNum = friendly.get(placeNum).getHealth() * 3 / 10; + if (lv == 2) { + adjustNum = friendly.get(placeNum).getHealth() * 4 / 10; + } else if (lv == 3) { + adjustNum = friendly.get(placeNum).getHealth() * 5 / 10; + } + for (int i = 0; i < friendlyNum; i++) { + friendlyHealthAdjust(i, adjustNum); + System.out.println("<<< " + friendly.get(i).getName() + "�뿉寃� 泥대젰 " + adjustNum + "留뚰겮 利앷�! >>>"); + } + return; + } + case 50: { // ��寃� �떆�옉 �떆 媛숈� �쐞移섏뿉 �엳�뒗 �쟻援곗뿉寃� �뵾�빐 �엯�옓�땲�떎. + System.out.println("<<< " + friendly.get(placeNum).getName() + " �뒫�젰 �궗�슜! >>>"); + int adjustNum = friendly.get(placeNum).getPower(); + if (friendlyFindPokemon(54)) { + if (placeNum - 1 >= 0 && enemy.get(placeNum - 1) != null) { + if (enemy.get(placeNum - 1).getPokemonNum() == 52) { + System.out.println("<<< " + enemy.get(placeNum - 1).getName() + " �뒫�젰 �궗�슜! >>>"); + System.out.println("<<< ���떊 留욎뒿�땲�떎! >>>"); + System.out.println("<<< " + "戮�戮��씪" + "�쓽 異붽� �뒫�젰 �궗�슜! >>>"); + enemyHealthAdjust(placeNum - 1, -(adjustNum + lv54)); + findHitEnemy(placeNum - 1, placeNum); + System.out.println( + "<<< " + enemy.get(placeNum - 1).getName() + "�뿉寃� " + (adjustNum + lv54) + " �뵾�빐! >>>"); + } + } else { + System.out.println("<<< " + "戮�戮��씪" + "�쓽 異붽� �뒫�젰 �궗�슜! >>>"); + enemyHealthAdjust(placeNum, -(adjustNum + lv54)); + findHitEnemy(placeNum, placeNum); + System.out + .println("<<< " + enemy.get(placeNum).getName() + "�뿉寃� " + (adjustNum + lv54) + " �뵾�빐! >>>"); + } + + return; + } else { + if (placeNum - 1 >= 0 && enemy.get(placeNum - 1) != null) { + if (enemy.get(placeNum - 1).getPokemonNum() == 52) { + System.out.println("<<< " + enemy.get(placeNum - 1).getName() + " �뒫�젰 �궗�슜! >>>"); + System.out.println("<<< ���떊 留욎뒿�땲�떎! >>>"); + enemyHealthAdjust(placeNum - 1, -friendly.get(placeNum).getPower()); + findHitEnemy(placeNum - 1, placeNum); + System.out.println("<<< " + enemy.get(placeNum - 1).getName() + "�뿉寃� " + adjustNum + " �뵾�빐! >>>"); + } + } else { + enemyHealthAdjust(placeNum, -friendly.get(placeNum).getPower()); + findHitEnemy(placeNum, placeNum); + System.out.println("<<< " + enemy.get(placeNum).getName() + "�뿉寃� " + adjustNum + " �뵾�빐! >>>"); + } + return; + } + } + default: { + return; + } + } + } + + void friendlyAttackAbility(int placeNum) { // 怨듦꺽 �떆 �뒫�젰 + System.out.println("<<< �븘援� 怨듦꺽 �떆 �뒫�젰 諛쒕룞 >>>"); + int lv25 = findFriendlylv(25); + int lv = friendly.get(placeNum).getLv(); + if (friendly.get(placeNum) != null) { + switch (friendly.get(placeNum).getPokemonNum()) { + case 5: { // 怨듦꺽 �떆 怨듦꺽�젰 2, 3, 4 利앷� + int abilityNum = 1 + lv; + System.out.println("<<< " + friendly.get(placeNum).getName() + " �뒫�젰 �궗�슜! >>>"); + friendlyPowerAdjust(placeNum, abilityNum); + System.out.println("<<< " + friendly.get(placeNum).getName() + " 怨듦꺽�젰 " + abilityNum + "留뚰겮 利앷�! >>>"); + if (friendlyFindPokemon(25)) { + System.out.println("<<< " + "諛쒖콡�씠" + "�쓽 異붽� �뒫�젰 �궗�슜! >>>"); + friendlyPowerAdjust(placeNum, lv25); + System.out.println("<<< " + friendly.get(placeNum).getName() + "�뿉寃� 怨듦꺽�젰 " + lv25 + " 留뚰겮 利앷�! >>>"); + } + return; + } + case 16: { // 怨듦꺽 �떆 �뮘�뿉 �엳�뒗 �븘援� 泥대젰 2, 3, 4 利앷� + System.out.println("<<< " + friendly.get(placeNum).getName() + " �뒫�젰 �궗�슜! >>>"); + if (friendly.get(placeNum + 1) != null) { + friendlyHealthAdjust(placeNum + 1, lv + 1); + System.out.println( + "<<< " + friendly.get(placeNum - 1).getName() + "�뿉寃� 泥대젰 " + (lv + 1) + "留뚰겮 利앷�! >>>"); + } + return; + } + case 22: { // 怨듦꺽 �떆 �옖�뜡�븳 �쟻援곗뿉寃� 怨듦꺽�젰 50%, 70%, 100% �쓽 �뵾�빐 + while (true) { + int rNum = random.nextInt(5); + if (enemy.get(rNum) != null) { + System.out.println("<<< " + friendly.get(placeNum).getName() + " �뒫�젰 �궗�슜! >>>"); + int adjustNum = friendly.get(placeNum).getPower() / 2; + if (lv == 2) { + adjustNum = friendly.get(placeNum).getPower() * 7 / 10; + } else if (lv == 3) { + adjustNum = friendly.get(placeNum).getPower(); + } + enemyHealthAdjust(rNum, adjustNum); + System.out.println("<<< " + enemy.get(rNum).getName() + "�뿉寃� " + adjustNum + " �뵾�빐! >>>"); + whoHitEnemy[rNum] = placeNum; + return; + } + } + } + case 24: { // 怨듦꺽�떆 25%, 35%, 50% �솗瑜좊줈 異붽� 怨듦꺽 + if (lv == 1) { + int rNum = random.nextInt(4); + if (rNum == 0) { + System.out.println("<<< " + friendly.get(0).getName() + " �뒫�젰 �궗�슜! >>>"); + hitEnemy(); + } + return; + } else if (lv == 2) { + int rNum = random.nextInt(100); + if (rNum < 35) { + System.out.println("<<< " + friendly.get(0).getName() + " �뒫�젰 �궗�슜! >>>"); + hitEnemy(); + } + return; + } else if (lv == 3) { + int rNum = random.nextInt(100); + if (rNum < 35) { + System.out.println("<<< " + friendly.get(0).getName() + " �뒫�젰 �궗�슜! >>>"); + hitEnemy(); + } + return; + } + + } + case 27: { // 怨듦꺽 �떆 怨듦꺽�젰 4, 5, 6 利앷� + int abilityNum = 3 + lv; + System.out.println("<<< " + friendly.get(placeNum).getName() + " �뒫�젰 �궗�슜! >>>"); + friendlyPowerAdjust(placeNum, abilityNum); + System.out.println("<<< " + friendly.get(placeNum).getName() + " 怨듦꺽�젰 " + abilityNum + " 留뚰겮 利앷�! >>>"); + if (friendlyFindPokemon(25)) { + System.out.println("<<< " + "諛쒖콡�씠" + "�쓽 異붽� �뒫�젰 �궗�슜! >>>"); + friendlyPowerAdjust(placeNum, lv25); + System.out.println("<<< " + friendly.get(placeNum).getName() + "�뿉寃� 怨듦꺽�젰 " + lv25 + " 留뚰겮 利앷�! >>>"); + } + return; + } + case 40: { // 怨듦꺽 �떆 怨듦꺽�젰, 泥대젰 3, 4, 5 利앷� + int abilityNum = 2 + lv; + System.out.println("<<< " + friendly.get(placeNum).getName() + " �뒫�젰 �궗�슜! >>>"); + friendlyPowerAdjust(placeNum, abilityNum); + System.out.println("<<< " + friendly.get(placeNum).getName() + " 怨듦꺽�젰 " + abilityNum + " 留뚰겮 利앷�! >>>"); + friendlyHealthAdjust(placeNum, abilityNum); + System.out.println("<<< " + friendly.get(placeNum).getName() + " 泥대젰 " + abilityNum + " 留뚰겮 利앷�! >>>"); + if (friendlyFindPokemon(25)) { + System.out.println("<<< " + "諛쒖콡�씠" + "�쓽 異붽� �뒫�젰 �궗�슜! >>>"); + friendlyPowerAdjust(placeNum, lv25); + System.out.println("<<< " + friendly.get(placeNum).getName() + "�뿉寃� 怨듦꺽�젰 " + lv25 + " 留뚰겮 利앷�! >>>"); + } + return; + } + case 44: { // �씠 �룷耳볥が�� 2踰� 怨듦꺽 �빀�땲�떎 + System.out.println("<<< " + friendly.get(0).getName() + " �뒫�젰 �궗�슜! >>>"); + hitEnemy(); + return; + + } + case 46: { // 怨듦꺽 �떆 �쟻援곗쓽 怨듦꺽�젰 20%, 30%, 50% 留뚰겮 媛먯냼�빀�땲�떎 + System.out.println("<<< " + friendly.get(placeNum).getName() + " �뒫�젰 �궗�슜! >>>"); + int adjustNum = enemy.get(0).getPower() / 5; + if (lv == 2) { + adjustNum = enemy.get(0).getPower() * 3 / 10; + } else if (lv == 3) { + adjustNum = enemy.get(0).getPower() / 2; + } + enemyPowerAdjust(0, -(adjustNum)); + System.out.println("<<< " + enemy.get(0).getName() + " 怨듦꺽�젰 " + adjustNum + " 留뚰겮 媛먯냼! >>>"); + return; + } + case 58: { // 怨듦꺽 �떆 怨듦꺽�젰�쓽 50%, 60%, 75%留뚰겮 洹� �뮘�뿉�엳�뒗 �쟻援곗뿉寃� �뵾�빐 + System.out.println("<<< " + friendly.get(placeNum).getName() + " �뒫�젰 �궗�슜! >>>"); + int adjustNum = friendly.get(placeNum).getPower() / 2; + if (lv == 2) { + adjustNum = friendly.get(placeNum).getPower() * 6 / 10; + } else if (lv == 3) { + adjustNum = friendly.get(placeNum).getPower() * 75 / 100; + } + enemyPowerAdjust(1, -(adjustNum)); + System.out.println("<<< " + enemy.get(1).getName() + "�뿉寃� " + adjustNum + " 留뚰겮 異붽� �뵾�빐! >>>"); + return; + } + default: { + return; + } + } + } + } + + void friendlyFrontFightAbillity(int placeNum) { // �븵�쓽 �븘援� 怨듦꺽 �떆 �뒫�젰 + System.out.println("<<< �븵�뿉 �엳�뒗 �븘援� 怨듦꺽 �떆 �뒫�젰 諛쒕룞 >>>"); + int lv = friendly.get(placeNum).getLv(); + if (friendly.get(placeNum + 1) != null) { + switch (friendly.get(placeNum + 1).getPokemonNum()) { + case 9: { // �븵�쓽 �븘援곗씠 怨듦꺽 �떆 �븵�쓽 �븘援� 泥대젰 2, 3, 4 利앷� + int abilityNum = 1 + lv; + System.out.println("<<< " + friendly.get(placeNum + 1).getName() + " �뒫�젰 �궗�슜! >>>"); + friendlyHealthAdjust(placeNum, abilityNum); + System.out.println("<<< " + friendly.get(placeNum).getName() + " 泥대젰 " + abilityNum + " 留뚰겮 利앷�! >>>"); + return; + } + case 55: { // �븵�쓽 �븘援� 怨듦꺽 �떆 1踰� �뜑 怨듦꺽�떆�궢�땲�떎. + System.out.println("<<< " + friendly.get(1).getName() + " �뒫�젰 �궗�슜! >>>"); + hitEnemy(); + return; + } + default: { + return; + } + } + } + } + + void friendlyHitAbility(int placeNum) { // 留욎쓣 �떆 �뒫�젰 + System.out.println("<<< �븘援곗씠 留욎쓣 �떆 �뒫�젰 諛쒕룞 >>>"); + int lv = friendly.get(placeNum).getLv(); + int lv25 = findFriendlylv(25); + if (friendly.get(placeNum) != null) { + switch (friendly.get(placeNum).getPokemonNum()) { + case 4: { // 怨듦꺽�뿉 留욎쓣 �떆 怨듦꺽�븳 ���긽�뿉寃� 1, 2, 3 �뵾�빐 + int enemyNum = whoHitFriendly[placeNum]; + if (enemyNum != -1) { + System.out.println("<<< " + friendly.get(placeNum).getName() + " �뒫�젰 �궗�슜! >>>"); + if (enemyNum > 0) { + if (enemy.get(enemyNum - 1) != null) { + if (enemy.get(enemyNum - 1).getPokemonNum() == 52) { + System.out.println("<<< " + enemy.get(enemyNum - 1).getName() + " �뒫�젰 �궗�슜! >>>"); + System.out.println("<<< ���떊 留욎뒿�땲�떎! >>>"); + enemyNum -= 1; + } + } + } + enemyHealthAdjust(enemyNum, -lv); + System.out.println("<<< " + enemy.get(enemyNum).getName() + "�뿉寃� " + lv + " �뵾�빐! >>>"); + whoHitFriendly[placeNum] = -1; + return; + } + return; + } + case 11: { // 怨듦꺽�뿉 留욎쓣 �떆 怨듦꺽�븳 �쟻援� 怨듦꺽�젰 1, 2, 3 媛먯냼 + if (whoHitFriendly[placeNum] != -1) { + int enemyNum = whoHitFriendly[placeNum]; + System.out.println("<<< " + friendly.get(placeNum).getName() + " �뒫�젰 �궗�슜! >>>"); + enemyPowerAdjust(enemyNum, -lv); + System.out.println("<<< " + enemy.get(enemyNum).getName() + " 怨듦꺽�젰 " + lv + " 媛먯냼! >>>"); + whoHitFriendly[placeNum] = -1; + return; + } + whoHitFriendly[placeNum] = -1; + return; + } + case 21: { // 怨듦꺽�뿉 留욎쓣 �떆 怨듦꺽�젰,泥대젰 2, 3, 4 利앷� + int abilityNum = 1 + lv; + System.out.println("<<< " + friendly.get(placeNum).getName() + " �뒫�젰 �궗�슜! >>>"); + friendlyHealthAdjust(placeNum, abilityNum); + System.out.println("<<< " + friendly.get(placeNum).getName() + " 泥대젰 " + abilityNum + " 留뚰겮 利앷�! >>>"); + friendlyPowerAdjust(placeNum, abilityNum); + System.out.println("<<< " + friendly.get(placeNum).getName() + " 怨듦꺽�젰 " + abilityNum + " 留뚰겮 利앷�! >>>"); + if (friendlyFindPokemon(25)) { + System.out.println("<<< " + "諛쒖콡�씠" + "�쓽 異붽� �뒫�젰 �궗�슜! >>>"); + friendlyPowerAdjust(placeNum, lv25); + System.out.println("<<< " + friendly.get(placeNum).getName() + "�뿉寃� 怨듦꺽�젰 " + lv25 + "留뚰겮 利앷�! >>>"); + } + whoHitFriendly[placeNum] = -1; + return; + } + case 30: { // 怨듦꺽�뿉 留욎쓣 �떆 泥대젰 4, 5, 6 利앷� + int abilityNum = 3 + lv; + System.out.println("<<< " + friendly.get(placeNum).getName() + " �뒫�젰 �궗�슜! >>>"); + friendlyHealthAdjust(placeNum, abilityNum); + System.out.println("<<< " + friendly.get(placeNum).getName() + " 泥대젰 " + abilityNum + "留뚰겮 利앷�! >>>"); + whoHitFriendly[placeNum] = -1; + return; + } + case 39: { // 怨듦꺽�뿉 留욎쓣 �떆 怨듦꺽�븳 �쟻援곗뿉寃� 1, 2, 3 �룆 �뵾�빐 + int enemyNum = whoHitFriendly[placeNum]; + if (enemyNum != -1) { + System.out.println("<<< " + friendly.get(placeNum).getName() + " �뒫�젰 �궗�슜! >>>"); + friendlyPoisonNum[enemyNum] += lv; + System.out.println("<<< " + enemy.get(enemyNum).getName() + "�뿉寃� " + lv + " �룆 �뵾�빐! >>>"); + whoHitFriendly[placeNum] = -1; + } + whoHitFriendly[placeNum] = -1; + return; + } + case 45: { // 怨듦꺽�뿉 留욎쓣 �떆 �뵾�빐�웾 20%, 30%, 50%留뚰겮 �룎�젮以띾땲�떎 + int enemyNum = whoHitFriendly[placeNum]; + if (enemyNum != -1) { + int adjustNum = (friendlyHP45 - friendly.get(placeNum).getHealth()) / 5; + if (lv == 2) { + adjustNum = (friendlyHP45 - friendly.get(placeNum).getHealth()) * 3 / 10; + } else if (lv == 3) { + adjustNum = (friendlyHP45 - friendly.get(placeNum).getHealth()) / 2; + } + System.out.println("<<< " + friendly.get(placeNum).getName() + " �뒫�젰 �궗�슜! >>>"); + if (enemy.get(enemyNum - 1) != null) { + if (enemy.get(enemyNum - 1).getPokemonNum() == 52) { + System.out.println("<<< " + enemy.get(enemyNum - 1).getName() + " �뒫�젰 �궗�슜! >>>"); + System.out.println("<<< ���떊 留욎뒿�땲�떎! >>>"); + enemyNum -= 1; + } + } + enemyHealthAdjust(enemyNum, adjustNum); + System.out.println("<<< " + enemy.get(enemyNum).getName() + "�뿉寃� " + adjustNum + " �뵾�빐! >>>"); + friendlyAbillity45(); + whoHitFriendly[placeNum] = -1; + } + whoHitFriendly[placeNum] = -1; + return; + } + case 57: { // 怨듦꺽�뿉 留욎쓣 �떆 泥대젰�쓽 20%, 30%, 50% 留뚰겮 泥대젰 利앷� + System.out.println("<<< " + friendly.get(placeNum).getName() + " �뒫�젰 �궗�슜! >>>"); + int adjustNum = friendly.get(placeNum).getHealth() / 5; + if (lv == 2) { + adjustNum = friendly.get(placeNum).getHealth() * 3 / 10; + } else if (lv == 3) { + adjustNum = friendly.get(placeNum).getHealth() / 2; + } + friendlyHealthAdjust(placeNum, adjustNum); + System.out.println("<<< " + friendly.get(placeNum).getName() + " 泥대젰 " + adjustNum + "留뚰겮 利앷�! >>>"); + whoHitFriendly[placeNum] = -1; + return; + } + default: { + return; + } + } + } + } + + void friendlyDownAbility(int placeNum) { // 湲곗젅 �떆 �뒫�젰 + System.out.println("<<< �븘援� 湲곗젅 �떆 �뒫�젰 諛쒕룞 >>>"); + int lv = friendly.get(placeNum).getLv(); + if (friendly.get(placeNum) != null) { + switch (friendly.get(placeNum).getPokemonNum()) { + case 1: { // 湲곗젅 �떆 �뒫�젰 �뾾�뒗 2/2�떒�뜲湲� 1,2, 3 �냼�솚 + System.out.println("<<< " + friendly.get(placeNum).getName() + " �뒫�젰 �궗�슜! >>>"); + for (int i = 0; i < lv; i++) { + friendlyGoBack(); + friendly.set(0, dan); + System.out.println("<<< " + "�떒�뜲湲�" + " �냼�솚! >>>"); + friendlyUseToSummon(); + friendlyUseSummonAbility(); + enemyFriendlySummonAbility(); + } + friendly.set(placeNum + lv, null); + return; + } + case 6: { // 湲곗젅 �떆 媛��옣 �뮘�뿉 �엳�뒗 �쟻援� 1, 2, 3 �룆 �뵾�빐 + System.out.println("<<< " + friendly.get(placeNum).getName() + " �뒫�젰 �궗�슜! >>>"); + int i = remainEnemyNum() - 1; + friendlyPoisonNum[i] += lv; + System.out.println("<<< " + enemy.get(i).getName() + "�뿉寃� " + lv + " �룆 �뵾�빐! >>>"); + friendly.set(placeNum, null); + return; + } + case 18: { // 湲곗젅 �떆 媛��옣 �븵�뿉 �엳�뒗 �쟻援� 2, 3, 4 �뵾�빐 + System.out.println("<<< " + friendly.get(placeNum).getName() + " �뒫�젰 �궗�슜! >>>"); + int abilityNum = 1 + lv; + if (enemy.get(0) == null) { + return; + } + enemyHealthAdjust(0, abilityNum); + System.out.println("<<< " + enemy.get(0).getName() + "�뿉寃� " + abilityNum + " �뵾�빐! >>>"); + findHitEnemy(0, placeNum); + friendly.set(placeNum, null); + return; + } + case 19: { // 湲곗젅 �떆 �뒫�젰 �뾾�뒗 留앺궎 1, 2, 3 �냼�솚 + System.out.println("<<< " + friendly.get(placeNum).getName() + " �뒫�젰 �궗�슜! >>>"); + for (int i = 0; i < lv; i++) { + friendlyGoBack(); + friendly.set(0, mang); + System.out.println("<<< " + "留앺궎" + " �냼�솚! >>>"); + friendlyUseToSummon(); + friendlyUseSummonAbility(); + enemyFriendlySummonAbility(); + } + friendly.set(placeNum + lv, null); + return; + } + + case 28: { // 湲곗젅 �떆 泥대젰 2, 2.5, 3諛곗씤 �뒫�젰 �뾾�뒗 紐⑤떎�뵾 2 �냼�솚 + System.out.println("<<< " + friendly.get(placeNum).getName() + " �뒫�젰 �궗�슜! >>>"); + if (lv == 2) { + mo.setHealth(mo.getHealth() / 2 * 25 / 10); + } else if (lv == 3) { + mo.setHealth(mo.getHealth() / 2 * 3); + } + friendlyGoBack(); + friendly.set(0, mo); + friendly.set(placeNum, null); + System.out.println("<<< " + "紐⑤떎�뵾" + " �냼�솚! >>>"); + friendlyUseToSummon(); + friendlyUseSummonAbility(); + enemyFriendlySummonAbility(); + friendlyGoBack(); + friendly.set(0, mo); + friendly.set(placeNum, null); + System.out.println("<<< " + "紐⑤떎�뵾" + " �냼�솚! >>>"); + friendlyUseToSummon(); + friendlyUseSummonAbility(); + enemyFriendlySummonAbility(); + return; + } + default: { + friendly.set(placeNum, null); + return; + } + } + } + } + + void friendlyFrontDownAbility(int placeNum) { // �븵�쓽 �븘援� 湲곗젅 �떆 + System.out.println("<<< �븵�쓽 �븘援� 湲곗젅 �떆 �뒫�젰 諛쒕룞 >>>"); + int lv = friendly.get(placeNum).getLv(); + if (friendly.get(placeNum + 1) != null) { + switch (friendly.get(placeNum + 1).getPokemonNum()) { + case 20: { // �븵�쓽 �븘援� 湲곗젅 �떆 紐⑤뱺 �쟻援� 1, 2, 3 �뵾�빐 + System.out.println("<<< " + friendly.get(placeNum).getName() + " �뒫�젰 �궗�슜! >>>"); + for (int i = 0; i < remainEnemyNum(); i++) { + if (enemy.get(i) != null) { + if (i - 1 >= 0 && enemy.get(i - 1) != null) { + if (enemy.get(i - 1).getPokemonNum() == 52) { + System.out.println("<<< " + enemy.get(i - 1).getName() + " �뒫�젰 �궗�슜! >>>"); + System.out.println("<<< ���떊 留욎뒿�땲�떎! >>>"); + enemyHealthAdjust(i - 1, -lv); + System.out.println("<<< " + enemy.get(i - 1).getName() + "�뿉寃� " + lv + " �뵾�빐! >>>"); + findHitEnemy(i - 1, -1); + } + } else { + enemyHealthAdjust(i, -lv); + System.out.println("<<< " + enemy.get(i).getName() + "�뿉寃� " + lv + " �뵾�빐! >>>"); + findHitEnemy(i, -1); + } + + } + } + return; + } + case 35: { // �븵�뿉 �엳�뒗 �븘援� 湲곗젅 �떆 紐⑤뱺 �쑀�떅�뿉寃� 2, 3, 4 �뵾�빐 + System.out.println("<<< " + friendly.get(placeNum).getName() + " �뒫�젰 �궗�슜! >>>"); + int abilityNum = 1 + lv; + for (int i = 0; i < remainEnemyNum(); i++) { + if (enemy.get(i) != null) { + if (i - 1 >= 0 && enemy.get(i - 1) != null) { + if (enemy.get(i - 1).getPokemonNum() == 52) { + System.out.println("<<< " + enemy.get(i - 1).getName() + " �뒫�젰 �궗�슜! >>>"); + System.out.println("<<< ���떊 留욎뒿�땲�떎! >>>"); + enemyHealthAdjust(i - 1, -abilityNum); + System.out + .println("<<< " + enemy.get(i - 1).getName() + "�뿉寃� " + abilityNum + " �뵾�빐! >>>"); + findHitEnemy(i - 1, -1); + } + } else { + enemyHealthAdjust(i, -abilityNum); + System.out.println("<<< " + enemy.get(i).getName() + "�뿉寃� " + abilityNum + " �뵾�빐! >>>"); + findHitEnemy(i, -1); + } + + } + } + for (int i = 0; i < remainFriendlyNum(); i++) { + if (enemy.get(i) != null) { + if (i - 1 >= 0 && friendly.get(i - 1) != null) { + if (friendly.get(i - 1).getPokemonNum() == 52) { + System.out.println("<<< " + friendly.get(i - 1).getName() + " �뒫�젰 �궗�슜! >>>"); + System.out.println("<<< ���떊 留욎뒿�땲�떎! >>>"); + enemyHealthAdjust(i - 1, -abilityNum); + System.out.println( + "<<< " + friendly.get(i - 1).getName() + "�뿉寃� " + abilityNum + " �뵾�빐! >>>"); + findHitEnemy(i - 1, -1); + } + } else { + enemyHealthAdjust(i, -abilityNum); + System.out.println("<<< " + friendly.get(i).getName() + "�뿉寃� " + abilityNum + " �뵾�빐! >>>"); + findHitfriendly(i, -1); + } + + } + } + return; + } + default: { + return; + } + } + } + } + + void friendlyDownEnemyAbility(int placeNum) { // �쟻 湲곗젅 �떆 �뒫�젰 + System.out.println("<<< �쟻援� 湲곗젅 �떆 �뒫�젰 諛쒕룞 >>>"); + int lv = friendly.get(placeNum).getLv(); + int abilityNum = 3 + lv; + int lv25 = findFriendlylv(25); + if (friendly.get(placeNum) != null) { + switch (friendly.get(placeNum).getPokemonNum()) { + case 47: { + System.out.println("<<< " + friendly.get(placeNum).getName() + " �뒫�젰 �궗�슜! >>>"); + friendlyPowerAdjust(placeNum, abilityNum); + System.out.println("<<< " + friendly.get(placeNum).getName() + " 怨듦꺽�젰 " + abilityNum + " 留뚰겮 利앷�! >>>"); + if (friendlyFindPokemon(25)) { + System.out.println("<<< " + "諛쒖콡�씠" + "�쓽 異붽� �뒫�젰 �궗�슜! >>>"); + friendlyPowerAdjust(placeNum, lv25); + System.out.println("<<< " + friendly.get(placeNum).getName() + "�뿉寃� 怨듦꺽�젰 " + lv25 + "留뚰겮 利앷�! >>>"); + } + friendlyHealthAdjust(placeNum, abilityNum); + System.out.println("<<< " + friendly.get(placeNum).getName() + " 泥대젰 " + abilityNum + "留뚰겮 利앷�! >>>"); + return; + } + default: { + return; + } + } + } + } + + void friendlyUseToSummon() { // �냼�솚 �떆 �뒫�젰 �냼�솚愿� �븘援곗뿉寃� �벐�뒗 �뒫�젰 + System.out.println("<<< �븘援� �냼�솚 �떆 �뒫�젰 諛쒕룞 >>>"); + int lv15 = findFriendlylv(15); + int lv34 = findFriendlylv(34); + int lv51 = findFriendlylv(51); + int lv25 = findFriendlylv(25); + for (int i = 0; i < remainFriendlyNum(); i++) { + if (friendly.get(i) != null) { + if (friendly.get(i).getPokemonNum() == 15) { // �븘援� �냼�솚�떆 �냼�솚�맂 �븘援� 怨듦꺽�젰,泥대젰 2, 3, 4 利앷� + int abilityNum = 1 + lv15; + System.out.println("<<< 肄섑뙜 �뒫�젰 �궗�슜! >>>"); + friendlyPowerAdjust(0, abilityNum); + System.out.println("<<< �냼�솚�맂 �룷耳볥が 怨듦꺽�젰 " + abilityNum + " 利앷�! >>>"); + if (friendlyFindPokemon(25)) { + System.out.println("<<< " + "諛쒖콡�씠" + "�쓽 異붽� �뒫�젰 �궗�슜! >>>"); + friendlyPowerAdjust(0, lv25); + System.out.println("<<< " + friendly.get(0).getName() + "�뿉寃� 怨듦꺽�젰 " + lv25 + "留뚰겮 利앷�! >>>"); + } + friendlyHealthAdjust(0, abilityNum); + System.out.println("<<< �냼�솚�맂 �룷耳볥が 泥대젰 " + abilityNum + " 利앷�! >>>"); + } else if (friendly.get(i).getPokemonNum() == 34) { // �븘援� �냼�솚 �떆 �냼�솚�맂 �쑀�떅 怨듦꺽�젰 2, 3, 4 利앷� + int abilityNum = 1 + lv34; + System.out.println("<<< �뙆�삤由� �뒫�젰 �궗�슜! >>>"); + friendlyPowerAdjust(0, abilityNum); + System.out.println("<<< �냼�솚�맂 �룷耳볥が 怨듦꺽�젰 " + abilityNum + " 利앷�! >>>"); + if (friendlyFindPokemon(25)) { + System.out.println("<<< " + "諛쒖콡�씠" + "�쓽 異붽� �뒫�젰 �궗�슜! >>>"); + friendlyPowerAdjust(0, lv25); + System.out.println("<<< " + friendly.get(0).getName() + "�뿉寃� 怨듦꺽�젰 " + lv25 + " 留뚰겮 利앷�! >>>"); + } + } else if (friendly.get(i).getPokemonNum() == 51) { // �냼�솚�맂 �븘援� 怨듦꺽�젰, 泥대젰 3, 4, 5利앷� + int abilityNum = 2 + lv51; + System.out.println("<<< 肄섏튂 �뒫�젰 �궗�슜! >>>"); + friendlyPowerAdjust(0, abilityNum); + System.out.println("<<< �냼�솚�맂 �룷耳볥が 怨듦꺽�젰 " + abilityNum + " 利앷�! >>>"); + if (friendlyFindPokemon(25)) { + System.out.println("<<< " + "諛쒖콡�씠" + "�쓽 異붽� �뒫�젰 �궗�슜! >>>"); + friendlyPowerAdjust(0, lv25); + System.out.println("<<< " + friendly.get(0).getName() + "�뿉寃� 怨듦꺽�젰 " + lv25 + "留뚰겮 利앷�! >>>"); + } + friendlyHealthAdjust(0, abilityNum); + System.out.println("<<< �냼�솚�맂 �룷耳볥が 泥대젰 " + abilityNum + " 利앷�! >>>"); + } + } + } + } + + void friendlyUseSummonAbility() { // �븘援� �냼�솚 �떆 �뒫�젰 �궗�슜 + for (int i = 0; i < remainFriendlyNum(); i++) { + if (friendly.get(i) != null) { + if (friendly.get(i).getPokemonNum() == 2 || friendly.get(i).getPokemonNum() == 41) { + friendlySummonAbility(i); + } + } + } + } + + void friendlySummonAbility(int placeNum) { // �븘援� �냼�솚 �떆 �뒫�젰 + System.out.println("<<< �븘援� �냼�솚 �떆 �뒫�젰 諛쒕룞 >>>"); + int lv = friendly.get(placeNum).getLv(); + int lv25 = findFriendlylv(25); + switch (friendly.get(placeNum).getPokemonNum()) { + case 2: { // �븘援� �냼�솚 �떆 泥대젰 2, 3, 4 利앷� + int abilityNum = 1 + lv; + System.out.println("<<< " + friendly.get(placeNum).getName() + " �뒫�젰 �궗�슜! >>>"); + friendlyHealthAdjust(placeNum, abilityNum); + System.out.println("<<< " + friendly.get(placeNum).getName() + " 泥대젰 " + abilityNum + " 留뚰겮 利앷�! >>>"); + return; + } + + case 41: { // �븘援� �냼�솚 �떆 �옖�뜡�쑝濡� �븘援� 怨듦꺽�젰,泥대젰 2, 3, 4 利앷� + int abilityNum = 1 + lv; + System.out.println("<<< " + friendly.get(placeNum).getName() + " �뒫�젰 �궗�슜! >>>"); + while (true) { + int rNum = random.nextInt(5); + if (friendly.get(rNum) != null) { + friendlyHealthAdjust(rNum, abilityNum); + System.out.println("<<< " + friendly.get(rNum).getName() + " 泥대젰 " + abilityNum + " 留뚰겮 利앷�! >>>"); + friendlyPowerAdjust(rNum, abilityNum); + System.out.println("<<< " + friendly.get(rNum).getName() + " 怨듦꺽�젰 " + abilityNum + " 留뚰겮 利앷�! >>>"); + if (friendlyFindPokemon(25)) { + System.out.println("<<< " + "諛쒖콡�씠" + "�쓽 異붽� �뒫�젰 �궗�슜! >>>"); + friendlyPowerAdjust(rNum, lv25); + System.out.println("<<< " + friendly.get(rNum).getName() + "�뿉寃� 怨듦꺽�젰 " + lv25 + " 留뚰겮 利앷�! >>>"); + } + return; + } + } + } + + default: { + return; + } + } + } + + void friendlyEnemySummonAbility() { // �쟻援� �냼�솚 �떆 + System.out.println("<<< �쟻援� �냼�솚 �떆 �뒫�젰 諛쒕룞 >>>"); + int lv = findFriendlylv(43); + int abilityNum = 2 + lv; + for (int i = 0; i < remainFriendlyNum(); i++) { + if (friendly.get(i) != null) { + if (friendly.get(i).getPokemonNum() == 43) { // �쟻援� �냼�솚 �떆 �옖�뜡�븳 �쟻援� 1紐� �뿉寃� 3 �뵾�빐 + System.out.println("<<< " + friendly.get(i).getName() + " �뒫�젰 �궗�슜! >>>"); + while (true) { + int rNum = random.nextInt(); + if (enemy.get(rNum) != null) { + if (rNum - 1 >= 0 && enemy.get(rNum - 1) != null) { + if (enemy.get(rNum - 1).getPokemonNum() == 52) { + System.out.println("<<< " + enemy.get(rNum - 1).getName() + " �뒫�젰 �궗�슜! >>>"); + System.out.println("<<< ���떊 留욎뒿�땲�떎! >>>"); + rNum -= 1; + } + } + enemyHealthAdjust(rNum, abilityNum); + System.out.println("<<< " + enemy.get(rNum).getName() + "�뿉寃� " + abilityNum + " �뵾�빐! >>>"); + return; + } + } + } + } + + } + } + + boolean friendlyFindPokemon(int pokemonNum) { // �븘援곗뿉 �엳�뒗吏� �솗�씤 + for (Pokemon p : friendly) { + if (p != null) { + if (p.getPokemonNum() == pokemonNum) { + return true; + } + } + } + return false; + } + + // ------------- �쟻援� �뒫�젰 �븿�닔 -------------------- + + // ------------ �뒫�젰 �븿�닔 ----------------- + + int findEnemylv(int pokemonNum) { + for (int i = 0; i < remainEnemyNum(); i++) { + if (enemy.get(i) != null) { + if (enemy.get(i).getPokemonNum() == pokemonNum) { + return enemy.get(i).getLv(); + } + } + } + return -1; + } + + void enemyStartBattleAbility(int placeNum) { // ��寃� �떆�옉 �떆 �뒫�젰 + int lv54 = findEnemylv(54); + int lv = enemy.get(placeNum).getLv(); + switch (enemy.get(placeNum).getPokemonNum()) { + case 3: { // ��寃� �떆�옉 �떆 �쟻援� �옖�뜡 �븯�굹�뿉寃� 2, 3, 4 �뵾�빐 + int abilityNum = lv + 1; + while (true) { + int rNum = random.nextInt(remainFriendlyNum()); + if (friendly.get(rNum) != null) { + System.out.println("<<< " + enemy.get(placeNum).getName() + " �뒫�젰 �궗�슜! >>>"); + System.out.println("<<< " + enemy.get(placeNum).getAbility() + " >>>"); + if (enemyFindPokemon(54)) { + if (rNum - 1 >= 0 && friendly.get(rNum - 1) != null) { + if (friendly.get(rNum - 1).getPokemonNum() == 52) { + System.out.println("<<< " + friendly.get(rNum - 1).getName() + " �뒫�젰 �궗�슜! >>>"); + rNum -= 1; + System.out.println("<<< ���떊 留욎뒿�땲�떎! >>>"); + } + } + System.out.println("<<< " + "戮�戮��씪" + "�쓽 異붽� �뒫�젰 �궗�슜! >>>"); + friendlyHealthAdjust(rNum, -(abilityNum + lv54)); + findHitfriendly(rNum, placeNum); + System.out.println( + "<<< " + friendly.get(rNum).getName() + "�뿉寃� " + (abilityNum + lv54) + " �뵾�빐! >>>"); + } else { + if (rNum - 1 >= 0 && friendly.get(rNum - 1) != null) { + if (friendly.get(rNum - 1).getPokemonNum() == 52) { + System.out.println("<<< " + friendly.get(rNum - 1).getName() + " �뒫�젰 �궗�슜! >>>"); + rNum -= 1; + System.out.println("<<< ���떊 留욎뒿�땲�떎! >>>"); + } + } + friendlyHealthAdjust(rNum, -abilityNum); + findHitfriendly(rNum, placeNum); + System.out.println("<<< " + friendly.get(rNum).getName() + "�뿉寃� " + (abilityNum) + " �뵾�빐! >>>"); + } + return; + } + } + } + case 10: { // ��寃� �떆�옉 �떆 媛��옣 �뮘�뿉 �엳�뒗 �쟻援� 1, 2, 3 �뵾�빐 + int enemyPlaceNum = remainFriendlyNum() - 1; + if (enemyPlaceNum < 0) { + return; + } + int abilityNum = lv; + System.out.println("<<< " + enemy.get(placeNum).getName() + " �뒫�젰 �궗�슜! >>>"); + if (enemyFindPokemon(54)) { + if (enemyPlaceNum - 1 >= 0 && friendly.get(enemyPlaceNum - 1) != null) { + if (friendly.get(enemyPlaceNum - 1).getPokemonNum() == 52) { + System.out.println("<<< " + friendly.get(enemyPlaceNum - 1).getName() + " �뒫�젰 �궗�슜! >>>"); + enemyPlaceNum -= 1; + System.out.println("<<< ���떊 留욎뒿�땲�떎! >>>"); + } + } + System.out.println("<<< " + "戮�戮��씪" + "�쓽 異붽� �뒫�젰 �궗�슜! >>>"); + friendlyHealthAdjust(enemyPlaceNum, -(abilityNum + lv54)); + findHitfriendly(enemyPlaceNum, placeNum); + System.out.println( + "<<< " + friendly.get(enemyPlaceNum).getName() + "�뿉寃� " + (abilityNum + lv54) + " �뵾�빐! >>>"); + } else { + if (enemyPlaceNum - 1 >= 0 && friendly.get(enemyPlaceNum - 1) != null) { + if (friendly.get(enemyPlaceNum - 1).getPokemonNum() == 52) { + System.out.println("<<< " + friendly.get(enemyPlaceNum - 1).getName() + " �뒫�젰 �궗�슜! >>>"); + enemyPlaceNum -= 1; + System.out.println("<<< ���떊 留욎뒿�땲�떎! >>>"); + } + } + friendlyHealthAdjust(enemyPlaceNum, -abilityNum); + findHitfriendly(enemyPlaceNum, placeNum); + System.out.println("<<< " + friendly.get(enemyPlaceNum).getName() + "�뿉寃� " + (abilityNum) + " �뵾�빐! >>>"); + } + return; + + } + case 12: { // ��寃� �떆�옉 �떆 紐⑤뱺 �쟻援� 1, 2, 3 �뵾�빐 + int enemyPlaceNum = remainEnemyNum(); + int abilityNum = lv; + System.out.println("<<< " + enemy.get(placeNum).getName() + " �뒫�젰 �궗�슜>>>"); + for (int i = 0; i < enemyPlaceNum; i++) { + if (enemyFindPokemon(54)) { + if (i - 1 >= 0 && friendly.get(i - 1) != null) { + if (friendly.get(i - 1).getPokemonNum() == 52 || i - 1 >= 0) { + System.out.println("<<< " + friendly.get(i - 1).getName() + " �뒫�젰 �궗�슜! >>>"); + System.out.println("<<< ���떊 留욎뒿�땲�떎! >>>"); + System.out.println("<<< " + "戮�戮��씪" + "�쓽 異붽� �뒫�젰 �궗�슜! >>>"); + friendlyHealthAdjust(i - 1, -(abilityNum + lv54)); + findHitfriendly(enemyPlaceNum - 1, placeNum); + System.out.println( + "<<< " + friendly.get(i - 1).getName() + "�뿉寃� " + (abilityNum + lv54) + " �뵾�빐! >>>"); + } + } else { + System.out.println("<<< " + "戮�戮��씪" + "�쓽 異붽� �뒫�젰 �궗�슜! >>>"); + friendlyHealthAdjust(i, -(abilityNum + lv54)); + findHitfriendly(enemyPlaceNum, placeNum); + System.out + .println("<<< " + friendly.get(i).getName() + "�뿉寃� " + (abilityNum + lv54) + " �뵾�빐! >>>"); + } + } else { + if (i - 1 >= 0 && friendly.get(i - 1) != null) { + if (friendly.get(i - 1).getPokemonNum() == 52) { + System.out.println("<<< " + friendly.get(i - 1).getName() + " �뒫�젰 �궗�슜! >>>"); + System.out.println("<<< ���떊 留욎뒿�땲�떎! >>>"); + friendlyHealthAdjust(i - 1, -abilityNum); + findHitfriendly(enemyPlaceNum - 1, placeNum); + System.out.println( + "<<< " + friendly.get(i - 1).getName() + "�뿉寃� " + (abilityNum) + " �뵾�빐! >>>"); + } + } else { + friendlyHealthAdjust(i, -abilityNum); + findHitfriendly(enemyPlaceNum, placeNum); + System.out.println("<<< " + friendly.get(i).getName() + "�뿉寃� " + (abilityNum) + " �뵾�빐! >>>"); + } + } + } + return; + } + case 23: { // ��寃� �떆�옉 �떆 �븵�뿉 �엳�뒗 �븘援곗뿉寃� 泥대젰 50%, 70%, 100% 留뚰겮 利앷� + if (placeNum != 0) { + System.out.println("<<< " + enemy.get(placeNum).getName() + " �뒫�젰 �궗�슜! >>>"); + int adjustNum = enemy.get(placeNum).getHealth() / 2; + if (lv == 2) { + adjustNum = enemy.get(placeNum).getHealth() * 7 / 10; + } else if (lv == 3) { + adjustNum = enemy.get(placeNum).getHealth(); + } + enemyHealthAdjust(placeNum - 1, adjustNum); + System.out.println("<<< " + enemy.get(placeNum - 1).getName() + "�뿉寃� 泥대젰 " + adjustNum + "留뚰겮 利앷�! >>>"); + return; + } + return; + } + case 26: { // ��寃� �떆�옉 �떆 �븵�뿉 �엳�뒗 �븘援곗뿉寃� 怨듦꺽�젰 50%, 70%, 100% 留뚰겮 異붽� + int lv25 = findEnemylv(25); + if (placeNum != 0) { + System.out.println("<<< " + enemy.get(placeNum).getName() + " �뒫�젰 �궗�슜! >>>"); + int adjustNum = enemy.get(placeNum).getPower() / 2; + if (lv == 2) { + adjustNum = enemy.get(placeNum).getPower() * 7 / 10; + } else if (lv == 3) { + adjustNum = enemy.get(placeNum).getPower(); + } + enemyPowerAdjust(placeNum - 1, adjustNum); + System.out.println("<<< " + enemy.get(placeNum - 1).getName() + "�뿉寃� 怨듦꺽�젰 " + adjustNum + "留뚰겮 利앷�! >>>"); + if (enemyFindPokemon(25)) { + System.out.println("<<< " + "諛쒖콡�씠" + "�쓽 異붽� �뒫�젰 �궗�슜! >>>"); + enemyPowerAdjust(placeNum - 1, lv25); + System.out.println("<<< " + enemy.get(placeNum - 1).getName() + "�뿉寃� 怨듦꺽�젰 " + lv25 + " 留뚰겮 利앷�! >>>"); + } + return; + } + return; + } + case 29: {// ��寃� �떆�옉 �떆 媛��옣 �뮘�뿉 �엳�뒗 �쟻援곗뿉寃� 1, 2, 3 �룆 �뵾�빐 + int abilityNum = lv; + System.out.println("<<< " + enemy.get(placeNum).getName() + " �뒫�젰 �궗�슜! >>>"); + int enemyPlaceNum = remainFriendlyNum() - 1; + if (enemyPlaceNum - 1 >= 0 && friendly.get(enemyPlaceNum - 1) != null) { + if (friendly.get(enemyPlaceNum - 1).getPokemonNum() == 52) { + System.out.println("<<< " + friendly.get(enemyPlaceNum - 1).getName() + " �뒫�젰 �궗�슜! >>>"); + enemyPlaceNum -= 1; + System.out.println("<<< ���떊 留욎뒿�땲�떎! >>>"); + } + } + friendlyPoisonNum[enemyPlaceNum] += abilityNum; + System.out.println("<<< " + friendly.get(enemyPlaceNum).getName() + "�뿉寃� " + abilityNum + " �룆 �뵾�빐! >>>"); + return; + } + case 31: { // ��寃� �떆�옉 �떆 紐⑤뱺 �쑀�떅 1, 2, 3 �뵾�빐 + int abilityNum = lv; + int friendlyNum = remainFriendlyNum(); + int enemyNum = remainEnemyNum(); + System.out.println("<<< " + enemy.get(placeNum).getName() + " �뒫�젰 �궗�슜! >>>"); + for (int i = 0; i < enemyNum; i++) { + if (i - 1 >= 0 && enemy.get(i - 1) != null) { + if (enemy.get(i - 1).getPokemonNum() == 52) { + System.out.println("<<< " + enemy.get(i - 1).getName() + " �뒫�젰 �궗�슜! >>>"); + System.out.println("<<< ���떊 留욎뒿�땲�떎! >>>"); + enemyHealthAdjust(i - 1, -abilityNum); + System.out.println("<<< " + enemy.get(i - 1).getName() + "�뿉寃� " + abilityNum + " �뵾�빐! >>>"); + findHitEnemy(i - 1, -1); + } + } else { + enemyHealthAdjust(i, -abilityNum); + System.out.println("<<< " + enemy.get(i).getName() + "�뿉寃� " + abilityNum + " �뵾�빐! >>>"); + findHitEnemy(i, -1); + } + + } + if (enemyFindPokemon(54)) { + System.out.println("<<< " + "戮�戮��씪" + "�쓽 異붽� �뒫�젰 �궗�슜! >>>"); + for (int i = 0; i < friendlyNum; i++) { + if (i - 1 >= 0 && friendly.get(i - 1) != null) { + if (friendly.get(i - 1).getPokemonNum() == 52) { + System.out.println("<<< " + friendly.get(i - 1).getName() + " �뒫�젰 �궗�슜! >>>"); + System.out.println("<<< ���떊 留욎뒿�땲�떎! >>>"); + friendlyHealthAdjust(i - 1, -(abilityNum + lv54)); + findHitfriendly(i - 1, placeNum); + System.out.println( + "<<< " + friendly.get(i - 1).getName() + "�뿉寃� " + (abilityNum + lv54) + " �뵾�빐! >>>"); + } + } else { + friendlyHealthAdjust(i, -(lv54 + abilityNum)); + findHitfriendly(i, placeNum); + System.out + .println("<<< " + friendly.get(i).getName() + "�뿉寃� " + (abilityNum + lv54) + " �뵾�빐! >>>"); + } + } + } else { + for (int i = 0; i < friendlyNum; i++) { + if (i - 1 >= 0 && friendly.get(i - 1) != null) { + if (friendly.get(i - 1).getPokemonNum() == 52) { + System.out.println("<<< " + friendly.get(i - 1).getName() + " �뒫�젰 �궗�슜! >>>"); + System.out.println("<<< ���떊 留욎뒿�땲�떎! >>>"); + friendlyHealthAdjust(i - 1, -abilityNum); + findHitfriendly(i - 1, placeNum); + System.out.println( + "<<< " + friendly.get(i - 1).getName() + "�뿉寃� " + (abilityNum) + " �뵾�빐! >>>"); + } + } else { + friendlyHealthAdjust(i, -abilityNum); + findHitfriendly(i, placeNum); + System.out.println("<<< " + friendly.get(i).getName() + "�뿉寃� " + (abilityNum) + " �뵾�빐! >>>"); + } + } + } + return; + } + case 37: { // ��寃� �떆�옉 �떆 紐⑤뱺 �븘援곗쓽 泥대젰 30%, 40%, 50% 留뚰겮 利앷� + int enemtyNum = remainEnemyNum(); + System.out.println("<<< " + enemy.get(placeNum).getName() + " �뒫�젰 �궗�슜! >>>"); + int adjustNum = enemy.get(placeNum).getHealth() * 3 / 10; + if (lv == 2) { + adjustNum = enemy.get(placeNum).getHealth() * 4 / 10; + } else if (lv == 3) { + adjustNum = enemy.get(placeNum).getHealth() * 5 / 10; + } + for (int i = 0; i < enemtyNum; i++) { + enemyHealthAdjust(i, adjustNum); + System.out.println("<<< " + enemy.get(i).getName() + "�뿉寃� 泥대젰 " + adjustNum + "留뚰겮 利앷�! >>>"); + } + return; + } + case 50: { // ��寃� �떆�옉 �떆 媛숈� �쐞移섏뿉 �엳�뒗 �쟻援곗뿉寃� �뵾�빐 �엯�옓�땲�떎. + System.out.println("<<< " + enemy.get(placeNum).getName() + " �뒫�젰 �궗�슜! >>>"); + int adjustNum = enemy.get(placeNum).getPower(); + if (enemyFindPokemon(54)) { + if (placeNum - 1 >= 0 && friendly.get(placeNum - 1) != null) { + if (friendly.get(placeNum - 1).getPokemonNum() == 52) { + System.out.println("<<< " + friendly.get(placeNum - 1).getName() + " �뒫�젰 �궗�슜! >>>"); + System.out.println("<<< ���떊 留욎뒿�땲�떎! >>>"); + System.out.println("<<< " + "戮�戮��씪" + "�쓽 異붽� �뒫�젰 �궗�슜! >>>"); + friendlyHealthAdjust(placeNum - 1, -(adjustNum + lv54)); + findHitfriendly(placeNum - 1, placeNum); + System.out.println("<<< " + friendly.get(placeNum - 1).getName() + "�뿉寃� " + (adjustNum + lv54) + + " �뵾�빐! >>>"); + } + } else { + System.out.println("<<< " + "戮�戮��씪" + "�쓽 異붽� �뒫�젰 �궗�슜! >>>"); + friendlyHealthAdjust(placeNum, -(adjustNum + lv54)); + findHitfriendly(placeNum, placeNum); + System.out.println( + "<<< " + friendly.get(placeNum).getName() + "�뿉寃� " + (adjustNum + lv54) + " �뵾�빐! >>>"); + } + + return; + } else { + if (placeNum - 1 >= 0 && friendly.get(placeNum - 1) != null) { + if (friendly.get(placeNum - 1).getPokemonNum() == 52) { + System.out.println("<<< " + friendly.get(placeNum - 1).getName() + " �뒫�젰 �궗�슜! >>>"); + System.out.println("<<< ���떊 留욎뒿�땲�떎! >>>"); + friendlyHealthAdjust(placeNum - 1, -adjustNum); + findHitfriendly(placeNum - 1, placeNum); + System.out.println( + "<<< " + friendly.get(placeNum - 1).getName() + "�뿉寃� " + adjustNum + " �뵾�빐! >>>"); + } + } else { + friendlyHealthAdjust(placeNum, -adjustNum); + findHitfriendly(placeNum, placeNum); + System.out.println("<<< " + friendly.get(placeNum).getName() + "�뿉寃� " + adjustNum + " �뵾�빐! >>>"); + } + return; + } + } + default: { + return; + } + } + } + + void enemyAttackAbility(int placeNum) { // 怨듦꺽 �떆 �뒫�젰 + System.out.println("<<< �쟻援� 怨듦꺽 �떆 �뒫�젰 諛쒕룞 >>>"); + int lv25 = findEnemylv(25); + int lv = enemy.get(placeNum).getLv(); + if (enemy.get(placeNum) != null) { + switch (enemy.get(placeNum).getPokemonNum()) { + case 5: { // 怨듦꺽 �떆 怨듦꺽�젰 2, 3, 4 利앷� + int abilityNum = 1 + lv; + System.out.println("<<< " + enemy.get(placeNum).getName() + " �뒫�젰 �궗�슜! >>>"); + enemyPowerAdjust(placeNum, abilityNum); + System.out.println("<<< " + enemy.get(placeNum).getName() + " 怨듦꺽�젰 " + abilityNum + "留뚰겮 利앷�! >>>"); + if (enemyFindPokemon(25)) { + System.out.println("<<< " + "諛쒖콡�씠" + "�쓽 異붽� �뒫�젰 �궗�슜! >>>"); + enemyPowerAdjust(placeNum, lv25); + System.out.println("<<< " + enemy.get(placeNum).getName() + "�뿉寃� 怨듦꺽�젰 " + lv25 + " 留뚰겮 利앷�! >>>"); + } + return; + } + case 16: { // 怨듦꺽 �떆 �뮘�뿉 �엳�뒗 �븘援� 泥대젰 2, 3, 4 利앷� + System.out.println("<<< " + enemy.get(placeNum).getName() + " �뒫�젰 �궗�슜! >>>"); + if (enemy.get(placeNum + 1) != null) { + enemyHealthAdjust(placeNum + 1, lv + 1); + System.out.println("<<< " + enemy.get(placeNum - 1).getName() + "�뿉寃� 泥대젰 " + (lv + 1) + "留뚰겮 利앷�! >>>"); + } + return; + } + case 22: { // 怨듦꺽 �떆 �옖�뜡�븳 �쟻援곗뿉寃� 怨듦꺽�젰 50%, 70%, 100% �쓽 �뵾�빐 + while (true) { + int rNum = random.nextInt(5); + if (friendly.get(rNum) != null) { + System.out.println("<<< " + enemy.get(placeNum).getName() + " �뒫�젰 �궗�슜! >>>"); + int adjustNum = enemy.get(placeNum).getPower() / 2; + if (lv == 2) { + adjustNum = enemy.get(placeNum).getPower() * 7 / 10; + } else if (lv == 3) { + adjustNum = enemy.get(placeNum).getPower(); + } + enemyHealthAdjust(rNum, adjustNum); + System.out.println("<<< " + friendly.get(rNum).getName() + "�뿉寃� " + adjustNum + " �뵾�빐! >>>"); + whoHitFriendly[rNum] = placeNum; + return; + } + } + } + case 24: { // 怨듦꺽�떆 25%, 35%, 50% �솗瑜좊줈 異붽� 怨듦꺽 + if (lv == 1) { + int rNum = random.nextInt(4); + if (rNum == 0) { + System.out.println("<<< " + enemy.get(0).getName() + " �뒫�젰 �궗�슜! >>>"); + hitFriendly(); + } + return; + } else if (lv == 2) { + int rNum = random.nextInt(100); + if (rNum < 35) { + System.out.println("<<< " + enemy.get(0).getName() + " �뒫�젰 �궗�슜! >>>"); + hitFriendly(); + } + return; + } else if (lv == 3) { + int rNum = random.nextInt(100); + if (rNum < 35) { + System.out.println("<<< " + enemy.get(0).getName() + " �뒫�젰 �궗�슜! >>>"); + hitFriendly(); + } + return; + } + + } + case 27: { // 怨듦꺽 �떆 怨듦꺽�젰 4, 5, 6 利앷� + int abilityNum = 3 + lv; + System.out.println("<<< " + enemy.get(placeNum).getName() + " �뒫�젰 �궗�슜! >>>"); + enemyPowerAdjust(placeNum, abilityNum); + System.out.println("<<< " + enemy.get(placeNum).getName() + " 怨듦꺽�젰 " + abilityNum + " 留뚰겮 利앷�! >>>"); + if (enemyFindPokemon(25)) { + System.out.println("<<< " + "諛쒖콡�씠" + "�쓽 異붽� �뒫�젰 �궗�슜! >>>"); + enemyPowerAdjust(placeNum, lv25); + System.out.println("<<< " + enemy.get(placeNum).getName() + "�뿉寃� 怨듦꺽�젰 " + lv25 + " 留뚰겮 利앷�! >>>"); + } + return; + } + case 40: { // 怨듦꺽 �떆 怨듦꺽�젰, 泥대젰 3, 4, 5 利앷� + int abilityNum = 2 + lv; + System.out.println("<<< " + enemy.get(placeNum).getName() + " �뒫�젰 �궗�슜! >>>"); + enemyPowerAdjust(placeNum, abilityNum); + System.out.println("<<< " + enemy.get(placeNum).getName() + " 怨듦꺽�젰 " + abilityNum + " 留뚰겮 利앷�! >>>"); + enemyHealthAdjust(placeNum, abilityNum); + System.out.println("<<< " + enemy.get(placeNum).getName() + " 泥대젰 " + abilityNum + " 留뚰겮 利앷�! >>>"); + if (enemyFindPokemon(25)) { + System.out.println("<<< " + "諛쒖콡�씠" + "�쓽 異붽� �뒫�젰 �궗�슜! >>>"); + enemyPowerAdjust(placeNum, lv25); + System.out.println("<<< " + enemy.get(placeNum).getName() + "�뿉寃� 怨듦꺽�젰 " + lv25 + " 留뚰겮 利앷�! >>>"); + } + return; + } + case 44: { // �씠 �룷耳볥が�� 2踰� 怨듦꺽 �빀�땲�떎 + System.out.println("<<< " + enemy.get(0).getName() + " �뒫�젰 �궗�슜! >>>"); + hitFriendly(); + return; + + } + case 46: { // 怨듦꺽 �떆 �쟻援곗쓽 怨듦꺽�젰 20%, 30%, 50% 留뚰겮 媛먯냼�빀�땲�떎 + System.out.println("<<< " + enemy.get(placeNum).getName() + " �뒫�젰 �궗�슜! >>>"); + int adjustNum = friendly.get(0).getPower() / 5; + if (lv == 2) { + adjustNum = friendly.get(0).getPower() * 3 / 10; + } else if (lv == 3) { + adjustNum = friendly.get(0).getPower() / 2; + } + friendlyPowerAdjust(0, -(adjustNum)); + System.out.println("<<< " + friendly.get(0).getName() + " 怨듦꺽�젰 " + adjustNum + " 留뚰겮 媛먯냼! >>>"); + return; + } + case 58: { // 怨듦꺽 �떆 怨듦꺽�젰�쓽 50%, 60%, 75%留뚰겮 洹� �뮘�뿉�엳�뒗 �쟻援곗뿉寃� �뵾�빐 + System.out.println("<<< " + enemy.get(placeNum).getName() + " �뒫�젰 �궗�슜! >>>"); + int adjustNum = enemy.get(placeNum).getPower() / 2; + if (lv == 2) { + adjustNum = enemy.get(placeNum).getPower() * 6 / 10; + } else if (lv == 3) { + adjustNum = enemy.get(placeNum).getPower() * 75 / 100; + } + friendlyPowerAdjust(1, -(adjustNum)); + System.out.println("<<< " + friendly.get(1).getName() + "�뿉寃� " + adjustNum + " 留뚰겮 異붽� �뵾�빐! >>>"); + return; + } + default: { + return; + } + } + } + } + + void enemyFrontFightAbillity(int placeNum) { // �븵�쓽 �븘援� 怨듦꺽 �떆 �뒫�젰 + System.out.println("<<< �븵�뿉 �엳�뒗 �쟻援� 怨듦꺽 �떆 �뒫�젰 諛쒕룞 >>>"); + int lv = enemy.get(placeNum).getLv(); + if (enemy.get(placeNum + 1) != null) { + switch (enemy.get(placeNum + 1).getPokemonNum()) { + case 9: { // �븵�쓽 �븘援곗씠 怨듦꺽 �떆 �븵�쓽 �븘援� 泥대젰 2, 3, 4 利앷� + int abilityNum = 1 + lv; + System.out.println("<<< " + enemy.get(placeNum + 1).getName() + " �뒫�젰 �궗�슜! >>>"); + enemyHealthAdjust(placeNum, abilityNum); + System.out.println("<<< " + enemy.get(placeNum).getName() + " 泥대젰 " + abilityNum + " 留뚰겮 利앷�! >>>"); + return; + } + case 55: { // �븵�쓽 �븘援� 怨듦꺽 �떆 1踰� �뜑 怨듦꺽�떆�궢�땲�떎. + System.out.println("<<< " + enemy.get(1).getName() + " �뒫�젰 �궗�슜! >>>"); + hitFriendly(); + return; + } + default: { + return; + } + } + } + } + + void enemyHitAbility(int placeNum) { // 留욎쓣 �떆 �뒫�젰 + System.out.println("<<< �쟻援� 留욎쓣 �떆 �뒫�젰 諛쒕룞 >>>"); + int lv = enemy.get(placeNum).getLv(); + int lv25 = findEnemylv(25); + if (enemy.get(placeNum) != null) { + switch (enemy.get(placeNum).getPokemonNum()) { + case 4: { // 怨듦꺽�뿉 留욎쓣 �떆 怨듦꺽�븳 ���긽�뿉寃� 1, 2, 3 �뵾�빐 + int enemyNum = whoHitEnemy[placeNum]; + if (enemyNum != -1) { + System.out.println("<<< " + enemy.get(placeNum).getName() + " �뒫�젰 �궗�슜! >>>"); + if (enemyNum > 0) { + if (friendly.get(enemyNum - 1) != null) { + if (friendly.get(enemyNum - 1).getPokemonNum() == 52) { + System.out.println("<<< " + friendly.get(enemyNum - 1).getName() + " �뒫�젰 �궗�슜! >>>"); + System.out.println("<<< ���떊 留욎뒿�땲�떎! >>>"); + enemyNum -= 1; + } + } + } + friendlyHealthAdjust(enemyNum, -lv); + System.out.println("<<< " + friendly.get(enemyNum).getName() + "�뿉寃� " + lv + " �뵾�빐! >>>"); + whoHitEnemy[placeNum] = -1; + return; + } + return; + } + case 11: { // 怨듦꺽�뿉 留욎쓣 �떆 怨듦꺽�븳 �쟻援� 怨듦꺽�젰 1, 2, 3 媛먯냼 + if (whoHitEnemy[placeNum] != -1) { + int enemyNum = whoHitEnemy[placeNum]; + System.out.println("<<< " + enemy.get(placeNum).getName() + " �뒫�젰 �궗�슜! >>>"); + friendlyPowerAdjust(enemyNum, -lv); + System.out.println("<<< " + friendly.get(enemyNum).getName() + " 怨듦꺽�젰 " + lv + " 媛먯냼! >>>"); + whoHitEnemy[placeNum] = -1; + return; + } + whoHitEnemy[placeNum] = -1; + return; + } + case 21: { // 怨듦꺽�뿉 留욎쓣 �떆 怨듦꺽�젰,泥대젰 2, 3, 4 利앷� + int abilityNum = 1 + lv; + System.out.println("<<< " + enemy.get(placeNum).getName() + " �뒫�젰 �궗�슜! >>>"); + enemyHealthAdjust(placeNum, abilityNum); + System.out.println("<<< " + enemy.get(placeNum).getName() + " 泥대젰 " + abilityNum + " 留뚰겮 利앷�! >>>"); + enemyPowerAdjust(placeNum, abilityNum); + System.out.println("<<< " + enemy.get(placeNum).getName() + " 怨듦꺽�젰 " + abilityNum + " 留뚰겮 利앷�! >>>"); + if (enemyFindPokemon(25)) { + System.out.println("<<< " + "諛쒖콡�씠" + "�쓽 異붽� �뒫�젰 �궗�슜! >>>"); + enemyPowerAdjust(placeNum, lv25); + System.out.println("<<< " + enemy.get(placeNum).getName() + "�뿉寃� 怨듦꺽�젰 " + lv25 + "留뚰겮 利앷�! >>>"); + } + whoHitEnemy[placeNum] = -1; + return; + } + case 30: { // 怨듦꺽�뿉 留욎쓣 �떆 泥대젰 4, 5, 6 利앷� + int abilityNum = 3 + lv; + System.out.println("<<< " + enemy.get(placeNum).getName() + " �뒫�젰 �궗�슜! >>>"); + enemyHealthAdjust(placeNum, abilityNum); + System.out.println("<<< " + enemy.get(placeNum).getName() + " 泥대젰 " + abilityNum + "留뚰겮 利앷�! >>>"); + whoHitEnemy[placeNum] = -1; + return; + } + case 39: { // 怨듦꺽�뿉 留욎쓣 �떆 怨듦꺽�븳 �쟻援곗뿉寃� 1, 2, 3 �룆 �뵾�빐 + int enemyNum = whoHitEnemy[placeNum]; + if (enemyNum != -1) { + System.out.println("<<< " + enemy.get(placeNum).getName() + " �뒫�젰 �궗�슜! >>>"); + friendlyPoisonNum[enemyNum] += lv; + System.out.println("<<< " + friendly.get(enemyNum).getName() + "�뿉寃� " + lv + " �룆 �뵾�빐! >>>"); + whoHitEnemy[placeNum] = -1; + } + whoHitEnemy[placeNum] = -1; + return; + } + case 45: { // 怨듦꺽�뿉 留욎쓣 �떆 �뵾�빐�웾 20%, 30%, 50%留뚰겮 �룎�젮以띾땲�떎 + int enemyNum = whoHitEnemy[placeNum]; + if (enemyNum != -1) { + int adjustNum = (enemyHP45 - enemy.get(placeNum).getHealth()) / 5; + if (lv == 2) { + adjustNum = (enemyHP45 - enemy.get(placeNum).getHealth()) * 3 / 10; + } else if (lv == 3) { + adjustNum = (enemyHP45 - enemy.get(placeNum).getHealth()) / 2; + } + System.out.println("<<< " + enemy.get(placeNum).getName() + " �뒫�젰 �궗�슜! >>>"); + if (friendly.get(enemyNum - 1) != null) { + if (friendly.get(enemyNum - 1).getPokemonNum() == 52) { + System.out.println("<<< " + friendly.get(enemyNum - 1).getName() + " �뒫�젰 �궗�슜! >>>"); + System.out.println("<<< ���떊 留욎뒿�땲�떎! >>>"); + enemyNum -= 1; + } + } + friendlyHealthAdjust(enemyNum, adjustNum); + System.out.println("<<< " + friendly.get(enemyNum).getName() + "�뿉寃� " + adjustNum + " �뵾�빐! >>>"); + friendlyAbillity45(); + whoHitEnemy[placeNum] = -1; + } + whoHitEnemy[placeNum] = -1; + return; + } + case 57: { // 怨듦꺽�뿉 留욎쓣 �떆 泥대젰�쓽 20%, 30%, 50% 留뚰겮 泥대젰 利앷� + System.out.println("<<< " + enemy.get(placeNum).getName() + " �뒫�젰 �궗�슜! >>>"); + int adjustNum = enemy.get(placeNum).getHealth() / 5; + if (lv == 2) { + adjustNum = enemy.get(placeNum).getHealth() * 3 / 10; + } else if (lv == 3) { + adjustNum = enemy.get(placeNum).getHealth() / 2; + } + enemyHealthAdjust(placeNum, adjustNum); + System.out.println("<<< " + enemy.get(placeNum).getName() + " 泥대젰 " + adjustNum + "留뚰겮 利앷�! >>>"); + whoHitEnemy[placeNum] = -1; + return; + } + default: { + return; + } + } + } + } + + void enemyDownAbility(int placeNum) { // 湲곗젅 �떆 �뒫�젰 + System.out.println("<<< �쟻援� 湲곗젅 �떆 �뒫�젰 諛쒕룞 >>>"); + int lv = enemy.get(placeNum).getLv(); + if (enemy.get(placeNum) != null) { + switch (enemy.get(placeNum).getPokemonNum()) { + case 1: { // 湲곗젅 �떆 �뒫�젰 �뾾�뒗 2/2�떒�뜲湲� 1,2, 3 �냼�솚 + System.out.println("<<< " + enemy.get(placeNum).getName() + " �뒫�젰 �궗�슜! >>>"); + for (int i = 0; i < lv; i++) { + enemyGoBack(); + enemy.set(0, dan); + System.out.println("<<< " + "�떒�뜲湲�" + " �냼�솚! >>>"); + enemyUseToSummon(); + enemyUseSummonAbility(); + friendlyEnemySummonAbility(); + } + enemy.set(placeNum + lv, null); + return; + } + case 6: { // 湲곗젅 �떆 媛��옣 �뮘�뿉 �엳�뒗 �쟻援� 1, 2, 3 �룆 �뵾�빐 + System.out.println("<<< " + enemy.get(placeNum).getName() + " �뒫�젰 �궗�슜! >>>"); + int i = remainFriendlyNum() - 1; + enemyPoisonNum[i] += lv; + System.out.println("<<< " + friendly.get(i).getName() + "�뿉寃� " + lv + " �룆 �뵾�빐! >>>"); + enemy.set(placeNum, null); + return; + } + case 18: { // 湲곗젅 �떆 媛��옣 �븵�뿉 �엳�뒗 �쟻援� 2, 3, 4 �뵾�빐 + System.out.println("<<< " + enemy.get(placeNum).getName() + " �뒫�젰 �궗�슜! >>>"); + int abilityNum = 1 + lv; + if (friendly.get(0) == null) { + return; + } + friendlyHealthAdjust(0, abilityNum); + System.out.println("<<< " + friendly.get(0).getName() + "�뿉寃� " + abilityNum + " �뵾�빐! >>>"); + findHitfriendly(0, placeNum); + enemy.set(placeNum, null); + return; + } + case 19: { // 湲곗젅 �떆 �뒫�젰 �뾾�뒗 留앺궎 1, 2, 3 �냼�솚 + System.out.println("<<< " + enemy.get(placeNum).getName() + " �뒫�젰 �궗�슜! >>>"); + for (int i = 0; i < lv; i++) { + enemyGoBack(); + enemy.set(0, mang); + System.out.println("<<< " + "留앺궎" + " �냼�솚! >>>"); + enemyUseToSummon(); + enemyUseSummonAbility(); + friendlyEnemySummonAbility(); + } + enemy.set(placeNum + lv, null); + return; + } + + case 28: { // 湲곗젅 �떆 泥대젰 2, 2.5, 3諛곗씤 �뒫�젰 �뾾�뒗 紐⑤떎�뵾 2 �냼�솚 + System.out.println("<<< " + enemy.get(placeNum).getName() + " �뒫�젰 �궗�슜! >>>"); + if (lv == 2) { + mo.setHealth(mo.getHealth() / 2 * 25 / 10); + } else if (lv == 3) { + mo.setHealth(mo.getHealth() / 2 * 3); + } + enemyGoBack(); + enemy.set(0, mo); + System.out.println("<<< " + "紐⑤떎�뵾" + " �냼�솚! >>>"); + enemyUseToSummon(); + enemyUseSummonAbility(); + friendlyEnemySummonAbility(); + enemyGoBack(); + enemy.set(0, mo); + enemy.set(placeNum + 2, null); + System.out.println("<<< " + "紐⑤떎�뵾" + " �냼�솚! >>>"); + enemyUseToSummon(); + enemyUseSummonAbility(); + friendlyEnemySummonAbility(); + return; + } + default: { + enemy.set(placeNum, null); + return; + } + } + } + } + + void enemyFrontDownAbility(int placeNum) { // �븵�쓽 �븘援� 湲곗젅 �떆 + System.out.println("<<< �븵�뿉 �엳�뒗 �쟻援� 湲곗젅 �떆 �뒫�젰 諛쒕룞 >>>"); + int lv = enemy.get(placeNum).getLv(); + if (enemy.get(placeNum + 1) != null) { + switch (enemy.get(placeNum + 1).getPokemonNum()) { + case 20: { // �븵�쓽 �븘援� 湲곗젅 �떆 紐⑤뱺 �쟻援� 1, 2, 3 �뵾�빐 + System.out.println("<<< " + enemy.get(placeNum).getName() + " �뒫�젰 �궗�슜! >>>"); + for (int i = 0; i < remainFriendlyNum(); i++) { + if (friendly.get(i) != null) { + if (i - 1 >= 0 && friendly.get(i - 1) != null) { + if (friendly.get(i - 1).getPokemonNum() == 52) { + System.out.println("<<< " + friendly.get(i - 1).getName() + " �뒫�젰 �궗�슜! >>>"); + System.out.println("<<< ���떊 留욎뒿�땲�떎! >>>"); + friendlyHealthAdjust(i - 1, -lv); + System.out.println("<<< " + friendly.get(i - 1).getName() + "�뿉寃� " + lv + " �뵾�빐! >>>"); + findHitfriendly(i - 1, -1); + } + } else { + friendlyHealthAdjust(i, -lv); + System.out.println("<<< " + friendly.get(i).getName() + "�뿉寃� " + lv + " �뵾�빐! >>>"); + findHitfriendly(i, -1); + } + + } + } + return; + } + case 35: { // �븵�뿉 �엳�뒗 �븘援� 湲곗젅 �떆 紐⑤뱺 �쑀�떅�뿉寃� 2, 3, 4 �뵾�빐 + System.out.println("<<< " + enemy.get(placeNum).getName() + " �뒫�젰 �궗�슜! >>>"); + int abilityNum = 1 + lv; + for (int i = 0; i < remainFriendlyNum(); i++) { + if (friendly.get(i) != null) { + if (i - 1 >= 0 && friendly.get(i - 1) != null) { + if (friendly.get(i - 1).getPokemonNum() == 52) { + System.out.println("<<< " + friendly.get(i - 1).getName() + " �뒫�젰 �궗�슜! >>>"); + System.out.println("<<< ���떊 留욎뒿�땲�떎! >>>"); + friendlyHealthAdjust(i - 1, -abilityNum); + System.out.println( + "<<< " + friendly.get(i - 1).getName() + "�뿉寃� " + abilityNum + " �뵾�빐! >>>"); + findHitfriendly(i - 1, -1); + } + } else { + friendlyHealthAdjust(i, -abilityNum); + System.out.println("<<< " + friendly.get(i).getName() + "�뿉寃� " + abilityNum + " �뵾�빐! >>>"); + findHitfriendly(i, -1); + } + + } + } + for (int i = 0; i < remainEnemyNum(); i++) { + if (enemy.get(i) != null) { + if (i - 1 >= 0 && enemy.get(i - 1) != null) { + if (enemy.get(i - 1).getPokemonNum() == 52) { + System.out.println("<<< " + enemy.get(i - 1).getName() + " �뒫�젰 �궗�슜! >>>"); + System.out.println("<<< ���떊 留욎뒿�땲�떎! >>>"); + enemyHealthAdjust(i - 1, -abilityNum); + System.out + .println("<<< " + enemy.get(i - 1).getName() + "�뿉寃� " + abilityNum + " �뵾�빐! >>>"); + findHitEnemy(i - 1, -1); + } + } else { + enemyHealthAdjust(i, -abilityNum); + System.out.println("<<< " + enemy.get(i).getName() + "�뿉寃� " + abilityNum + " �뵾�빐! >>>"); + findHitEnemy(i, -1); + } + + } + } + return; + } + default: { + return; + } + } + } + } + + void enemyDownEnemyAbility(int placeNum) { // �쟻 湲곗젅 �떆 �뒫�젰 + System.out.println("<<< �븘援� 湲곗젅 �떆 �뒫�젰 諛쒕룞 >>>"); + int lv = enemy.get(placeNum).getLv(); + int abilityNum = 3 + lv; + int lv25 = findEnemylv(25); + if (enemy.get(placeNum) != null) { + switch (enemy.get(placeNum).getPokemonNum()) { + case 47: { + System.out.println("<<< " + enemy.get(placeNum).getName() + " �뒫�젰 �궗�슜! >>>"); + enemyPowerAdjust(placeNum, abilityNum); + System.out.println("<<< " + enemy.get(placeNum).getName() + " 怨듦꺽�젰 " + abilityNum + " 留뚰겮 利앷�! >>>"); + if (enemyFindPokemon(25)) { + System.out.println("<<< " + "諛쒖콡�씠" + "�쓽 異붽� �뒫�젰 �궗�슜! >>>"); + enemyPowerAdjust(placeNum, lv25); + System.out.println("<<< " + enemy.get(placeNum).getName() + "�뿉寃� 怨듦꺽�젰 " + lv25 + "留뚰겮 利앷�! >>>"); + } + enemyHealthAdjust(placeNum, abilityNum); + System.out.println("<<< " + enemy.get(placeNum).getName() + " 泥대젰 " + abilityNum + "留뚰겮 利앷�! >>>"); + return; + } + default: { + return; + } + } + } + } + + void enemyUseToSummon() { // �냼�솚 �떆 �뒫�젰 �냼�솚愿� �븘援곗뿉寃� �벐�뒗 �뒫�젰 + System.out.println("<<< �쟻援� �냼�솚 �떆 �뒫�젰 諛쒕룞 >>>"); + int lv15 = findEnemylv(15); + int lv34 = findEnemylv(34); + int lv51 = findEnemylv(51); + int lv25 = findEnemylv(25); + for (int i = 0; i < remainEnemyNum(); i++) { + if (enemy.get(i) != null) { + if (enemy.get(i).getPokemonNum() == 15) { // �븘援� �냼�솚�떆 �냼�솚�맂 �븘援� 怨듦꺽�젰,泥대젰 2, 3, 4 利앷� + int abilityNum = 1 + lv15; + System.out.println("<<< 肄섑뙜 �뒫�젰 �궗�슜! >>>"); + enemyPowerAdjust(0, abilityNum); + System.out.println("<<< �냼�솚�맂 �룷耳볥が 怨듦꺽�젰 " + abilityNum + " 利앷�! >>>"); + if (enemyFindPokemon(25)) { + System.out.println("<<< " + "諛쒖콡�씠" + "�쓽 異붽� �뒫�젰 �궗�슜! >>>"); + enemyPowerAdjust(0, lv25); + System.out.println("<<< " + enemy.get(0).getName() + "�뿉寃� 怨듦꺽�젰 " + lv25 + "留뚰겮 利앷�! >>>"); + } + enemyHealthAdjust(0, abilityNum); + System.out.println("<<< �냼�솚�맂 �룷耳볥が 泥대젰 " + abilityNum + " 利앷�! >>>"); + } else if (enemy.get(i).getPokemonNum() == 34) { // �븘援� �냼�솚 �떆 �냼�솚�맂 �쑀�떅 怨듦꺽�젰 2, 3, 4 利앷� + int abilityNum = 1 + lv34; + System.out.println("<<< �뙆�삤由� �뒫�젰 �궗�슜! >>>"); + enemyPowerAdjust(0, abilityNum); + System.out.println("<<< �냼�솚�맂 �룷耳볥が 怨듦꺽�젰 " + abilityNum + " 利앷�! >>>"); + if (enemyFindPokemon(25)) { + System.out.println("<<< " + "諛쒖콡�씠" + "�쓽 異붽� �뒫�젰 �궗�슜! >>>"); + enemyPowerAdjust(0, lv25); + System.out.println("<<< " + enemy.get(0).getName() + "�뿉寃� 怨듦꺽�젰 " + lv25 + " 留뚰겮 利앷�! >>>"); + } + } else if (enemy.get(i).getPokemonNum() == 51) { // �냼�솚�맂 �븘援� 怨듦꺽�젰, 泥대젰 3, 4, 5利앷� + int abilityNum = 2 + lv51; + System.out.println("<<< 肄섏튂 �뒫�젰 �궗�슜! >>>"); + enemyPowerAdjust(0, abilityNum); + System.out.println("<<< �냼�솚�맂 �룷耳볥が 怨듦꺽�젰 " + abilityNum + " 利앷�! >>>"); + if (enemyFindPokemon(25)) { + System.out.println("<<< " + "諛쒖콡�씠" + "�쓽 異붽� �뒫�젰 �궗�슜! >>>"); + enemyPowerAdjust(0, lv25); + System.out.println("<<< " + enemy.get(0).getName() + "�뿉寃� 怨듦꺽�젰 " + lv25 + "留뚰겮 利앷�! >>>"); + } + enemyHealthAdjust(0, abilityNum); + System.out.println("<<< �냼�솚�맂 �룷耳볥が 泥대젰 " + abilityNum + " 利앷�! >>>"); + } + } + } + } + + void enemyUseSummonAbility() { // �븘援� �냼�솚 �떆 �뒫�젰 �궗�슜 + for (int i = 0; i < remainEnemyNum(); i++) { + if (enemy.get(i) != null) { + if (enemy.get(i).getPokemonNum() == 2 || enemy.get(i).getPokemonNum() == 41) { + enemySummonAbility(i); + } + } + + } + } + + void enemySummonAbility(int placeNum) { // �븘援� �냼�솚 �떆 �뒫�젰 + System.out.println("<<< �쟻援� �냼�솚 �떆 �뒫�젰 諛쒕룞 >>>"); + int lv = enemy.get(placeNum).getLv(); + int lv25 = findEnemylv(25); + switch (enemy.get(placeNum).getPokemonNum()) { + case 2: { // �븘援� �냼�솚 �떆 泥대젰 2, 3, 4 利앷� + int abilityNum = 1 + lv; + System.out.println("<<< " + enemy.get(placeNum).getName() + " �뒫�젰 �궗�슜! >>>"); + enemyHealthAdjust(placeNum, abilityNum); + System.out.println("<<< " + enemy.get(placeNum).getName() + " 泥대젰 " + abilityNum + " 留뚰겮 利앷�! >>>"); + return; + } + + case 41: { // �븘援� �냼�솚 �떆 �옖�뜡�쑝濡� �븘援� 怨듦꺽�젰,泥대젰 2, 3, 4 利앷� + int abilityNum = 1 + lv; + System.out.println("<<< " + enemy.get(placeNum).getName() + " �뒫�젰 �궗�슜! >>>"); + while (true) { + int rNum = random.nextInt(5); + if (enemy.get(rNum) != null) { + enemyHealthAdjust(rNum, abilityNum); + System.out.println("<<< " + enemy.get(rNum).getName() + " 泥대젰 " + abilityNum + " 留뚰겮 利앷�! >>>"); + enemyPowerAdjust(rNum, abilityNum); + System.out.println("<<< " + enemy.get(rNum).getName() + " 怨듦꺽�젰 " + abilityNum + " 留뚰겮 利앷�! >>>"); + if (enemyFindPokemon(25)) { + System.out.println("<<< " + "諛쒖콡�씠" + "�쓽 異붽� �뒫�젰 �궗�슜! >>>"); + enemyPowerAdjust(rNum, lv25); + System.out.println("<<< " + enemy.get(rNum).getName() + "�뿉寃� 怨듦꺽�젰 " + lv25 + " 留뚰겮 利앷�! >>>"); + } + return; + } + } + } + + default: { + return; + } + } + } + + void enemyFriendlySummonAbility() { // �쟻援� �냼�솚 �떆 + System.out.println("<<< �븘援� �냼�솚 �떆 �뒫�젰 諛쒕룞 >>>"); + int lv = findEnemylv(43); + int abilityNum = 2 + lv; + for (int i = 0; i < remainEnemyNum(); i++) { + if (enemy.get(i) != null) { + if (enemy.get(i).getPokemonNum() == 43) { // �쟻援� �냼�솚 �떆 �옖�뜡�븳 �쟻援� 1紐� �뿉寃� 3 �뵾�빐 + System.out.println("<<< " + enemy.get(i).getName() + " �뒫�젰 �궗�슜! >>>"); + while (true) { + int rNum = random.nextInt(); + if (friendly.get(rNum) != null) { + if (rNum - 1 >= 0 && friendly.get(rNum - 1) != null) { + if (friendly.get(rNum - 1).getPokemonNum() == 52) { + System.out.println("<<< " + friendly.get(rNum - 1).getName() + " �뒫�젰 �궗�슜! >>>"); + System.out.println("<<< ���떊 留욎뒿�땲�떎! >>>"); + rNum -= 1; + } + } + friendlyHealthAdjust(rNum, abilityNum); + System.out.println("<<< " + friendly.get(rNum).getName() + "�뿉寃� " + abilityNum + " �뵾�빐! >>>"); + return; + } + } + } + } + } + } + + boolean enemyFindPokemon(int pokemonNum) { // �븘援곗뿉 �엳�뒗吏� �솗�씤 + for (Pokemon p : enemy) { + if (p != null) { + if (p.getPokemonNum() == pokemonNum) { + return true; + } + } + } + return false; + } +} diff --git a/AutoPocket_ex1/src/background/Button.java b/AutoPocket_ex1/src/background/Button.java new file mode 100644 index 0000000..1d6dee5 --- /dev/null +++ b/AutoPocket_ex1/src/background/Button.java @@ -0,0 +1,21 @@ +package background; + +import javax.swing.ImageIcon; +import javax.swing.JPanel; + +public class Button extends JPanel { + private ImagePanel next_btn; + + /** + * Create the panel. + */ + public Button() { + setLayout(null); + setOpaque(false); + this.next_btn = new ImagePanel (new ImageIcon("C:\\Placement_2\\src\\Image\\Next_Battle.png").getImage()); + this.add(next_btn); + } + public ImagePanel getButtonPanel() { + return this.next_btn; + } +} diff --git a/AutoPocket_ex1/src/background/DB_select_test.java b/AutoPocket_ex1/src/background/DB_select_test.java new file mode 100644 index 0000000..3ff7477 --- /dev/null +++ b/AutoPocket_ex1/src/background/DB_select_test.java @@ -0,0 +1,75 @@ +package background; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.PreparedStatement; +import java.sql.ResultSet; +import java.sql.SQLException; + +public class DB_select_test { + String DB_user = "JUNG"; + String DB_password = "1234"; + String DB_url = "jdbc:oracle:thin:@119.195.135.42:1521:xe"; + + public static void main(String[] args) { + DB_select_test user_db = new DB_select_test(); + String user = user_db.DB_user; + String pass = user_db.DB_password; + String url = user_db.DB_url; + String sql = ""; + + try { + int userid = 1; + Class.forName("oracle.jdbc.OracleDriver"); + Connection con = DriverManager.getConnection(url, user, pass); + System.out.println("Ŭ ε !"); + sql = "SELECT UR.USER_ID, UR.RECORD_ID, RL.LOCATION1_OBJ, RL.LOCATION2_OBJ, RL.LOCATION3_OBJ, RL.LOCATION4_OBJ, RL.LOCATION5_OBJ, " + + "GR.GAME_COUNT, GR.GAME_RESULT, GR.GAME_END_HEART, GR.GAME_END_TURN, GR.GAME_END_DATE " + + "FROM USER_RECORD UR " + + "INNER JOIN RECORD_LOCATION RL ON UR.RECORD_ID = RL.RECORD_ID " + + "INNER JOIN GAME_RECORD GR ON UR.RECORD_ID = GR.RECORD_ID " + + "WHERE UR.USER_ID = ?"; + PreparedStatement pstmt = con.prepareStatement(sql); + pstmt.setInt(1, userid); + ResultSet resultSet = pstmt.executeQuery(); + + while (resultSet.next()) { + int user_id = resultSet.getInt("USER_ID"); + int record_id = resultSet.getInt("RECORD_ID"); + int gameCount = resultSet.getInt("GAME_COUNT"); + String gameResult = resultSet.getString("GAME_RESULT"); + int gameEndHeart = resultSet.getInt("GAME_END_HEART"); + int gameEndTurn = resultSet.getInt("GAME_END_TURN"); + java.sql.Date gameEndDate = resultSet.getDate("GAME_END_DATE"); + String date = gameEndDate.toString(); + int location1 = resultSet.getInt("LOCATION1_OBJ"); + int location2 = resultSet.getInt("LOCATION2_OBJ"); + int location3 = resultSet.getInt("LOCATION3_OBJ"); + int location4 = resultSet.getInt("LOCATION4_OBJ"); + int location5 = resultSet.getInt("LOCATION5_OBJ"); + + System.out.println("USER_ID: " + user_id); + System.out.println("RECORD_ID : " + record_id); + System.out.println("Game Count: " + gameCount); + System.out.println("Game Result: " + gameResult); + System.out.println("Game End Heart: " + gameEndHeart); + System.out.println("Game End Turn: " + gameEndTurn); + System.out.println("Game End Date: " + date); + System.out.println(""); + System.out.println("Location 1: " + location1); + System.out.println("Location 2: " + location2); + System.out.println("Location 3: " + location3); + System.out.println("Location 4: " + location4); + System.out.println("Location 5: " + location5); + System.out.println("--------------------------------"); + } + con.close(); // ݱ + }catch (ClassNotFoundException e) { + e.printStackTrace(); + }catch (SQLException e) { + e.printStackTrace(); + } + + } + +} diff --git a/AutoPocket_ex1/src/background/ImagePanel.java b/AutoPocket_ex1/src/background/ImagePanel.java new file mode 100644 index 0000000..772de2c --- /dev/null +++ b/AutoPocket_ex1/src/background/ImagePanel.java @@ -0,0 +1,27 @@ +package background; + +import java.awt.Graphics; +import java.awt.Image; + +import javax.swing.JPanel; + +public class ImagePanel extends JPanel{ + + private Image img; + + public ImagePanel(Image img) { + this.img = img; + this.setSize(img.getWidth(null), img.getHeight(null)); + } + + public void setImage(Image img) { + this.img = img; + this.setSize(img.getWidth(null), img.getHeight(null)); + repaint(); // г ٽ ׸ + } + + public void paintComponent(Graphics g) { + g.drawImage(img,0,0,null); + + } +} diff --git a/AutoPocket_ex1/src/background/Item_Panel.java b/AutoPocket_ex1/src/background/Item_Panel.java new file mode 100644 index 0000000..fe8d6c3 --- /dev/null +++ b/AutoPocket_ex1/src/background/Item_Panel.java @@ -0,0 +1,137 @@ +package background; + +import java.awt.Color; +import java.awt.Component; +import java.awt.Font; +import java.awt.Image; + +import javax.swing.BorderFactory; +import javax.swing.ImageIcon; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.Border; +import javax.swing.border.EtchedBorder; + +public class Item_Panel extends JPanel { + private ImagePanel check_panel; + private ImagePanel default_check_panel; + private ImagePanel frozen_panel; + private ImagePanel item_panel; + private JPanel explain; + private JTextArea ex_label; + private boolean ischecked; + private boolean isselected; + private boolean isfrozen; + private int itemNum; + private int location; + private String ex; + /** + * Create the panel. + */ + public Item_Panel() { + setLayout(null); + setOpaque(false); + //this.itemNum = 2; + this.item_panel = new ImagePanel(new ImageIcon("C:\\ex1\\AutoPocket_ex1\\src\\Item_Image\\" + itemNum + ".png").getImage()); + this.default_check_panel = new ImagePanel(new ImageIcon("C:\\ex1\\AutoPocket_ex1\\src\\Images\\no_check.png").getImage()); + this.check_panel = new ImagePanel(new ImageIcon("C:\\ex1\\AutoPocket_ex1\\src\\Images\\check.png").getImage()); + this.frozen_panel = new ImagePanel(new ImageIcon("C:\\ex1\\AutoPocket_ex1\\src\\Images\\prozen_obj.png").getImage()); + + + this.explain = new JPanel(); + explain.setBackground(new Color(255, 251, 202)); + explain.setBounds(94, 51, 250, 119); + explain.setBorder(new EtchedBorder(EtchedBorder.LOWERED, null, null)); + add(explain); + explain.setLayout(null); + explain.setVisible(false); + + this.ex_label = new JTextArea("", 5, 20); + ex_label.setFont(new Font("Monospaced", Font.BOLD | Font.ITALIC, 17)); + ex_label.setLineWrap(true); + ex_label.setWrapStyleWord(true); + ex_label.setAlignmentX(Component.CENTER_ALIGNMENT); + ex_label.setAlignmentY(Component.CENTER_ALIGNMENT); + ex_label.setBounds(12, 10, 226, 94); + explain.add(ex_label); + this.add(frozen_panel); + this.add(item_panel); + this.add(default_check_panel); + this.add(check_panel); + default_check_panel.setLocation(63, 0); + check_panel.setLocation(62, 0); + frozen_panel.setLocation(45, 61); + ischecked = false; + isfrozen = false; + isselected = false; + this.check_panel.setVisible(false); + this.frozen_panel.setVisible(false); + Border border = BorderFactory.createTitledBorder("Panel Border"); + + } + public void setItemNum(int itemNum) { + this.itemNum = itemNum; + updateImage(); + } + + public int getItemNum() { + return this.itemNum; + } + + public JPanel get_item_panel() { //??? ?? 리턴, ??? ?? ?벤트 ???. + return this.item_panel; + } + + public boolean ischecked() { //체크 ??? 보고 체크? ??? ? ? ?? ??. + return this.ischecked; + } + + public void setItemLocation(int location) { + this.location = location; + } + + public int getItemLocation() { + return this.location; + } + + public void check() { + this.default_check_panel.setVisible(false); + this.check_panel.setVisible(true); + this.ischecked = true; + this.isselected = true; + } + + public void no_check() { + this.default_check_panel.setVisible(true); + this.check_panel.setVisible(false); + this.ischecked = false; + this.isselected = false; + } + + public void frozen() { + this.frozen_panel.setVisible(true); + this.isfrozen = true; + } + + public ImagePanel get_frozen_panel() { + return this.frozen_panel; + } + + private void updateImage() { + Image newImage = new ImageIcon("C:\\ex1\\AutoPocket_ex1\\src\\Item_Image\\" + itemNum + ".png").getImage(); + this.item_panel.setImage(newImage); + } + + public void set_ex(String ex) { + this.ex = ex; + this.ex_label.setText(ex); + } + + public void show_ex() { + explain.setVisible(true); + } + + public void no_show_ex() { + explain.setVisible(false); + } +} diff --git a/AutoPocket_ex1/src/background/Music.java b/AutoPocket_ex1/src/background/Music.java new file mode 100644 index 0000000..cee8529 --- /dev/null +++ b/AutoPocket_ex1/src/background/Music.java @@ -0,0 +1,69 @@ +package background; + +import javax.sound.sampled.*; +import java.io.File; +import java.io.IOException; + +public class Music extends Thread { + + private Clip clip; + private FloatControl volumeControl; + private boolean isLoop; + private boolean isPlaying; + + public Music(String name, boolean isLoop) { + try { + this.isLoop = isLoop; + File file = new File("C:\\ex1\\AutoPocket_ex1\\src\\Sound\\" + name); + + AudioInputStream audioInputStream = AudioSystem.getAudioInputStream(file); + AudioFormat format = audioInputStream.getFormat(); + DataLine.Info info = new DataLine.Info(Clip.class, format); + clip = (Clip) AudioSystem.getLine(info); + clip.open(audioInputStream); + + + if (clip.isControlSupported(FloatControl.Type.MASTER_GAIN)) { + volumeControl = (FloatControl) clip.getControl(FloatControl.Type.MASTER_GAIN); + } + } catch (UnsupportedAudioFileException | IOException | LineUnavailableException e) { + System.out.println("Error initializing music: " + e.getMessage()); + } + } + + public void close() { + isLoop = false; + clip.close(); + this.interrupt(); + } + + public void setVolume(float volume) { + if (volumeControl != null) { + float dB = (float) (Math.log(volume) / Math.log(10.0) * 20.0); + volumeControl.setValue(dB); + } + } + + public void run() { + try { + do { + play(); + clip.drain(); + clip.stop(); + clip.setFramePosition(0); + } while (isLoop); + } catch (Exception e) { + System.out.println(e.getMessage()); + } + } + + void play() { + if (clip != null && !isPlaying) { + isPlaying = true; + clip.start(); + clip.loop(Clip.LOOP_CONTINUOUSLY); + } + } +} + + diff --git a/AutoPocket_ex1/src/background/Obj_Panel2.java b/AutoPocket_ex1/src/background/Obj_Panel2.java new file mode 100644 index 0000000..c3f0850 --- /dev/null +++ b/AutoPocket_ex1/src/background/Obj_Panel2.java @@ -0,0 +1,276 @@ +package background; + +import java.awt.Font; +import java.awt.event.MouseAdapter; +import java.awt.event.MouseEvent; +import java.util.LinkedList; + +import javax.swing.BorderFactory; +import javax.swing.ImageIcon; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.Border; + +import java.awt.Color; +import java.awt.Component; + +import javax.swing.border.BevelBorder; +import javax.swing.border.EtchedBorder; + + + +public class Obj_Panel2 extends JPanel { + private JLabel heart_label; + private JLabel damage_label; + private JLabel Lv_label; + private JLabel exp_label; + private JLabel check_grade_label; + private JLabel no_check_grade_label; + private JPanel explanation; + private JTextArea ex_label; + + + private boolean ischecked; + private int location_num; + + private String ex; + private String pokemonNum; + private String Lv; + private String exp; + private String grade; + private String heart; + private String damage; + private ImagePanel check_panel; + private ImagePanel default_check_panel; + private ImagePanel pokemon_panel; + private ImagePanel frozen_panel; + private boolean isfrozen; + + + public Obj_Panel2() { + this.ischecked = false; + this.isfrozen = false; + + setLayout(null); + setBounds(161, 566, 486, 340); + setOpaque(false); + ImagePanel heart_panel = new ImagePanel(new ImageIcon("C:\\ex1\\AutoPocket_ex1\\src\\Images\\shop_heart.png").getImage()); + ImagePanel damage_panel = new ImagePanel(new ImageIcon("C:\\ex1\\AutoPocket_ex1\\src\\Images\\shop_damage.png").getImage()); + this.default_check_panel = new ImagePanel(new ImageIcon("C:\\ex1\\AutoPocket_ex1\\src\\Images\\no_check.png").getImage()); + this.check_panel = new ImagePanel(new ImageIcon("C:\\ex1\\AutoPocket_ex1\\src\\Images\\check.png").getImage()); + this.heart_label = new JLabel(this.heart); + this.damage_label = new JLabel(this.damage); + this.frozen_panel = new ImagePanel(new ImageIcon("C:\\ex1\\AutoPocket_ex1\\src\\Images\\prozen_obj.png").getImage()); + this.pokemon_panel = new ImagePanel(new ImageIcon("C:\\ex1\\AutoPocket_ex1\\src\\Images\\"+ pokemonNum +".png").getImage()); + + frozen_panel.setBounds(28, 93, 120, 131); + this.add(frozen_panel); + frozen_panel.setVisible(false); + + pokemon_panel.setBounds(12, 126, 166, 166); + this.add(pokemon_panel); + + this.exp_label = new JLabel("null/2"); + exp_label.setBounds(81, 20, 81, 28); + this.add(exp_label); + exp_label.setFont(new Font("굴림", Font.BOLD, 24)); + exp_label.setHorizontalAlignment(JLabel.CENTER); + exp_label.setVerticalAlignment(JLabel.CENTER); + + heart_panel.setBounds(111, 272, 67, 65); + heart_panel.setLayout(null); + this.add(heart_panel); + + heart_label.setFont(new Font("굴림", Font.BOLD, 30)); + heart_label.setBounds(0, 15, 67, 33); + heart_label.setHorizontalAlignment(JLabel.CENTER); // ?? ?? ?? + heart_label.setVerticalAlignment(JLabel.CENTER); + heart_panel.add(heart_label); + + damage_panel.setBounds(22, 261, 70, 76); + damage_panel.setLayout(null); + this.add(damage_panel); + + damage_label.setFont(new Font("굴림", Font.BOLD, 30)); + damage_label.setBounds(0, 24, 70, 33); + damage_label.setHorizontalAlignment(JLabel.CENTER); + damage_label.setVerticalAlignment(JLabel.CENTER); + damage_panel.add(damage_label); + + default_check_panel.setBounds(62, 59, 56, 56); + this.add(default_check_panel); + default_check_panel.setLayout(null); + + check_panel.setBounds(62, 60, 56, 56); + this.add(check_panel); + check_panel.setLayout(null); + check_panel.setVisible(false); + + this.check_grade_label = new JLabel(this.grade); + check_grade_label.setFont(new Font("굴림", Font.BOLD, 29)); + check_grade_label.setBounds(0, 5, 57, 51); + check_panel.add(check_grade_label); + check_grade_label.setHorizontalAlignment(JLabel.CENTER); + check_grade_label.setVerticalAlignment(JLabel.CENTER); + + this.no_check_grade_label = new JLabel(this.grade); + no_check_grade_label.setFont(new Font("굴림", Font.BOLD, 29)); + no_check_grade_label.setBounds(0, 5, 57, 51); + default_check_panel.add(no_check_grade_label); + no_check_grade_label.setHorizontalAlignment(JLabel.CENTER); + no_check_grade_label.setVerticalAlignment(JLabel.CENTER); + + this.Lv_label = new JLabel("Lvnull"); + Lv_label.setFont(new Font("굴림", Font.BOLD, 24)); + Lv_label.setBounds(39, 21, 53, 27); + add(Lv_label); + + this.explanation = new JPanel(); + explanation.setBackground(new Color(255, 251, 202)); + explanation.setBounds(201, 72, 250, 119); + Border border = BorderFactory.createTitledBorder("Panel Border"); + explanation.setBorder(new EtchedBorder(EtchedBorder.LOWERED, null, null)); + add(explanation); + explanation.setLayout(null); + explanation.setVisible(false); + + this.ex_label = new JTextArea("", 5, 20); + ex_label.setFont(new Font("Monospaced", Font.BOLD | Font.ITALIC, 17)); + ex_label.setLineWrap(true); + ex_label.setWrapStyleWord(true); + ex_label.setAlignmentX(Component.CENTER_ALIGNMENT); + ex_label.setAlignmentY(Component.CENTER_ALIGNMENT); + ex_label.setBounds(12, 10, 226, 94); + explanation.add(ex_label); + } + + //--------------------------------------------- + public void show_ex() { + explanation.setVisible(true); + } + public void no_show_ex() { + explanation.setVisible(false); + } + + public void set_pokemon_num(int pokemon_num, int Lv) { + if (Lv == 1) { + this.pokemonNum = Integer.toString(pokemon_num); + } else if (Lv == 2) { + this.pokemonNum = "2_" + Integer.toString(pokemon_num); + }else if (Lv == 3) { + this.pokemonNum = "3_" + Integer.toString(pokemon_num); + } + update_pokemon_Image(); // ?켓몬 ?? ? set ? ???? + } + + public int get_pokemon_num() { + // Check if the string starts with "2_" or "3_" + if (this.pokemonNum.startsWith("2_")) { + // Remove "2_" from the beginning of the string + return Integer.parseInt(this.pokemonNum.substring(2)); + } else if (this.pokemonNum.startsWith("3_")) { + // Remove "3_" from the beginning of the string + return Integer.parseInt(this.pokemonNum.substring(2)); + } else { + // If it doesn't start with "2_" or "3_", parse the entire string as an integer + return Integer.parseInt(this.pokemonNum); + } + } + + public void set_Lv(int Lv) { + this.Lv = Integer.toString(Lv); + Lv_label.setText("Lv" + this.Lv); + } + public int get_LV() { + return Integer.parseInt(this.Lv); + } + + public void set_exp(int exp) { + this.exp = Integer.toString(exp); + exp_label.setText(this.exp + "/3"); + } + public int get_exp() { + return Integer.parseInt(this.exp); + } + + public void set_grade(int grade) { + this.grade = Integer.toString(grade); + update_grade_label(); + } + + public int get_grade() { + return Integer.parseInt(this.grade); + } + + public void update_grade_label() { //?미? ??? 2개여? 2개의 label? ???? ?기위? ?? + check_grade_label.setText(this.grade); + no_check_grade_label.setText(this.grade); + } + + public void set_heart(int heart) { + this.heart = Integer.toString(heart); + heart_label.setText(this.heart); + } + public int get_heart() { + return Integer.parseInt(this.heart); + } + + + public void set_damage(int damage) { + this.damage = Integer.toString(damage); + damage_label.setText(this.damage); + } + public int get_damage() { + return Integer.parseInt(this.damage); + } + + public void set_location_num(int location_num) { + this.location_num = location_num; + } + + public int get_location_num() { + return this.location_num; + } + + private void update_pokemon_Image() { //?켓몬 값을 ???? ? ??? ???? ?주는 ??. + String imagePath = "C:\\ex1\\AutoPocket_ex1\\src\\Images\\" + this.pokemonNum + ".png"; + this.pokemon_panel.setImage(new ImageIcon(imagePath).getImage()); + repaint(); + } + + public boolean ischecked() { //체크 ??? 반환?? ??. + return ischecked; + } + + public void check() { //체크 ??? + ischecked = true; + default_check_panel.setVisible(false); + check_panel.setVisible(true); + } + public void no_check() { //체크 ?? ??? + ischecked = false; + default_check_panel.setVisible(true); + check_panel.setVisible(false); + } + public ImagePanel get_pokemon_panel() { //?미? ??? 받아? ?? ?????? ??? ? ?? ? + return pokemon_panel; + } + + public ImagePanel get_frozen_panel() { //?미? ??? 받아? ?? ????? ??? ? ?? ?기위? + return frozen_panel; + } + + public void set_ex(String ex) { + this.ex = ex; + this.ex_label.setText(ex); + } + + public String get_ex() { + return this.ex; + } + + public void no_frozen() { + this.isfrozen = false; + } +} diff --git a/AutoPocket_ex1/src/background/Obj_Panel3.java b/AutoPocket_ex1/src/background/Obj_Panel3.java new file mode 100644 index 0000000..9dffa9b --- /dev/null +++ b/AutoPocket_ex1/src/background/Obj_Panel3.java @@ -0,0 +1,221 @@ +package background; + +import java.awt.Font; +import java.awt.event.MouseAdapter; +import java.awt.event.MouseEvent; +import java.util.LinkedList; + +import javax.swing.BorderFactory; +import javax.swing.ImageIcon; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import javax.swing.border.Border; + +import java.awt.Color; +import java.awt.Component; + +import javax.swing.border.BevelBorder; +import javax.swing.border.EtchedBorder; + + + +public class Obj_Panel3 extends JPanel { + private JLabel heart_label; + private JLabel damage_label; + private JLabel Lv_label; + private JLabel exp_label; + private JPanel explanation; + private JTextArea ex_label; + + + private boolean ischecked; + private int location_num; + + private String ex; + private String pokemonNum; + private String Lv; + private String exp; + private String grade; + private String heart; + private String damage; + private ImagePanel pokemon_panel; + private boolean isfrozen; + + + public Obj_Panel3() { + this.ischecked = false; + this.isfrozen = false; + this.heart = "0"; + setLayout(null); + setBounds(161, 566, 486, 340); + setOpaque(false); + ImagePanel heart_panel = new ImagePanel(new ImageIcon("C:\\Placement_2\\src\\Image\\shop_heart.png").getImage()); + ImagePanel damage_panel = new ImagePanel(new ImageIcon("C:\\Placement_2\\src\\Image\\shop_damage.png").getImage()); + this.heart_label = new JLabel(this.heart); + this.damage_label = new JLabel(this.damage); + this.pokemon_panel = new ImagePanel(new ImageIcon("C:\\Placement_2\\src\\Image\\"+ pokemonNum +".png").getImage()); + + pokemon_panel.setBounds(12, 126, 166, 166); + this.add(pokemon_panel); + + this.exp_label = new JLabel("null/2"); + exp_label.setBounds(69, 68, 81, 28); + this.add(exp_label); + exp_label.setFont(new Font("굴림", Font.BOLD, 24)); + exp_label.setHorizontalAlignment(JLabel.CENTER); + exp_label.setVerticalAlignment(JLabel.CENTER); + exp_label.setForeground(Color.WHITE); + + heart_panel.setBounds(111, 272, 67, 65); + heart_panel.setLayout(null); + this.add(heart_panel); + + heart_label.setFont(new Font("굴림", Font.BOLD, 30)); + heart_label.setBounds(0, 15, 67, 33); + heart_label.setHorizontalAlignment(JLabel.CENTER); // 수평 정렬 설정 + heart_label.setVerticalAlignment(JLabel.CENTER); + heart_panel.add(heart_label); + + damage_panel.setBounds(22, 261, 70, 76); + damage_panel.setLayout(null); + this.add(damage_panel); + + damage_label.setFont(new Font("굴림", Font.BOLD, 30)); + damage_label.setBounds(0, 24, 70, 33); + damage_label.setHorizontalAlignment(JLabel.CENTER); + damage_label.setVerticalAlignment(JLabel.CENTER); + damage_panel.add(damage_label); + + this.Lv_label = new JLabel("Lvnull"); + Lv_label.setFont(new Font("굴림", Font.BOLD, 24)); + Lv_label.setBounds(28, 69, 53, 27); + add(Lv_label); + Lv_label.setForeground(Color.WHITE); + + this.explanation = new JPanel(); + explanation.setBackground(new Color(255, 251, 202)); + explanation.setBounds(201, 72, 250, 119); + Border border = BorderFactory.createTitledBorder("Panel Border"); + explanation.setBorder(new EtchedBorder(EtchedBorder.LOWERED, null, null)); + add(explanation); + explanation.setLayout(null); + explanation.setVisible(false); + + this.ex_label = new JTextArea("", 5, 20); + ex_label.setFont(new Font("Monospaced", Font.BOLD | Font.ITALIC, 17)); + ex_label.setLineWrap(true); + ex_label.setWrapStyleWord(true); + ex_label.setAlignmentX(Component.CENTER_ALIGNMENT); + ex_label.setAlignmentY(Component.CENTER_ALIGNMENT); + ex_label.setBounds(12, 10, 226, 94); + explanation.add(ex_label); + } + + //--------------------------------------------- + public void show_ex() { + explanation.setVisible(true); + } + public void no_show_ex() { + explanation.setVisible(false); + } + public JPanel get_expanel() { + return explanation; + } + public void set_pokemon_num(int pokemon_num, int Lv) { + if (Lv == 1) { + this.pokemonNum = Integer.toString(pokemon_num); + } else if (Lv == 2) { + this.pokemonNum = "2_" + Integer.toString(pokemon_num); + }else if (Lv == 3) { + this.pokemonNum = "3_" + Integer.toString(pokemon_num); + } + update_pokemon_Image(); // 포켓몬 패널 값 set 후 업데이트 + } + + public int get_pokemon_num() { + // Check if the string starts with "2_" or "3_" + if (this.pokemonNum.startsWith("2_")) { + // Remove "2_" from the beginning of the string + return Integer.parseInt(this.pokemonNum.substring(2)); + } else if (this.pokemonNum.startsWith("3_")) { + // Remove "3_" from the beginning of the string + return Integer.parseInt(this.pokemonNum.substring(2)); + } else { + // If it doesn't start with "2_" or "3_", parse the entire string as an integer + return Integer.parseInt(this.pokemonNum); + } + } + + public void set_Lv(int Lv) { + this.Lv = Integer.toString(Lv); + Lv_label.setText("Lv" + this.Lv); + } + public int get_LV() { + return Integer.parseInt(this.Lv); + } + + public void set_exp(int exp) { + this.exp = Integer.toString(exp); + exp_label.setText(this.exp + "/3"); + } + public int get_exp() { + return Integer.parseInt(this.exp); + } + + public int get_grade() { + return Integer.parseInt(this.grade); + } + + public void set_heart(int heart) { + this.heart = Integer.toString(heart); + heart_label.setText(this.heart); + } + public int get_heart() { + return Integer.parseInt(this.heart); + } + + public void set_damage(int damage) { + this.damage = Integer.toString(damage); + damage_label.setText(this.damage); + } + public int get_damage() { + return Integer.parseInt(this.damage); + } + + public void set_location_num(int location_num) { + this.location_num = location_num; + } + + public int get_location_num() { + return this.location_num; + } + + public ImagePanel get_pokemon_panel() { //이미지 패널을 받아서 다른 클래스에서도 사용할 수 있게 함 + return pokemon_panel; + } + + private void update_pokemon_Image() { //포켓몬 값을 설정하고 그 패널을 업데이트 해주는 함수. + String imagePath = "C:\\Placement_2\\src\\Image\\" + this.pokemonNum + ".png"; + this.pokemon_panel.setImage(new ImageIcon(imagePath).getImage()); + repaint(); + } + + public boolean ischecked() { //체크 여부를 반환하는 함수. + return ischecked; + } + + + public void set_ex(String ex) { + this.ex = ex; + this.ex_label.setText(ex); + } + + public String get_ex() { + return this.ex; + } + + public void no_frozen() { + this.isfrozen = false; + } +} diff --git a/AutoPocket_ex1/src/background/Place_Area2.java b/AutoPocket_ex1/src/background/Place_Area2.java new file mode 100644 index 0000000..7e9a4cc --- /dev/null +++ b/AutoPocket_ex1/src/background/Place_Area2.java @@ -0,0 +1,79 @@ +package background; + +import java.awt.event.MouseAdapter; +import java.awt.event.MouseEvent; + +import javax.swing.ImageIcon; +import javax.swing.JPanel; + +public class Place_Area2 extends JPanel { + + private boolean ischecked; + private int location_num; + private ImagePanel select_place_panel; + private ImagePanel no_select_place_panel; + + public Place_Area2(int location_num) { + this.location_num = location_num; + this.ischecked = false; + + setLayout(null); + setOpaque(false); + setBounds(495, 418, 202, 117); + + this.select_place_panel = new ImagePanel(new ImageIcon("C:\\ex1\\AutoPocket_ex1\\src\\Images\\location3.png").getImage()); + select_place_panel.setLayout(null); + select_place_panel.setBounds(12, 10, 189, 98); + this.add(select_place_panel); + select_place_panel.setVisible(false); + + this.no_select_place_panel = new ImagePanel(new ImageIcon("C:\\ex1\\AutoPocket_ex1\\src\\Images\\location2.png").getImage()); + no_select_place_panel.setLayout(null); + no_select_place_panel.setBounds(13, 10, 178, 98); + this.add(no_select_place_panel); + + /* + select_place_panel.addMouseListener(new MouseAdapter() { + @Override + public void mouseClicked(MouseEvent e) { + no_check(); + + } + }); + no_select_place_panel.addMouseListener(new MouseAdapter() { + @Override + public void mouseClicked(MouseEvent e) { + check(); + } + }); + */ + + } + public int get_location_num() { + return location_num; + } + + public void check() { + this.select_place_panel.setVisible(true); + this.no_select_place_panel.setVisible(false); + this.ischecked = true; + + } + public void no_check() { + this.select_place_panel.setVisible(false); + this.no_select_place_panel.setVisible(true); + this.ischecked = false; + + } + public ImagePanel get_select_place_panel() { + return this.select_place_panel; + } + public ImagePanel get_no_select_place_panel() { + return this.no_select_place_panel; + } + + public boolean ischecked() { + return ischecked; + } + +} diff --git a/AutoPocket_ex1/src/background/Placement_Screen.java b/AutoPocket_ex1/src/background/Placement_Screen.java new file mode 100644 index 0000000..68a91e3 --- /dev/null +++ b/AutoPocket_ex1/src/background/Placement_Screen.java @@ -0,0 +1,1668 @@ +package background; + +import java.awt.Color; +import java.awt.EventQueue; +import java.awt.Frame; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.awt.event.MouseAdapter; +import java.awt.event.MouseEvent; +import java.util.LinkedList; +import java.util.Random; + +import javax.swing.ImageIcon; +import javax.swing.JButton; +import javax.swing.JFrame; +import javax.swing.JPanel; +import javax.swing.border.EmptyBorder; + +public class Placement_Screen{ + + int effectNum[] = { 0, 0, 0, 0, 0 }; + private int life = 10; // 목숨 + private int coin = 100; // 코인 + private int badge = 0; // 뱃지 + public int turnNum = 1;// 턴 수 + Random random = new Random(); + private JPanel contentPane; + private LinkedList shopPokemon; + private LinkedList shop_pokemon_panel; // 상점 패널을 저장하고 있음 + private Obj_Panel2 select_shop_pokemon; // 상점에서 선택한 패널을 저장함 + private LinkedList place_area_panel; // 배치 패널을 저장하고 있음 + private Place_Area2 select_place; // 선택 한 배치 패널을 가지고있음 + private LinkedList place_pokemon_panel; // 배치에 위치한 포켓몬 패널을 가지고있음 + private Obj_Panel2 select_place_pokemon; + public LinkedList placePokemon; + private LinkedList forReplace; + private Status_Panel status_panel; + private main_screen main; + + public Status_Panel getStatus_panel() { + return status_panel; + } + + setPokemon s = new setPokemon(); + private LinkedList item; + private LinkedList item_panel; + public LinkedList toBattle; + setItem t = new setItem(); + boolean frozenPokemonNum[] = { false, false, false, false, false }; // 상점 포켓몬 얼리기 설정 + boolean frozenItemNum[] = { false, false };// 아이템 얼리기 + public ImagePanel placementbackground = new ImagePanel( + new ImageIcon("C:\\ex1\\AutoPocket_ex1\\src\\Images\\placement_background.png") + .getImage()); + private Item_Panel select_item; + boolean item24Effect = false; + public StartBattle battle_screen; + public ImagePanel next_btn; + private ImageIcon exitImg = new ImageIcon("C:\\ex1\\AutoPocket_ex1\\src\\Image\\exit.png"); + public JButton exitBtn; + + + /** + * Create the frame. + */ + public Placement_Screen() { + exitBtn = new JButton(exitImg); + exitBtn.setBounds(1832,0,88,88); + + placementbackground.add(exitBtn); + placementbackground.setBounds(0, 0, 1920, 1080); + placementbackground.setBackground(new Color(255, 255, 255)); + placementbackground.setLayout(null); + + this.toBattle = new LinkedList<>(); + this.shopPokemon = new LinkedList<>(); + this.placePokemon = new LinkedList<>(); + this.forReplace = new LinkedList<>(); + this.shop_pokemon_panel = new LinkedList<>(); + this.place_area_panel = new LinkedList<>(); + this.place_pokemon_panel = new LinkedList<>(); + this.item = new LinkedList<>(); + this.item_panel = new LinkedList<>(); + settingList(); + panel_setting(); + shop_reroll(); + + } + + public void panel_setting() { // 상점 포켓몬 초기설정 + + // ---------------Item_1_panel------------------// + Item_Panel item1 = new Item_Panel(); + ImagePanel item_location_1 = new ImagePanel( + new ImageIcon("C:\\Placement_2\\src\\Image\\select_location.png") + .getImage()); + item1.setBounds(1325, 600, 409, 245); + item_location_1.setBounds(1328, 780, 184, 110); + placementbackground.add(item1); + placementbackground.add(item_location_1); + item_panel.add(0, item1); + // -------------------------------------------// + + // ---------------Item_2_panel------------------// + Item_Panel item2 = new Item_Panel(); + ImagePanel item_location_2 = new ImagePanel( + new ImageIcon("C:\\Placement_2\\src\\Image\\select_location.png") + .getImage()); + item2.setBounds(1564, 600, 356, 245); + item_location_2.setBounds(1570, 780, 184, 110); + placementbackground.add(item2); + placementbackground.add(item_location_2); + item_panel.add(1, item2); + // -------------------------------------------// + + // ---------------shop_obj_panel--------------------// + + Obj_Panel2 shop_obj_1 = new Obj_Panel2(); + placementbackground.add(shop_obj_1); + shop_pokemon_panel.add(0, shop_obj_1); + shop_obj_1.setVisible(false); // 디폴트는 안보이게 + + Obj_Panel2 shop_obj_2 = new Obj_Panel2(); + shop_obj_2.setLocation(373, 566); + placementbackground.add(shop_obj_2); + shop_pokemon_panel.add(1, shop_obj_2); + shop_obj_2.setVisible(false); + + Obj_Panel2 shop_obj_3 = new Obj_Panel2(); + shop_obj_3.setLocation(585, 566); + placementbackground.add(shop_obj_3); + shop_pokemon_panel.add(2, shop_obj_3); + shop_obj_3.setVisible(false); + + Obj_Panel2 shop_obj_4 = new Obj_Panel2(); + shop_obj_4.setLocation(797, 566); + placementbackground.add(shop_obj_4); + shop_pokemon_panel.add(3, shop_obj_4); + shop_obj_4.setVisible(false); + + Obj_Panel2 shop_obj_5 = new Obj_Panel2(); + shop_obj_5.setLocation(1009, 566); + placementbackground.add(shop_obj_5); + shop_pokemon_panel.add(4, shop_obj_5); + shop_obj_5.setVisible(false); + + // ------------------------------------------// + Shop_Area shop_area = new Shop_Area(); + shop_area.setBounds(150, 797, 1045, 113); + placementbackground.add(shop_area); + + // ---------------user_obj_panel------------------// + Obj_Panel2 user_obj_1 = new Obj_Panel2(); + user_obj_1.setLocation(505, 190); + placementbackground.add(user_obj_1); + place_pokemon_panel.add(0, user_obj_1); + user_obj_1.setVisible(false); + + Obj_Panel2 user_obj_2 = new Obj_Panel2(); + user_obj_2.setLocation(717, 190); + placementbackground.add(user_obj_2); + place_pokemon_panel.add(1, user_obj_2); + user_obj_2.setVisible(false); + + Obj_Panel2 user_obj_3 = new Obj_Panel2(); + user_obj_3.setLocation(929, 190); + placementbackground.add(user_obj_3); + place_pokemon_panel.add(2, user_obj_3); + user_obj_3.setVisible(false); + + Obj_Panel2 user_obj_4 = new Obj_Panel2(); + user_obj_4.setLocation(1141, 190); + placementbackground.add(user_obj_4); + place_pokemon_panel.add(3, user_obj_4); + user_obj_4.setVisible(false); + + Obj_Panel2 user_obj_5 = new Obj_Panel2(); + user_obj_5.setLocation(1353, 190); + placementbackground.add(user_obj_5); + place_pokemon_panel.add(4, user_obj_5); + user_obj_5.setVisible(false); + // ------------------------------------------// + + // ---------------user_place_panel------------------// + Place_Area2 place_1 = new Place_Area2(0); + placementbackground.add(place_1); + place_area_panel.add(place_1); + + Place_Area2 place_2 = new Place_Area2(1); + place_2.setLocation(707, 418); + placementbackground.add(place_2); + place_area_panel.add(place_2); + + Place_Area2 place_3 = new Place_Area2(2); + place_3.setLocation(919, 418); + placementbackground.add(place_3); + place_area_panel.add(place_3); + + Place_Area2 place_4 = new Place_Area2(3); + place_4.setLocation(1131, 418); + placementbackground.add(place_4); + place_area_panel.add(place_4); + + Place_Area2 place_5 = new Place_Area2(4); + place_5.setLocation(1343, 418); + placementbackground.add(place_5); + place_area_panel.add(place_5); + // ------------------------------------------// + + // ---------------status_panel------------------// + status_panel = new Status_Panel(coin, life, badge); + status_panel.setBounds(0, 0, 874, 168); + placementbackground.add(status_panel); + // -------------------------------------------// + + // ---------------reroll_panel------------------// + ImagePanel reroll = new ImagePanel( + new ImageIcon("C:\\Placement_2\\src\\Image\\reroll.png").getImage()); + reroll.setLocation(12, 957); + placementbackground.add(reroll); + // -------------------------------------------// + + // ---------------frozen_panel------------------// + ImagePanel frozen = new ImagePanel( + new ImageIcon("C:\\Placement_2\\src\\Image\\prozen.png").getImage()); + frozen.setLocation(253, 935); + placementbackground.add(frozen); + // -------------------------------------------// + + // ---------------next_panel------------------// + next_btn = new ImagePanel( + new ImageIcon("C:\\Placement_2\\src\\Image\\next_btn.png").getImage()); + next_btn.setLocation(1663, 911); + placementbackground.add(next_btn); + next_btn.setLocation(1663, 911); + // -------------------------------------------// + + // ---------------next_panel------------------// + ImagePanel sell_btn = new ImagePanel( + new ImageIcon("C:\\Placement_2\\src\\Image\\sell_1.png").getImage()); + sell_btn.setBounds(1259, 916, 300, 145); + placementbackground.add(sell_btn); + + // item 1번째 선택시 + item1.get_item_panel().addMouseListener(new MouseAdapter() { + @Override + public void mouseClicked(MouseEvent e) { + if (item1.ischecked() == false) { + item1.check(); + select_item = item1; + item2.no_check(); + } else { + item1.no_check(); + select_item = null; + } + } + }); + // 아이템 설명 + item1.get_item_panel().addMouseListener(new MouseAdapter() { + + public void mouseEntered(MouseEvent e) { + item1.show_ex(); + } + + @Override + public void mouseExited(MouseEvent e) { + item1.no_show_ex(); + } + + }); + + // item 2번째 선택시 + item2.get_item_panel().addMouseListener(new MouseAdapter() { + @Override + public void mouseClicked(MouseEvent e) { + if (item2.ischecked() == false) { + item2.check(); + select_item = item2; + item1.no_check(); + } else { + item2.no_check(); + select_item = null; + } + } + }); + + item2.get_item_panel().addMouseListener(new MouseAdapter() { + + public void mouseEntered(MouseEvent e) { + item2.show_ex(); + } + + @Override + public void mouseExited(MouseEvent e) { + item2.no_show_ex(); + } + + }); + + sell_btn.addMouseListener(new MouseAdapter() { + @Override + public void mouseClicked(MouseEvent e) { + if (select_place_pokemon != null) { + place_sell(select_place_pokemon.get_location_num()); + } + } + }); + + for (Obj_Panel2 shop_pokemon_panel : shop_pokemon_panel) { + shop_pokemon_panel.get_pokemon_panel().addMouseListener(new MouseAdapter() { + @Override + public void mouseEntered(MouseEvent e) { + shop_pokemon_panel.show_ex(); + } + + @Override + public void mouseExited(MouseEvent e) { + shop_pokemon_panel.no_show_ex(); + } + + }); + } + + for (Obj_Panel2 place_pokemon_panel : place_pokemon_panel) { + place_pokemon_panel.get_pokemon_panel().addMouseListener(new MouseAdapter() { + @Override + public void mouseEntered(MouseEvent e) { + place_pokemon_panel.show_ex(); + } + + @Override + public void mouseExited(MouseEvent e) { + place_pokemon_panel.no_show_ex(); + } + + }); + } + + // 상점 포켓몬 하나만 선택되게 하고 선택한 객체를 저장함 + for (Obj_Panel2 shop_pokemon_panel : shop_pokemon_panel) { + shop_pokemon_panel.get_pokemon_panel().addMouseListener(new MouseAdapter() { + @Override + public void mouseClicked(MouseEvent e) { + shop_select_obj(shop_pokemon_panel); + } + }); + } + // 배치구역에 있는 포켓몬의 동작을 함(경험치 증가 이벤트) + for (Obj_Panel2 place_pokemon_panel : place_pokemon_panel) { + place_pokemon_panel.get_pokemon_panel().addMouseListener(new MouseAdapter() { + @Override + public void mouseClicked(MouseEvent e) { + place_select_obj(place_pokemon_panel); + if (select_shop_pokemon != null && select_place_pokemon != null) { + if (select_shop_pokemon.get_pokemon_num() == select_place_pokemon.get_pokemon_num()) { + if (coin >= 3) { + int select_shop_pokemon_location = select_shop_pokemon.get_location_num(); + int select_place_pokemon_location = select_place_pokemon.get_location_num(); + buyAbility(select_place_pokemon_location); + shop_buy_expUp(select_shop_pokemon_location, select_place_pokemon_location); + coin = coin - 3; + status_panel.set_coin_num(coin); + } else { + System.out.println("코인이 부족합니다."); + } + } else { + System.out.println("포켓몬 레벨업 할려는거 아님"); + } + } + // 아이템 사용 이벤트 + if (select_item != null && select_place_pokemon != null) { + if (coin >= 3) { + shop_item_buy(select_item.getItemLocation(), select_place_pokemon.get_location_num()); + select_item = null; + select_place_pokemon = null; + } + } + } + }); + } + + // 배치 장소 선택을 하나밖에 선택하게 하고 선택한 객체의 위치를 저장함 + for (Place_Area2 placeArea : place_area_panel) { + placeArea.get_no_select_place_panel().addMouseListener(new MouseAdapter() { + @Override + public void mouseClicked(MouseEvent e) { + selectPlaceArea(placeArea); + + if (select_shop_pokemon != null) { // select_shop_pokemon에 객체 없으면 상점 구매 x //상점 구매 + if (coin >= 3) { + int shop_select_location = select_shop_pokemon.get_location_num(); + int place_select_location = select_place.get_location_num(); + shop_buy(shop_select_location, place_select_location); + status_panel.set_coin_num(coin); + } else { + System.out.println("코인이 부족합니다."); + } + } else { + System.out.println("포켓몬을 구매하는 행동 아님"); + } + + if (select_place_pokemon != null) { // select_place_pokemon에 객체 없으면 위치 이동 x + int place_select_pokemon = select_place_pokemon.get_location_num(); // 포켓몬 위치 옮기기 + int place_select = select_place.get_location_num(); + place_replace(place_select_pokemon, place_select); + } else { + // System.out.println("위치구역에서 선택한 포켓몬이 없습니다"); + } + } + }); + + placeArea.get_select_place_panel().addMouseListener(new MouseAdapter() { + @Override + public void mouseClicked(MouseEvent e) { + deselectPlaceArea(placeArea); + } + }); + } + + // 리롤 클릭 이벤트 + reroll.addMouseListener(new MouseAdapter() { + @Override + public void mouseClicked(MouseEvent e) { + if (coin > 0) { + shop_reroll(); + coin = coin - 1; + status_panel.set_coin_num(coin); + } else { + System.out.println("코인이 부족합니다"); + } + } + }); + + // 얼리기 클릭 이벤트 + frozen.addMouseListener(new MouseAdapter() { + @Override + public void mouseClicked(MouseEvent e) { + if (select_shop_pokemon != null) { + int shop_select_location = select_shop_pokemon.get_location_num(); + select_shop_pokemon.no_check(); + pokemon_frozen(shop_select_location); + select_shop_pokemon = null; + } else { + System.out.println("얼리기 행동아님"); + } + if (select_item != null) { + int select_item_location = select_item.getItemLocation(); + select_item.no_check(); + item_frozen(select_item_location); + select_item = null; + } + } + }); + + } + public void up_bedge() { + this.badge++; + } + + void down_heart() { + this.life--; + } + + void setBattleScreen() { + for (int i = 0; i < 5; i++) { + if (placePokemon.get(i) != null) { + int pokemonNum = placePokemon.get(i).getPokemonNum(); + int Lv = placePokemon.get(i).getLv(); + int exp = placePokemon.get(i).getExp(); + String name = placePokemon.get(i).getName(); + String type = placePokemon.get(i).getType(); + int grade = placePokemon.get(i).getGrade(); + int health = placePokemon.get(i).getHealth(); + int power = placePokemon.get(i).getPower(); + String ability = placePokemon.get(i).getAbility(); + Pokemon p = new Pokemon(pokemonNum, Lv, exp, name, type, grade, health, power, ability); + toBattle.set(i, p); + } else + toBattle.set(i, null); + } + } + + + void startPlacement() { // 배치 단계 시작 시 구현 + shop_reroll(); + coin = 10; + turnNum++; + } + + int coinUp() { + for (Pokemon p : placePokemon) { + if (p != null && p.getPokemonNum() == 56) { // 대결 승리 시 코인 1, 2, 3 증가 + if (p.getLv() == 1) { + return 1; + } else if (p.getLv() == 2) { + return 2; + } else if (p.getLv() == 3) { + return 3; + } + } + } + return 0; + } + + void settingList() { // 그냥 비어두면 에러 떠서 null로 지정 함 + shopPokemon.add(0, null); + shopPokemon.add(1, null); + shopPokemon.add(2, null); + shopPokemon.add(3, null); + shopPokemon.add(4, null); + placePokemon.add(0, null); + placePokemon.add(1, null); + placePokemon.add(2, null); + placePokemon.add(3, null); + placePokemon.add(4, null); + item.add(0, null); + item.add(1, null); + toBattle.add(0, null); + toBattle.add(1, null); + toBattle.add(2, null); + toBattle.add(3, null); + toBattle.add(4, null); + + } + + void shop_reroll() { // 상점 포켓몬 리롤 + int i = shop_place_num() - 1; + + while (i >= 0) { + if (frozenPokemonNum[i]) { + + } else { + int randomnum = randomNum(); + shopPokemon.set(i, s.getLV1Pokemon(randomnum)); + + int pokemonnum = s.getLV1Pokemon(randomnum).getPokemonNum(); + int Lv = s.getLV1Pokemon(randomnum).getLv(); + int exp = s.getLV1Pokemon(randomnum).getExp(); + int grade = s.getLV1Pokemon(randomnum).getGrade(); + int health = s.getLV1Pokemon(randomnum).getHealth(); + int power = s.getLV1Pokemon(randomnum).getPower(); + String ability = s.getLV1Pokemon(randomnum).getAbility(); + + shop_pokemon_panel.get(i).set_pokemon_num(pokemonnum, Lv); + shop_pokemon_panel.get(i).set_Lv(Lv); + shop_pokemon_panel.get(i).set_exp(exp); + shop_pokemon_panel.get(i).set_grade(grade); + shop_pokemon_panel.get(i).set_heart(health); + shop_pokemon_panel.get(i).set_damage(power); + shop_pokemon_panel.get(i).set_location_num(i); + shop_pokemon_panel.get(i).set_ex(ability); + shop_pokemon_panel.get(i).setVisible(true); + + select_place_pokemon = null; + for (Obj_Panel2 shop_pokemon_panel : shop_pokemon_panel) { + shop_pokemon_panel.no_check(); + } + select_shop_pokemon = null; + for (Obj_Panel2 place_pokemon_panel : place_pokemon_panel) { + place_pokemon_panel.no_check(); + } + select_place = null; + for (Place_Area2 place_panel : place_area_panel) { + place_panel.no_check(); + } + } + i--; + } + int j = 0; + while (j < 2) { + if (frozenItemNum[j]) { + } else { + item.set(j, t.getItem(randomItemNum())); + item_panel.get(j).setItemNum(item.get(j).getItemNum()); + item_panel.get(j).setItemLocation(j); + item_panel.get(j).set_ex(item.get(j).getAbility()); + item_panel.get(j).setVisible(true); + item_panel.get(j).no_check(); + System.out.println(item_panel.get(j).getItemNum()); + System.out.println(item.get(j).getItemNum()); + } + j++; + } + } + + int randomNum() { // 포켓몬 수 만큼의 난수 + if (turnNum <= 6) { + return random.nextInt(turnNum * 10) + 1; + } else { + return random.nextInt(60) + 1; + } + } + + int randomItemNum() { // 아이템 수 만큼 난수 + if (turnNum <= 6) { + return random.nextInt(turnNum * 4) + 1; + } else { + return random.nextInt(24) + 1; + } + } + + int shop_place_num() { // 상점 기물 수를 위한 함수 턴이 늘어 날수록 값이 커진다. + if (turnNum == 1) { + return 3; + } else if (turnNum <= 3) { + return 4; + } else { + return 5; + } + } + + void shop_show(int shopPlaceNum) { // 상점 포켓몬 확인 + System.out.println("<<<상점 구역 출력>>>"); + int i = 0; + while (i < shopPlaceNum) { + if (shopPokemon.get(i) == null) { + System.out.println((i + 1) + "번 비어있음"); + } else if (frozenPokemonNum[i]) { + System.out.println((i + 1) + "번 얼림! 이름 : " + shopPokemon.get(i).getName() + " / 타입 : " + + shopPokemon.get(i).getType() + " / 등급 : " + shopPokemon.get(i).getGrade() + " / LV : " + + shopPokemon.get(i).getLv() + " / 체력 : " + shopPokemon.get(i).getHealth() + " / 공격력 : " + + shopPokemon.get(i).getPower() + " / 능력 : " + shopPokemon.get(i).getAbility()); + } else { + System.out.println((i + 1) + "번 이름 : " + shopPokemon.get(i).getName() + " / 타입 : " + + shopPokemon.get(i).getType() + " / 등급 : " + shopPokemon.get(i).getGrade() + " / LV : " + + shopPokemon.get(i).getLv() + " / 체력 : " + shopPokemon.get(i).getHealth() + " / 공격력 : " + + shopPokemon.get(i).getPower() + " / 능력 : " + shopPokemon.get(i).getAbility()); + + /* + * if(shop_pokemon_panel.get(i).get_pokemon_num() != 0) { + * shop_pokemon_panel.get(i).setVisible(true); + * shop_pokemon_panel.get(i).repaint(); } + */ + } + i++; + } + } + + void shop_select_obj(Obj_Panel2 selectedPanel) { // 하나의 상점 패널을 선택했을때 나머지 상점 패널은 체크 해제 됨 + for (Obj_Panel2 shop_pokemon_panel : shop_pokemon_panel) { + if (shop_pokemon_panel.equals(selectedPanel)) { + if (shop_pokemon_panel.ischecked()) { + shop_pokemon_panel.no_check(); + select_shop_pokemon = null; // 선택 해제 시 select_shop_pokemon을 null로 설정 + } else { + shop_pokemon_panel.check(); + select_shop_pokemon = shop_pokemon_panel; + System.out.println("상점에서 선택한 포켓몬 위치" + select_shop_pokemon.get_location_num()); + } + } else { + shop_pokemon_panel.no_check(); + } + } + } + + void place_select_obj(Obj_Panel2 selectedPanel) { + for (Obj_Panel2 place_pokemon_panel : place_pokemon_panel) { + if (place_pokemon_panel.equals(selectedPanel)) { + if (place_pokemon_panel.ischecked()) { + place_pokemon_panel.no_check(); + select_place_pokemon = null; // 선택 해제 시 select_shop_pokemon을 null로 설정 + } else { + place_pokemon_panel.check(); + if (select_place_pokemon != null) { + if (select_place_pokemon.get_pokemon_num() == place_pokemon_panel.get_pokemon_num()) { + int place_pokemon = place_pokemon_panel.get_location_num(); + int select_pokemon = select_place_pokemon.get_location_num(); + System.out.println(select_pokemon); + System.out.println(place_pokemon); + place_replace(select_pokemon, place_pokemon); + } else { + int place_pokemon = place_pokemon_panel.get_location_num(); + int select_pokemon = select_place_pokemon.get_location_num(); + place_replace(select_pokemon, place_pokemon); + place_pokemon_panel.no_check(); + select_place_pokemon = null; + } + } + select_place_pokemon = selectedPanel; + System.out.println("선택한 배치구역 포켓몬 위치는" + select_place_pokemon.get_location_num() + "입니다."); + + } + } else { + place_pokemon_panel.no_check(); + } + } + } + + private void selectPlaceArea(Place_Area2 placeArea) { // 위치를 선택했을때 처리해주는 함수 + placeArea.check(); + select_place = placeArea; + System.out.println("선택한 배치 위치 번호는 " + select_place.get_location_num() + "입니다."); + } + + private void deselectPlaceArea(Place_Area2 placeArea) { // 위치리를 해제 했을때 처리해주는 함수 + placeArea.no_check(); + select_place = null; + } + + void pokemon_frozen(int placeNum) { // 상점 포켓몬 얼리기 + if (!validationShopPokemonNum(placeNum)) { + System.out.println("<<<입력 오류>>>"); + return; + } else if (isNullShopPokemon(placeNum)) { + System.out.println("<<<비어있습니다.>>>"); + return; + } else if (frozenPokemonNum[placeNum] == false) { + frozenPokemonNum[placeNum] = true; + select_shop_pokemon.get_frozen_panel().setVisible(true); + System.out.println("<<<" + (placeNum + 1) + "번에 얼리기 설정>>>"); + return; + } else { + frozenPokemonNum[placeNum] = false; + select_shop_pokemon.get_frozen_panel().setVisible(false); + System.out.println("<<<" + (placeNum + 1) + "번에 얼리기 취소 설정>>>"); + return; + } + } + + void shop_buy(int shopPlaceNum, int myPlaceNum) { // 상점에서 포켓몬 구매 + if (!validationShopNum(shopPlaceNum) || !validationPlaceNum(myPlaceNum)) { + System.out.println("입력 오류"); + return; + } else if (isNullShopPokemon(shopPlaceNum)) { // 이미 구매한 상점 번호면 구매 불가 + System.out.println("<<<" + (shopPlaceNum + 1) + "번 상점이 비어있습니다.>>>"); + return; + } else if (!isNullPlacePokemon(myPlaceNum)) { // 배치 구역에 포켓몬이 있으면 구매 불가 + if (shop_buy_expUp(shopPlaceNum, myPlaceNum)) { + if (is3Grade(shopPlaceNum) && findPokemonNum(53) != -1) { + use53Ability(findPokemonNum(53)); + } + shopPokemon.set(shopPlaceNum, null); + frozenPokemonNum[shopPlaceNum] = false; + System.out.println("<<<구매 성공>>>"); + buyAbility(myPlaceNum); + for (int i = 0; i < 5; i++) { + if (placePokemon.get(i) != null) { + if (placePokemon.get(i).getPokemonNum() == 53) { + placePokemon.get(i).setPower(placePokemon.get(i).getPower() + 3); + placePokemon.get(i).setHealth(placePokemon.get(i).getHealth() + 3); + } + } + } + coin = coin - 3; + return; + } else + System.out.println("<<<" + (myPlaceNum + 1) + "번에 이미 있습니다.>>>"); + { + return; + } + } else { // 배치구역에 포켓몬이 없으면 구매성공 + if (is3Grade(shopPlaceNum) && findPokemonNum(53) != -1) { + use53Ability(findPokemonNum(53)); + } + placePokemon.set(myPlaceNum, shopPokemon.get(shopPlaceNum)); + place_pokemon_panel.get(myPlaceNum).set_Lv(shop_pokemon_panel.get(shopPlaceNum).get_LV()); + place_pokemon_panel.get(myPlaceNum).set_exp(shop_pokemon_panel.get(shopPlaceNum).get_exp()); + place_pokemon_panel.get(myPlaceNum).set_grade(shop_pokemon_panel.get(shopPlaceNum).get_grade()); + place_pokemon_panel.get(myPlaceNum).set_heart(shop_pokemon_panel.get(shopPlaceNum).get_heart()); + place_pokemon_panel.get(myPlaceNum).set_damage(shop_pokemon_panel.get(shopPlaceNum).get_damage()); + place_pokemon_panel.get(myPlaceNum).set_location_num(myPlaceNum); + place_pokemon_panel.get(myPlaceNum).set_pokemon_num(shop_pokemon_panel.get(shopPlaceNum).get_pokemon_num(), + shop_pokemon_panel.get(shopPlaceNum).get_LV()); + place_pokemon_panel.get(myPlaceNum).set_ex(shop_pokemon_panel.get(shopPlaceNum).get_ex()); + place_pokemon_panel.get(myPlaceNum).setVisible(true); // 패널에 set해주고 보이게 하기 + + shopPokemon.set(shopPlaceNum, null); + shop_pokemon_panel.get(shopPlaceNum).setVisible(false); // shop_place_num이 null될때 안보이게 하기 + shop_pokemon_panel.get(shopPlaceNum).no_frozen(); + shop_pokemon_panel.get(myPlaceNum).get_frozen_panel().setVisible(false); + select_place.no_check(); + + frozenPokemonNum[shopPlaceNum] = false; + System.out.println(select_shop_pokemon.get_location_num() + "번 상점 포켓몬을"); + System.out.println(select_place.get_location_num() + "번에 배치하였습니다."); + System.out.println("구매 성공"); + + select_place_pokemon = null; + select_shop_pokemon = null; // 상점 선택 초기화 + select_place = null; // 위치 선택 초기화 + buyAbility(myPlaceNum); + coin = coin - 3; + return; + } + } + + boolean is3Grade(int shopPlaceNum) { // 구매한 포켓몬이 3등급 이면 true + if (shopPokemon.get(shopPlaceNum).getGrade() <= 3) { + return true; + } + return false; + } + + int findPokemonNum(int pokemonNum) { + for (int i = 0; i < 5; i++) { + if (placePokemon.get(i) != null) { + if (placePokemon.get(i).getPokemonNum() == pokemonNum) { + return i; + } + } + } + return -1; + } + + void use53Ability(int placeNum) { // 3등급 이하 포켓몬 구매 시 3/3 증가 + int lv = placePokemon.get(placeNum).getLv(); + int abilityNum = 3; + if (lv == 2) { + abilityNum = 4; + } else if (lv == 3) { + abilityNum = 5; + } + System.out.println("<<<" + placePokemon.get(placeNum).getName() + " 능력 사용 >>>"); + placePowerAdjust(placeNum, abilityNum); + placeHealthAdjust(placeNum, abilityNum); + } + + boolean validationShopNum(int placeNum) { // 상점 구역 번호 유효성 검사 + if (shop_place_num() < placeNum || placeNum < 0) { + return false; + } else + return true; + } + + boolean validationPlaceNum(int placeNum) { // 배치 구역 번호 유효성 검사 + if (4 < placeNum || placeNum < 0) { + return false; + } else + return true; + } + + boolean isNullShopPokemon(int placeNum) { // 상점 구역 포켓몬이 null인지 확인 + if (shopPokemon.get(placeNum) == null) + return true; + return false; + } + + boolean isNullPlacePokemon(int placeNum) { // 배치 구역 포켓몬이 null인지 확인 + if (placePokemon.get(placeNum) == null) + return true; + return false; + } + + boolean shop_buy_expUp(int shopPlaceNum, int myPlaceNum) { + if (placePokemon.get(myPlaceNum) != null) { // 같은 포켓몬이면 경험치 증가 + if (shopPokemon.get(shopPlaceNum).getPokemonNum() == placePokemon.get(myPlaceNum).getPokemonNum()) { + if (placePokemon.get(myPlaceNum).getLv() == 3) { + System.out.println("<< 3레벨 입니다!! >>"); + return false; + } + placePokemon.get(myPlaceNum).setExp(placePokemon.get(myPlaceNum).getExp() + 1); + place_pokemon_panel.get(myPlaceNum).set_exp(place_pokemon_panel.get(myPlaceNum).get_exp() + 1); + + shop_pokemon_panel.get(shopPlaceNum).setVisible(false); + select_place_pokemon.no_check(); + select_shop_pokemon.no_check(); + + select_place_pokemon = null; + select_shop_pokemon = null; + + isRankup(myPlaceNum); + System.out.println("<<<경험치 증가!>>>"); + return true; + } + } + return false; + } + + int checkRemainNum() { // 남아있는 배치 구역 포켓몬 수 반환 + int i = 0; + for (Pokemon p : placePokemon) { + if (p != null) { + i++; + } + } + return i; + } + + void buyAbility(int placeNum) { // 구매 시 능력 + int lv = placePokemon.get(placeNum).getLv(); + switch (placePokemon.get(placeNum).getPokemonNum()) { + case 8: { // 구매 시 랜덤한 아군 1, 2, 3명 공격력 1 증가 + int remainNum = checkRemainNum(); + if ((lv == 1 && remainNum >= 1) || (lv == 2 && remainNum == 1) || (lv == 3 && remainNum == 1)) { + while (true) { + int i = random.nextInt(5); + if (placePokemon.get(i) != null) { + System.out.println("<<<" + placePokemon.get(placeNum).getName() + " 능력 사용 >>>"); + placePowerAdjust(i, 1); + return; + } + } + } else if ((lv == 2 && remainNum >= 2) || (lv == 3 && remainNum == 2)) { // 구매 시 랜덤한 아군 2명 공격력 1 증가 + while (true) { + int i = random.nextInt(5); + int j = random.nextInt(5); + while (i == j) { + i = random.nextInt(5); + j = random.nextInt(5); + } + if (placePokemon.get(i) != null && placePokemon.get(j) != null) { + System.out.println("<<<" + placePokemon.get(placeNum).getName() + " 능력 사용 >>>"); + placePowerAdjust(i, 1); + placePowerAdjust(j, 1); + return; + } + } + } else if (remainNum >= 3) { // 구매 시 랜덤한 아군 3명 공격력 1 증가 + while (true) { + int i = random.nextInt(5); + int j = random.nextInt(5); + int k = random.nextInt(5); + while (i == j || j == k || i == k) { + i = random.nextInt(5); + j = random.nextInt(5); + k = random.nextInt(5); + } + if (placePokemon.get(i) != null && placePokemon.get(j) != null) { + System.out.println("<<<" + placePokemon.get(placeNum).getName() + " 능력 사용 >>>"); + placePowerAdjust(i, 1); + placePowerAdjust(j, 1); + placePowerAdjust(k, 1); + System.out.println("<<<능력 사용>>>"); + return; + } + } + } + } + case 13: { // 구매 시 양 옆에 배치된 아군 공격력, 체력 2증가 + int abilityNum = 2; + if (lv == 2) { + abilityNum = 3; + } else if (lv == 3) { + abilityNum = 4; + } + if (placeNum == 0) { + if (placePokemon.get(placeNum + 1) == null) { + return; + } else { + System.out.println("<<<" + placePokemon.get(placeNum).getName() + " 능력 사용 >>>"); + placeHealthAdjust(placeNum + 1, abilityNum); + placePowerAdjust(placeNum + 1, abilityNum); + return; + } + } else if (placeNum == 4) { + if (placePokemon.get(placeNum - 1) == null) { + return; + } else { + System.out.println("<<<" + placePokemon.get(placeNum).getName() + " 능력 사용 >>>"); + placeHealthAdjust(placeNum - 1, abilityNum); + placePowerAdjust(placeNum - 1, abilityNum); + return; + } + } else { + System.out.println("<<<" + placePokemon.get(placeNum).getName() + " 능력 사용 >>>"); + if (placePokemon.get(placeNum + 1) != null) { + placeHealthAdjust(placeNum + 1, abilityNum); + placePowerAdjust(placeNum + 1, abilityNum); + } + if (placePokemon.get(placeNum - 1) != null) { + placeHealthAdjust(placeNum - 1, abilityNum); + placePowerAdjust(placeNum - 1, abilityNum); + } + return; + } + } + case 17: { // 구매 시 공격력이 가장 적은 아군에게 공격력 2배 증가 + int lowPowerPlaceNum = -1; + int powerNumArr[] = { -1, -1, -1, -1, -1 }; + int min = -1; + + for (int i = 0; i < 5; i++) { + if (placePokemon.get(i) != null) { + powerNumArr[i] = placePokemon.get(i).getPower(); + } + } + for (int i = 0; i < 5; i++) { + if (powerNumArr[i] > -1) { + if (min == -1) { + min = powerNumArr[i]; + lowPowerPlaceNum = i; + } else if (min > powerNumArr[i]) { + min = powerNumArr[i]; + lowPowerPlaceNum = i; + } + } + } + if (lowPowerPlaceNum < -1) { + lowPowerPlaceNum = placeNum; + } + int adjustNum = placePokemon.get(lowPowerPlaceNum).getPower(); + if (lv == 2) { + adjustNum = adjustNum * 15 / 10; + } else if (lv == 3) { + adjustNum = adjustNum * 2; + } + System.out.println("<<<" + placePokemon.get(placeNum).getName() + " 능력 사용 >>>"); + placePowerAdjust(lowPowerPlaceNum, adjustNum); + return; + } + case 33: { // 구매 시 양 옆에 배치된 아군 공격력 3 증가 + int abilityNum = 3; + if (lv == 2) { + abilityNum = 4; + } else if (lv == 3) { + abilityNum = 5; + } + if (placeNum == 0) { + if (placePokemon.get(placeNum + 1) == null) { + return; + } else { + System.out.println("<<<" + placePokemon.get(placeNum).getName() + " 능력 사용 >>>"); + placePowerAdjust(placeNum + 1, abilityNum); + return; + } + } else if (placeNum == 4) { + if (placePokemon.get(placeNum - 1) == null) { + return; + } else { + System.out.println("<<<" + placePokemon.get(placeNum).getName() + " 능력 사용 >>>"); + placePowerAdjust(placeNum - 1, abilityNum); + return; + } + } else { + System.out.println("<<<" + placePokemon.get(placeNum).getName() + " 능력 사용 >>>"); + if (placePokemon.get(placeNum + 1) != null) { + placePowerAdjust(placeNum + 1, abilityNum); + } + if (placePokemon.get(placeNum - 1) != null) { + placePowerAdjust(placeNum - 1, abilityNum); + } + return; + } + } + case 48: { // 구매 시 랜덤한 아군에게 공격력, 체력 3 증가 + int abilityNum = 3; + if (lv == 2) { + abilityNum = 4; + } else if (lv == 3) { + abilityNum = 5; + } + while (true) { + int i = random.nextInt(5); + if (placePokemon.get(i) != null) { + System.out.println("<<<" + placePokemon.get(placeNum).getName() + " 능력 사용 >>>"); + placeHealthAdjust(i, abilityNum); + placePowerAdjust(i, abilityNum); + return; + } + } + } + default: { + return; + } + } + } + + void placeHealthAdjust(int placeNum, int adjustNum) { // 아군 체력 조정 + if (placePokemon.get(placeNum) != null) { + placePokemon.get(placeNum).setHealth(placePokemon.get(placeNum).getHealth() + adjustNum); + place_pokemon_panel.get(placeNum).set_heart(place_pokemon_panel.get(placeNum).get_heart() + adjustNum); + System.out.println("<<< " + placePokemon.get(placeNum).getName() + " 체력 조정 " + adjustNum + " >>>"); + } + } + + void placePowerAdjust(int placeNum, int adjustNum) { // 아군 공격력 조정 + if (placePokemon.get(placeNum) != null) { + placePokemon.get(placeNum).setPower(placePokemon.get(placeNum).getPower() + adjustNum); + place_pokemon_panel.get(placeNum).set_damage(place_pokemon_panel.get(placeNum).get_damage() + adjustNum); + System.out.println("<<< " + placePokemon.get(placeNum).getName() + " 공격력 조정 " + adjustNum + " >>>"); + } + } + + void place_replace(int place1, int place2) { // 배치 구역 포켓몬 위치 바꾸기 + if (place1 == place2 || !validationPlaceNum(place1) || !validationPlaceNum(place2)) { + System.out.println("<<<입력 오류>>>"); + return; + } else if (isNullPlacePokemon(place1) && isNullPlacePokemon(place2)) { + System.out.println("<<<둘 다 비어있는 배치 번호를 입력하셨습니다.>>>"); + return; + } else if (placePokemon.get(place1) != null && placePokemon.get(place2) == null) { // place 1이 null이 아니면 + placePokemon.set(place2, placePokemon.get(place1));// place2 로 복사 후 plcae1은 null로 + placePokemon.set(place1, null); + place_pokemon_panel.get(place1).setVisible(false); + + place_pokemon_panel.get(place2).set_Lv(place_pokemon_panel.get(place1).get_LV()); + place_pokemon_panel.get(place2).set_exp(place_pokemon_panel.get(place1).get_exp()); + place_pokemon_panel.get(place2).set_grade(place_pokemon_panel.get(place1).get_grade()); + place_pokemon_panel.get(place2).set_heart(place_pokemon_panel.get(place1).get_heart()); + place_pokemon_panel.get(place2).set_pokemon_num(placePokemon.get(place2).getPokemonNum(), + place_pokemon_panel.get(place1).get_LV()); // 여기 문제 찾았다. + place_pokemon_panel.get(place2).set_damage(place_pokemon_panel.get(place1).get_damage()); + place_pokemon_panel.get(place2).set_location_num(place2); + place_pokemon_panel.get(place2).set_ex(place_pokemon_panel.get(place1).get_ex()); + place_pokemon_panel.get(place2).setVisible(true); + + System.out.println(place_pokemon_panel.get(place1).get_location_num() + "번 위치의 포켓몬을 " + + place_pokemon_panel.get(place2).get_location_num() + "로 옮김"); + + place_area_panel.get(place2).no_check(); + place_pokemon_panel.get(place2).no_check(); + + select_place_pokemon = null; + select_place = null; + + return; + } else if (placePokemon.get(place1) == null && placePokemon.get(place2) != null) { // place 2이 null이 아니면 + placePokemon.set(place1, placePokemon.get(place2));// place1 로 복사 후 plcae2은 null로 + placePokemon.set(place2, null); + return; + } else if (placePokemon.get(place1).getPokemonNum() == placePokemon.get(place2).getPokemonNum()) { + if (placePokemon.get(place1).getLv() == 3 || placePokemon.get(place2).getLv() == 3) { + place_pokemon_panel.get(place1).no_check(); + place_pokemon_panel.get(place2).no_check(); + return; + } + placePokemon.get(place2).setExp(placePokemon.get(place2).getExp() + 1); + place_pokemon_panel.get(place2).set_exp(place_pokemon_panel.get(place2).get_exp() + 1); + isRankup(place2); + System.out.println("레벨업 성공"); + placePokemon.set(place1, null); + place_pokemon_panel.get(place1).setVisible(false); + select_place_pokemon = null; + place_pokemon_panel.get(place1).no_check(); + place_pokemon_panel.get(place2).no_check(); + return; + } else { + forReplace.add(0, placePokemon.get(place1)); + placePokemon.set(place1, placePokemon.get(place2)); + + place_pokemon_panel.get(place1).set_Lv(place_pokemon_panel.get(place2).get_LV()); + place_pokemon_panel.get(place1).set_exp(place_pokemon_panel.get(place2).get_exp()); + place_pokemon_panel.get(place1).set_grade(place_pokemon_panel.get(place2).get_grade()); + place_pokemon_panel.get(place1).set_heart(place_pokemon_panel.get(place2).get_heart()); + place_pokemon_panel.get(place1).set_pokemon_num(placePokemon.get(place2).getPokemonNum(), + place_pokemon_panel.get(place1).get_LV()); // 여기 문제 찾았다. + place_pokemon_panel.get(place1).set_damage(place_pokemon_panel.get(place2).get_damage()); + place_pokemon_panel.get(place1).set_location_num(place1); + place_pokemon_panel.get(place1).set_ex(place_pokemon_panel.get(place2).get_ex()); + place_pokemon_panel.get(place1).setVisible(true); + place_pokemon_panel.get(place1).no_check(); + select_place_pokemon = null; + + placePokemon.set(place2, forReplace.get(0)); + + place_pokemon_panel.get(place2).set_Lv(placePokemon.get(place2).getLv()); + place_pokemon_panel.get(place2).set_exp(placePokemon.get(place2).getExp()); + place_pokemon_panel.get(place2).set_grade(placePokemon.get(place2).getGrade()); + place_pokemon_panel.get(place2).set_heart(placePokemon.get(place2).getHealth()); + place_pokemon_panel.get(place2).set_pokemon_num(placePokemon.get(place2).getPokemonNum(), + placePokemon.get(place2).getLv()); // 여기 문제 찾았다. + place_pokemon_panel.get(place2).set_damage(placePokemon.get(place2).getPower()); + place_pokemon_panel.get(place2).set_location_num(place2); + place_pokemon_panel.get(place2).set_ex(placePokemon.get(place2).getAbility()); + place_pokemon_panel.get(place2).setVisible(true); + place_pokemon_panel.get(place1).no_check(); + select_place_pokemon = null; + + // + forReplace.remove(); + System.out.println("<<<위치 변경 성공>>>"); + return; + } + } + + void isRankup(int placeNum) { // 경험치가 3이면 레벨 업, 레벨 업 하면 2/2 증가 + if (placePokemon.get(placeNum).getExp() == 3 && placePokemon.get(placeNum).getLv() == 1) { + int lvUpAbilitynum = setLvUpAbilityNum(placeNum); + Pokemon p2 = s.getLV2Pokemon(placePokemon.get(placeNum).getPokemonNum()); + System.out.println(p2.getPokemonNum() + p2.getName()); + placePokemon.get(placeNum).setName(p2.getName()); + placePokemon.get(placeNum).setGrade(p2.getGrade()); + placePokemon.get(placeNum).setLv(2); + placePokemon.get(placeNum).setExp(1); + placePokemon.get(placeNum).setHealth(placePokemon.get(placeNum).getHealth() + 2 + lvUpAbilitynum); + placePokemon.get(placeNum).setPower(placePokemon.get(placeNum).getPower() + 2 + lvUpAbilitynum); + System.out.println("<<2레벨 업!>>"); + + // 패널 레벨 2로 업데이트 + place_pokemon_panel.get(placeNum).set_Lv(2); + place_pokemon_panel.get(placeNum).set_exp(1); + place_pokemon_panel.get(placeNum).set_grade(p2.getGrade()); + place_pokemon_panel.get(placeNum).set_ex(p2.getAbility()); + place_pokemon_panel.get(placeNum) + .set_heart(place_pokemon_panel.get(placeNum).get_heart() + 2 + lvUpAbilitynum); + place_pokemon_panel.get(placeNum) + .set_damage(place_pokemon_panel.get(placeNum).get_damage() + 2 + lvUpAbilitynum); + place_pokemon_panel.get(placeNum).set_pokemon_num(place_pokemon_panel.get(placeNum).get_pokemon_num(), + place_pokemon_panel.get(placeNum).get_LV()); + + return; + } else if (placePokemon.get(placeNum).getExp() == 3 && placePokemon.get(placeNum).getLv() == 2) { + int lvUpAbilitynum = setLvUpAbilityNum(placeNum); + Pokemon p3 = s.getLV3Pokemon(placePokemon.get(placeNum).getPokemonNum()); + System.out.println(p3.getPokemonNum() + p3.getName()); + placePokemon.get(placeNum).setName(p3.getName()); + placePokemon.get(placeNum).setGrade(p3.getGrade()); + placePokemon.get(placeNum).setLv(3); + placePokemon.get(placeNum).setExp(1); + placePokemon.get(placeNum).setHealth(placePokemon.get(placeNum).getHealth() + 2 + lvUpAbilitynum); + placePokemon.get(placeNum).setPower(placePokemon.get(placeNum).getPower() + 2 + lvUpAbilitynum); + System.out.println("<<3레벨 업!>>"); + + // 패널 레벨 3으로 업데이트 + place_pokemon_panel.get(placeNum).set_Lv(3); + place_pokemon_panel.get(placeNum).set_exp(1); + place_pokemon_panel.get(placeNum).set_ex(p3.getAbility()); + place_pokemon_panel.get(placeNum).set_grade(p3.getGrade()); + place_pokemon_panel.get(placeNum) + .set_heart(place_pokemon_panel.get(placeNum).get_heart() + 2 + lvUpAbilitynum); + place_pokemon_panel.get(placeNum) + .set_damage(place_pokemon_panel.get(placeNum).get_damage() + 2 + lvUpAbilitynum); + place_pokemon_panel.get(placeNum).set_pokemon_num(place_pokemon_panel.get(placeNum).get_pokemon_num(), + place_pokemon_panel.get(placeNum).get_LV()); + + return; + } + } + + int setLvUpAbilityNum(int placeNum) { + int LvNum = placePokemon.get(placeNum).getLv(); + if (findLvUpAbility(placeNum)) { + if (LvNum == 1) { + System.out.println("<<< 추가 능력치 증가! (+1/+1) >>>"); + return 1; + } else if (LvNum == 2) { + System.out.println("<<< 추가 능력치 증가! (+2/+2) >>>"); + return 2; + } + } + return 0; + } + + boolean findLvUpAbility(int placeNum) { + int pokemonNum = placePokemon.get(placeNum).getPokemonNum(); + if (pokemonNum == 38 || pokemonNum == 44 || pokemonNum == 50 || pokemonNum == 52 || pokemonNum == 55 + || pokemonNum == 59 || pokemonNum == 60) { + System.out.println("<<< " + placePokemon.get(placeNum).getName() + " 능력 발동! >>>"); + return true; + } + return false; + } + + void place_sell(int placeNum) { // 배치 구역 포켓몬 팔기 + if (!validationPlaceNum(placeNum)) { + System.out.println("<<<입력 오류>>>"); + return; + } else if (isNullPlacePokemon(placeNum)) { + System.out.println("<<<비어있습니다.>>>"); + return; + } else { + coin = coin + placePokemon.get(placeNum).getLv(); + sellAbility(placeNum); + placePokemon.set(placeNum, null); + if (effectNum[placeNum] == 3) { + coin++; + System.out.println("<<< 아이템 효과로 코인 +1 >>>"); + } + effectNum[placeNum] = 0; + System.out.println("<<<판매 성공>>>"); + place_pokemon_panel.get(placeNum).setVisible(false); + select_place_pokemon = null; + status_panel.set_coin_num(coin); + return; + } + } + + void sellAbility(int placeNum) { // 판매 시 능력 + int lv = placePokemon.get(placeNum).getLv(); + switch (placePokemon.get(placeNum).getPokemonNum()) { + case 7: { // 판매 시 아군 체력 1 증가 + int adjustNum = lv; + System.out.println("<<<" + placePokemon.get(placeNum).getName() + " 능력 사용 >>>"); + for (int i = 1; i < 5; i++) { + if (placePokemon.get(i) != null && i != placeNum) { + placeHealthAdjust(i, adjustNum); + } + } + return; + } + case 14: {// 판매 시 랜덤한 아군 1,2,3에게 버섯 투여 + int remainNum = checkRemainNum(); + if ((lv == 1 && remainNum >= 1) || (lv == 2 && remainNum == 1) || (lv == 3 && remainNum == 1)) { + System.out.println("<<<" + placePokemon.get(placeNum).getName() + " 능력 사용 >>>"); + while (true) { + int i = random.nextInt(5); + if (placePokemon.get(i) != null && i + 1 != placeNum) { + effectNum[i] = 1; // 효과 1은 버섯 효과 + System.out.println("<<<" + placePokemon.get(i).getName() + " 버섯 효과! >>>"); + return; + } + } + } else if ((lv == 2 && remainNum >= 2) || (lv == 3 && remainNum == 2)) { + System.out.println("<<<" + placePokemon.get(placeNum).getName() + " 능력 사용 >>>"); + while (true) { + int i = random.nextInt(5); + int j = random.nextInt(5); + if (placePokemon.get(i) != null && placePokemon.get(j) != null && i != j && i + 1 != placeNum) { + effectNum[i] = 1; + System.out.println("<<<" + placePokemon.get(i).getName() + " 버섯 효과! >>>"); + effectNum[j] = 1; + System.out.println("<<<" + placePokemon.get(j).getName() + " 버섯 효과! >>>"); + return; + } + } + } else { + System.out.println("<<<" + placePokemon.get(placeNum).getName() + " 능력 사용 >>>"); + while (true) { + int i = random.nextInt(5); + int j = random.nextInt(5); + int k = random.nextInt(5); + if (placePokemon.get(i) != null && placePokemon.get(j) != null && placePokemon.get(k) != null + && i != j && i != k && k != j && i + 1 != placeNum) { + effectNum[i] = 1; + System.out.println("<<<" + placePokemon.get(i).getName() + " 버섯 효과! >>>"); + effectNum[j] = 1; + System.out.println("<<<" + placePokemon.get(j).getName() + " 버섯 효과! >>>"); + effectNum[k] = 1; + System.out.println("<<<" + placePokemon.get(k).getName() + " 버섯 효과! >>>"); + return; + } + } + } + + } + case 49: { // 판매 시 앞에 있는 아군에게 공격력,체력의 50%, 70%, 100%만큼 증가 + if (placeNum == 4) { + return; + } else if (placePokemon.get(placeNum + 1) != null) { + System.out.println("<<<" + placePokemon.get(placeNum).getName() + " 능력 사용 >>>"); + if (lv == 1) { + int adjustNum = placePokemon.get(placeNum).getHealth() / 2; + placeHealthAdjust(placeNum + 1, adjustNum); + placePowerAdjust(placeNum + 1, adjustNum); + } else if (lv == 2) { + int adjustNum = placePokemon.get(placeNum).getHealth() / 10 * 7; + placeHealthAdjust(placeNum + 1, adjustNum); + placePowerAdjust(placeNum + 1, adjustNum); + } else { + int adjustNum = placePokemon.get(placeNum).getHealth(); + placeHealthAdjust(placeNum + 1, adjustNum); + placePowerAdjust(placeNum + 1, adjustNum); + } + return; + } + } + default: { + return; + } + } + } + + void shop_item_buy(int shopPlaceNum, int myPlaceNum) { // 상점에서 아이템 구매 + if (!validationShopItemNum(shopPlaceNum) || !validationPlaceNum(myPlaceNum)) { + System.out.println("입력 오류"); + return; + } else if (isNullShopItem(shopPlaceNum)) { // 이미 구매한 상점 번호면 구매 불가 + System.out.println("<<<" + (shopPlaceNum + 1) + "번 상점이 비어있습니다.>>>"); + return; + } else if (isNullPlacePokemon(myPlaceNum)) { // 배치 구역에 포켓몬이 없으면 구매 불가 + System.out.println("<<<" + (myPlaceNum + 1) + "번에 없습니다.>>>"); + return; + } else { + int itemNum = item.get(shopPlaceNum).getItemNum(); + int remainNum = checkRemainNum(); + if (itemNum == 8) { + if (remainNum < 3) { + System.out.println("<<< 아이템을 쓰기에는 포켓몬이 적습니다! >>>"); + select_item.no_check(); + select_place_pokemon.no_check(); + select_item = null; + return; + } + } else if (itemNum == 3 || itemNum == 4 || itemNum == 6 || itemNum == 14) { + if (remainNum < 2) { + System.out.println("<<< 아이템을 쓰기에는 포켓몬이 적습니다! >>>"); + select_item.no_check(); + select_place_pokemon.no_check(); + select_item = null; + return; + } + } + System.out.println("<<<구매 성공>>>"); + coin = coin - 3; + buyItemAbility(shopPlaceNum, myPlaceNum); + status_panel.set_coin_num(coin); + item.set(shopPlaceNum, null); + item_panel.get(shopPlaceNum).setVisible(false); + frozenItemNum[shopPlaceNum] = false; + int num = findPokemonNum(36); + if (num != -1) { // 아이템 사용 시 공격력, 체력 1, 2, 3 증가 + int adjustNum = placePokemon.get(num).getLv(); + placeHealthAdjust(num, adjustNum); + placePowerAdjust(num, adjustNum); + } + select_item.no_check(); + select_place_pokemon.no_check(); + select_item = null; + return; + } + } + + boolean validationShopItemNum(int placeNum) { // 상점 구역 번호 아이템 검사 + if (2 < placeNum || placeNum < 0) { + return false; + } else + return true; + } + + boolean isNullShopItem(int placeNum) { + if (item.get(placeNum) == null) + return true; + return false; + } + + void buyItemAbility(int shopPlaceNum, int placeNum) { // 아이템 구매 시 능력 + int plusNum = 0; + int num = findPokemonNum(60); + if (num != -1) { + plusNum = 1; + System.out.println("<<< " + placePokemon.get(num).getName() + " 능력 사용! 아이템 능력치 증가! >>>"); // 추가 + } + switch (item.get(shopPlaceNum).getItemNum()) { + case 1: { // 공격력 1 증가 + placePowerAdjust(placeNum, 1 + plusNum); + break; + } + case 2: { // 체력 1 증가 + placeHealthAdjust(placeNum, 1 + plusNum); + break; + } + case 3: { // 랜덤으로 2 기물에게 공격력 1 증가 + while (true) { + int rNum1 = random.nextInt(5); + int rNum2 = random.nextInt(5); + if (placePokemon.get(rNum1) != null && placePokemon.get(rNum2) != null && rNum1 != rNum2) { + placePowerAdjust(rNum1, 1 + plusNum); + placePowerAdjust(rNum2, 1 + plusNum); + break; + } + } + break; + + } + case 4: { // 랜덤으로 2 기물에게 체력 1 증가 + while (true) { + int rNum1 = random.nextInt(5); + int rNum2 = random.nextInt(5); + if (placePokemon.get(rNum1) != null && placePokemon.get(rNum2) != null && rNum1 != rNum2) { + placeHealthAdjust(rNum1, 1 + plusNum); + placeHealthAdjust(rNum2, 1 + plusNum); + break; + } + } + break; + } + case 5: { // 1/1 증가 + placePowerAdjust(placeNum, 1 + plusNum); + placeHealthAdjust(placeNum, 1 + plusNum); + break; + } + case 6: { // 랜덤으로 2 기물에게 1/1 증가 + while (true) { + int rNum1 = random.nextInt(5); + int rNum2 = random.nextInt(5); + if (placePokemon.get(rNum1) != null && placePokemon.get(rNum2) != null && rNum1 != rNum2) { + placeHealthAdjust(rNum1, 1 + plusNum); + placePowerAdjust(rNum1, 1 + plusNum); + placeHealthAdjust(rNum2, 1 + plusNum); + placePowerAdjust(rNum2, 1 + plusNum); + break; + } + } + break; + } + case 7: { // 랜덤으로 1 기물에게 2/2 증가 + while (true) { + int rNum1 = random.nextInt(5); + if (placePokemon.get(rNum1) != null) { + placeHealthAdjust(rNum1, 2 + plusNum); + placePowerAdjust(rNum1, 2 + plusNum); + break; + } + } + break; + } + case 8: { // 랜덤으로 3 기물에게 공격력 1 증가 + while (true) { + int rNum1 = random.nextInt(5); + int rNum2 = random.nextInt(5); + int rNum3 = random.nextInt(5); + if (placePokemon.get(rNum1) != null && placePokemon.get(rNum2) != null + && placePokemon.get(rNum3) != null && rNum1 != rNum2 && rNum1 != rNum3 && rNum3 != rNum2) { + placeHealthAdjust(rNum1, 1 + plusNum); + placeHealthAdjust(rNum2, 1 + plusNum); + placeHealthAdjust(rNum3, 1 + plusNum); + break; + } + } + break; + } + case 9: { // 사용할 기물 양 옆 기물의 공격력 2을 가져 옵니다. + if (placeNum == 0) { + if (!isNullPlacePokemon(placeNum + 1)) { + placePowerAdjust(placeNum + 1, -2); + placePowerAdjust(placeNum, 2); + break; + } + } else if (placeNum == 4) { + if (!isNullPlacePokemon(placeNum - 1)) { + placePowerAdjust(placeNum - 1, -2); + placePowerAdjust(placeNum, 2); + break; + } + } else { + if (!isNullPlacePokemon(placeNum + 1)) { + placePowerAdjust(placeNum + 1, -2); + placePowerAdjust(placeNum, 2); + } + if (!isNullPlacePokemon(placeNum - 1)) { + placePowerAdjust(placeNum - 1, -2); + placePowerAdjust(placeNum, 2); + } + break; + } + } + case 10: { // 사용한 포켓몬이 대결에서 살아남으면 경험치 1 증가 + effectNum[placeNum] = 2; + break; + } + case 11: { // 처음 맞은 공격 무시 + effectNum[placeNum] = 1; + break; + } + case 12: { // 코인 + 5 + this.coin += 5; + break; + } + case 13: { // 체력 2 증가 + placeHealthAdjust(placeNum, 2 + plusNum); + break; + } + case 14: { // 랜덤으로 2 기물에게 2/2 증가 + while (true) { + int rNum1 = random.nextInt(5); + int rNum2 = random.nextInt(5); + if (placePokemon.get(rNum1) != null && placePokemon.get(rNum2) != null && rNum1 != rNum2) { + placeHealthAdjust(rNum1, 2 + plusNum); + placePowerAdjust(rNum1, 2 + plusNum); + placeHealthAdjust(rNum2, 2 + plusNum); + placePowerAdjust(rNum2, 2 + plusNum); + break; + } + } + break; + } + case 15: { // 사용 기물과 양 옆의 기물에 1/2 증가 + placePowerAdjust(placeNum, 1 + plusNum); + placeHealthAdjust(placeNum, 2 + plusNum); + if (placeNum == 0) { + if (!isNullPlacePokemon(placeNum + 1)) { + placePowerAdjust(placeNum + 1, 1 + plusNum); + placeHealthAdjust(placeNum + 1, 2 + plusNum); + break; + } + } else if (placeNum == 4) { + if (!isNullPlacePokemon(placeNum - 1)) { + placePowerAdjust(placeNum - 1, 1 + plusNum); + placeHealthAdjust(placeNum - 1, 2 + plusNum); + break; + } + } else { + if (!isNullPlacePokemon(placeNum + 1)) { + placePowerAdjust(placeNum + 1, 1 + plusNum); + placeHealthAdjust(placeNum + 1, 2 + plusNum); + } + if (!isNullPlacePokemon(placeNum - 1)) { + placePowerAdjust(placeNum - 1, 1 + plusNum); + placeHealthAdjust(placeNum - 1, 2 + plusNum); + } + } + break; + } + case 16: { // 사용 효과는 없지만 이 아이템이 적용된 기물 판매 시 판매코인 1 증가 + effectNum[placeNum] = 3; + break; + } + case 17: { // 2/2 증가 + placePowerAdjust(placeNum, 2 + plusNum); + placeHealthAdjust(placeNum, 2 + plusNum); + break; + } + case 18: { // 랜덤으로 1기물에게 경험치 1 증가 + while (true) { + int rNum = random.nextInt(5); + if (!isNullPlacePokemon(rNum)) { + placePokemon.get(rNum).setExp(placePokemon.get(rNum).getExp() + 1); + isRankup(placeNum); + break; + } + } + break; + } + case 19: { // 50% 확률로 코인 7 증가 + int rNum = random.nextInt(2); + if (rNum == 1) { + System.out.println("<<< 성공! >>>"); + this.coin += 7; + break; + } else { + System.out.println("<<< 실패! >>> "); + break; + } + } + case 20: { // 공격력 3 증가 + placePowerAdjust(placeNum, 3 + plusNum); + break; + } + case 21: { // 경험치 1 증가 + placePokemon.get(placeNum).setExp(placePokemon.get(placeNum).getExp() + 1); + isRankup(placeNum); + break; + } + case 22: { // 3/3 증가 + placePowerAdjust(placeNum, 3 + plusNum); + placeHealthAdjust(placeNum, 3 + plusNum); + break; + } + case 23: { // 코인 + 6 + this.coin += 6; + break; + } + case 24: { // 대결에 승리 시 코인 2, 패배 시 1 증가 000000000000 + item24Effect = true; + break; + } + default: { + break; + } + } + } + + void item_frozen(int placeNum) { + if (!validationShopItemNum(placeNum)) { + System.out.println("<<<입력 오류>>>"); + return; + } else if (isNullShopItem(placeNum)) { + System.out.println("<<<비어있습니다.>>>"); + return; + } else if (frozenItemNum[placeNum] == false) { + frozenItemNum[placeNum] = true; + System.out.println("<<<" + (placeNum + 1) + "번에 얼리기 설정>>>"); + select_item.get_frozen_panel().setVisible(true); + return; + } else { + frozenItemNum[placeNum] = false; + System.out.println("<<<" + (placeNum + 1) + "번에 얼리기 취소 설정>>>"); + select_item.get_frozen_panel().setVisible(false); + return; + } + } + + boolean validationShopPokemonNum(int placeNum) { // 상점 구역 번호 유효성 검사 + if (shop_place_num() < placeNum || placeNum < 0) { + return false; + } else + return true; + } +} diff --git a/AutoPocket_ex1/src/background/Pokemon.java b/AutoPocket_ex1/src/background/Pokemon.java new file mode 100644 index 0000000..1e740ca --- /dev/null +++ b/AutoPocket_ex1/src/background/Pokemon.java @@ -0,0 +1,99 @@ +package background; + +public class Pokemon { + private int pokemonNum; + private int Lv; + private int exp; + private String name; + private String type; + private int grade; + private int health; + private int power; + private String ability; + + public Pokemon(int pokemonNum, int Lv, int exp, String name, String type, int grade, int health, int power, String ability) { + this.pokemonNum = pokemonNum; + this.Lv = Lv; + this.exp = exp; + this.name = name; + this.type = type; + this.grade = grade; + this.health = health; + this.power = power; + this.ability = ability; + } + + public int getPokemonNum() { + return pokemonNum; + } + + public void setPokemonNum(int pokemonNum) { + this.pokemonNum = pokemonNum; + } + + public int getLv() { + return Lv; + } + + public void setLv(int lv) { + Lv = lv; + } + + public int getExp() { + return exp; + } + + public void setExp(int exp) { + this.exp = exp; + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public String getType() { + return type; + } + + public void setType(String type) { + this.type = type; + } + + public int getGrade() { + return grade; + } + + public void setGrade(int grade) { + this.grade = grade; + } + + public int getHealth() { + return health; + } + + public void setHealth(int health) { + this.health = health; + } + + public int getPower() { + return power; + } + + public void setPower(int power) { + this.power = power; + } + + public String getAbility() { + return ability; + } + + public void setAbility(String ability) { + this.ability = ability; + } + + +} diff --git a/AutoPocket_ex1/src/background/Record_Screen2.java b/AutoPocket_ex1/src/background/Record_Screen2.java new file mode 100644 index 0000000..b8a10ec --- /dev/null +++ b/AutoPocket_ex1/src/background/Record_Screen2.java @@ -0,0 +1,190 @@ +package background; + +import java.awt.Color; +import java.awt.Dimension; +import java.awt.Font; +import java.awt.GridBagConstraints; +import java.awt.GridBagLayout; +import java.awt.Insets; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.PreparedStatement; +import java.sql.ResultSet; +import java.sql.SQLException; + +import javax.swing.ImageIcon; +import javax.swing.JButton; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JScrollPane; + +public class Record_Screen2 extends JPanel { + String DB_user = "JUNG"; + String DB_password = "1234"; + String DB_url = "jdbc:oracle:thin:@localhost:1521:xe"; + public int user_pk; + public JButton exit_btn; + public JScrollPane scrollPane; + + /** + * Create the panel. + */ + public Record_Screen2(int user_pk) { + DB_select_test user_db = new DB_select_test(); + String user = user_db.DB_user; + String pass = user_db.DB_password; + String url = user_db.DB_url; + String sql = ""; + this.user_pk = user_pk; + + this.setLayout(null); + this.setBounds(0, 0, 1920, 1080); + + // + ImagePanel background_panel = new ImagePanel(new ImageIcon("C:\\ex1\\AutoPocket_ex1\\src\\Image\\login_background.png").getImage()); + this.add(background_panel); + background_panel.setPreferredSize(new Dimension(1920, 1080)); + background_panel.setLayout(null); + + //ũ + scrollPane = new JScrollPane(); + scrollPane.setBounds(219, 49, 1551, 951); + scrollPane.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED); + scrollPane.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED); + background_panel.add(scrollPane); + + //ƿ г + JPanel main_panel = new JPanel(); + main_panel.setBackground(new Color(255,250,240)); + GridBagLayout gridBagLayout = new GridBagLayout(); + GridBagConstraints constraints = new GridBagConstraints(); + main_panel.setLayout(gridBagLayout); + scrollPane.setViewportView(main_panel); + + //ư + JPanel exit_Panel = new ImagePanel(new ImageIcon("C:\\ex1\\AutoPocket_ex1\\src\\Image\\exit.png").getImage());; + exit_Panel.setPreferredSize(new Dimension(90, 90)); + constraints.insets = new Insets(20, 0, 10, 0); + constraints.fill = GridBagConstraints.VERTICAL; + constraints.weighty = 1.0; + constraints.gridx = 1; + constraints.gridy = 0; + gridBagLayout.setConstraints(exit_Panel, constraints); + main_panel.add(exit_Panel); + exit_Panel.setLayout(null); + exit_btn = new JButton(""); + exit_btn.setBounds(0, 0, 90, 90); + exit_btn.setOpaque(false); + exit_btn.setContentAreaFilled(false); + exit_btn.setBorderPainted(false); + exit_Panel.add(exit_btn); + + + try { + Class.forName("oracle.jdbc.OracleDriver"); + Connection con = DriverManager.getConnection(url, user, pass); + System.out.println("Ŭ ε !"); + sql = "SELECT UR.USER_ID, UR.RECORD_ID, RL.LOCATION1_OBJ, RL.LOCATION2_OBJ, RL.LOCATION3_OBJ, RL.LOCATION4_OBJ, RL.LOCATION5_OBJ, " + + "GR.GAME_COUNT, GR.GAME_RESULT, GR.GAME_END_HEART, GR.GAME_END_TURN, GR.GAME_END_DATE " + + "FROM USER_RECORD UR " + + "INNER JOIN RECORD_LOCATION RL ON UR.RECORD_ID = RL.RECORD_ID " + + "INNER JOIN GAME_RECORD GR ON UR.RECORD_ID = GR.RECORD_ID " + + "WHERE UR.USER_ID = ?"; + PreparedStatement pstmt = con.prepareStatement(sql); + pstmt.setInt(1, user_pk); + ResultSet resultSet = pstmt.executeQuery(); + + int first_row_height = 10; + int row = 1; + while (resultSet.next()) { + int recordId = resultSet.getInt("RECORD_ID"); + int gameCount = resultSet.getInt("GAME_COUNT"); + String gameResult = resultSet.getString("GAME_RESULT"); + int gameEndHeart = resultSet.getInt("GAME_END_HEART"); + int gameEndTurn = resultSet.getInt("GAME_END_TURN"); + java.sql.Date gameEndDate = resultSet.getDate("GAME_END_DATE"); + String date = gameEndDate.toString(); + int location1 = resultSet.getInt("LOCATION1_OBJ"); + int location2 = resultSet.getInt("LOCATION2_OBJ"); + int location3 = resultSet.getInt("LOCATION3_OBJ"); + int location4 = resultSet.getInt("LOCATION4_OBJ"); + int location5 = resultSet.getInt("LOCATION5_OBJ"); + + constraints.insets = new Insets(first_row_height, 0, 10, 0); + constraints.fill = GridBagConstraints.VERTICAL; + constraints.weighty = 1.0; + constraints.gridx = 0; + constraints.gridy = row; + + ImagePanel Record_Panel = new ImagePanel(new ImageIcon("C:\\ex1\\AutoPocket_ex1\\src\\Images\\record_test3.png").getImage()); + Record_Panel.setPreferredSize(new Dimension(1300, 260)); + Record_Panel.setLayout(null); + + ImagePanel location_5 = new ImagePanel(new ImageIcon("C:\\ex1\\AutoPocket_ex1\\src\\Images\\" + location1 +".png").getImage()); + location_5.setBounds(347, 93, 155, 155); + Record_Panel.add(location_5); + + ImagePanel location_4 = new ImagePanel(new ImageIcon("C:\\ex1\\AutoPocket_ex1\\src\\Images\\" + location2 +".png").getImage()); + location_4.setBounds(524, 93, 155, 155); + Record_Panel.add(location_4); + + ImagePanel location_3 = new ImagePanel(new ImageIcon("C:\\ex1\\AutoPocket_ex1\\src\\Images\\" + location3 +".png").getImage()); + location_3.setBounds(691, 93, 155, 155); + Record_Panel.add(location_3); + + ImagePanel location_2 = new ImagePanel(new ImageIcon("C:\\ex1\\AutoPocket_ex1\\src\\Images\\" + location4 +".png").getImage()); + location_2.setBounds(858, 93, 155, 155); + Record_Panel.add(location_2); + + ImagePanel location_1 = new ImagePanel(new ImageIcon("C:\\ex1\\AutoPocket_ex1\\src\\Images\\" + location5 +".png").getImage()); + location_1.setBounds(180, 93, 155, 155); + Record_Panel.add(location_1); + + JButton Detail_btm = new JButton(""); + Detail_btm.setOpaque(false); + Detail_btm.setContentAreaFilled(false); + Detail_btm.setBorderPainted(false); + Detail_btm.setBounds(75, 122, 97, 95); + Detail_btm.addActionListener(new ActionListener() {public void actionPerformed(ActionEvent e) { + System.out.println("ư ̳׿!"); + } + }); + + Record_Panel.add(Detail_btm); + + JLabel lblNewLabel = new JLabel(date); + lblNewLabel.setFont(new Font("", Font.BOLD, 33)); + lblNewLabel.setBounds(33, 10, 595, 62); + Record_Panel.add(lblNewLabel); + + JLabel lblNewLabel_1 = new JLabel(gameResult); + lblNewLabel_1.setFont(new Font("", Font.BOLD, 56)); + lblNewLabel_1.setBounds(1208, 9, 70, 63); + Record_Panel.add(lblNewLabel_1); + + JLabel lblNewLabel_2 = new JLabel(": " + gameEndHeart); + lblNewLabel_2.setFont(new Font("", Font.BOLD, 60)); + lblNewLabel_2.setBounds(1146, 96, 132, 62); + Record_Panel.add(lblNewLabel_2); + + JLabel lblNewLabel_2_1 = new JLabel(": " + gameEndTurn); + lblNewLabel_2_1.setFont(new Font("", Font.BOLD, 60)); + lblNewLabel_2_1.setBounds(1146, 168, 132, 87); + Record_Panel.add(lblNewLabel_2_1); + + gridBagLayout.setConstraints(Record_Panel, constraints); + main_panel.add(Record_Panel); + row++; + first_row_height = 10; + } + + }catch (ClassNotFoundException e) { + e.printStackTrace(); + }catch (SQLException e) { + e.printStackTrace(); + } + } + +} diff --git a/AutoPocket_ex1/src/background/RoundPanel.java b/AutoPocket_ex1/src/background/RoundPanel.java new file mode 100644 index 0000000..d0c1465 --- /dev/null +++ b/AutoPocket_ex1/src/background/RoundPanel.java @@ -0,0 +1,37 @@ +package background; + +import java.awt.*; +import javax.swing.*; +import javax.swing.border.EmptyBorder; + +class RoundPanel extends JPanel { + private int arc; + private Color backgroundColor; + + public RoundPanel(int arc, Color backgroundColor) { + this.arc = arc; + this.backgroundColor = backgroundColor; + setOpaque(false); + setLayout(new BorderLayout()); + setBorder(new EmptyBorder(10, 10, 10, 10)); + } + + @Override + public void paintComponent(Graphics g) { + int width = getWidth(); + int height = getHeight(); + Graphics2D graphics = (Graphics2D) g.create(); + + graphics.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON); + + // ׵θ ׸ () + graphics.setColor(Color.BLACK); + graphics.drawRoundRect(0, 0, width - 1, height - 1, arc, arc); + + // ׸ () + graphics.setColor(backgroundColor); + graphics.fillRoundRect(1, 1, width - 2, height - 2, arc, arc); + + graphics.dispose(); + } +} diff --git a/AutoPocket_ex1/src/background/Shop_Area.java b/AutoPocket_ex1/src/background/Shop_Area.java new file mode 100644 index 0000000..23822c1 --- /dev/null +++ b/AutoPocket_ex1/src/background/Shop_Area.java @@ -0,0 +1,37 @@ +package background; + +import java.awt.FlowLayout; + +import javax.swing.ImageIcon; +import javax.swing.JPanel; + +public class Shop_Area extends JPanel { + + public Shop_Area() { + + setLayout(null); + setOpaque(false); + + ImagePanel shop_location_1 = new ImagePanel(new ImageIcon("C:\\ex1\\AutoPocket_ex1\\src\\Images\\location2.png").getImage()); + shop_location_1.setBounds(12, 10, 178, 98); + this.add(shop_location_1); + shop_location_1.setLayout(new FlowLayout(FlowLayout.CENTER, 5, 5)); + + ImagePanel shop_location_2 = new ImagePanel(new ImageIcon("C:\\ex1\\AutoPocket_ex1\\src\\Images\\location2.png").getImage()); + shop_location_2.setBounds(224, 10, 178, 98); + this.add(shop_location_2); + + ImagePanel shop_location_3 = new ImagePanel(new ImageIcon("C:\\ex1\\AutoPocket_ex1\\src\\Images\\location2.png").getImage()); + shop_location_3.setBounds(436, 10, 178, 98); + this.add(shop_location_3); + + ImagePanel shop_location_4 = new ImagePanel(new ImageIcon("C:\\ex1\\AutoPocket_ex1\\src\\Images\\location2.png").getImage()); + shop_location_4.setBounds(648, 10, 178, 98); + this.add(shop_location_4); + + ImagePanel shop_location_5 = new ImagePanel(new ImageIcon("C:\\ex1\\AutoPocket_ex1\\src\\Images\\location2.png").getImage()); + shop_location_5.setBounds(860, 10, 178, 98); + this.add(shop_location_5); + } + +} diff --git a/AutoPocket_ex1/src/background/StartBattle.java b/AutoPocket_ex1/src/background/StartBattle.java new file mode 100644 index 0000000..342eb3c --- /dev/null +++ b/AutoPocket_ex1/src/background/StartBattle.java @@ -0,0 +1,3064 @@ +package background; + +import java.awt.Component; +import java.awt.Container; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.awt.event.MouseAdapter; +import java.awt.event.MouseEvent; +import java.util.LinkedList; +import java.util.Random; +import java.util.Scanner; + +import javax.swing.ImageIcon; +import javax.swing.JFrame; +import javax.swing.JPanel; +import javax.swing.Timer; + + +public class StartBattle extends JPanel { + public ImagePanel background; + private ImagePanel next_btn; + private ImagePanel PlacementScreen; + public ImagePanel getPlacementScreen() { + return PlacementScreen; + } + + public Win_or_Lose win_or_lose; + Scanner sc = new Scanner(System.in); + private LinkedList friendly; // 아군 리스트 + private LinkedList friendly_panel; + private LinkedList enemy_panel; + private LinkedList enemy; // 적군 리스트 + private LinkedList forreplace; // + private LinkedList