Compare commits
38 Commits
snapshot-2
...
1.0
Author | SHA1 | Date | |
---|---|---|---|
32452b1f42 | |||
69beb98a0c | |||
e6f766e287 | |||
3def96588f | |||
ba4d61b0a5 | |||
6f9d413bf7 | |||
507dee45d8 | |||
18665c9022 | |||
1a5a7b7a66 | |||
67df93c0da | |||
a1fa243882 | |||
ede8f5137a | |||
196f3cfa76 | |||
e6a07bee7f | |||
899647b165 | |||
894e3fe7f3 | |||
d1990656cd | |||
7df908f500 | |||
cbe3f8ea85 | |||
417bd199a7 | |||
0b174aba41 | |||
2000ac6a30 | |||
3799a7549b | |||
0c2eb7acea | |||
a92732ad1f | |||
87c1ff3af1 | |||
a4484404cd | |||
242d30b51c | |||
7c448591ea | |||
3c20db686c | |||
ad6593bd00 | |||
68cc275302 | |||
2dd019a8ea | |||
82e83e0248 | |||
cfb056a05e | |||
39d214a3a2 | |||
6984a8bd23 | |||
1f87e20877 |
3
DESIGN.md
Normal file
3
DESIGN.md
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
# Launcher
|
||||||
|
|
||||||
|
Refer to [docs/launcher/README.md](docs/launcher/README.md)
|
7
INSTALL.md
Normal file
7
INSTALL.md
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
# How to install Boulevard Combattant?
|
||||||
|
|
||||||
|
To run Boulevard Combattant, simply get the [latest release](https://gitlab.istic.univ-rennes1.fr/fautin/jeu-de-combat/-/releases) and run the executable JAR. You need Java >8 installed on your computer. All libraries are packaged within the JAR.
|
||||||
|
|
||||||
|
# How to build Boulevard Combattant?
|
||||||
|
|
||||||
|
This project is managed via Maven. To build, simply clone the project, and run `mvn package` in the root directory of the cloned project. A JAR will be generated in `${project_folder}/target`. This project can also be imported in your prefered IDE. To run the game, run the Main class located in the default package.
|
22
README.md
22
README.md
@ -5,7 +5,25 @@
|
|||||||
2D Fighting game, inspired by Street Fighter III: Third Strike.
|
2D Fighting game, inspired by Street Fighter III: Third Strike.
|
||||||
Developed in the context of an end-of-year project at ISTIC (2020/2021)
|
Developed in the context of an end-of-year project at ISTIC (2020/2021)
|
||||||
|
|
||||||

|
<figure class="video_container">
|
||||||
|
<iframe src="https://www.youtube.com/embed/E0YPzBLoElg" frameborder="0" allowfullscreen="true"> </iframe>
|
||||||
|
</figure>
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
Currently, only a single character is playable. However, the engine allows for easy expansion in the future.
|
||||||
|
|
||||||
|
## How to play?
|
||||||
|
|
||||||
|
Set your preferences in the launcher window, plug-in two DirectInput or XInput capable controllers in your computer, and press start! Use the left analog stick or the D-Pad to move, and the four face buttons for kick and punch, neo-geo style.
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
Blue, the main character, knows some advanced martial arts techniques, which can be unlocked through special combinaisons ;).
|
||||||
|
|
||||||
|
## How to install / build?
|
||||||
|
|
||||||
|
Please refer to [INSTALL.md](INSTALL.md).
|
||||||
|
|
||||||
## Technologies used by the project
|
## Technologies used by the project
|
||||||
|
|
||||||
@ -14,7 +32,7 @@ Developed in the context of an end-of-year project at ISTIC (2020/2021)
|
|||||||
* OpenAL via [lwjgl](https://www.lwjgl.org/)
|
* OpenAL via [lwjgl](https://www.lwjgl.org/)
|
||||||
* [JavaFX](https://openjfx.io)
|
* [JavaFX](https://openjfx.io)
|
||||||
|
|
||||||
## Contributors
|
## Authors
|
||||||
|
|
||||||
* [François AUTIN](https://gitlab.istic.univ-rennes1.fr/fautin)
|
* [François AUTIN](https://gitlab.istic.univ-rennes1.fr/fautin)
|
||||||
* [Victor AZRA](https://gitlab.istic.univ-rennes1.fr/vazra)
|
* [Victor AZRA](https://gitlab.istic.univ-rennes1.fr/vazra)
|
||||||
|
0
docs/engine/.gitkeep
Normal file
0
docs/engine/.gitkeep
Normal file
49
docs/launcher/README.md
Normal file
49
docs/launcher/README.md
Normal file
@ -0,0 +1,49 @@
|
|||||||
|
# Boulevard Combattant Launcher
|
||||||
|
|
||||||
|
## What is the launcher about?
|
||||||
|
|
||||||
|
In order to allow for the end-user to properly input its preferred parameters, we needed a user interface to edit the game.set JSON configuration file (which is then parsed by the game engine to configure itself). Therefore, a launcher window providing basic configuration toggles and boxes was implemented.
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
## Functionality
|
||||||
|
|
||||||
|
Through this window, the end-user can set the resolution, whether or not to display the game fullscreen or windowed, how many rounds to play and whether or not to display the hitboxes in-game.
|
||||||
|
|
||||||
|
Also implemented is the ability to select characters for each player and another arena. **However, this game having both a single character and a single arena, this part of the user interface has been obscured.**
|
||||||
|
|
||||||
|
## Behaviour
|
||||||
|
|
||||||
|
When starting the program, the launcher window pops, prompting you to enter your preferred settings. Clicking on play will hide the launcher and start a new thread containing the game engine itself. Upon thread completion (ie: the match has ended, or the player quit the game), the window will reappear.
|
||||||
|
|
||||||
|
## How does it work?
|
||||||
|
|
||||||
|
The launcher code is entirely comprised within the `launcher` package. There are two classes: `launcher.Launcher` and `launcher.Settings`.
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
### launcher.Launcher
|
||||||
|
|
||||||
|
This class is an extension of the `javafx.application.Application` class. As such, it operates within its own JavaFX thread, allowing it to manipulate JavaFX artifacts at will using the `@FXML` annotation tag.
|
||||||
|
|
||||||
|
Any JavaFX `Application` class instance must have a `start(Stage primaryStage)` method. This method is automatically called when an instance is created. `start(...)` proceeds to load the `launcher.fxml` resource file contained in the `launcher` package. This FXML file defines a class arborescence describing a JavaFX scene to be displayed. Once loaded, this class arborescence is filled with relevant additional information, such as default values parsed by `launcher.Settings`, and item lists for `javafx.scene.control.ChoiceBox<>` instances. Then finally, the window is given attributes (title, icon, etc) and displayed via the window manager of the operating system.
|
||||||
|
|
||||||
|
`launcher.Launcher` also contains additional methods to be launched through user input:
|
||||||
|
|
||||||
|
* runGame(): transcribes the user inputed data to a format usable by `launcher.Settings`, asks the `launcher.Settings` instance linked to the launcher to write the game.set JSON file, hides the window and creates a new thread containing an instance of the `gameplay.match.match` class. Upon thread completion, the window is shown again.
|
||||||
|
|
||||||
|
* fillArraySettings(): transcribes the user inputed data to a format usable by `launcher.Settings`.
|
||||||
|
|
||||||
|
* hideWindow(): hides the launcher window.
|
||||||
|
|
||||||
|
* showWindow(): shows the launcher window again.
|
||||||
|
|
||||||
|
* quit(): calls `System.exit(0);`.
|
||||||
|
|
||||||
|
* website(): opens the gitlab page of the project in the user's default web browser on click.
|
||||||
|
|
||||||
|
* chp(): part of the obscured character select pane. Changes the character image according to the user selected character.
|
||||||
|
|
||||||
|
### launcher.Settings
|
||||||
|
|
||||||
|
This class is specifically made to bridge between the launcher itself, and the resulting game.set JSON configuration file. `launcher.Settings` parses game.set using `com.googlecode.json-simple`, a JSON parser for Java, upon instanciation. It also provides a `write(...)` method to write the user inputed settings to file.
|
BIN
docs/launcher/class-diagram.png
Normal file
BIN
docs/launcher/class-diagram.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 91 KiB |
248
docs/launcher/class-diagram.svg
Normal file
248
docs/launcher/class-diagram.svg
Normal file
@ -0,0 +1,248 @@
|
|||||||
|
<?xml version='1.0' encoding='utf-8'?>
|
||||||
|
<!DOCTYPE svg PUBLIC '-//W3C//DTD SVG 1.1//EN' 'http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd'>
|
||||||
|
<svg xmlns='http://www.w3.org/2000/svg' viewBox='15 -30 1150 928' xmlns:xlink='http://www.w3.org/1999/xlink' width='1150.0px' font-size='13' font-family='Arial, LiberationSans' version='1.1' height='928.0px'>
|
||||||
|
<defs>
|
||||||
|
<style type='text/css'><![CDATA[svg text {text-rendering: geometricPrecision;}]]></style> <linearGradient y1='0.0%' x1='0.0%' y2='100.0%' x2='0.0%' id='b3f897b4-c209-4fe8-9dfb-f15e0fa75261' spreadMethod='pad'>
|
||||||
|
<stop stop-opacity='1' offset='0' stop-color='rgb(255, 255, 255)'/>
|
||||||
|
<stop stop-opacity='1' offset='100' stop-color='rgb(239, 233, 222)'/>
|
||||||
|
</linearGradient>
|
||||||
|
<linearGradient y1='0.0%' x1='0.0%' y2='100.0%' x2='0.0%' id='64ed63d1-2f1e-4592-a935-36666ede968d' spreadMethod='pad'>
|
||||||
|
<stop stop-opacity='1' offset='0' stop-color='rgb(255, 255, 255)'/>
|
||||||
|
<stop stop-opacity='1' offset='100' stop-color='rgb(239, 233, 222)'/>
|
||||||
|
</linearGradient>
|
||||||
|
<linearGradient y1='0.0%' x1='0.0%' y2='100.0%' x2='0.0%' id='90b92241-31be-4fbf-9743-d826a85754b6' spreadMethod='pad'>
|
||||||
|
<stop stop-opacity='1' offset='0' stop-color='rgb(255, 255, 255)'/>
|
||||||
|
<stop stop-opacity='1' offset='100' stop-color='rgb(238, 238, 238)'/>
|
||||||
|
</linearGradient>
|
||||||
|
<linearGradient y1='0.0%' x1='0.0%' y2='100.0%' x2='0.0%' id='21cc2823-92d5-4ff0-85b8-8eb3d15ebebc' spreadMethod='pad'>
|
||||||
|
<stop stop-opacity='1' offset='0' stop-color='rgb(255, 255, 255)'/>
|
||||||
|
<stop stop-opacity='1' offset='100' stop-color='rgb(238, 238, 238)'/>
|
||||||
|
</linearGradient>
|
||||||
|
<linearGradient y1='0.0%' x1='0.0%' y2='100.0%' x2='0.0%' id='c7a59d8f-6a85-48ef-8f3e-5ef25775cfc4' spreadMethod='pad'>
|
||||||
|
<stop stop-opacity='1' offset='0' stop-color='rgb(255, 255, 255)'/>
|
||||||
|
<stop stop-opacity='1' offset='100' stop-color='rgb(238, 238, 238)'/>
|
||||||
|
</linearGradient>
|
||||||
|
<linearGradient y1='0.0%' x1='0.0%' y2='100.0%' x2='0.0%' id='0c84d8fe-2609-49d4-98d5-e654c986184d' spreadMethod='pad'>
|
||||||
|
<stop stop-opacity='1' offset='0' stop-color='rgb(255, 255, 255)'/>
|
||||||
|
<stop stop-opacity='1' offset='100' stop-color='rgb(239, 233, 222)'/>
|
||||||
|
</linearGradient>
|
||||||
|
<linearGradient y1='0.0%' x1='0.0%' y2='100.0%' x2='0.0%' id='336857b3-5a78-482b-8a61-0a5eab3024c9' spreadMethod='pad'>
|
||||||
|
<stop stop-opacity='1' offset='0' stop-color='rgb(255, 255, 255)'/>
|
||||||
|
<stop stop-opacity='1' offset='100' stop-color='rgb(239, 233, 222)'/>
|
||||||
|
</linearGradient>
|
||||||
|
<linearGradient y1='0.0%' x1='0.0%' y2='100.0%' x2='0.0%' id='bba14698-32fa-4b4a-bfce-000a72f8f558' spreadMethod='pad'>
|
||||||
|
<stop stop-opacity='1' offset='0' stop-color='rgb(255, 255, 255)'/>
|
||||||
|
<stop stop-opacity='1' offset='100' stop-color='rgb(238, 238, 238)'/>
|
||||||
|
</linearGradient>
|
||||||
|
</defs>
|
||||||
|
<desc>ClassDiagram</desc>
|
||||||
|
<g transform='translate(45.0,288.0)' id='_RQnUgLgaEDm32IpGZr-LtA'>
|
||||||
|
<rect x='0.0' width='70.0px' y='0.0' stroke-width='1.0' fill='url(#b3f897b4-c209-4fe8-9dfb-f15e0fa75261)' stroke='rgb(194, 183, 159)' look='allInOne' height='24.0px'/>
|
||||||
|
<rect x='0.0' width='1090.0px' y='24.0' stroke-width='1.0' fill='url(#b3f897b4-c209-4fe8-9dfb-f15e0fa75261)' stroke='rgb(194, 183, 159)' look='allInOne' height='556.0px'/>
|
||||||
|
<text font-weight='bold' text-anchor='middle' x='35.0' y='18.0' font-size='13' fill='rgb(128, 98, 33)'>launcher</text>
|
||||||
|
</g>
|
||||||
|
<g transform='translate(45.0,0.0)' id='_WtsoQrgaEDm32IpGZr-LtA'>
|
||||||
|
<rect x='0.0' width='54.0px' y='0.0' stroke-width='1.0' fill='url(#64ed63d1-2f1e-4592-a935-36666ede968d)' stroke='rgb(194, 183, 159)' look='allInOne' height='24.0px'/>
|
||||||
|
<rect x='0.0' width='1090.0px' y='24.0' stroke-width='1.0' fill='url(#64ed63d1-2f1e-4592-a935-36666ede968d)' stroke='rgb(194, 183, 159)' look='allInOne' height='246.0px'/>
|
||||||
|
<text font-weight='bold' text-anchor='middle' x='27.0' y='18.0' font-size='13' fill='rgb(128, 98, 33)'>javafx</text>
|
||||||
|
</g>
|
||||||
|
<g transform='translate(101.0,409.0)' id='_TOv1ILgaEDm32IpGZr-LtA'>
|
||||||
|
<rect rx='3.0' ry='3.0' x='0.0' width='286.0px' y='0.0' stroke-width='1.0' fill='url(#90b92241-31be-4fbf-9743-d826a85754b6)' stroke='rgb(187, 187, 187)' look='allInOne' height='302.0px'/>
|
||||||
|
<text font-weight='bold' text-anchor='middle' x='143.0' y='19.0' font-size='13' font-style='normal' fill='rgb(3, 54, 86)'>Launcher</text>
|
||||||
|
<line y1='26.0' x1='0.0' y2='26.0' x2='286.0' stroke-width='1.0' stroke='rgb(187, 187, 187)' look='border'/>
|
||||||
|
<g transform='translate(0.0,26.0)' id='_kiRycLgaEDm32IpGZr-LtA'>
|
||||||
|
<image x='4.0' width='16.0' y='5.0' xlink:href='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAIGNIUk0AAG8dAAB6pAAA9NYAAIZwAAB37gAA9bAAADqjAAAVsi1zQqwAAAMAUExURQAAAP////3+/ypvqCtuqCtvqDF0qzp5rzp4rjp5rkN/skOAsk2Ftk2GtlWMulaMulaNulaMuV6Svl6RvV6SvV+SvWWWwGWXwGqawvr9//b8//L7/+T3/+H3/+T4/+z6/+36/+P4/+f5//L8//b9/7ONIu/Aaf///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIu2A3AAAAAodFJOU////////////////////////////////////////////////////wC+qi4YAAAAjUlEQVR42lyPuwoCQQxFT8bsNgpWIrYy4P//zkwpWmmxIFjMI1vMjqumO1xuciIXfsf9Mcr0jXuU+lj5AEo+JkwwgSGDUrbPXcunMYGjvBO1jnWsJgWUqsZgeSh3XgSUsinLWi/Ri2L5lBxcPx52cwaCB/OYcm5JkHa7qwciRIjaJZfG+pwggqyV3mAeAEwDNXVo/ukaAAAAAElFTkSuQmCC' height='16.0'/>
|
||||||
|
<text text-anchor='start' text-decoration='underline' x='22.0' y='16.0' font-size='13' fill='rgb(0, 0, 0)'>arraysettings: HashMap<String,Object></text>
|
||||||
|
</g>
|
||||||
|
<g transform='translate(0.0,46.0)' id='_yMJhcbgaEDm32IpGZr-LtA'>
|
||||||
|
<image x='4.0' width='16.0' y='5.0' xlink:href='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAIGNIUk0AAG8dAAB6pAAA9NYAAIZwAAB37gAA9bAAADqjAAAVsi1zQqwAAAMAUExURQAAAP///8gdLP3+/zt4ripvqCtuqCtvqDF0qzJzqzp5rzp4rjp5rkN/skOAskR/sk2Ftk2GtlWMulaMulaNulaMuV6Svl6RvV6SvV+SvWWWwGWXwGqawvr9/+35//b8//L7/+T3/+H3/+T4/+j5/+z6/+36/+P4/+f5//L8//b9/8lHPvV8fP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALr1MDoAAAAudFJOU////////////////////////////////////////////////////////////wCCj3NVAAAAjklEQVR42lyPsQ6CYAyEv/4WcGFwM8bZwej7vwiR3U0ddDIG/rYOYBBuuXx3Q69yZq60YJTnP25Q/DbxFpS86wkhBIoMitWPeuhfVQ8Je/e4V155iIFihVNGLs2tcFBsZXcAPuswULzfdwnwpNlAiWsKkA6ABuUwnGiOy+mtiIi0Os28jL/8FMyD0+jfAQAK/zLXcxrOkQAAAABJRU5ErkJggg==' height='16.0'/>
|
||||||
|
<text text-anchor='start' text-decoration='underline' x='22.0' y='16.0' font-size='13' fill='rgb(0, 0, 0)'>setter: Settings</text>
|
||||||
|
</g>
|
||||||
|
<g transform='translate(0.0,66.0)' id='_4A6VYbgaEDm32IpGZr-LtA'>
|
||||||
|
<image x='4.0' width='16.0' y='5.0' xlink:href='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAIGNIUk0AAG8dAAB6pAAA9NYAAIZwAAB37gAA9bAAADqjAAAVsi1zQqwAAAMAUExURQAAAP///8gdLP3+/zt4ripvqCtuqCtvqDF0qzJzqzp5rzp4rjp5rkN/skOAskR/sk2Ftk2GtlWMulaMulaNulaMuV6Svl6RvV6SvV+SvWWWwGWXwGqawvr9/+35//b8//L7/+T3/+H3/+T4/+j5/+z6/+36/+P4/+f5//L8//b9/8lHPvV8fP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALr1MDoAAAAudFJOU////////////////////////////////////////////////////////////wCCj3NVAAAAjklEQVR42lyPsQ6CYAyEv/4WcGFwM8bZwej7vwiR3U0ddDIG/rYOYBBuuXx3Q69yZq60YJTnP25Q/DbxFpS86wkhBIoMitWPeuhfVQ8Je/e4V155iIFihVNGLs2tcFBsZXcAPuswULzfdwnwpNlAiWsKkA6ABuUwnGiOy+mtiIi0Os28jL/8FMyD0+jfAQAK/zLXcxrOkQAAAABJRU5ErkJggg==' height='16.0'/>
|
||||||
|
<text text-anchor='start' text-decoration='underline' x='22.0' y='16.0' font-size='13' fill='rgb(0, 0, 0)'>namespace: Map<String,Object></text>
|
||||||
|
</g>
|
||||||
|
<line y1='90.0' x1='0.0' y2='90.0' x2='286.0' stroke-width='1.0' stroke='rgb(187, 187, 187)' look='border'/>
|
||||||
|
<g transform='translate(0.0,90.0)' id='_CkLf0LgbEDm32IpGZr-LtA'>
|
||||||
|
<image x='4.0' width='16.0' y='5.0' xlink:href='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAIGNIUk0AAG8dAAB6pAAA9NYAAIZwAAB37gAA9bAAADqjAAAVsi1zQqwAAAMAUExURQAAAP///8gdLMHBw6Ky1rfD3Ymh0au73Ku62Yag0aq72bPB27fD2b7J3XmXyYWh0Ieiz4ahzomk0Z2z2Ki72bPD3L7J23eXyIajz7TE27PD2rTD2maPxbvK38PP32WQxWOMwGSMvYamz7PE2LXE10V/vkh/v0d/vEiAvUh+vFGEu1OEvGGPw2aEpqC40kaBvUWAukd/ukmBvGGQvmSGqWOEpZ+61QA9cwA8cgA7cQI7cAM8czZ0rT16sEF9s0J9tUWCu0SBuE6GuVGFt2OGpmSHp2OEo2WGpWSFpAA8cAA9cAA7bwA8bgA9bgA7bQI8bgI8bD18slCGtWKFo2OGpGSHpQA9bAA7aDR3rMlHPvV8fP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAF0EaqEAAABcdFJOU/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////8Ag20X4AAAANtJREFUeNpUj0tLAlEARs+9XppGpzHDu1AQJcHHZlZFuBDa9wci/6Cu/AmBEcJQLSxFRJCgBy3MGSd8QenCB3Y2B87q+0SF/8i12v7TXvjok2o5eI+b0NED73U5+G7kXEBU+HGl6U/EXJvFKIQcDnQryBWsoTyzAcmD/2yV4+PZlXc3egHJ6f0ksAM307V+b9Mg+SqpWJC8MIy/48sxhBxtxuRb+HD6rnXSBgWj2TT7ma8DTUCBIeNHiyHXu6VhLxKJJqgJIYSoKSANvROo7p87z7Jco7a3bzZeDQBYqUT6Rob/IQAAAABJRU5ErkJggg==' height='16.0'/>
|
||||||
|
<text x='22.0' y='16.0' font-size='12' fill='rgb(105, 105, 105)'></text>
|
||||||
|
<text text-anchor='start' x='24.0' y='16.0' font-size='13' font-style='normal' fill='rgb(0, 0, 0)'>runGame(): void</text>
|
||||||
|
</g>
|
||||||
|
<g transform='translate(0.0,110.0)' id='_E91e0bgbEDm32IpGZr-LtA'>
|
||||||
|
<image x='4.0' width='16.0' y='5.0' xlink:href='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAIGNIUk0AAG8dAAB6pAAA9NYAAIZwAAB37gAA9bAAADqjAAAVsi1zQqwAAAMAUExURQAAAP///8gdLMHBw6Ky1rfD3Ymh0au73Ku62Yag0aq72bPB27fD2b7J3XmXyYWh0Ieiz4ahzomk0Z2z2Ki72bPD3L7J23eXyIajz7TE27PD2rTD2maPxbvK38PP32WQxWOMwGSMvYamz7PE2LXE10V/vkh/v0d/vEiAvUh+vFGEu1OEvGGPw2aEpqC40kaBvUWAukd/ukmBvGGQvmSGqWOEpZ+61QA9cwA8cgA7cQI7cAM8czZ0rT16sEF9s0J9tUWCu0SBuE6GuVGFt2OGpmSHp2OEo2WGpWSFpAA8cAA9cAA7bwA8bgA9bgA7bQI8bgI8bD18slCGtWKFo2OGpGSHpQA9bAA7aDR3rMlHPvV8fP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAF0EaqEAAABcdFJOU/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////8Ag20X4AAAANtJREFUeNpUj0tLAlEARs+9XppGpzHDu1AQJcHHZlZFuBDa9wci/6Cu/AmBEcJQLSxFRJCgBy3MGSd8QenCB3Y2B87q+0SF/8i12v7TXvjok2o5eI+b0NED73U5+G7kXEBU+HGl6U/EXJvFKIQcDnQryBWsoTyzAcmD/2yV4+PZlXc3egHJ6f0ksAM307V+b9Mg+SqpWJC8MIy/48sxhBxtxuRb+HD6rnXSBgWj2TT7ma8DTUCBIeNHiyHXu6VhLxKJJqgJIYSoKSANvROo7p87z7Jco7a3bzZeDQBYqUT6Rob/IQAAAABJRU5ErkJggg==' height='16.0'/>
|
||||||
|
<text x='22.0' y='16.0' font-size='12' fill='rgb(105, 105, 105)'></text>
|
||||||
|
<text text-anchor='start' x='24.0' y='16.0' font-size='13' font-style='normal' fill='rgb(0, 0, 0)'>fillArraySettings(): void</text>
|
||||||
|
</g>
|
||||||
|
<g transform='translate(0.0,130.0)' id='_FDQxZLgbEDm32IpGZr-LtA'>
|
||||||
|
<image x='4.0' width='16.0' y='5.0' xlink:href='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAIGNIUk0AAG8dAAB6pAAA9NYAAIZwAAB37gAA9bAAADqjAAAVsi1zQqwAAAMAUExURQAAAP///8gdLMHBw6Ky1rfD3Ymh0au73Ku62Yag0aq72bPB27fD2b7J3XmXyYWh0Ieiz4ahzomk0Z2z2Ki72bPD3L7J23eXyIajz7TE27PD2rTD2maPxbvK38PP32WQxWOMwGSMvYamz7PE2LXE10V/vkh/v0d/vEiAvUh+vFGEu1OEvGGPw2aEpqC40kaBvUWAukd/ukmBvGGQvmSGqWOEpZ+61QA9cwA8cgA7cQI7cAM8czZ0rT16sEF9s0J9tUWCu0SBuE6GuVGFt2OGpmSHp2OEo2WGpWSFpAA8cAA9cAA7bwA8bgA9bgA7bQI8bgI8bD18slCGtWKFo2OGpGSHpQA9bAA7aDR3rMlHPvV8fP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAF0EaqEAAABcdFJOU/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////8Ag20X4AAAANtJREFUeNpUj0tLAlEARs+9XppGpzHDu1AQJcHHZlZFuBDa9wci/6Cu/AmBEcJQLSxFRJCgBy3MGSd8QenCB3Y2B87q+0SF/8i12v7TXvjok2o5eI+b0NED73U5+G7kXEBU+HGl6U/EXJvFKIQcDnQryBWsoTyzAcmD/2yV4+PZlXc3egHJ6f0ksAM307V+b9Mg+SqpWJC8MIy/48sxhBxtxuRb+HD6rnXSBgWj2TT7ma8DTUCBIeNHiyHXu6VhLxKJJqgJIYSoKSANvROo7p87z7Jco7a3bzZeDQBYqUT6Rob/IQAAAABJRU5ErkJggg==' height='16.0'/>
|
||||||
|
<text x='22.0' y='16.0' font-size='12' fill='rgb(105, 105, 105)'></text>
|
||||||
|
<text text-anchor='start' x='24.0' y='16.0' font-size='13' font-style='normal' fill='rgb(0, 0, 0)'>hideWindow(): void</text>
|
||||||
|
</g>
|
||||||
|
<g transform='translate(0.0,150.0)' id='_FIRNNLgbEDm32IpGZr-LtA'>
|
||||||
|
<image x='4.0' width='16.0' y='5.0' xlink:href='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAIGNIUk0AAG8dAAB6pAAA9NYAAIZwAAB37gAA9bAAADqjAAAVsi1zQqwAAAMAUExURQAAAP///8gdLMHBw6Ky1rfD3Ymh0au73Ku62Yag0aq72bPB27fD2b7J3XmXyYWh0Ieiz4ahzomk0Z2z2Ki72bPD3L7J23eXyIajz7TE27PD2rTD2maPxbvK38PP32WQxWOMwGSMvYamz7PE2LXE10V/vkh/v0d/vEiAvUh+vFGEu1OEvGGPw2aEpqC40kaBvUWAukd/ukmBvGGQvmSGqWOEpZ+61QA9cwA8cgA7cQI7cAM8czZ0rT16sEF9s0J9tUWCu0SBuE6GuVGFt2OGpmSHp2OEo2WGpWSFpAA8cAA9cAA7bwA8bgA9bgA7bQI8bgI8bD18slCGtWKFo2OGpGSHpQA9bAA7aDR3rMlHPvV8fP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAF0EaqEAAABcdFJOU/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////8Ag20X4AAAANtJREFUeNpUj0tLAlEARs+9XppGpzHDu1AQJcHHZlZFuBDa9wci/6Cu/AmBEcJQLSxFRJCgBy3MGSd8QenCB3Y2B87q+0SF/8i12v7TXvjok2o5eI+b0NED73U5+G7kXEBU+HGl6U/EXJvFKIQcDnQryBWsoTyzAcmD/2yV4+PZlXc3egHJ6f0ksAM307V+b9Mg+SqpWJC8MIy/48sxhBxtxuRb+HD6rnXSBgWj2TT7ma8DTUCBIeNHiyHXu6VhLxKJJqgJIYSoKSANvROo7p87z7Jco7a3bzZeDQBYqUT6Rob/IQAAAABJRU5ErkJggg==' height='16.0'/>
|
||||||
|
<text x='22.0' y='16.0' font-size='12' fill='rgb(105, 105, 105)'></text>
|
||||||
|
<text text-anchor='start' x='24.0' y='16.0' font-size='13' font-style='normal' fill='rgb(0, 0, 0)'>showWindow(): void</text>
|
||||||
|
</g>
|
||||||
|
<g transform='translate(0.0,170.0)' id='_FNMJcbgbEDm32IpGZr-LtA'>
|
||||||
|
<image x='4.0' width='16.0' y='5.0' xlink:href='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAIGNIUk0AAG8dAAB6pAAA9NYAAIZwAAB37gAA9bAAADqjAAAVsi1zQqwAAAMAUExURQAAAP///8gdLMHBw6Ky1rfD3Ymh0au73Ku62Yag0aq72bPB27fD2b7J3XmXyYWh0Ieiz4ahzomk0Z2z2Ki72bPD3L7J23eXyIajz7TE27PD2rTD2maPxbvK38PP32WQxWOMwGSMvYamz7PE2LXE10V/vkh/v0d/vEiAvUh+vFGEu1OEvGGPw2aEpqC40kaBvUWAukd/ukmBvGGQvmSGqWOEpZ+61QA9cwA8cgA7cQI7cAM8czZ0rT16sEF9s0J9tUWCu0SBuE6GuVGFt2OGpmSHp2OEo2WGpWSFpAA8cAA9cAA7bwA8bgA9bgA7bQI8bgI8bD18slCGtWKFo2OGpGSHpQA9bAA7aDR3rMlHPvV8fP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAF0EaqEAAABcdFJOU/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////8Ag20X4AAAANtJREFUeNpUj0tLAlEARs+9XppGpzHDu1AQJcHHZlZFuBDa9wci/6Cu/AmBEcJQLSxFRJCgBy3MGSd8QenCB3Y2B87q+0SF/8i12v7TXvjok2o5eI+b0NED73U5+G7kXEBU+HGl6U/EXJvFKIQcDnQryBWsoTyzAcmD/2yV4+PZlXc3egHJ6f0ksAM307V+b9Mg+SqpWJC8MIy/48sxhBxtxuRb+HD6rnXSBgWj2TT7ma8DTUCBIeNHiyHXu6VhLxKJJqgJIYSoKSANvROo7p87z7Jco7a3bzZeDQBYqUT6Rob/IQAAAABJRU5ErkJggg==' height='16.0'/>
|
||||||
|
<text x='22.0' y='16.0' font-size='12' fill='rgb(105, 105, 105)'></text>
|
||||||
|
<text text-anchor='start' x='24.0' y='16.0' font-size='13' font-style='normal' fill='rgb(0, 0, 0)'>quit(): void</text>
|
||||||
|
</g>
|
||||||
|
<g transform='translate(0.0,190.0)' id='_FRO79rgbEDm32IpGZr-LtA'>
|
||||||
|
<image x='4.0' width='16.0' y='5.0' xlink:href='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAIGNIUk0AAG8dAAB6pAAA9NYAAIZwAAB37gAA9bAAADqjAAAVsi1zQqwAAAMAUExURQAAAP///8gdLMHBw6Ky1rfD3Ymh0au73Ku62Yag0aq72bPB27fD2b7J3XmXyYWh0Ieiz4ahzomk0Z2z2Ki72bPD3L7J23eXyIajz7TE27PD2rTD2maPxbvK38PP32WQxWOMwGSMvYamz7PE2LXE10V/vkh/v0d/vEiAvUh+vFGEu1OEvGGPw2aEpqC40kaBvUWAukd/ukmBvGGQvmSGqWOEpZ+61QA9cwA8cgA7cQI7cAM8czZ0rT16sEF9s0J9tUWCu0SBuE6GuVGFt2OGpmSHp2OEo2WGpWSFpAA8cAA9cAA7bwA8bgA9bgA7bQI8bgI8bD18slCGtWKFo2OGpGSHpQA9bAA7aDR3rMlHPvV8fP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAF0EaqEAAABcdFJOU/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////8Ag20X4AAAANtJREFUeNpUj0tLAlEARs+9XppGpzHDu1AQJcHHZlZFuBDa9wci/6Cu/AmBEcJQLSxFRJCgBy3MGSd8QenCB3Y2B87q+0SF/8i12v7TXvjok2o5eI+b0NED73U5+G7kXEBU+HGl6U/EXJvFKIQcDnQryBWsoTyzAcmD/2yV4+PZlXc3egHJ6f0ksAM307V+b9Mg+SqpWJC8MIy/48sxhBxtxuRb+HD6rnXSBgWj2TT7ma8DTUCBIeNHiyHXu6VhLxKJJqgJIYSoKSANvROo7p87z7Jco7a3bzZeDQBYqUT6Rob/IQAAAABJRU5ErkJggg==' height='16.0'/>
|
||||||
|
<text x='22.0' y='16.0' font-size='12' fill='rgb(105, 105, 105)'></text>
|
||||||
|
<text text-anchor='start' x='24.0' y='16.0' font-size='13' font-style='normal' fill='rgb(0, 0, 0)'>website(): void</text>
|
||||||
|
</g>
|
||||||
|
<g transform='translate(0.0,210.0)' id='_FVa4ZrgbEDm32IpGZr-LtA'>
|
||||||
|
<image x='4.0' width='16.0' y='5.0' xlink:href='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAIGNIUk0AAG8dAAB6pAAA9NYAAIZwAAB37gAA9bAAADqjAAAVsi1zQqwAAAMAUExURQAAAP///8gdLMHBw6Ky1rfD3Ymh0au73Ku62Yag0aq72bPB27fD2b7J3XmXyYWh0Ieiz4ahzomk0Z2z2Ki72bPD3L7J23eXyIajz7TE27PD2rTD2maPxbvK38PP32WQxWOMwGSMvYamz7PE2LXE10V/vkh/v0d/vEiAvUh+vFGEu1OEvGGPw2aEpqC40kaBvUWAukd/ukmBvGGQvmSGqWOEpZ+61QA9cwA8cgA7cQI7cAM8czZ0rT16sEF9s0J9tUWCu0SBuE6GuVGFt2OGpmSHp2OEo2WGpWSFpAA8cAA9cAA7bwA8bgA9bgA7bQI8bgI8bD18slCGtWKFo2OGpGSHpQA9bAA7aDR3rMlHPvV8fP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAF0EaqEAAABcdFJOU/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////8Ag20X4AAAANtJREFUeNpUj0tLAlEARs+9XppGpzHDu1AQJcHHZlZFuBDa9wci/6Cu/AmBEcJQLSxFRJCgBy3MGSd8QenCB3Y2B87q+0SF/8i12v7TXvjok2o5eI+b0NED73U5+G7kXEBU+HGl6U/EXJvFKIQcDnQryBWsoTyzAcmD/2yV4+PZlXc3egHJ6f0ksAM307V+b9Mg+SqpWJC8MIy/48sxhBxtxuRb+HD6rnXSBgWj2TT7ma8DTUCBIeNHiyHXu6VhLxKJJqgJIYSoKSANvROo7p87z7Jco7a3bzZeDQBYqUT6Rob/IQAAAABJRU5ErkJggg==' height='16.0'/>
|
||||||
|
<text x='22.0' y='16.0' font-size='12' fill='rgb(105, 105, 105)'></text>
|
||||||
|
<text text-anchor='start' x='24.0' y='16.0' font-size='13' font-style='normal' fill='rgb(0, 0, 0)'>chp1(): void</text>
|
||||||
|
</g>
|
||||||
|
<g transform='translate(0.0,230.0)' id='_FZA--LgbEDm32IpGZr-LtA'>
|
||||||
|
<image x='4.0' width='16.0' y='5.0' xlink:href='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAIGNIUk0AAG8dAAB6pAAA9NYAAIZwAAB37gAA9bAAADqjAAAVsi1zQqwAAAMAUExURQAAAP///8gdLMHBw6Ky1rfD3Ymh0au73Ku62Yag0aq72bPB27fD2b7J3XmXyYWh0Ieiz4ahzomk0Z2z2Ki72bPD3L7J23eXyIajz7TE27PD2rTD2maPxbvK38PP32WQxWOMwGSMvYamz7PE2LXE10V/vkh/v0d/vEiAvUh+vFGEu1OEvGGPw2aEpqC40kaBvUWAukd/ukmBvGGQvmSGqWOEpZ+61QA9cwA8cgA7cQI7cAM8czZ0rT16sEF9s0J9tUWCu0SBuE6GuVGFt2OGpmSHp2OEo2WGpWSFpAA8cAA9cAA7bwA8bgA9bgA7bQI8bgI8bD18slCGtWKFo2OGpGSHpQA9bAA7aDR3rMlHPvV8fP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAF0EaqEAAABcdFJOU/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////8Ag20X4AAAANtJREFUeNpUj0tLAlEARs+9XppGpzHDu1AQJcHHZlZFuBDa9wci/6Cu/AmBEcJQLSxFRJCgBy3MGSd8QenCB3Y2B87q+0SF/8i12v7TXvjok2o5eI+b0NED73U5+G7kXEBU+HGl6U/EXJvFKIQcDnQryBWsoTyzAcmD/2yV4+PZlXc3egHJ6f0ksAM307V+b9Mg+SqpWJC8MIy/48sxhBxtxuRb+HD6rnXSBgWj2TT7ma8DTUCBIeNHiyHXu6VhLxKJJqgJIYSoKSANvROo7p87z7Jco7a3bzZeDQBYqUT6Rob/IQAAAABJRU5ErkJggg==' height='16.0'/>
|
||||||
|
<text x='22.0' y='16.0' font-size='12' fill='rgb(105, 105, 105)'></text>
|
||||||
|
<text text-anchor='start' x='24.0' y='16.0' font-size='13' font-style='normal' fill='rgb(0, 0, 0)'>chp2(): void</text>
|
||||||
|
</g>
|
||||||
|
<g transform='translate(0.0,250.0)' id='_FclQUrgbEDm32IpGZr-LtA'>
|
||||||
|
<image x='4.0' width='16.0' y='5.0' xlink:href='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAIGNIUk0AAG8dAAB6pAAA9NYAAIZwAAB37gAA9bAAADqjAAAVsi1zQqwAAAMAUExURQAAAP///8gdLMHBw6Ky1rfD3Ymh0au73Ku62Yag0aq72bPB27fD2b7J3XmXyYWh0Ieiz4ahzomk0Z2z2Ki72bPD3L7J23eXyIajz7TE27PD2rTD2maPxbvK38PP32WQxWOMwGSMvYamz7PE2LXE10V/vkh/v0d/vEiAvUh+vFGEu1OEvGGPw2aEpqC40kaBvUWAukd/ukmBvGGQvmSGqWOEpZ+61QA9cwA8cgA7cQI7cAM8czZ0rT16sEF9s0J9tUWCu0SBuE6GuVGFt2OGpmSHp2OEo2WGpWSFpAA8cAA9cAA7bwA8bgA9bgA7bQI8bgI8bD18slCGtWKFo2OGpGSHpQA9bAA7aDR3rMlHPvV8fP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAF0EaqEAAABcdFJOU/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////8Ag20X4AAAANtJREFUeNpUj0tLAlEARs+9XppGpzHDu1AQJcHHZlZFuBDa9wci/6Cu/AmBEcJQLSxFRJCgBy3MGSd8QenCB3Y2B87q+0SF/8i12v7TXvjok2o5eI+b0NED73U5+G7kXEBU+HGl6U/EXJvFKIQcDnQryBWsoTyzAcmD/2yV4+PZlXc3egHJ6f0ksAM307V+b9Mg+SqpWJC8MIy/48sxhBxtxuRb+HD6rnXSBgWj2TT7ma8DTUCBIeNHiyHXu6VhLxKJJqgJIYSoKSANvROo7p87z7Jco7a3bzZeDQBYqUT6Rob/IQAAAABJRU5ErkJggg==' height='16.0'/>
|
||||||
|
<text x='22.0' y='16.0' font-size='12' fill='rgb(105, 105, 105)'></text>
|
||||||
|
<text text-anchor='start' x='24.0' y='16.0' font-size='13' font-style='normal' fill='rgb(0, 0, 0)'>chp(): void</text>
|
||||||
|
</g>
|
||||||
|
<g transform='translate(0.0,270.0)' id='_FljmKrgbEDm32IpGZr-LtA'>
|
||||||
|
<image x='4.0' width='16.0' y='5.0' xlink:href='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAIGNIUk0AAG8dAAB6pAAA9NYAAIZwAAB37gAA9bAAADqjAAAVsi1zQqwAAAMAUExURQAAAP///8HBw6Ky1rfD3Ymh0au73Ku62aq72bPB27fD2b7J3Yahzomk0Z2z2Ki72bPD3L7J23eXyIajz7TE27PD2rTD2maPxbvK38PP32OMwIamz7PE2LXE10V/vkh/v0d/vEiAvUh+vFGEu1OEvGaEpqC40kaBvUWAukd/ukmBvGGQvmSGqWOEpZ+61QA9cwA7cQI7cAM8czZ0rT16sEF9s0J9tUSBuE6GuVGFt2OGpmSHp2OEo2WGpWSFpAA8cAA9cAA7bwA8bgA9bgA7bQI8bgI8bD18slCGtWKFo2OGpGSHpQA9bAA7aLONIu/Aaf///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOIeGg8AAABRdFJOU///////////////////////////////////////////////////////////////////////////////////////////////////////////AGjsqMEAAADRSURBVHjaVI9BSwJRGEXP93z0dGgGUlyEhIUigZsC/4C4HvC3zsZ1OzHQctGkYFEtxIKacTTHgp6LHKi7uXDgwL3S5X/Ub90vx3/A/JFK2CS+3YNJ+Tl+sU8fg9oQkC7rkTLJVr6OTMOD3DkHpcnnWc2J5MIFFDfLu3yrmKSdVT8KQVMdmI23GLenP6srpmjeWqGbHFtj8CXwRdOguXg4Peztd2iI0rT6WscH62M1GFV0v98RK1hBQSF2HO+aAAIINHACs8zIzl0iiCCSATKD3QDRJUatWRzdjwAAAABJRU5ErkJggg==' height='16.0'/>
|
||||||
|
<text x='22.0' y='16.0' font-size='12' fill='rgb(105, 105, 105)'></text>
|
||||||
|
<text text-anchor='start' x='24.0' y='16.0' font-size='13' font-style='normal' fill='rgb(0, 0, 0)'>getArraySettings(): HashMap<String,Object></text>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
<g transform='translate(508.0,409.0)' id='_hkImULgaEDm32IpGZr-LtA'>
|
||||||
|
<rect rx='3.0' ry='3.0' x='0.0' width='464.0px' y='0.0' stroke-width='1.0' fill='url(#21cc2823-92d5-4ff0-85b8-8eb3d15ebebc)' stroke='rgb(187, 187, 187)' look='allInOne' height='407.0px'/>
|
||||||
|
<text font-weight='bold' text-anchor='middle' x='232.0' y='19.0' font-size='13' font-style='normal' fill='rgb(3, 54, 86)'>Settings</text>
|
||||||
|
<line y1='26.0' x1='0.0' y2='26.0' x2='464.0' stroke-width='1.0' stroke='rgb(187, 187, 187)' look='border'/>
|
||||||
|
<g transform='translate(0.0,26.0)' id='_vmJ6ILgbEDm32IpGZr-LtA'>
|
||||||
|
<image x='4.0' width='16.0' y='5.0' xlink:href='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAIGNIUk0AAG8dAAB6pAAA9NYAAIZwAAB37gAA9bAAADqjAAAVsi1zQqwAAAMAUExURQAAAP///8gdLP3+/zt4ripvqCtuqCtvqDF0qzJzqzp5rzp4rjp5rkN/skOAskR/sk2Ftk2GtlWMulaMulaNulaMuV6Svl6RvV6SvV+SvWWWwGWXwGqawvr9/+35//b8//L7/+T3/+H3/+T4/+j5/+z6/+36/+P4/+f5//L8//b9/8lHPvV8fP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALr1MDoAAAAudFJOU////////////////////////////////////////////////////////////wCCj3NVAAAAjklEQVR42lyPsQ6CYAyEv/4WcGFwM8bZwej7vwiR3U0ddDIG/rYOYBBuuXx3Q69yZq60YJTnP25Q/DbxFpS86wkhBIoMitWPeuhfVQ8Je/e4V155iIFihVNGLs2tcFBsZXcAPuswULzfdwnwpNlAiWsKkA6ABuUwnGiOy+mtiIi0Os28jL/8FMyD0+jfAQAK/zLXcxrOkQAAAABJRU5ErkJggg==' height='16.0'/>
|
||||||
|
<text text-anchor='start' x='22.0' y='16.0' font-size='13' fill='rgb(0, 0, 0)'>width: Integer</text>
|
||||||
|
</g>
|
||||||
|
<g transform='translate(0.0,46.0)' id='_wNME8bgbEDm32IpGZr-LtA'>
|
||||||
|
<image x='4.0' width='16.0' y='5.0' xlink:href='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAIGNIUk0AAG8dAAB6pAAA9NYAAIZwAAB37gAA9bAAADqjAAAVsi1zQqwAAAMAUExURQAAAP///8gdLP3+/zt4ripvqCtuqCtvqDF0qzJzqzp5rzp4rjp5rkN/skOAskR/sk2Ftk2GtlWMulaMulaNulaMuV6Svl6RvV6SvV+SvWWWwGWXwGqawvr9/+35//b8//L7/+T3/+H3/+T4/+j5/+z6/+36/+P4/+f5//L8//b9/8lHPvV8fP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALr1MDoAAAAudFJOU////////////////////////////////////////////////////////////wCCj3NVAAAAjklEQVR42lyPsQ6CYAyEv/4WcGFwM8bZwej7vwiR3U0ddDIG/rYOYBBuuXx3Q69yZq60YJTnP25Q/DbxFpS86wkhBIoMitWPeuhfVQ8Je/e4V155iIFihVNGLs2tcFBsZXcAPuswULzfdwnwpNlAiWsKkA6ABuUwnGiOy+mtiIi0Os28jL/8FMyD0+jfAQAK/zLXcxrOkQAAAABJRU5ErkJggg==' height='16.0'/>
|
||||||
|
<text text-anchor='start' x='22.0' y='16.0' font-size='13' fill='rgb(0, 0, 0)'>height: Integer</text>
|
||||||
|
</g>
|
||||||
|
<g transform='translate(0.0,66.0)' id='_wWX2IbgbEDm32IpGZr-LtA'>
|
||||||
|
<image x='4.0' width='16.0' y='5.0' xlink:href='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAIGNIUk0AAG8dAAB6pAAA9NYAAIZwAAB37gAA9bAAADqjAAAVsi1zQqwAAAMAUExURQAAAP///8gdLP3+/zt4ripvqCtuqCtvqDF0qzJzqzp5rzp4rjp5rkN/skOAskR/sk2Ftk2GtlWMulaMulaNulaMuV6Svl6RvV6SvV+SvWWWwGWXwGqawvr9/+35//b8//L7/+T3/+H3/+T4/+j5/+z6/+36/+P4/+f5//L8//b9/8lHPvV8fP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALr1MDoAAAAudFJOU////////////////////////////////////////////////////////////wCCj3NVAAAAjklEQVR42lyPsQ6CYAyEv/4WcGFwM8bZwej7vwiR3U0ddDIG/rYOYBBuuXx3Q69yZq60YJTnP25Q/DbxFpS86wkhBIoMitWPeuhfVQ8Je/e4V155iIFihVNGLs2tcFBsZXcAPuswULzfdwnwpNlAiWsKkA6ABuUwnGiOy+mtiIi0Os28jL/8FMyD0+jfAQAK/zLXcxrOkQAAAABJRU5ErkJggg==' height='16.0'/>
|
||||||
|
<text text-anchor='start' x='22.0' y='16.0' font-size='13' fill='rgb(0, 0, 0)'>rounds: Integer</text>
|
||||||
|
</g>
|
||||||
|
<g transform='translate(0.0,86.0)' id='_wlvH0bgbEDm32IpGZr-LtA'>
|
||||||
|
<image x='4.0' width='16.0' y='5.0' xlink:href='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAIGNIUk0AAG8dAAB6pAAA9NYAAIZwAAB37gAA9bAAADqjAAAVsi1zQqwAAAMAUExURQAAAP///8gdLP3+/zt4ripvqCtuqCtvqDF0qzJzqzp5rzp4rjp5rkN/skOAskR/sk2Ftk2GtlWMulaMulaNulaMuV6Svl6RvV6SvV+SvWWWwGWXwGqawvr9/+35//b8//L7/+T3/+H3/+T4/+j5/+z6/+36/+P4/+f5//L8//b9/8lHPvV8fP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALr1MDoAAAAudFJOU////////////////////////////////////////////////////////////wCCj3NVAAAAjklEQVR42lyPsQ6CYAyEv/4WcGFwM8bZwej7vwiR3U0ddDIG/rYOYBBuuXx3Q69yZq60YJTnP25Q/DbxFpS86wkhBIoMitWPeuhfVQ8Je/e4V155iIFihVNGLs2tcFBsZXcAPuswULzfdwnwpNlAiWsKkA6ABuUwnGiOy+mtiIi0Os28jL/8FMyD0+jfAQAK/zLXcxrOkQAAAABJRU5ErkJggg==' height='16.0'/>
|
||||||
|
<text text-anchor='start' x='22.0' y='16.0' font-size='13' fill='rgb(0, 0, 0)'>fullscreen: Boolean</text>
|
||||||
|
</g>
|
||||||
|
<g transform='translate(0.0,106.0)' id='_wp09pLgbEDm32IpGZr-LtA'>
|
||||||
|
<image x='4.0' width='16.0' y='5.0' xlink:href='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAIGNIUk0AAG8dAAB6pAAA9NYAAIZwAAB37gAA9bAAADqjAAAVsi1zQqwAAAMAUExURQAAAP///8gdLP3+/zt4ripvqCtuqCtvqDF0qzJzqzp5rzp4rjp5rkN/skOAskR/sk2Ftk2GtlWMulaMulaNulaMuV6Svl6RvV6SvV+SvWWWwGWXwGqawvr9/+35//b8//L7/+T3/+H3/+T4/+j5/+z6/+36/+P4/+f5//L8//b9/8lHPvV8fP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALr1MDoAAAAudFJOU////////////////////////////////////////////////////////////wCCj3NVAAAAjklEQVR42lyPsQ6CYAyEv/4WcGFwM8bZwej7vwiR3U0ddDIG/rYOYBBuuXx3Q69yZq60YJTnP25Q/DbxFpS86wkhBIoMitWPeuhfVQ8Je/e4V155iIFihVNGLs2tcFBsZXcAPuswULzfdwnwpNlAiWsKkA6ABuUwnGiOy+mtiIi0Os28jL/8FMyD0+jfAQAK/zLXcxrOkQAAAABJRU5ErkJggg==' height='16.0'/>
|
||||||
|
<text text-anchor='start' x='22.0' y='16.0' font-size='13' fill='rgb(0, 0, 0)'>hitboxes: Boolean</text>
|
||||||
|
</g>
|
||||||
|
<g transform='translate(0.0,126.0)' id='_wugpVrgbEDm32IpGZr-LtA'>
|
||||||
|
<image x='4.0' width='16.0' y='5.0' xlink:href='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAIGNIUk0AAG8dAAB6pAAA9NYAAIZwAAB37gAA9bAAADqjAAAVsi1zQqwAAAMAUExURQAAAP///8gdLP3+/zt4ripvqCtuqCtvqDF0qzJzqzp5rzp4rjp5rkN/skOAskR/sk2Ftk2GtlWMulaMulaNulaMuV6Svl6RvV6SvV+SvWWWwGWXwGqawvr9/+35//b8//L7/+T3/+H3/+T4/+j5/+z6/+36/+P4/+f5//L8//b9/8lHPvV8fP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALr1MDoAAAAudFJOU////////////////////////////////////////////////////////////wCCj3NVAAAAjklEQVR42lyPsQ6CYAyEv/4WcGFwM8bZwej7vwiR3U0ddDIG/rYOYBBuuXx3Q69yZq60YJTnP25Q/DbxFpS86wkhBIoMitWPeuhfVQ8Je/e4V155iIFihVNGLs2tcFBsZXcAPuswULzfdwnwpNlAiWsKkA6ABuUwnGiOy+mtiIi0Os28jL/8FMyD0+jfAQAK/zLXcxrOkQAAAABJRU5ErkJggg==' height='16.0'/>
|
||||||
|
<text text-anchor='start' x='22.0' y='16.0' font-size='13' fill='rgb(0, 0, 0)'>stage: String</text>
|
||||||
|
</g>
|
||||||
|
<g transform='translate(0.0,146.0)' id='_wyejV7gbEDm32IpGZr-LtA'>
|
||||||
|
<image x='4.0' width='16.0' y='5.0' xlink:href='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAIGNIUk0AAG8dAAB6pAAA9NYAAIZwAAB37gAA9bAAADqjAAAVsi1zQqwAAAMAUExURQAAAP///8gdLP3+/zt4ripvqCtuqCtvqDF0qzJzqzp5rzp4rjp5rkN/skOAskR/sk2Ftk2GtlWMulaMulaNulaMuV6Svl6RvV6SvV+SvWWWwGWXwGqawvr9/+35//b8//L7/+T3/+H3/+T4/+j5/+z6/+36/+P4/+f5//L8//b9/8lHPvV8fP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALr1MDoAAAAudFJOU////////////////////////////////////////////////////////////wCCj3NVAAAAjklEQVR42lyPsQ6CYAyEv/4WcGFwM8bZwej7vwiR3U0ddDIG/rYOYBBuuXx3Q69yZq60YJTnP25Q/DbxFpS86wkhBIoMitWPeuhfVQ8Je/e4V155iIFihVNGLs2tcFBsZXcAPuswULzfdwnwpNlAiWsKkA6ABuUwnGiOy+mtiIi0Os28jL/8FMyD0+jfAQAK/zLXcxrOkQAAAABJRU5ErkJggg==' height='16.0'/>
|
||||||
|
<text text-anchor='start' x='22.0' y='16.0' font-size='13' fill='rgb(0, 0, 0)'>p1: String</text>
|
||||||
|
</g>
|
||||||
|
<g transform='translate(0.0,166.0)' id='_w2kZIbgbEDm32IpGZr-LtA'>
|
||||||
|
<image x='4.0' width='16.0' y='5.0' xlink:href='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAIGNIUk0AAG8dAAB6pAAA9NYAAIZwAAB37gAA9bAAADqjAAAVsi1zQqwAAAMAUExURQAAAP///8gdLP3+/zt4ripvqCtuqCtvqDF0qzJzqzp5rzp4rjp5rkN/skOAskR/sk2Ftk2GtlWMulaMulaNulaMuV6Svl6RvV6SvV+SvWWWwGWXwGqawvr9/+35//b8//L7/+T3/+H3/+T4/+j5/+z6/+36/+P4/+f5//L8//b9/8lHPvV8fP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALr1MDoAAAAudFJOU////////////////////////////////////////////////////////////wCCj3NVAAAAjklEQVR42lyPsQ6CYAyEv/4WcGFwM8bZwej7vwiR3U0ddDIG/rYOYBBuuXx3Q69yZq60YJTnP25Q/DbxFpS86wkhBIoMitWPeuhfVQ8Je/e4V155iIFihVNGLs2tcFBsZXcAPuswULzfdwnwpNlAiWsKkA6ABuUwnGiOy+mtiIi0Os28jL/8FMyD0+jfAQAK/zLXcxrOkQAAAABJRU5ErkJggg==' height='16.0'/>
|
||||||
|
<text text-anchor='start' x='22.0' y='16.0' font-size='13' fill='rgb(0, 0, 0)'>p2: String</text>
|
||||||
|
</g>
|
||||||
|
<line y1='190.0' x1='0.0' y2='190.0' x2='464.0' stroke-width='1.0' stroke='rgb(187, 187, 187)' look='border'/>
|
||||||
|
<g transform='translate(0.0,190.0)' id='_Nt9bMbgcEDm32IpGZr-LtA'>
|
||||||
|
<image x='4.0' width='16.0' y='5.0' xlink:href='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAIGNIUk0AAG8dAAB6pAAA9NYAAIZwAAB37gAA9bAAADqjAAAVsi1zQqwAAAMAUExURQAAAP///8HBw6Ky1rfD3Ymh0au73Ku62aq72bPB27fD2b7J3Yahzomk0Z2z2Ki72bPD3L7J23eXyIajz7TE27PD2rTD2maPxbvK38PP32OMwIamz7PE2LXE10V/vkh/v0d/vEiAvUh+vFGEu1OEvGaEpqC40kaBvUWAukd/ukmBvGGQvmSGqWOEpZ+61QA9cwA7cQI7cAM8czZ0rT16sEF9s0J9tUSBuE6GuVGFt2OGpmSHp2OEo2WGpWSFpAA8cAA9cAA7bwA8bgA9bgA7bQI8bgI8bD18slCGtWKFo2OGpGSHpQA9bAA7aLONIu/Aaf///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOIeGg8AAABRdFJOU///////////////////////////////////////////////////////////////////////////////////////////////////////////AGjsqMEAAADRSURBVHjaVI9BSwJRGEXP93z0dGgGUlyEhIUigZsC/4C4HvC3zsZ1OzHQctGkYFEtxIKacTTHgp6LHKi7uXDgwL3S5X/Ub90vx3/A/JFK2CS+3YNJ+Tl+sU8fg9oQkC7rkTLJVr6OTMOD3DkHpcnnWc2J5MIFFDfLu3yrmKSdVT8KQVMdmI23GLenP6srpmjeWqGbHFtj8CXwRdOguXg4Peztd2iI0rT6WscH62M1GFV0v98RK1hBQSF2HO+aAAIINHACs8zIzl0iiCCSATKD3QDRJUatWRzdjwAAAABJRU5ErkJggg==' height='16.0'/>
|
||||||
|
<text x='22.0' y='16.0' font-size='12' fill='rgb(105, 105, 105)'></text>
|
||||||
|
<text text-anchor='start' x='24.0' y='16.0' font-size='13' font-style='normal' fill='rgb(0, 0, 0)'>parse(): void</text>
|
||||||
|
</g>
|
||||||
|
<g transform='translate(0.0,210.0)' id='_N7SFhLgcEDm32IpGZr-LtA'>
|
||||||
|
<image x='4.0' width='16.0' y='5.0' xlink:href='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAIGNIUk0AAG8dAAB6pAAA9NYAAIZwAAB37gAA9bAAADqjAAAVsi1zQqwAAAMAUExURQAAAP///8HBw6Ky1rfD3Ymh0au73Ku62aq72bPB27fD2b7J3Yahzomk0Z2z2Ki72bPD3L7J23eXyIajz7TE27PD2rTD2maPxbvK38PP32OMwIamz7PE2LXE10V/vkh/v0d/vEiAvUh+vFGEu1OEvGaEpqC40kaBvUWAukd/ukmBvGGQvmSGqWOEpZ+61QA9cwA7cQI7cAM8czZ0rT16sEF9s0J9tUSBuE6GuVGFt2OGpmSHp2OEo2WGpWSFpAA8cAA9cAA7bwA8bgA9bgA7bQI8bgI8bD18slCGtWKFo2OGpGSHpQA9bAA7aLONIu/Aaf///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOIeGg8AAABRdFJOU///////////////////////////////////////////////////////////////////////////////////////////////////////////AGjsqMEAAADRSURBVHjaVI9BSwJRGEXP93z0dGgGUlyEhIUigZsC/4C4HvC3zsZ1OzHQctGkYFEtxIKacTTHgp6LHKi7uXDgwL3S5X/Ub90vx3/A/JFK2CS+3YNJ+Tl+sU8fg9oQkC7rkTLJVr6OTMOD3DkHpcnnWc2J5MIFFDfLu3yrmKSdVT8KQVMdmI23GLenP6srpmjeWqGbHFtj8CXwRdOguXg4Peztd2iI0rT6WscH62M1GFV0v98RK1hBQSF2HO+aAAIINHACs8zIzl0iiCCSATKD3QDRJUatWRzdjwAAAABJRU5ErkJggg==' height='16.0'/>
|
||||||
|
<text x='22.0' y='16.0' font-size='12' fill='rgb(105, 105, 105)'></text>
|
||||||
|
<text text-anchor='start' x='24.0' y='16.0' font-size='13' font-style='normal' fill='rgb(0, 0, 0)'>setSettings(): void</text>
|
||||||
|
</g>
|
||||||
|
<g transform='translate(0.0,230.0)' id='_OJm1Y7gcEDm32IpGZr-LtA'>
|
||||||
|
<image x='4.0' width='16.0' y='5.0' xlink:href='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAIGNIUk0AAG8dAAB6pAAA9NYAAIZwAAB37gAA9bAAADqjAAAVsi1zQqwAAAMAUExURQAAAP///8gdLMHBw6Ky1rfD3Ymh0au73Ku62Yag0aq72bPB27fD2b7J3XmXyYWh0Ieiz4ahzomk0Z2z2Ki72bPD3L7J23eXyIajz7TE27PD2rTD2maPxbvK38PP32WQxWOMwGSMvYamz7PE2LXE10V/vkh/v0d/vEiAvUh+vFGEu1OEvGGPw2aEpqC40kaBvUWAukd/ukmBvGGQvmSGqWOEpZ+61QA9cwA8cgA7cQI7cAM8czZ0rT16sEF9s0J9tUWCu0SBuE6GuVGFt2OGpmSHp2OEo2WGpWSFpAA8cAA9cAA7bwA8bgA9bgA7bQI8bgI8bD18slCGtWKFo2OGpGSHpQA9bAA7aDR3rMlHPvV8fP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAF0EaqEAAABcdFJOU/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////8Ag20X4AAAANtJREFUeNpUj0tLAlEARs+9XppGpzHDu1AQJcHHZlZFuBDa9wci/6Cu/AmBEcJQLSxFRJCgBy3MGSd8QenCB3Y2B87q+0SF/8i12v7TXvjok2o5eI+b0NED73U5+G7kXEBU+HGl6U/EXJvFKIQcDnQryBWsoTyzAcmD/2yV4+PZlXc3egHJ6f0ksAM307V+b9Mg+SqpWJC8MIy/48sxhBxtxuRb+HD6rnXSBgWj2TT7ma8DTUCBIeNHiyHXu6VhLxKJJqgJIYSoKSANvROo7p87z7Jco7a3bzZeDQBYqUT6Rob/IQAAAABJRU5ErkJggg==' height='16.0'/>
|
||||||
|
<text x='22.0' y='16.0' font-size='12' fill='rgb(105, 105, 105)'></text>
|
||||||
|
<text text-anchor='start' x='24.0' y='16.0' font-size='13' font-style='normal' fill='rgb(0, 0, 0)'>write(): void</text>
|
||||||
|
</g>
|
||||||
|
<g transform='translate(0.0,250.0)' id='_OQWWkbgcEDm32IpGZr-LtA'>
|
||||||
|
<image x='4.0' width='16.0' y='5.0' xlink:href='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAIGNIUk0AAG8dAAB6pAAA9NYAAIZwAAB37gAA9bAAADqjAAAVsi1zQqwAAAMAUExURQAAAP///8HBw6Ky1rfD3Ymh0au73Ku62aq72bPB27fD2b7J3Yahzomk0Z2z2Ki72bPD3L7J23eXyIajz7TE27PD2rTD2maPxbvK38PP32OMwIamz7PE2LXE10V/vkh/v0d/vEiAvUh+vFGEu1OEvGaEpqC40kaBvUWAukd/ukmBvGGQvmSGqWOEpZ+61QA9cwA7cQI7cAM8czZ0rT16sEF9s0J9tUSBuE6GuVGFt2OGpmSHp2OEo2WGpWSFpAA8cAA9cAA7bwA8bgA9bgA7bQI8bgI8bD18slCGtWKFo2OGpGSHpQA9bAA7aLONIu/Aaf///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOIeGg8AAABRdFJOU///////////////////////////////////////////////////////////////////////////////////////////////////////////AGjsqMEAAADRSURBVHjaVI9BSwJRGEXP93z0dGgGUlyEhIUigZsC/4C4HvC3zsZ1OzHQctGkYFEtxIKacTTHgp6LHKi7uXDgwL3S5X/Ub90vx3/A/JFK2CS+3YNJ+Tl+sU8fg9oQkC7rkTLJVr6OTMOD3DkHpcnnWc2J5MIFFDfLu3yrmKSdVT8KQVMdmI23GLenP6srpmjeWqGbHFtj8CXwRdOguXg4Peztd2iI0rT6WscH62M1GFV0v98RK1hBQSF2HO+aAAIINHACs8zIzl0iiCCSATKD3QDRJUatWRzdjwAAAABJRU5ErkJggg==' height='16.0'/>
|
||||||
|
<text x='22.0' y='16.0' font-size='12' fill='rgb(105, 105, 105)'></text>
|
||||||
|
<text text-anchor='start' x='24.0' y='16.0' font-size='13' font-style='normal' fill='rgb(0, 0, 0)'>write(Integer, Integer, Integer, Boolean, Boolean, String, String, String): void</text>
|
||||||
|
</g>
|
||||||
|
<g transform='translate(0.0,270.0)' id='_on88dLgcEDm32IpGZr-LtA'>
|
||||||
|
<image x='4.0' width='16.0' y='5.0' xlink:href='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAIGNIUk0AAG8dAAB6pAAA9NYAAIZwAAB37gAA9bAAADqjAAAVsi1zQqwAAAMAUExURQAAAP///8HBw6Ky1rfD3Ymh0au73Ku62Yag0aq72bPB27fD2b7J3YWh0Ieiz4ahzomk0Z2z2Ki72bPD3L7J23eXyIajz7TE27PD2rTD2maPxbvK38PP32OMwGSMvYamz7PE2LXE10V/vkh/v0d/vEiAvUh+vFGEu1OEvGaEpqC40kaBvUWAukd/ukmBvGGQvmSGqWOEpZ+61QA9cwA8cgA7cQI7cAM8czZ0rT16sEF9s0J9tUSBuE6GuVGFt2OGpmSHp2OEo2WGpWSFpAA8cAA9cAA7bwA8bgA9bgA7bQI8bgI8bD18slCGtWKFo2OGpGSHpQA9bAA7aDR3rAWBSUOcbHGxdf///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADH1d5AAAABYdFJOU////////////////////////////////////////////////////////////////////////////////////////////////////////////////////wB4m8IIAAAA2UlEQVR42lSPzUoCURhAz/0cUrhjTYzuIu0PicZFy57ABxjQdxR8iQQJYmrTDYJZNEZQC2fGHPIndVyUkGdz4OyO6rCL/Mqkj//Ce8iR8Uge/sJzNUqG+etocH4PqA6TQEpfUzWvlBoOFDyKrsnOLnQi1weAEKRG37iTWWs8iJ9AqN9Ns/0sqL3oVf8YCl7UGO05lbKTDRer0FxZXNL8CE/tNMaHHgLx9+zkU9++gUDXgqK45Z8YH8DHAh3Z9tIGAWFtATUID2GNykFtb7vgq7y3vYV2G3JgMwDzTEnCPC8r9AAAAABJRU5ErkJggg==' height='16.0'/>
|
||||||
|
<text x='22.0' y='16.0' font-size='12' fill='rgb(105, 105, 105)'></text>
|
||||||
|
<text text-anchor='start' x='24.0' y='16.0' font-size='13' font-style='normal' fill='rgb(0, 0, 0)'>getResolution(): String</text>
|
||||||
|
</g>
|
||||||
|
<g transform='translate(0.0,290.0)' id='_ornUdbgcEDm32IpGZr-LtA'>
|
||||||
|
<image x='4.0' width='16.0' y='5.0' xlink:href='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAIGNIUk0AAG8dAAB6pAAA9NYAAIZwAAB37gAA9bAAADqjAAAVsi1zQqwAAAMAUExURQAAAP///8HBw6Ky1rfD3Ymh0au73Ku62Yag0aq72bPB27fD2b7J3YWh0Ieiz4ahzomk0Z2z2Ki72bPD3L7J23eXyIajz7TE27PD2rTD2maPxbvK38PP32OMwGSMvYamz7PE2LXE10V/vkh/v0d/vEiAvUh+vFGEu1OEvGaEpqC40kaBvUWAukd/ukmBvGGQvmSGqWOEpZ+61QA9cwA8cgA7cQI7cAM8czZ0rT16sEF9s0J9tUSBuE6GuVGFt2OGpmSHp2OEo2WGpWSFpAA8cAA9cAA7bwA8bgA9bgA7bQI8bgI8bD18slCGtWKFo2OGpGSHpQA9bAA7aDR3rAWBSUOcbHGxdf///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADH1d5AAAABYdFJOU////////////////////////////////////////////////////////////////////////////////////////////////////////////////////wB4m8IIAAAA2UlEQVR42lSPzUoCURhAz/0cUrhjTYzuIu0PicZFy57ABxjQdxR8iQQJYmrTDYJZNEZQC2fGHPIndVyUkGdz4OyO6rCL/Mqkj//Ce8iR8Uge/sJzNUqG+etocH4PqA6TQEpfUzWvlBoOFDyKrsnOLnQi1weAEKRG37iTWWs8iJ9AqN9Ns/0sqL3oVf8YCl7UGO05lbKTDRer0FxZXNL8CE/tNMaHHgLx9+zkU9++gUDXgqK45Z8YH8DHAh3Z9tIGAWFtATUID2GNykFtb7vgq7y3vYV2G3JgMwDzTEnCPC8r9AAAAABJRU5ErkJggg==' height='16.0'/>
|
||||||
|
<text x='22.0' y='16.0' font-size='12' fill='rgb(105, 105, 105)'></text>
|
||||||
|
<text text-anchor='start' x='24.0' y='16.0' font-size='13' font-style='normal' fill='rgb(0, 0, 0)'>getFullscreen(): Boolean</text>
|
||||||
|
</g>
|
||||||
|
<g transform='translate(0.0,310.0)' id='_owTAIrgcEDm32IpGZr-LtA'>
|
||||||
|
<image x='4.0' width='16.0' y='5.0' xlink:href='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAIGNIUk0AAG8dAAB6pAAA9NYAAIZwAAB37gAA9bAAADqjAAAVsi1zQqwAAAMAUExURQAAAP///8HBw6Ky1rfD3Ymh0au73Ku62Yag0aq72bPB27fD2b7J3YWh0Ieiz4ahzomk0Z2z2Ki72bPD3L7J23eXyIajz7TE27PD2rTD2maPxbvK38PP32OMwGSMvYamz7PE2LXE10V/vkh/v0d/vEiAvUh+vFGEu1OEvGaEpqC40kaBvUWAukd/ukmBvGGQvmSGqWOEpZ+61QA9cwA8cgA7cQI7cAM8czZ0rT16sEF9s0J9tUSBuE6GuVGFt2OGpmSHp2OEo2WGpWSFpAA8cAA9cAA7bwA8bgA9bgA7bQI8bgI8bD18slCGtWKFo2OGpGSHpQA9bAA7aDR3rAWBSUOcbHGxdf///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADH1d5AAAABYdFJOU////////////////////////////////////////////////////////////////////////////////////////////////////////////////////wB4m8IIAAAA2UlEQVR42lSPzUoCURhAz/0cUrhjTYzuIu0PicZFy57ABxjQdxR8iQQJYmrTDYJZNEZQC2fGHPIndVyUkGdz4OyO6rCL/Mqkj//Ce8iR8Uge/sJzNUqG+etocH4PqA6TQEpfUzWvlBoOFDyKrsnOLnQi1weAEKRG37iTWWs8iJ9AqN9Ns/0sqL3oVf8YCl7UGO05lbKTDRer0FxZXNL8CE/tNMaHHgLx9+zkU9++gUDXgqK45Z8YH8DHAh3Z9tIGAWFtATUID2GNykFtb7vgq7y3vYV2G3JgMwDzTEnCPC8r9AAAAABJRU5ErkJggg==' height='16.0'/>
|
||||||
|
<text x='22.0' y='16.0' font-size='12' fill='rgb(105, 105, 105)'></text>
|
||||||
|
<text text-anchor='start' x='24.0' y='16.0' font-size='13' font-style='normal' fill='rgb(0, 0, 0)'>getHitboxes(): Boolean</text>
|
||||||
|
</g>
|
||||||
|
<g transform='translate(0.0,330.0)' id='_o2Na4LgcEDm32IpGZr-LtA'>
|
||||||
|
<image x='4.0' width='16.0' y='5.0' xlink:href='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAIGNIUk0AAG8dAAB6pAAA9NYAAIZwAAB37gAA9bAAADqjAAAVsi1zQqwAAAMAUExURQAAAP///8HBw6Ky1rfD3Ymh0au73Ku62Yag0aq72bPB27fD2b7J3YWh0Ieiz4ahzomk0Z2z2Ki72bPD3L7J23eXyIajz7TE27PD2rTD2maPxbvK38PP32OMwGSMvYamz7PE2LXE10V/vkh/v0d/vEiAvUh+vFGEu1OEvGaEpqC40kaBvUWAukd/ukmBvGGQvmSGqWOEpZ+61QA9cwA8cgA7cQI7cAM8czZ0rT16sEF9s0J9tUSBuE6GuVGFt2OGpmSHp2OEo2WGpWSFpAA8cAA9cAA7bwA8bgA9bgA7bQI8bgI8bD18slCGtWKFo2OGpGSHpQA9bAA7aDR3rAWBSUOcbHGxdf///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADH1d5AAAABYdFJOU////////////////////////////////////////////////////////////////////////////////////////////////////////////////////wB4m8IIAAAA2UlEQVR42lSPzUoCURhAz/0cUrhjTYzuIu0PicZFy57ABxjQdxR8iQQJYmrTDYJZNEZQC2fGHPIndVyUkGdz4OyO6rCL/Mqkj//Ce8iR8Uge/sJzNUqG+etocH4PqA6TQEpfUzWvlBoOFDyKrsnOLnQi1weAEKRG37iTWWs8iJ9AqN9Ns/0sqL3oVf8YCl7UGO05lbKTDRer0FxZXNL8CE/tNMaHHgLx9+zkU9++gUDXgqK45Z8YH8DHAh3Z9tIGAWFtATUID2GNykFtb7vgq7y3vYV2G3JgMwDzTEnCPC8r9AAAAABJRU5ErkJggg==' height='16.0'/>
|
||||||
|
<text x='22.0' y='16.0' font-size='12' fill='rgb(105, 105, 105)'></text>
|
||||||
|
<text text-anchor='start' x='24.0' y='16.0' font-size='13' font-style='normal' fill='rgb(0, 0, 0)'>getRounds(): String</text>
|
||||||
|
</g>
|
||||||
|
<g transform='translate(0.0,350.0)' id='_o5Qu4bgcEDm32IpGZr-LtA'>
|
||||||
|
<image x='4.0' width='16.0' y='5.0' xlink:href='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAIGNIUk0AAG8dAAB6pAAA9NYAAIZwAAB37gAA9bAAADqjAAAVsi1zQqwAAAMAUExURQAAAP///8HBw6Ky1rfD3Ymh0au73Ku62Yag0aq72bPB27fD2b7J3YWh0Ieiz4ahzomk0Z2z2Ki72bPD3L7J23eXyIajz7TE27PD2rTD2maPxbvK38PP32OMwGSMvYamz7PE2LXE10V/vkh/v0d/vEiAvUh+vFGEu1OEvGaEpqC40kaBvUWAukd/ukmBvGGQvmSGqWOEpZ+61QA9cwA8cgA7cQI7cAM8czZ0rT16sEF9s0J9tUSBuE6GuVGFt2OGpmSHp2OEo2WGpWSFpAA8cAA9cAA7bwA8bgA9bgA7bQI8bgI8bD18slCGtWKFo2OGpGSHpQA9bAA7aDR3rAWBSUOcbHGxdf///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADH1d5AAAABYdFJOU////////////////////////////////////////////////////////////////////////////////////////////////////////////////////wB4m8IIAAAA2UlEQVR42lSPzUoCURhAz/0cUrhjTYzuIu0PicZFy57ABxjQdxR8iQQJYmrTDYJZNEZQC2fGHPIndVyUkGdz4OyO6rCL/Mqkj//Ce8iR8Uge/sJzNUqG+etocH4PqA6TQEpfUzWvlBoOFDyKrsnOLnQi1weAEKRG37iTWWs8iJ9AqN9Ns/0sqL3oVf8YCl7UGO05lbKTDRer0FxZXNL8CE/tNMaHHgLx9+zkU9++gUDXgqK45Z8YH8DHAh3Z9tIGAWFtATUID2GNykFtb7vgq7y3vYV2G3JgMwDzTEnCPC8r9AAAAABJRU5ErkJggg==' height='16.0'/>
|
||||||
|
<text x='22.0' y='16.0' font-size='12' fill='rgb(105, 105, 105)'></text>
|
||||||
|
<text text-anchor='start' x='24.0' y='16.0' font-size='13' font-style='normal' fill='rgb(0, 0, 0)'>getChar1(): String</text>
|
||||||
|
</g>
|
||||||
|
<g transform='translate(0.0,370.0)' id='_o73-AbgcEDm32IpGZr-LtA'>
|
||||||
|
<image x='4.0' width='16.0' y='5.0' xlink:href='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAIGNIUk0AAG8dAAB6pAAA9NYAAIZwAAB37gAA9bAAADqjAAAVsi1zQqwAAAMAUExURQAAAP///8HBw6Ky1rfD3Ymh0au73Ku62Yag0aq72bPB27fD2b7J3YWh0Ieiz4ahzomk0Z2z2Ki72bPD3L7J23eXyIajz7TE27PD2rTD2maPxbvK38PP32OMwGSMvYamz7PE2LXE10V/vkh/v0d/vEiAvUh+vFGEu1OEvGaEpqC40kaBvUWAukd/ukmBvGGQvmSGqWOEpZ+61QA9cwA8cgA7cQI7cAM8czZ0rT16sEF9s0J9tUSBuE6GuVGFt2OGpmSHp2OEo2WGpWSFpAA8cAA9cAA7bwA8bgA9bgA7bQI8bgI8bD18slCGtWKFo2OGpGSHpQA9bAA7aDR3rAWBSUOcbHGxdf///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADH1d5AAAABYdFJOU////////////////////////////////////////////////////////////////////////////////////////////////////////////////////wB4m8IIAAAA2UlEQVR42lSPzUoCURhAz/0cUrhjTYzuIu0PicZFy57ABxjQdxR8iQQJYmrTDYJZNEZQC2fGHPIndVyUkGdz4OyO6rCL/Mqkj//Ce8iR8Uge/sJzNUqG+etocH4PqA6TQEpfUzWvlBoOFDyKrsnOLnQi1weAEKRG37iTWWs8iJ9AqN9Ns/0sqL3oVf8YCl7UGO05lbKTDRer0FxZXNL8CE/tNMaHHgLx9+zkU9++gUDXgqK45Z8YH8DHAh3Z9tIGAWFtATUID2GNykFtb7vgq7y3vYV2G3JgMwDzTEnCPC8r9AAAAABJRU5ErkJggg==' height='16.0'/>
|
||||||
|
<text x='22.0' y='16.0' font-size='12' fill='rgb(105, 105, 105)'></text>
|
||||||
|
<text text-anchor='start' x='24.0' y='16.0' font-size='13' font-style='normal' fill='rgb(0, 0, 0)'>getChar2(): String</text>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
<text text-anchor='middle' x='474.0' y='550.0' fill='rgb(0, 0, 0)'>+settings</text>
|
||||||
|
<text text-anchor='middle' x='488.0' y='580.0' fill='rgb(0, 0, 0)'>1</text>
|
||||||
|
<g transform='translate(397.0,575.0)' id='_9LlqgLgaEDm32IpGZr-LtA'/>
|
||||||
|
<g transform='translate(62.0,36.0)' id='_-ZadorgcEDm32IpGZr-LtA'>
|
||||||
|
<rect x='0.0' width='82.0px' y='0.0' stroke-width='1.0' fill='url(#0c84d8fe-2609-49d4-98d5-e654c986184d)' stroke='rgb(194, 183, 159)' look='allInOne' height='24.0px'/>
|
||||||
|
<rect x='0.0' width='160.0px' y='24.0' stroke-width='1.0' fill='url(#0c84d8fe-2609-49d4-98d5-e654c986184d)' stroke='rgb(194, 183, 159)' look='allInOne' height='136.0px'/>
|
||||||
|
<text font-weight='bold' text-anchor='middle' x='41.0' y='18.0' font-size='13' fill='rgb(128, 98, 33)'>application</text>
|
||||||
|
</g>
|
||||||
|
<g transform='translate(265.0,41.0)' id='_DZMKUbgdEDm32IpGZr-LtA'>
|
||||||
|
<rect x='0.0' width='25.0px' y='0.0' stroke-width='1.0' fill='url(#336857b3-5a78-482b-8a61-0a5eab3024c9)' stroke='rgb(194, 183, 159)' look='allInOne' height='24.0px'/>
|
||||||
|
<rect x='0.0' width='830.0px' y='24.0' stroke-width='1.0' fill='url(#336857b3-5a78-482b-8a61-0a5eab3024c9)' stroke='rgb(194, 183, 159)' look='allInOne' height='126.0px'/>
|
||||||
|
<text font-weight='bold' text-anchor='middle' x='12.5' y='18.0' font-size='13' fill='rgb(128, 98, 33)'>*</text>
|
||||||
|
</g>
|
||||||
|
<g transform='translate(96.0,97.0)' id='_YOEO0LgaEDm32IpGZr-LtA'>
|
||||||
|
<rect rx='3.0' ry='3.0' x='0.0' width='93.0px' y='0.0' stroke-width='1.0' fill='url(#bba14698-32fa-4b4a-bfce-000a72f8f558)' stroke='rgb(187, 187, 187)' look='allInOne' height='80.0px'/>
|
||||||
|
<text font-weight='bold' text-anchor='middle' x='46.5' y='19.0' font-size='13' font-style='normal' fill='rgb(3, 54, 86)'>Application</text>
|
||||||
|
<line y1='26.0' x1='0.0' y2='26.0' x2='93.0' stroke-width='1.0' stroke='rgb(187, 187, 187)' look='border'/>
|
||||||
|
<g transform='translate(0.0,26.0)' id='_EKwcErgbEDm32IpGZr-LtA'>
|
||||||
|
<image x='4.0' width='16.0' y='5.0' xlink:href='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAIGNIUk0AAG8dAAB6pAAA9NYAAIZwAAB37gAA9bAAADqjAAAVsi1zQqwAAAMAUExURQAAAP///8HBw6Ky1rfD3Ymh0au73Ku62Yag0aq72bPB27fD2b7J3YWh0Ieiz4ahzomk0Z2z2Ki72bPD3L7J23eXyIajz7TE27PD2rTD2maPxbvK38PP32OMwGSMvYamz7PE2LXE10V/vkh/v0d/vEiAvUh+vFGEu1OEvGaEpqC40kaBvUWAukd/ukmBvGGQvmSGqWOEpZ+61QA9cwA8cgA7cQI7cAM8czZ0rT16sEF9s0J9tUSBuE6GuVGFt2OGpmSHp2OEo2WGpWSFpAA8cAA9cAA7bwA8bgA9bgA7bQI8bgI8bD18slCGtWKFo2OGpGSHpQA9bAA7aDR3rAWBSUOcbHGxdf///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADH1d5AAAABYdFJOU////////////////////////////////////////////////////////////////////////////////////////////////////////////////////wB4m8IIAAAA2UlEQVR42lSPzUoCURhAz/0cUrhjTYzuIu0PicZFy57ABxjQdxR8iQQJYmrTDYJZNEZQC2fGHPIndVyUkGdz4OyO6rCL/Mqkj//Ce8iR8Uge/sJzNUqG+etocH4PqA6TQEpfUzWvlBoOFDyKrsnOLnQi1weAEKRG37iTWWs8iJ9AqN9Ns/0sqL3oVf8YCl7UGO05lbKTDRer0FxZXNL8CE/tNMaHHgLx9+zkU9++gUDXgqK45Z8YH8DHAh3Z9tIGAWFtATUID2GNykFtb7vgq7y3vYV2G3JgMwDzTEnCPC8r9AAAAABJRU5ErkJggg==' height='16.0'/>
|
||||||
|
<text x='22.0' y='16.0' font-size='12' fill='rgb(105, 105, 105)'></text>
|
||||||
|
<text text-anchor='start' x='24.0' y='16.0' font-size='13' font-style='normal' fill='rgb(0, 0, 0)'>start(): void</text>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
<g id='_cBCKIbgaEDm32IpGZr-LtA'>
|
||||||
|
<line y1='409.0' x1='145.0' y2='293.0' x2='145.0' id='_cBD_ULgaEDm32IpGZr-LtA' stroke-width='1.0' fill='none' stroke='rgb(0, 0, 0)'/>
|
||||||
|
</g>
|
||||||
|
<g id='_cBCKIbgaEDm32IpGZr-LtA'>
|
||||||
|
<line y1='293.0' x1='145.0' y2='293.0' x2='145.0' id='_cBD_U7gaEDm32IpGZr-LtA' stroke-width='1.0' fill='none' stroke='rgb(0, 0, 0)'/>
|
||||||
|
</g>
|
||||||
|
<g id='_cBCKIbgaEDm32IpGZr-LtA'>
|
||||||
|
<line y1='293.0' x1='145.0' y2='177.0' x2='145.0' id='_cBD_VLgaEDm32IpGZr-LtA' stroke-width='1.0' fill='none' stroke='rgb(0, 0, 0)'/>
|
||||||
|
<polygon transform='translate(145.0,177.0) rotate(-0.0)' stroke-width='1.0' fill='rgb(255, 255, 255)' stroke='rgb(0, 0, 0)' points='-6.0,10.0 0.0,0.0 6.0,10.0'/>
|
||||||
|
</g>
|
||||||
|
<g id='_9LdHorgaEDm32IpGZr-LtA'>
|
||||||
|
<line y1='560.0' x1='387.0' y2='560.0' x2='447.0' id='_9LeVwrgaEDm32IpGZr-LtA' stroke-width='1.0' fill='none' stroke='rgb(0, 0, 0)'/>
|
||||||
|
</g>
|
||||||
|
<g id='_9LdHorgaEDm32IpGZr-LtA'>
|
||||||
|
<line y1='560.0' x1='447.0' y2='560.0' x2='448.0' id='_9LeVxbgaEDm32IpGZr-LtA' stroke-width='1.0' fill='none' stroke='rgb(0, 0, 0)'/>
|
||||||
|
</g>
|
||||||
|
<g id='_9LdHorgaEDm32IpGZr-LtA'>
|
||||||
|
<line y1='560.0' x1='448.0' y2='560.0' x2='508.0' id='_9LeVxrgaEDm32IpGZr-LtA' stroke-width='1.0' fill='none' stroke='rgb(0, 0, 0)'/>
|
||||||
|
<polyline transform='translate(508.0,560.0) rotate(90.0)' stroke-width='1.0' fill='none' stroke='rgb(0, 0, 0)' points='-5.0,10.0 0.0,0.0 5.0,10.0'/>
|
||||||
|
</g>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 68 KiB |
BIN
docs/launcher/launcher_screenshot.png
Normal file
BIN
docs/launcher/launcher_screenshot.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 14 KiB |
4
pom.xml
4
pom.xml
@ -5,8 +5,8 @@
|
|||||||
<modelVersion>4.0.0</modelVersion>
|
<modelVersion>4.0.0</modelVersion>
|
||||||
|
|
||||||
<groupId>jeu-de-combat</groupId>
|
<groupId>jeu-de-combat</groupId>
|
||||||
<artifactId>jeu-de-combat</artifactId>
|
<artifactId>boulevard-combattant</artifactId>
|
||||||
<version>0.0.1-SNAPSHOT</version>
|
<version>1.0</version>
|
||||||
<name>Boulevard Combattant</name>
|
<name>Boulevard Combattant</name>
|
||||||
<description>Jeu de combat inspiré de Street Fighter 3: Third Strike.
|
<description>Jeu de combat inspiré de Street Fighter 3: Third Strike.
|
||||||
Projet de fin d'année de L3.
|
Projet de fin d'année de L3.
|
||||||
|
BIN
release/boulevard-combattant-1.0-windows.jar
Normal file
BIN
release/boulevard-combattant-1.0-windows.jar
Normal file
Binary file not shown.
BIN
release/boulevard-combattant-linux-1.0-linux.jar
Normal file
BIN
release/boulevard-combattant-linux-1.0-linux.jar
Normal file
Binary file not shown.
@ -29,6 +29,10 @@ public class KeyboardInput extends GLFWKeyCallback {
|
|||||||
match.showP1Hitbox = !match.showP1Hitbox;
|
match.showP1Hitbox = !match.showP1Hitbox;
|
||||||
match.showP2Hitbox = !match.showP2Hitbox;
|
match.showP2Hitbox = !match.showP2Hitbox;
|
||||||
}
|
}
|
||||||
|
else if(key == GLFW_KEY_D && action == GLFW_PRESS)
|
||||||
|
match.debugToggle();
|
||||||
|
else if(key == GLFW_KEY_I && action == GLFW_PRESS)
|
||||||
|
match.inputP1Toggle();
|
||||||
}
|
}
|
||||||
|
|
||||||
public static boolean isKeyDown(int keyCode) {
|
public static boolean isKeyDown(int keyCode) {
|
||||||
|
@ -135,7 +135,7 @@ public class BlueBaseFrames {
|
|||||||
private static Frame generateNeutralJumpFrame1(){
|
private static Frame generateNeutralJumpFrame1(){
|
||||||
//movement data
|
//movement data
|
||||||
double moveX = 0.0;
|
double moveX = 0.0;
|
||||||
double moveY = 18.0;
|
double moveY = 36.0;
|
||||||
|
|
||||||
//cancelData
|
//cancelData
|
||||||
boolean normalC = true;
|
boolean normalC = true;
|
||||||
@ -173,7 +173,7 @@ public class BlueBaseFrames {
|
|||||||
private static Frame generateNeutralJumpFrame2(){
|
private static Frame generateNeutralJumpFrame2(){
|
||||||
//movement data
|
//movement data
|
||||||
double moveX = 0.0;
|
double moveX = 0.0;
|
||||||
double moveY = -18.0;
|
double moveY = -36.0;
|
||||||
|
|
||||||
//cancelData
|
//cancelData
|
||||||
boolean normalC = true;
|
boolean normalC = true;
|
||||||
@ -221,8 +221,8 @@ public class BlueBaseFrames {
|
|||||||
|
|
||||||
private static Frame GenerateForwardJumpFrame1(){
|
private static Frame GenerateForwardJumpFrame1(){
|
||||||
//movement data
|
//movement data
|
||||||
double moveX = 10.0;
|
double moveX = 20.0;
|
||||||
double moveY = 18.0;
|
double moveY = 36.0;
|
||||||
|
|
||||||
//cancelData
|
//cancelData
|
||||||
boolean normalC = true;
|
boolean normalC = true;
|
||||||
@ -259,8 +259,8 @@ public class BlueBaseFrames {
|
|||||||
|
|
||||||
private static Frame GenerateForwardJumpFrame2(){
|
private static Frame GenerateForwardJumpFrame2(){
|
||||||
//movement data
|
//movement data
|
||||||
double moveX = 10.0;
|
double moveX = 20.0;
|
||||||
double moveY = 9.0;
|
double moveY = 18.0;
|
||||||
|
|
||||||
//cancelData
|
//cancelData
|
||||||
boolean normalC = true;
|
boolean normalC = true;
|
||||||
@ -297,8 +297,8 @@ public class BlueBaseFrames {
|
|||||||
|
|
||||||
private static Frame GenerateForwardJumpFrame3(){
|
private static Frame GenerateForwardJumpFrame3(){
|
||||||
//movement data
|
//movement data
|
||||||
double moveX = 10.0;
|
double moveX = 20.0;
|
||||||
double moveY = -9.0;
|
double moveY = -18.0;
|
||||||
|
|
||||||
//cancelData
|
//cancelData
|
||||||
boolean normalC = true;
|
boolean normalC = true;
|
||||||
@ -335,8 +335,8 @@ public class BlueBaseFrames {
|
|||||||
|
|
||||||
private static Frame GenerateForwardJumpFrame4(){
|
private static Frame GenerateForwardJumpFrame4(){
|
||||||
//movement data
|
//movement data
|
||||||
double moveX = 10.0;
|
double moveX = 20.0;
|
||||||
double moveY = -18.0;
|
double moveY = -36.0;
|
||||||
|
|
||||||
//cancelData
|
//cancelData
|
||||||
boolean normalC = true;
|
boolean normalC = true;
|
||||||
@ -390,8 +390,8 @@ public class BlueBaseFrames {
|
|||||||
|
|
||||||
private static Frame BackJumpFrame1(){
|
private static Frame BackJumpFrame1(){
|
||||||
//movement data
|
//movement data
|
||||||
double moveX = -10.0;
|
double moveX = -20.0;
|
||||||
double moveY = 18.0;
|
double moveY = 36.0;
|
||||||
|
|
||||||
//cancelData
|
//cancelData
|
||||||
boolean normalC = true;
|
boolean normalC = true;
|
||||||
@ -428,8 +428,8 @@ public class BlueBaseFrames {
|
|||||||
|
|
||||||
private static Frame BackJumpFrame2(){
|
private static Frame BackJumpFrame2(){
|
||||||
//movement data
|
//movement data
|
||||||
double moveX = -10.0;
|
double moveX = -20.0;
|
||||||
double moveY = 9.0;
|
double moveY = 18.0;
|
||||||
|
|
||||||
//cancelData
|
//cancelData
|
||||||
boolean normalC = true;
|
boolean normalC = true;
|
||||||
@ -466,8 +466,8 @@ public class BlueBaseFrames {
|
|||||||
|
|
||||||
private static Frame BackJumpFrame3(){
|
private static Frame BackJumpFrame3(){
|
||||||
//movement data
|
//movement data
|
||||||
double moveX = -10.0;
|
double moveX = -20.0;
|
||||||
double moveY = -9.0;
|
double moveY = -18.0;
|
||||||
|
|
||||||
//cancelData
|
//cancelData
|
||||||
boolean normalC = true;
|
boolean normalC = true;
|
||||||
@ -504,8 +504,8 @@ public class BlueBaseFrames {
|
|||||||
|
|
||||||
private static Frame BackJumpFrame4(){
|
private static Frame BackJumpFrame4(){
|
||||||
//movement data
|
//movement data
|
||||||
double moveX = -10.0;
|
double moveX = -20.0;
|
||||||
double moveY = -18.0;
|
double moveY = -36.0;
|
||||||
|
|
||||||
//cancelData
|
//cancelData
|
||||||
boolean normalC = true;
|
boolean normalC = true;
|
||||||
|
@ -66,7 +66,7 @@ public class BlueMisc {
|
|||||||
/*
|
/*
|
||||||
frame creation
|
frame creation
|
||||||
*/
|
*/
|
||||||
Frame f = new Frame(0.0,12.0,phb,ahb,pthb,athb,pushB,
|
Frame f = new Frame(0.0,25.0,phb,ahb,pthb,athb,pushB,
|
||||||
//cancels (in order : normal, special, jump, move, dash)
|
//cancels (in order : normal, special, jump, move, dash)
|
||||||
false,false,false,false,false);
|
false,false,false,false,false);
|
||||||
f.setSpriteWrap(14*138,139,138,138);
|
f.setSpriteWrap(14*138,139,138,138);
|
||||||
@ -97,7 +97,7 @@ public class BlueMisc {
|
|||||||
/*
|
/*
|
||||||
frame creation
|
frame creation
|
||||||
*/
|
*/
|
||||||
Frame f = new Frame(0.0,6.0,phb,ahb,pthb,athb,pushB,
|
Frame f = new Frame(0.0,15.0,phb,ahb,pthb,athb,pushB,
|
||||||
//cancels (in order : normal, special, jump, move, dash)
|
//cancels (in order : normal, special, jump, move, dash)
|
||||||
false,false,true,false,false);
|
false,false,true,false,false);
|
||||||
f.setSpriteWrap(14*138,139,138,138);
|
f.setSpriteWrap(14*138,139,138,138);
|
||||||
@ -200,7 +200,7 @@ public class BlueMisc {
|
|||||||
/*
|
/*
|
||||||
frame creation
|
frame creation
|
||||||
*/
|
*/
|
||||||
Frame f = new Frame(0.0,-12.0,phb,ahb,pthb,athb,pushB,
|
Frame f = new Frame(0.0,-25.0,phb,ahb,pthb,athb,pushB,
|
||||||
//cancels (in order : normal, special, jump, move, dash)
|
//cancels (in order : normal, special, jump, move, dash)
|
||||||
false,false,false,false,false);
|
false,false,false,false,false);
|
||||||
f.setSpriteWrap(14*138,139,138,138);
|
f.setSpriteWrap(14*138,139,138,138);
|
||||||
@ -231,7 +231,7 @@ public class BlueMisc {
|
|||||||
/*
|
/*
|
||||||
frame creation
|
frame creation
|
||||||
*/
|
*/
|
||||||
Frame f = new Frame(0.0,-6.0,phb,ahb,pthb,athb,pushB,
|
Frame f = new Frame(0.0,-15.0,phb,ahb,pthb,athb,pushB,
|
||||||
//cancels (in order : normal, special, jump, move, dash)
|
//cancels (in order : normal, special, jump, move, dash)
|
||||||
false,false,false,false,false);
|
false,false,false,false,false);
|
||||||
f.setSpriteWrap(14*138,139,138,138);
|
f.setSpriteWrap(14*138,139,138,138);
|
||||||
|
@ -7,9 +7,9 @@ public class InputBuffer {
|
|||||||
/**
|
/**
|
||||||
* The number of past frames to check for a certain input pas another one.
|
* The number of past frames to check for a certain input pas another one.
|
||||||
* For example, if you need to input DOWN, then FORWARD, and we know FORWARD has been input on frame 25,
|
* For example, if you need to input DOWN, then FORWARD, and we know FORWARD has been input on frame 25,
|
||||||
* this indicates that you need to check for DOWN on frames 20 to 24
|
* this indicates that you need to check for DOWN on frames 20 to 24 if pastframestocheck is at 5
|
||||||
*/
|
*/
|
||||||
private static final int pastFramesToCheck = 5;
|
private static final int pastFramesToCheck = 8;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* a list of various inputs being recorded, such as inputs pressed at each frame
|
* a list of various inputs being recorded, such as inputs pressed at each frame
|
||||||
|
@ -45,12 +45,12 @@ public class match {
|
|||||||
/**
|
/**
|
||||||
* the number of inputs read for each character, a.k.a. for how many frames the inputs are saved in memory.
|
* the number of inputs read for each character, a.k.a. for how many frames the inputs are saved in memory.
|
||||||
*/
|
*/
|
||||||
private static final int inputBufferSize = 120;
|
private final static int inputBufferSize = 120;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* the level of the "ground", used to determine if a character is in the air or not.
|
* the level of the "ground", used to determine if a character is in the air or not.
|
||||||
*/
|
*/
|
||||||
private static final int groundLevel = 180;
|
private final static int groundLevel = 180;
|
||||||
|
|
||||||
private static int timer;
|
private static int timer;
|
||||||
private static InputBuffer inputsP1, inputsP2;
|
private static InputBuffer inputsP1, inputsP2;
|
||||||
@ -76,6 +76,7 @@ public class match {
|
|||||||
private static HorizontalProgressBar healthBarP2Obj;
|
private static HorizontalProgressBar healthBarP2Obj;
|
||||||
private static UIElementText timerUI;
|
private static UIElementText timerUI;
|
||||||
private static UIElementText fpsCounter;
|
private static UIElementText fpsCounter;
|
||||||
|
private static boolean showInputListP1 = false;
|
||||||
private static UIInputList inputListP1;
|
private static UIInputList inputListP1;
|
||||||
private static UIElementText matchWon;
|
private static UIElementText matchWon;
|
||||||
|
|
||||||
@ -84,6 +85,7 @@ public class match {
|
|||||||
private static int rightBoundary;
|
private static int rightBoundary;
|
||||||
|
|
||||||
// Debug
|
// Debug
|
||||||
|
public static boolean debugMode = false;
|
||||||
public static boolean showP1Hitbox;
|
public static boolean showP1Hitbox;
|
||||||
public static boolean showP2Hitbox;
|
public static boolean showP2Hitbox;
|
||||||
private static List<Hitbox> listHitboxObj = new ArrayList<>();
|
private static List<Hitbox> listHitboxObj = new ArrayList<>();
|
||||||
@ -121,10 +123,12 @@ public class match {
|
|||||||
objP1.getShadow().translate(new Vector3f(0f,p1.getPosY(),0));
|
objP1.getShadow().translate(new Vector3f(0f,p1.getPosY(),0));
|
||||||
objP2.getShadow().translate(new Vector3f(0f,p2.getPosY(),0));
|
objP2.getShadow().translate(new Vector3f(0f,p2.getPosY(),0));
|
||||||
// Crée l'InputList
|
// Crée l'InputList
|
||||||
|
if (showInputListP1){
|
||||||
inputListP1 = new UIInputList(inputsP1, 10f, 0f, 0.85f, 110f, engine);
|
inputListP1 = new UIInputList(inputsP1, 10f, 0f, 0.85f, 110f, engine);
|
||||||
engine.add_uiElement(inputListP1);
|
engine.add_uiElement(inputListP1);
|
||||||
inputListP1.init();
|
inputListP1.init();
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Ends the round.
|
* Ends the round.
|
||||||
@ -132,7 +136,7 @@ public class match {
|
|||||||
*/
|
*/
|
||||||
private static void endRound() {
|
private static void endRound() {
|
||||||
roundCounter++;
|
roundCounter++;
|
||||||
String victoryTxt = roundP1 ? "Player1 won the round"+roundCounter : "Player2 won the round"+roundCounter;
|
String victoryTxt = roundP1 ? "Player1 won the round "+roundCounter : "Player2 won the round "+roundCounter;
|
||||||
|
|
||||||
System.out.println(victoryTxt);
|
System.out.println(victoryTxt);
|
||||||
matchWon = new UIElementText(victoryTxt, 5f, 0.25f, 0.5f, 200f, engine);
|
matchWon = new UIElementText(victoryTxt, 5f, 0.25f, 0.5f, 200f, engine);
|
||||||
@ -146,6 +150,9 @@ public class match {
|
|||||||
}
|
}
|
||||||
|
|
||||||
engine.remove_uiElement(matchWon);
|
engine.remove_uiElement(matchWon);
|
||||||
|
if(inputListP1 != null){
|
||||||
|
engine.remove_uiElement(inputListP1);
|
||||||
|
}
|
||||||
|
|
||||||
//replacement des sprites
|
//replacement des sprites
|
||||||
objP1.translate(new Vector3f(-p1.getPosX(), -p1.getPosY()));
|
objP1.translate(new Vector3f(-p1.getPosX(), -p1.getPosY()));
|
||||||
@ -153,6 +160,8 @@ public class match {
|
|||||||
objP1.getShadow().translate(new Vector3f(0f,-p1.getPosY(),0));
|
objP1.getShadow().translate(new Vector3f(0f,-p1.getPosY(),0));
|
||||||
objP2.getShadow().translate(new Vector3f(0f,-p2.getPosY(),0));
|
objP2.getShadow().translate(new Vector3f(0f,-p2.getPosY(),0));
|
||||||
|
|
||||||
|
acCode = 0;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -162,7 +171,7 @@ public class match {
|
|||||||
private static void endMatch() {
|
private static void endMatch() {
|
||||||
String victoryTxt = roundsWonP1 > roundsWonP2 ? "P1 won the match" : "P2 won the match";
|
String victoryTxt = roundsWonP1 > roundsWonP2 ? "P1 won the match" : "P2 won the match";
|
||||||
|
|
||||||
matchWon = new UIElementText(victoryTxt, 5f, 0.25f, 0.5f, 200f, engine);
|
matchWon = new UIElementText(victoryTxt, 5f, 0.3f, 0.5f, 200f, engine);
|
||||||
matchWon.setShader("/shaders/StylishShaders/WavyTextVert.glsl", "/shaders/StylishShaders/TextFrag.glsl", true, true);
|
matchWon.setShader("/shaders/StylishShaders/WavyTextVert.glsl", "/shaders/StylishShaders/TextFrag.glsl", true, true);
|
||||||
engine.add_uiElement(matchWon);
|
engine.add_uiElement(matchWon);
|
||||||
|
|
||||||
@ -199,6 +208,19 @@ public class match {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public static void main(String[] args) throws Exception {
|
public static void main(String[] args) throws Exception {
|
||||||
|
|
||||||
|
timer = 0;
|
||||||
|
timeStamp1 = 0;
|
||||||
|
timeStamp2 = 0;
|
||||||
|
frameCount = 0;
|
||||||
|
oldPosXp1 = 0;
|
||||||
|
oldPosXp2 = 0;
|
||||||
|
oldPosYp1 = 0;
|
||||||
|
acCode = 0;
|
||||||
|
roundCounter = 0;
|
||||||
|
roundsWonP1 = 0;
|
||||||
|
roundsWonP2 = 0;
|
||||||
|
|
||||||
parse();
|
parse();
|
||||||
engine = new Engine(width, height, fullscreen, new Vector3f(4.0f, 3.0f));
|
engine = new Engine(width, height, fullscreen, new Vector3f(4.0f, 3.0f));
|
||||||
engine.init();
|
engine.init();
|
||||||
@ -277,12 +299,6 @@ public class match {
|
|||||||
/*
|
/*
|
||||||
GUI Setup
|
GUI Setup
|
||||||
*/
|
*/
|
||||||
coordP1 = new UIElementText("objP1: " + objP1.getXPos() + ":" + objP1.getYPos() + " P1: " + p1.getPosX() +":" + p1.getPosY(), 5f, 0f, 0.15f, 70f, engine);
|
|
||||||
coordP1.setBackground(new Vector3f(0f,0f,0f));
|
|
||||||
engine.add_uiElement(coordP1);
|
|
||||||
coordP2 = new UIElementText("objP2: " + objP2.getXPos() + ":" + objP2.getYPos() + " P1: " + p2.getPosX() +":" + p2.getPosY(), 5f, 0f, 0.1f, 70f, engine);
|
|
||||||
coordP2.setBackground(new Vector3f(0f,0f,0f));
|
|
||||||
engine.add_uiElement(coordP2);
|
|
||||||
// Barre de vie
|
// Barre de vie
|
||||||
healthBarP1Obj = new HorizontalProgressBar(80f, 8.5f, 0.4f, 100f, p1.getCurrentHP(), p1.getMaxHP(), false);
|
healthBarP1Obj = new HorizontalProgressBar(80f, 8.5f, 0.4f, 100f, p1.getCurrentHP(), p1.getMaxHP(), false);
|
||||||
healthBarP1Obj.setShader("/shaders/StylishShaders/BasicNoTexVert.glsl", "/shaders/StylishShaders/HorizontalProgressBarGradientSquareFrag.glsl");
|
healthBarP1Obj.setShader("/shaders/StylishShaders/BasicNoTexVert.glsl", "/shaders/StylishShaders/HorizontalProgressBarGradientSquareFrag.glsl");
|
||||||
@ -309,10 +325,11 @@ public class match {
|
|||||||
// Timer
|
// Timer
|
||||||
timerUI = new UIElementText(timer + "", 10f, 0.453f, 0.995f, 85f, engine);
|
timerUI = new UIElementText(timer + "", 10f, 0.453f, 0.995f, 85f, engine);
|
||||||
engine.add_uiElement(timerUI);
|
engine.add_uiElement(timerUI);
|
||||||
// FPS counter
|
|
||||||
fpsCounter = new UIElementText("Boulevard Combattant", 5f, 0f, 0.04f, 100f, engine);
|
if(debugMode){
|
||||||
fpsCounter.setBackground(new Vector3f(0f,0f,0f));
|
createDebugHUD();
|
||||||
engine.add_uiElement(fpsCounter);
|
}
|
||||||
|
|
||||||
timeStampFpsCounter = System.currentTimeMillis();
|
timeStampFpsCounter = System.currentTimeMillis();
|
||||||
//SetTracking
|
//SetTracking
|
||||||
engine.setCameraTrackingSF3ThirdStrike(objP1, objP2);
|
engine.setCameraTrackingSF3ThirdStrike(objP1, objP2);
|
||||||
@ -357,8 +374,8 @@ public class match {
|
|||||||
|
|
||||||
//end round
|
//end round
|
||||||
case 11:
|
case 11:
|
||||||
|
if(roundsWonP1 >= (rounds/2 +1) || roundsWonP2 >= (rounds/2 +1)) { endMatch(); break;}
|
||||||
endRound();
|
endRound();
|
||||||
if(roundsWonP1 >= (rounds/2 +1) || roundsWonP2 >= (rounds/2 +1)) { endMatch();} //TODO : will probably need to specify more
|
|
||||||
acCode = 0;
|
acCode = 0;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
@ -397,12 +414,16 @@ public class match {
|
|||||||
case 21:
|
case 21:
|
||||||
try {
|
try {
|
||||||
handleThrows(p1, p2);
|
handleThrows(p1, p2);
|
||||||
handleThrows(p2,p1);
|
|
||||||
} catch (IndexOutOfBoundsException e) {}
|
} catch (IndexOutOfBoundsException e) {}
|
||||||
try {
|
try {
|
||||||
handleHits(p1, p2, inputsP2);
|
handleHits(p1, p2, inputsP2);
|
||||||
|
} catch (IndexOutOfBoundsException e) {};
|
||||||
|
try {
|
||||||
|
handleThrows(p2,p1);
|
||||||
|
} catch (IndexOutOfBoundsException e) {}
|
||||||
|
try {
|
||||||
handleHits(p2, p1, inputsP1);
|
handleHits(p2, p1, inputsP1);
|
||||||
}catch (IndexOutOfBoundsException e) {};
|
} catch (IndexOutOfBoundsException e) {};
|
||||||
acCode = 22;
|
acCode = 22;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
@ -481,8 +502,10 @@ public class match {
|
|||||||
//Waits the end of 1/60th of a second since start of frame then loops back to start
|
//Waits the end of 1/60th of a second since start of frame then loops back to start
|
||||||
case 23:
|
case 23:
|
||||||
// GUI update here
|
// GUI update here
|
||||||
|
if (debugMode){
|
||||||
coordP1.setText("objP1: " + objP1.getXPos() + ":" + objP1.getYPos() + " P1: " + p1.getPosX() +":" + p1.getPosY());
|
coordP1.setText("objP1: " + objP1.getXPos() + ":" + objP1.getYPos() + " P1: " + p1.getPosX() +":" + p1.getPosY());
|
||||||
coordP2.setText("objP2: " + objP2.getXPos() + ":" + objP2.getYPos() + " P2: " + p2.getPosX() +":" + p2.getPosY());
|
coordP2.setText("objP2: " + objP2.getXPos() + ":" + objP2.getYPos() + " P2: " + p2.getPosX() +":" + p2.getPosY());
|
||||||
|
}
|
||||||
healthBarP1Obj.setCurrent(p1.getCurrentHP()); healthBarP1Obj.setMax(p1.getMaxHP());
|
healthBarP1Obj.setCurrent(p1.getCurrentHP()); healthBarP1Obj.setMax(p1.getMaxHP());
|
||||||
healthBarP2Obj.setCurrent(p2.getCurrentHP()); healthBarP2Obj.setMax(p2.getMaxHP());
|
healthBarP2Obj.setCurrent(p2.getCurrentHP()); healthBarP2Obj.setMax(p2.getMaxHP());
|
||||||
timerUI.setText(timer + "");
|
timerUI.setText(timer + "");
|
||||||
@ -496,7 +519,9 @@ public class match {
|
|||||||
|
|
||||||
frameCounter++;
|
frameCounter++;
|
||||||
if (System.currentTimeMillis() - timeStampFpsCounter >= 1000){
|
if (System.currentTimeMillis() - timeStampFpsCounter >= 1000){
|
||||||
|
if(debugMode){
|
||||||
fpsCounter.setText("FPS: " + frameCounter);
|
fpsCounter.setText("FPS: " + frameCounter);
|
||||||
|
}
|
||||||
frameCounter = 0;
|
frameCounter = 0;
|
||||||
timeStampFpsCounter = System.currentTimeMillis();
|
timeStampFpsCounter = System.currentTimeMillis();
|
||||||
}
|
}
|
||||||
@ -913,4 +938,49 @@ public class match {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static void debugToggle(){
|
||||||
|
if (debugMode){
|
||||||
|
if(coordP1 != null){
|
||||||
|
engine.remove_uiElement(coordP1);
|
||||||
|
}
|
||||||
|
if(coordP2 != null){
|
||||||
|
engine.remove_uiElement(coordP2);
|
||||||
|
}
|
||||||
|
if(fpsCounter != null){
|
||||||
|
engine.remove_uiElement(fpsCounter);
|
||||||
|
}
|
||||||
|
debugMode = false;
|
||||||
|
} else {
|
||||||
|
createDebugHUD();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public static void inputP1Toggle(){
|
||||||
|
if (showInputListP1){
|
||||||
|
if (inputListP1 != null){
|
||||||
|
engine.remove_uiElement(inputListP1);
|
||||||
|
}
|
||||||
|
showInputListP1 = false;
|
||||||
|
} else {
|
||||||
|
inputListP1 = new UIInputList(inputsP1, 10f, 0f, 0.85f, 110f, engine);
|
||||||
|
engine.add_uiElement(inputListP1);
|
||||||
|
inputListP1.init();
|
||||||
|
showInputListP1 = true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public static void createDebugHUD(){
|
||||||
|
coordP1 = new UIElementText("objP1: " + objP1.getXPos() + ":" + objP1.getYPos() + " P1: " + p1.getPosX() +":" + p1.getPosY(), 5f, 0f, 0.15f, 70f, engine);
|
||||||
|
coordP1.setBackground(new Vector3f(0f,0f,0f));
|
||||||
|
engine.add_uiElement(coordP1);
|
||||||
|
coordP2 = new UIElementText("objP2: " + objP2.getXPos() + ":" + objP2.getYPos() + " P1: " + p2.getPosX() +":" + p2.getPosY(), 5f, 0f, 0.1f, 70f, engine);
|
||||||
|
coordP2.setBackground(new Vector3f(0f,0f,0f));
|
||||||
|
engine.add_uiElement(coordP2);
|
||||||
|
// FPS counter
|
||||||
|
fpsCounter = new UIElementText("Boulevard Combattant", 5f, 0f, 0.04f, 100f, engine);
|
||||||
|
fpsCounter.setBackground(new Vector3f(0f,0f,0f));
|
||||||
|
engine.add_uiElement(fpsCounter);
|
||||||
|
debugMode = true;
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -9,10 +9,12 @@ import javafx.scene.Scene;
|
|||||||
import javafx.scene.control.ChoiceBox;
|
import javafx.scene.control.ChoiceBox;
|
||||||
import javafx.scene.image.Image;
|
import javafx.scene.image.Image;
|
||||||
import javafx.scene.image.ImageView;
|
import javafx.scene.image.ImageView;
|
||||||
|
import javafx.scene.layout.HBox;
|
||||||
import javafx.scene.layout.VBox;
|
import javafx.scene.layout.VBox;
|
||||||
import javafx.scene.control.CheckBox;
|
import javafx.scene.control.CheckBox;
|
||||||
import javafx.stage.Stage;
|
import javafx.stage.Stage;
|
||||||
import javafx.stage.StageStyle;
|
import javafx.stage.StageStyle;
|
||||||
|
import javafx.stage.Window;
|
||||||
import javafx.fxml.*;
|
import javafx.fxml.*;
|
||||||
|
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
@ -141,16 +143,24 @@ public class Launcher extends Application {
|
|||||||
b2.setValue("Blue");
|
b2.setValue("Blue");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Hiding character select (only a single character anyways
|
||||||
|
v1.getParent().setManaged(false);
|
||||||
|
v1.getParent().setVisible(false);
|
||||||
|
|
||||||
/*******************/
|
/*******************/
|
||||||
/* Window settings */
|
/* Window settings */
|
||||||
/*******************/
|
/*******************/
|
||||||
|
|
||||||
// Removing window decorations
|
// Removing window decorations
|
||||||
primaryStage.initStyle(StageStyle.UNDECORATED);
|
primaryStage.initStyle(StageStyle.UNDECORATED);
|
||||||
|
// Setting the window as unresizeable
|
||||||
|
primaryStage.setResizable(false);
|
||||||
// Setting window title
|
// Setting window title
|
||||||
primaryStage.setTitle("Boulevard Combattant");
|
primaryStage.setTitle("Boulevard Combattant");
|
||||||
// Assinging main scene to primaryStage
|
// Assinging main scene to primaryStage
|
||||||
primaryStage.setScene(main);
|
primaryStage.setScene(main);
|
||||||
|
// Adding icon to taskbar
|
||||||
|
primaryStage.getIcons().add(new Image(Launcher.class.getResourceAsStream("logo.png")));
|
||||||
// Showing the stage to the user
|
// Showing the stage to the user
|
||||||
primaryStage.show();
|
primaryStage.show();
|
||||||
|
|
||||||
@ -166,9 +176,22 @@ public class Launcher extends Application {
|
|||||||
try {
|
try {
|
||||||
fillArraySettings();
|
fillArraySettings();
|
||||||
setter.setSettings();
|
setter.setSettings();
|
||||||
|
hideWindow();
|
||||||
|
Thread t = new Thread() {
|
||||||
|
public void run() {
|
||||||
|
try {
|
||||||
match.main(null);
|
match.main(null);
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
System.out.println("Fill all boxes to launch the game");
|
e.printStackTrace();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
};
|
||||||
|
t.start();
|
||||||
|
t.join();
|
||||||
|
showWindow();
|
||||||
|
} catch (Exception e) {
|
||||||
|
e.printStackTrace();
|
||||||
|
System.exit(1);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
@ -245,6 +268,28 @@ public class Launcher extends Application {
|
|||||||
arraysettings.put("stage", "default");
|
arraysettings.put("stage", "default");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* hides the launcher
|
||||||
|
*/
|
||||||
|
@FXML
|
||||||
|
private void hideWindow() {
|
||||||
|
HBox hb = (HBox) namespace.get("window");
|
||||||
|
Scene sc = hb.getScene();
|
||||||
|
Window win = sc.getWindow();
|
||||||
|
win.hide();
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* shows the launcher
|
||||||
|
* @throws Exception
|
||||||
|
*/
|
||||||
|
@FXML
|
||||||
|
private void showWindow() throws Exception {
|
||||||
|
setter.parse();
|
||||||
|
Stage st = new Stage();
|
||||||
|
start(st);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* quits the launcher and the game
|
* quits the launcher and the game
|
||||||
*/
|
*/
|
||||||
|
@ -41,7 +41,7 @@ public class Settings {
|
|||||||
* @author François Autin
|
* @author François Autin
|
||||||
* @author Indy Boyeau
|
* @author Indy Boyeau
|
||||||
*/
|
*/
|
||||||
private void parse() throws Exception {
|
protected void parse() throws Exception {
|
||||||
|
|
||||||
// Initializing the parser
|
// Initializing the parser
|
||||||
JSONParser jsonP = new JSONParser();
|
JSONParser jsonP = new JSONParser();
|
||||||
@ -93,7 +93,7 @@ public class Settings {
|
|||||||
} catch (IOException e) {
|
} catch (IOException e) {
|
||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
System.exit(1);
|
System.exit(1);
|
||||||
} catch (ParseException e) {
|
} catch (Exception e) {
|
||||||
rounds = 3;
|
rounds = 3;
|
||||||
p1 = "default";
|
p1 = "default";
|
||||||
p2 = "default";
|
p2 = "default";
|
||||||
|
@ -18,7 +18,7 @@
|
|||||||
<?import javafx.scene.control.Hyperlink?>
|
<?import javafx.scene.control.Hyperlink?>
|
||||||
|
|
||||||
<HBox xmlns:fx="http://javafx.com/fxml" stylesheets="@style.css" fx:id="window"
|
<HBox xmlns:fx="http://javafx.com/fxml" stylesheets="@style.css" fx:id="window"
|
||||||
prefWidth="1280" prefHeight="720"
|
prefWidth="280" prefHeight="550"
|
||||||
fx:controller="launcher.Launcher">
|
fx:controller="launcher.Launcher">
|
||||||
|
|
||||||
<children>
|
<children>
|
||||||
@ -37,10 +37,10 @@
|
|||||||
<Label StyleClass="title" text="COMBATTANT"/>
|
<Label StyleClass="title" text="COMBATTANT"/>
|
||||||
|
|
||||||
<VBox fx:id="btn"
|
<VBox fx:id="btn"
|
||||||
prefWidth="120" prefHeight="260" spacing="5">
|
prefWidth="120" prefHeight="300" spacing="5">
|
||||||
<children>
|
<children>
|
||||||
<Label text="Resolution"/>
|
<Label text="Resolution"/>
|
||||||
<ChoiceBox fx:id="resolution" styleClass="res_box"/>
|
<ChoiceBox fx:id="resolution" styleClass="res_box" prefWidth="180"/>
|
||||||
<HBox fx:id="fs_box" styleClass="fs_box">
|
<HBox fx:id="fs_box" styleClass="fs_box">
|
||||||
<children>
|
<children>
|
||||||
<Label text="Fullscreen "/>
|
<Label text="Fullscreen "/>
|
||||||
@ -48,7 +48,7 @@
|
|||||||
</children>
|
</children>
|
||||||
</HBox>
|
</HBox>
|
||||||
<Label text="Rounds"/>
|
<Label text="Rounds"/>
|
||||||
<ChoiceBox fx:id="rounds" styleClass="res_box"/>
|
<ChoiceBox fx:id="rounds" styleClass="res_box" prefWidth="180"/>
|
||||||
<HBox fx:id="hb_box" styleClass="fs_box">
|
<HBox fx:id="hb_box" styleClass="fs_box">
|
||||||
<children>
|
<children>
|
||||||
<Label text="Hitboxes "/>
|
<Label text="Hitboxes "/>
|
||||||
@ -56,17 +56,17 @@
|
|||||||
</children>
|
</children>
|
||||||
</HBox>
|
</HBox>
|
||||||
<Button text="Play" fx:id="btn_launch" onAction="#runGame"
|
<Button text="Play" fx:id="btn_launch" onAction="#runGame"
|
||||||
prefWidth="110" prefHeight="15"/>
|
prefWidth="180" prefHeight="25"/>
|
||||||
<Button text="Quit" fx:id="btn_quit" onAction="#quit"
|
<Button text="Quit" fx:id="btn_quit" onAction="#quit"
|
||||||
prefWidth="110" prefHeight="15"/>
|
prefWidth="180" prefHeight="25"/>
|
||||||
</children>
|
</children>
|
||||||
</VBox>
|
</VBox>
|
||||||
|
|
||||||
<VBox fx:id="prgm"
|
<VBox fx:id="prgm"
|
||||||
prefWidth="120">
|
prefWidth="120" prefHeight="80">
|
||||||
<children>
|
<children>
|
||||||
<Hyperlink text="GIT" onAction="#website"/>
|
<Hyperlink text="GIT" onAction="#website"/>
|
||||||
<Text text="Ver: Snapshot"/>
|
<Text text="Ver: 1.0"/>
|
||||||
</children>
|
</children>
|
||||||
</VBox>
|
</VBox>
|
||||||
</children>
|
</children>
|
||||||
|
@ -1,6 +1,7 @@
|
|||||||
#window {
|
#window {
|
||||||
-fx-background-color: #131320;
|
-fx-background-color: #131320;
|
||||||
-fx-font-size: 1.25em;
|
-fx-font-size: 1.25em;
|
||||||
|
-fx-font-family: "Sergoe UI", "Noto Sans", Arial, "Liberation Sans", Sans;
|
||||||
}
|
}
|
||||||
|
|
||||||
Text, Label {
|
Text, Label {
|
||||||
@ -13,8 +14,9 @@ Text, Label {
|
|||||||
/*************/
|
/*************/
|
||||||
|
|
||||||
#sidepanel {
|
#sidepanel {
|
||||||
-fx-background-color: #303050;
|
-fx-background-color: #000000;
|
||||||
-fx-alignment: center;
|
-fx-alignment: top-center;
|
||||||
|
-fx-padding: 30 0 0 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Logo */
|
/* Logo */
|
||||||
@ -37,12 +39,22 @@ Text, Label {
|
|||||||
}
|
}
|
||||||
|
|
||||||
#btn_launch {
|
#btn_launch {
|
||||||
|
-fx-background-color: #108010;
|
||||||
|
-fx-text-fill: #e1e1e1;
|
||||||
|
}
|
||||||
|
|
||||||
|
#btn_launch:hover {
|
||||||
-fx-background-color: #30c130;
|
-fx-background-color: #30c130;
|
||||||
-fx-text-fill: #f2f2f2;
|
-fx-text-fill: #f2f2f2;
|
||||||
}
|
}
|
||||||
|
|
||||||
#btn_quit {
|
#btn_quit {
|
||||||
-fx-background-color: #c13030;
|
-fx-background-color: #801010;
|
||||||
|
-fx-text-fill: #e1e1e1;
|
||||||
|
}
|
||||||
|
|
||||||
|
#btn_quit:hover {
|
||||||
|
-fx-background-color: #b41010;
|
||||||
-fx-text-fill: #f2f2f2;
|
-fx-text-fill: #f2f2f2;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Binary file not shown.
Before Width: | Height: | Size: 597 KiB After Width: | Height: | Size: 612 KiB |
Reference in New Issue
Block a user