Compare commits

..

2 commits

Author SHA1 Message Date
66c1b1b14f Merge hotfix 1.0.2 2023-04-05 15:17:09 +02:00
496af97e1c
Fix getting user using abstract user classes (#101)
- The Discord plugin uses this to connect MC and DC accounts
- And it was a feataure of this plugin either way
2023-03-12 23:26:47 +01:00
2 changed files with 5 additions and 1 deletions

View file

@ -11,7 +11,7 @@
<dependency>
<groupId>org.yaml</groupId>
<artifactId>snakeyaml</artifactId>
<version>2.0</version>
<version>1.32</version>
<scope>compile</scope>
</dependency>
<dependency>

View file

@ -25,6 +25,9 @@ import java.util.function.Supplier;
public abstract class ChromaGamerBase {
private static final String TBMC_PLAYERS_DIR = "TBMC/players/";
private static final ArrayList<Function<CommandSender, ? extends Optional<? extends ChromaGamerBase>>> senderConverters = new ArrayList<>();
/**
* Holds data per user class
*/
private static final HashMap<Class<? extends ChromaGamerBase>, StaticUserData<?>> staticDataMap = new HashMap<>();
/**
@ -56,6 +59,7 @@ public abstract class ChromaGamerBase {
throw new RuntimeException("Class not registered as a user class! Use @UserClass or TBMCPlayerBase");
var sud = new StaticUserData<T>(folderName);
sud.getConstructors().put(cl, constructor);
sud.getConstructors().put(userclass, constructor); // Alawys register abstract and prototype class (TBMCPlayerBase and TBMCPlayer)
staticDataMap.put(userclass, sud);
}