fun with duytschen i18n of api
This commit is contained in:
parent
d26afc79c3
commit
9853e44ee6
|
@ -14,6 +14,7 @@ import love.distributedrebirth.bassboon.clazz.pirate.BãßBȍőnPirateLoader;
|
|||
import love.distributedrebirth.bassboon.clazz.pirate.BãßBȍőnꝐŕḯṿª₮ḕ;
|
||||
import love.distributedrebirth.bassboon.clazz.pirate.BãßBȍőnꝐŕḯṿª₮ḕ響ᴼᶠ;
|
||||
import love.distributedrebirth.bassboon.death.BãßBȍőnCoffin;
|
||||
import love.distributedrebirth.bassboon.death.BãßBȍőnCoffinDuytschenᵗˣᵗ;
|
||||
import love.distributedrebirth.bassboon.death.BãßBȍőnCoffinGhost;
|
||||
import love.distributedrebirth.bassboon.death.BãßBȍőnCoffinGhostSpell;
|
||||
import love.distributedrebirth.bassboon.death.BãßBȍőnCoffinGhostSpellLock;
|
||||
|
@ -60,6 +61,9 @@ public interface Bãß {
|
|||
protected static final <T extends BãßBȍőnʸᴰ<T>> BãßBȍőnCoffin 棺ᴼᶠ(BãßBȍőnʸᴰ<T> boon) {
|
||||
return 挖ᵀᵒ(boon);
|
||||
}
|
||||
protected static final <T extends BãßBȍőnʸᴰ<T>, G extends BãßBȍőnCoffinDuytschenᵗˣᵗ> G 棺ᴼᶠ(BãßBȍőnʸᴰ<T> boon, Class<G> duytschen) {
|
||||
return 挖ᵀᵒ(boon).ₜₒI18Nᵗˣᵗ(duytschen);
|
||||
}
|
||||
|
||||
/**
|
||||
* Dig To
|
||||
|
@ -117,21 +121,21 @@ public interface Bãß {
|
|||
}
|
||||
*/
|
||||
private static final class BȍőnGrave implements BãßBȍőnCoffin {
|
||||
private final Map<Class<?>,BãßBȍőnCoffinGhost> ghosts;
|
||||
private final BãßBȍőnSpider spider;
|
||||
private final Map<Class<? extends BãßBȍőnCoffinDuytschenᵗˣᵗ>,BãßBȍőnCoffinDuytschenᵗˣᵗ> duytschenCoffins = new HashMap<>();
|
||||
private final Map<Class<?>,BãßBȍőnCoffinGhost> ghosts = new HashMap<>();
|
||||
private final BãßBȍőnSpider spider = new BãßBȍőnSpider();
|
||||
private boolean inited = false;
|
||||
private boolean locked = false;
|
||||
|
||||
private BȍőnGrave() {
|
||||
this.ghosts = new HashMap<>();
|
||||
this.spider = new BãßBȍőnSpider();
|
||||
BãßBȍőnCoffinDuytschenᵗˣᵗ.ײₚᵤₜI18Nᵗˣᵗײ(duytschenCoffins, this);
|
||||
}
|
||||
|
||||
private <T extends BãßBȍőnʸᴰ<T>> void init(BãßBȍőnʸᴰ<T> boon) {
|
||||
if (inited) {
|
||||
return;
|
||||
}
|
||||
BãßBȍőnPirateLoader.INIT_BONE_MAGIC(boon, spider);
|
||||
BãßBȍőnPirateLoader.INIT_BONE_MAGIC(boon, spider, duytschenCoffins);
|
||||
inited = true;
|
||||
}
|
||||
|
||||
|
@ -174,6 +178,15 @@ public interface Bãß {
|
|||
throw new RuntimeException(e);
|
||||
}
|
||||
}
|
||||
|
||||
@SuppressWarnings("unchecked")
|
||||
private <G extends BãßBȍőnCoffinDuytschenᵗˣᵗ> G ₜₒI18Nᵗˣᵗ(Class<G> duytschen) {
|
||||
G result = (G) duytschenCoffins.get(duytschen);
|
||||
if (result == null) {
|
||||
throw new IllegalArgumentException("Unknown duytschen: "+duytschen);
|
||||
}
|
||||
return result;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -12,6 +12,14 @@ public interface BãßBȍőnʸᴰ<T extends BãßBȍőnʸᴰ<T>> {
|
|||
return (T)this; // allow builders...
|
||||
}
|
||||
|
||||
// default <G extends BãßBȍőnCoffinDuytschenᵗˣᵗ> G toBȍőnGrab(Class<G> duytschen) {
|
||||
// return Bãß.石棺ʸᴰ.棺ᴼᶠ(this, duytschen);
|
||||
// }
|
||||
//
|
||||
// default BãßBȍőnCoffinGhost toBȍőnGrabGeist(Class<? extends BãßBȍőnꝐŕḯṿª₮ḕ<?>> familyName) {
|
||||
// return toBȍőnGrab(BãßBȍőnCoffinDuytschenᵗˣᵗ.𓃬𓍄𓋹𓀭.class).𓆙𓄿𓏀𓃟𓇋𓇋𓄋(familyName);
|
||||
// }
|
||||
|
||||
default BãßBȍőnCoffin toBBC() {
|
||||
return Bãß.石棺ʸᴰ.棺ᴼᶠ(this); // ...to seek 6 bit BASIC death, so the blind can see
|
||||
}
|
||||
|
|
|
@ -4,6 +4,7 @@ import love.distributedrebirth.bassboon.BãßBȍőnʸᴰ;
|
|||
import love.distributedrebirth.bassboon.clazz.pirate.BãßBȍőnPiratePhase注;
|
||||
import love.distributedrebirth.bassboon.clazz.pirate.BãßBȍőnPirateʸᴰ;
|
||||
import love.distributedrebirth.bassboon.clazz.pirate.BãßBȍőnꝐŕḯṿª₮ḕ;
|
||||
import love.distributedrebirth.bassboon.death.BãßBȍőnCoffinDuytschenᵗˣᵗ;
|
||||
import love.distributedrebirth.bassboon.death.GhostKey鬼鑰匙;
|
||||
import love.distributedrebirth.bassboon.death.spider.BãßBȍőnSpiderWire注;
|
||||
|
||||
|
@ -19,6 +20,18 @@ public interface BãßBȍőnExportʸᴰ<T extends BãßBȍőnʸᴰ<T>> extends B
|
|||
@BãßBȍőnSpiderWire注
|
||||
private BãßBȍőnExportʸᴰ<?> boon;
|
||||
|
||||
@BãßBȍőnSpiderWire注
|
||||
private BãßBȍőnCoffinDuytschenᵗˣᵗ.𓃬𓍄𓋹𓀭 𓁀;
|
||||
|
||||
@BãßBȍőnSpiderWire注
|
||||
private BãßBȍőnCoffinDuytschenᵗˣᵗ.中國 棺材;
|
||||
|
||||
@BãßBȍőnSpiderWire注
|
||||
private BãßBȍőnCoffinDuytschenᵗˣᵗ.عربى فاصوليا;
|
||||
|
||||
@BãßBȍőnSpiderWire注
|
||||
private BãßBȍőnCoffinDuytschenᵗˣᵗ.עִברִית אפונה;
|
||||
|
||||
@Override
|
||||
public BãßBȍőnExport響ᴼᶠ init() {
|
||||
BãßBȍőnExport注 anno = boon.getClass().getAnnotation(BãßBȍőnExport注.class);
|
||||
|
@ -30,18 +43,17 @@ public interface BãßBȍőnExportʸᴰ<T extends BãßBȍőnʸᴰ<T>> extends B
|
|||
if (anno != null && !anno.group().isBlank()) {
|
||||
exportGroup = anno.group();
|
||||
}
|
||||
boon.toBBC().UNHOLY_SPELL(Ꝑŕḯṿª₮ḕ.class).PUT_GHOST(GHOST_ARTIFACT, exportArtifact);
|
||||
boon.toBBC().UNHOLY_SPELL(Ꝑŕḯṿª₮ḕ.class).PUT_GHOST(GHOST_GROUP, exportGroup);
|
||||
|
||||
𓁀.𓆙𓄿𓏀𓃟𓇋𓇋𓄋𓐘𓆘𓉯𓌇𓆅𓆅(Ꝑŕḯṿª₮ḕ.class).PUT_GHOST(GHOST_ARTIFACT, exportArtifact);
|
||||
فاصوليا.غير۵مقدس۵سحر(Ꝑŕḯṿª₮ḕ.class).PUT_GHOST(GHOST_GROUP, exportGroup);
|
||||
return new BãßBȍőnExport響ᴼᶠ() {
|
||||
@Override
|
||||
public String artifact() {
|
||||
return boon.toBBC().UNHOLY(Ꝑŕḯṿª₮ḕ.class).GHOST_STR(GHOST_ARTIFACT);
|
||||
return אפונה.לאײקדוש(Ꝑŕḯṿª₮ḕ.class).GHOST_STR(GHOST_ARTIFACT);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String groep() {
|
||||
return boon.toBBC().UNHOLY(Ꝑŕḯṿª₮ḕ.class).GHOST_STR(GHOST_GROUP);
|
||||
return 棺材.邪惡的(Ꝑŕḯṿª₮ḕ.class).GHOST_STR(GHOST_GROUP);
|
||||
}
|
||||
};
|
||||
}
|
||||
|
|
|
@ -11,12 +11,14 @@ import java.util.Comparator;
|
|||
import java.util.HashSet;
|
||||
import java.util.LinkedHashSet;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Set;
|
||||
import java.util.function.Consumer;
|
||||
import java.util.function.Function;
|
||||
|
||||
import love.distributedrebirth.bassboon.BãßBȍőnʸᴰ;
|
||||
import love.distributedrebirth.bassboon.clazz.BãßBȍőnAuthor注;
|
||||
import love.distributedrebirth.bassboon.death.BãßBȍőnCoffinDuytschenᵗˣᵗ;
|
||||
import love.distributedrebirth.bassboon.death.spider.BãßBȍőnSpider;
|
||||
import love.distributedrebirth.bassboon.death.spider.BãßBȍőnSpiderEgg注;
|
||||
import love.distributedrebirth.bassboon.death.spider.BãßBȍőnSpiderSilk;
|
||||
|
@ -53,9 +55,21 @@ public final class BãßBȍőnPirateLoader {
|
|||
}
|
||||
}
|
||||
|
||||
public static <T extends BãßBȍőnʸᴰ<T>> void INIT_BONE_MAGIC(BãßBȍőnʸᴰ<T> boon, BãßBȍőnSpider spider) {
|
||||
public static <T extends BãßBȍőnʸᴰ<T>> void INIT_BONE_MAGIC(BãßBȍőnʸᴰ<T> boon, BãßBȍőnSpider spider, Map<Class<? extends BãßBȍőnCoffinDuytschenᵗˣᵗ>,BãßBȍőnCoffinDuytschenᵗˣᵗ> duytschenCoffins) {
|
||||
try {
|
||||
//System.out.println("INIT "+boon.getClass().getName());
|
||||
|
||||
for (Class<?> duytschenType:duytschenCoffins.keySet()) {
|
||||
BãßBȍőnCoffinDuytschenᵗˣᵗ duytschenCoffin = duytschenCoffins.get(duytschenType);
|
||||
spider.registrateEgg(duytschenType, new BãßBȍőnSpiderSilk() {
|
||||
@Override
|
||||
public Object senseWire(BãßBȍőnʸᴰ<?> boonTmp, String name, String description)
|
||||
throws IllegalAccessException, IllegalArgumentException, InvocationTargetException {
|
||||
return duytschenCoffin;
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
Set<Class<?>> ydmods = new HashSet<>();
|
||||
for (PiratePhaseBoat<T> boat : loadPirateBoats(boon)) {
|
||||
//System.out.println("INIT.RUN "+boat.pirateClazz.getName());
|
||||
|
|
|
@ -0,0 +1,89 @@
|
|||
package love.distributedrebirth.bassboon.death;
|
||||
|
||||
import java.util.Map;
|
||||
|
||||
import love.distributedrebirth.bassboon.clazz.BãßBȍőnAuthor注;
|
||||
import love.distributedrebirth.bassboon.clazz.pirate.BãßBȍőnꝐŕḯṿª₮ḕ;
|
||||
import love.distributedrebirth.bassboon.clazz.pirate.BãßBȍőnꝐŕḯṿª₮ḕ響ᴼᶠ;
|
||||
|
||||
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||
public interface BãßBȍőnCoffinDuytschenᵗˣᵗ {
|
||||
|
||||
static void ײₚᵤₜI18Nᵗˣᵗײ(Map<Class<? extends BãßBȍőnCoffinDuytschenᵗˣᵗ>,BãßBȍőnCoffinDuytschenᵗˣᵗ> map, BãßBȍőnCoffin wrap) {
|
||||
map.put(BASIC.class, ₜₒBASICᵗˣᵗ(wrap));
|
||||
map.put(中國.class, ₜₒ中國ᵗˣᵗ(wrap));
|
||||
map.put(𓃬𓍄𓋹𓀭.class, ₜₒ𓃬𓍄𓋹𓀭ᵗˣᵗ(wrap));
|
||||
map.put(عربى.class, ₜₒعربىᵗˣᵗ(wrap));
|
||||
map.put(עִברִית.class, ₜₒעִברִיתᵗˣᵗ(wrap));
|
||||
}
|
||||
|
||||
interface BASIC extends BãßBȍőnCoffinDuytschenᵗˣᵗ {
|
||||
BãßBȍőnCoffinGhost UNHOLY(Class<? extends BãßBȍőnꝐŕḯṿª₮ḕ<?>> familyName);
|
||||
BãßBȍőnCoffinGhostSpell UNHOLY_SPELL(Class<? extends BãßBȍőnꝐŕḯṿª₮ḕ<?>> familyName);
|
||||
<T extends BãßBȍőnꝐŕḯṿª₮ḕ響ᴼᶠ> T NOISE_OF(Class<T> noiseName);
|
||||
}
|
||||
|
||||
static BASIC ₜₒBASICᵗˣᵗ(BãßBȍőnCoffin coffin) {
|
||||
return new BASIC() {
|
||||
@Override public BãßBȍőnCoffinGhost UNHOLY(Class<? extends BãßBȍőnꝐŕḯṿª₮ḕ<?>> familyName) { return coffin.UNHOLY(familyName); }
|
||||
@Override public BãßBȍőnCoffinGhostSpell UNHOLY_SPELL(Class<? extends BãßBȍőnꝐŕḯṿª₮ḕ<?>> familyName) { return coffin.UNHOLY_SPELL(familyName); }
|
||||
@Override public <T extends BãßBȍőnꝐŕḯṿª₮ḕ響ᴼᶠ> T NOISE_OF(Class<T> noiseName) { return coffin.NOISE_OF(noiseName); }
|
||||
};
|
||||
}
|
||||
|
||||
interface 中國 extends BãßBȍőnCoffinDuytschenᵗˣᵗ {
|
||||
BãßBȍőnCoffinGhost 邪惡的(Class<? extends BãßBȍőnꝐŕḯṿª₮ḕ<?>> familyName);
|
||||
BãßBȍőnCoffinGhostSpell 邪惡的龸魅力(Class<? extends BãßBȍőnꝐŕḯṿª₮ḕ<?>> familyName);
|
||||
<T extends BãßBȍőnꝐŕḯṿª₮ḕ響ᴼᶠ> T 噪音龸的(Class<T> noiseName);
|
||||
}
|
||||
|
||||
static 中國 ₜₒ中國ᵗˣᵗ(BãßBȍőnCoffin coffin) {
|
||||
return new 中國() {
|
||||
@Override public BãßBȍőnCoffinGhost 邪惡的(Class<? extends BãßBȍőnꝐŕḯṿª₮ḕ<?>> familyName) { return coffin.UNHOLY(familyName); }
|
||||
@Override public BãßBȍőnCoffinGhostSpell 邪惡的龸魅力(Class<? extends BãßBȍőnꝐŕḯṿª₮ḕ<?>> familyName) { return coffin.UNHOLY_SPELL(familyName); }
|
||||
@Override public <T extends BãßBȍőnꝐŕḯṿª₮ḕ響ᴼᶠ> T 噪音龸的(Class<T> noiseName) { return coffin.NOISE_OF(noiseName); }
|
||||
};
|
||||
}
|
||||
|
||||
interface 𓃬𓍄𓋹𓀭 extends BãßBȍőnCoffinDuytschenᵗˣᵗ {
|
||||
BãßBȍőnCoffinGhost 𓆙𓄿𓏀𓃟𓇋𓇋𓄋(Class<? extends BãßBȍőnꝐŕḯṿª₮ḕ<?>> familyName);
|
||||
BãßBȍőnCoffinGhostSpell 𓆙𓄿𓏀𓃟𓇋𓇋𓄋𓐘𓆘𓉯𓌇𓆅𓆅(Class<? extends BãßBȍőnꝐŕḯṿª₮ḕ<?>> familyName);
|
||||
<T extends BãßBȍőnꝐŕḯṿª₮ḕ響ᴼᶠ> T 𓁵𓇋𓌗𓁬𓐘𓅂𓁿𓆑(Class<T> noiseName);
|
||||
}
|
||||
|
||||
static 𓃬𓍄𓋹𓀭 ₜₒ𓃬𓍄𓋹𓀭ᵗˣᵗ(BãßBȍőnCoffin coffin) {
|
||||
return new 𓃬𓍄𓋹𓀭() {
|
||||
@Override public BãßBȍőnCoffinGhost 𓆙𓄿𓏀𓃟𓇋𓇋𓄋(Class<? extends BãßBȍőnꝐŕḯṿª₮ḕ<?>> familyName) { return coffin.UNHOLY(familyName); }
|
||||
@Override public BãßBȍőnCoffinGhostSpell 𓆙𓄿𓏀𓃟𓇋𓇋𓄋𓐘𓆘𓉯𓌇𓆅𓆅(Class<? extends BãßBȍőnꝐŕḯṿª₮ḕ<?>> familyName) { return coffin.UNHOLY_SPELL(familyName); }
|
||||
@Override public <T extends BãßBȍőnꝐŕḯṿª₮ḕ響ᴼᶠ> T 𓁵𓇋𓌗𓁬𓐘𓅂𓁿𓆑(Class<T> noiseName) { return coffin.NOISE_OF(noiseName); }
|
||||
};
|
||||
}
|
||||
|
||||
interface عربى extends BãßBȍőnCoffinDuytschenᵗˣᵗ {
|
||||
BãßBȍőnCoffinGhost غير۵مقدس(Class<? extends BãßBȍőnꝐŕḯṿª₮ḕ<?>> familyName);
|
||||
BãßBȍőnCoffinGhostSpell غير۵مقدس۵سحر(Class<? extends BãßBȍőnꝐŕḯṿª₮ḕ<?>> familyName);
|
||||
<T extends BãßBȍőnꝐŕḯṿª₮ḕ響ᴼᶠ> T ضوضاء۵من(Class<T> noiseName);
|
||||
}
|
||||
|
||||
static عربى ₜₒعربىᵗˣᵗ(BãßBȍőnCoffin coffin) {
|
||||
return new عربى() {
|
||||
@Override public BãßBȍőnCoffinGhost غير۵مقدس(Class<? extends BãßBȍőnꝐŕḯṿª₮ḕ<?>> familyName) { return coffin.UNHOLY(familyName); }
|
||||
@Override public BãßBȍőnCoffinGhostSpell غير۵مقدس۵سحر(Class<? extends BãßBȍőnꝐŕḯṿª₮ḕ<?>> familyName) { return coffin.UNHOLY_SPELL(familyName); }
|
||||
@Override public <T extends BãßBȍőnꝐŕḯṿª₮ḕ響ᴼᶠ> T ضوضاء۵من(Class<T> noiseName) { return coffin.NOISE_OF(noiseName); }
|
||||
};
|
||||
}
|
||||
|
||||
interface עִברִית extends BãßBȍőnCoffinDuytschenᵗˣᵗ {
|
||||
BãßBȍőnCoffinGhost לאײקדוש(Class<? extends BãßBȍőnꝐŕḯṿª₮ḕ<?>> familyName);
|
||||
BãßBȍőnCoffinGhostSpell לאײקדושײקֶסֶם(Class<? extends BãßBȍőnꝐŕḯṿª₮ḕ<?>> familyName);
|
||||
<T extends BãßBȍőnꝐŕḯṿª₮ḕ響ᴼᶠ> T צלילײשל(Class<T> noiseName);
|
||||
}
|
||||
|
||||
static עִברִית ₜₒעִברִיתᵗˣᵗ(BãßBȍőnCoffin coffin) {
|
||||
return new עִברִית() {
|
||||
@Override public BãßBȍőnCoffinGhost לאײקדוש(Class<? extends BãßBȍőnꝐŕḯṿª₮ḕ<?>> familyName) { return coffin.UNHOLY(familyName); }
|
||||
@Override public BãßBȍőnCoffinGhostSpell לאײקדושײקֶסֶם(Class<? extends BãßBȍőnꝐŕḯṿª₮ḕ<?>> familyName) { return coffin.UNHOLY_SPELL(familyName); }
|
||||
@Override public <T extends BãßBȍőnꝐŕḯṿª₮ḕ響ᴼᶠ> T צלילײשל(Class<T> noiseName) { return coffin.NOISE_OF(noiseName); }
|
||||
};
|
||||
}
|
||||
}
|
Loading…
Reference in a new issue