-
-
Notifications
You must be signed in to change notification settings - Fork 343
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
allow accessing non-sponge provided datapacks
- Loading branch information
Showing
15 changed files
with
290 additions
and
185 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
110 changes: 110 additions & 0 deletions
110
src/main/java/org/spongepowered/api/advancement/AdvancementTemplate.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,110 @@ | ||
/* | ||
* This file is part of SpongeAPI, licensed under the MIT License (MIT). | ||
* | ||
* Copyright (c) SpongePowered <https://www.spongepowered.org> | ||
* Copyright (c) contributors | ||
* | ||
* Permission is hereby granted, free of charge, to any person obtaining a copy | ||
* of this software and associated documentation files (the "Software"), to deal | ||
* in the Software without restriction, including without limitation the rights | ||
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell | ||
* copies of the Software, and to permit persons to whom the Software is | ||
* furnished to do so, subject to the following conditions: | ||
* | ||
* The above copyright notice and this permission notice shall be included in | ||
* all copies or substantial portions of the Software. | ||
* | ||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR | ||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, | ||
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE | ||
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER | ||
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, | ||
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN | ||
* THE SOFTWARE. | ||
*/ | ||
package org.spongepowered.api.advancement; | ||
|
||
import org.checkerframework.checker.nullness.qual.Nullable; | ||
import org.spongepowered.api.ResourceKey; | ||
import org.spongepowered.api.Sponge; | ||
import org.spongepowered.api.advancement.criteria.AdvancementCriterion; | ||
import org.spongepowered.api.datapack.DataPackEntry; | ||
import org.spongepowered.api.util.ResourceKeyedBuilder; | ||
|
||
/** | ||
* A template for an {@link Advancement}. | ||
* <p>Serialized into a data pack at {@code data/<namespace>/advancements/<value>.json}</p> | ||
*/ | ||
public interface AdvancementTemplate extends DataPackEntry<AdvancementTemplate> { | ||
|
||
/** | ||
* Creates a new {@link Builder} to create {@link Advancement}s. | ||
* | ||
* @return The new builder | ||
*/ | ||
static Builder builder() { | ||
return Sponge.game().builderProvider().provide(Builder.class); | ||
} | ||
|
||
/** | ||
* Return the advancement | ||
* | ||
* @return The advancement | ||
*/ | ||
Advancement advancement(); | ||
|
||
/** | ||
* A builder to create {@link Advancement}s. | ||
*/ | ||
interface Builder extends ResourceKeyedBuilder<AdvancementTemplate, Builder> { | ||
|
||
/** | ||
* Sets the parent {@link Advancement}. | ||
* <p>For the root advancement use {@link #root}</p> | ||
* | ||
* @param parent The parent advancement | ||
* @return This builder, for chaining | ||
*/ | ||
Builder parent(Advancement parent); | ||
|
||
/** | ||
* Sets this advancement as root. | ||
* | ||
* @return This builder, for chaining | ||
*/ | ||
Builder.RootStep root(); | ||
|
||
/** | ||
* Define root advancement only parameters. | ||
*/ | ||
interface RootStep extends Builder { | ||
|
||
/** | ||
* Sets the background path.. | ||
* | ||
* @param backgroundPath The {@link AdvancementTree}s background. | ||
* | ||
* @return This builder, for chaining | ||
*/ | ||
Builder background(ResourceKey backgroundPath); | ||
} | ||
|
||
/** | ||
* Sets the {@link AdvancementCriterion} that should be used | ||
* for the advancement. Defaults to {@link AdvancementCriterion#empty()}. | ||
* | ||
* @param criterion The criterion | ||
* @return This builder, for chaining | ||
*/ | ||
Builder criterion(AdvancementCriterion criterion); | ||
|
||
/** | ||
* Sets the {@link DisplayInfo}. Defaults to {code null}. | ||
* | ||
* @param displayInfo The display info | ||
* @return This builder, for chaining | ||
*/ | ||
Builder displayInfo(@Nullable DisplayInfo displayInfo); | ||
|
||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
50 changes: 0 additions & 50 deletions
50
src/main/java/org/spongepowered/api/datapack/DataPackTypes.java
This file was deleted.
Oops, something went wrong.
Oops, something went wrong.