mirror of
https://github.com/mcMMO-Dev/mcMMO.git
synced 2025-01-18 16:35:25 +01:00
Planning this out is actually quite hard, getting sleepy now so I'll flesh this out tomorrow.
This commit is contained in:
parent
196ace4b81
commit
a2c0a02d30
10
core/src/main/java/com/gmail/nossr50/datatypes/Block.java
Normal file
10
core/src/main/java/com/gmail/nossr50/datatypes/Block.java
Normal file
@ -0,0 +1,10 @@
|
||||
package com.gmail.nossr50.datatypes;
|
||||
|
||||
/**
|
||||
* Represents a container of properties and values for a Block
|
||||
* @see BlockProperty
|
||||
* @see BlockState
|
||||
*/
|
||||
public interface Block {
|
||||
|
||||
}
|
@ -0,0 +1,8 @@
|
||||
package com.gmail.nossr50.datatypes;
|
||||
|
||||
/**
|
||||
* BlockProperties are key value pairs for a blocks state
|
||||
*/
|
||||
public interface BlockProperty {
|
||||
|
||||
}
|
@ -0,0 +1,8 @@
|
||||
package com.gmail.nossr50.datatypes;
|
||||
|
||||
/**
|
||||
* Representation of the state for a Block
|
||||
*/
|
||||
public interface BlockState {
|
||||
|
||||
}
|
@ -0,0 +1,13 @@
|
||||
package com.gmail.nossr50.datatypes;
|
||||
|
||||
import com.gmail.nossr50.platform.Platform;
|
||||
|
||||
/**
|
||||
* Constants for targeted versions of MC
|
||||
* @see Platform#getTargetMinecraftVersion()
|
||||
*/
|
||||
public class TargetMinecraftVersion {
|
||||
public static final String MC_VERSION_1_8_8 = "1_8_8";
|
||||
public static final String MC_VERSION_1_12_2 = "1_12_2";
|
||||
public static final String MC_VERSION_1_13_2 = "1_13_2";
|
||||
}
|
@ -0,0 +1,8 @@
|
||||
package com.gmail.nossr50.platform;
|
||||
|
||||
/**
|
||||
* This is the implementation of the Platform Interface
|
||||
*/
|
||||
public abstract class AbstractPlatform implements Platform {
|
||||
|
||||
}
|
33
core/src/main/java/com/gmail/nossr50/platform/Platform.java
Normal file
33
core/src/main/java/com/gmail/nossr50/platform/Platform.java
Normal file
@ -0,0 +1,33 @@
|
||||
package com.gmail.nossr50.platform;
|
||||
|
||||
/**
|
||||
* Represents the current API Platform
|
||||
* mcMMO supports multiple platforms, so that abstraction is handled through this interface
|
||||
*/
|
||||
public interface Platform {
|
||||
|
||||
/**
|
||||
* Gets the name of the Platform
|
||||
* @return name of this platform
|
||||
*/
|
||||
String getPlatformName();
|
||||
|
||||
/**
|
||||
* Gets the version of this platform
|
||||
* @return the current version of this platform
|
||||
*/
|
||||
String getPlatformVersion();
|
||||
|
||||
/**
|
||||
* Gets the target version of Minecraft for this platform
|
||||
* @return this platform's target minecraft version
|
||||
*/
|
||||
String getTargetMinecraftVersion();
|
||||
|
||||
/**
|
||||
* Whether or not this platform has been loaded
|
||||
* @return true if the platform is loaded
|
||||
*/
|
||||
Boolean isPlatformLoaded();
|
||||
|
||||
}
|
@ -0,0 +1,10 @@
|
||||
package com.gmail.nossr50.platform;
|
||||
|
||||
/**
|
||||
* Constants representing the software the platform belongs to
|
||||
*/
|
||||
public enum PlatformSoftwareType {
|
||||
NMS,
|
||||
BUKKIT,
|
||||
SPONGE
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user