Get Started. It's Free
or sign up with your email address
MinigameBase by Mind Map: MinigameBase

1. Brainstorming

1.1. Variables

1.1.1. isRunning

1.1.2. All players in game

1.1.3. World

1.1.4. Lobby location data

1.2. Methods

1.2.1. StartGame

1.2.2. JoinTeam

1.2.3. Join

1.3. Team management

1.3.1. Personal

1.3.2. Teamed

1.3.2.1. teamOf(Player)

1.3.3. Player count and ArrayList

1.4. Map management

1.4.1. Boundaries

2. Minigame Procedures

2.1. Listeners

2.2. Threads

2.2.1. Synchronization Abstraction Layer (SAL)

2.3. Runnables

2.3.1. Start game

2.3.2. End game

3. Structure

3.1. MGUtils.java

3.1.1. Not static

3.1.2. Provides assistance and abstraction to minigame procedures

3.2. Minigame.interface

3.2.1. MGTeamed.interface

3.2.2. MGPersonal.interface

4. Process

4.1. Lobby management

4.1.1. Join command / sign

4.1.2. Join sequence (teleport to lobby, random team)

4.1.3. use command to join team

4.2. Countdown

4.3. Start game runnable

4.4. isRunning = true; Listeners go to work

4.5. Player elimination + spectating

4.6. Check for remaining players every time of elimination

4.7. 1 player/team left: stop

4.8. isRunning = false;

5. Lobby Manager

5.1. join(Game g, Team t)

5.2. attemptTeam(Team t)

6. Gameplay Manager

6.1. Listener stack

6.2. Team Management