本文整理汇总了Java中forestry.api.genetics.AlleleManager类的典型用法代码示例。如果您正苦于以下问题:Java AlleleManager类的具体用法?Java AlleleManager怎么用?Java AlleleManager使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
AlleleManager类属于forestry.api.genetics包,在下文中一共展示了AlleleManager类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: same
import forestry.api.genetics.AlleleManager; //导入依赖的package包/类
@Override
protected boolean same(ItemStack stack1, ItemStack stack2) {
ISpeciesRoot root = AlleleManager.alleleRegistry.getSpeciesRoot(stack1);
if (root == null || !root.isMember(stack2)) {
return false;
}
if (type == PrecisionModes.Type.MATCH) {
if (root.getType(stack1) != root.getType(stack2)) {
return false;
}
}
IIndividual individual1 = root.getMember(stack1);
IIndividual individual2 = root.getMember(stack2);
try {
return same(individual1, individual2);
} catch (NullPointerException e) {
return false;
}
}
示例2: getBeeParents
import forestry.api.genetics.AlleleManager; //导入依赖的package包/类
@ScriptCallable(returnTypes = ReturnType.TABLE, description = "Get possible mutations that results in given bee")
public List<Map<String, Object>> getBeeParents(IBeeHousing housing, @Arg(name = "childType", description = "The type of bee you want the parents for") String childType) {
ISpeciesRoot beeRoot = AlleleManager.alleleRegistry.getSpeciesRoot("rootBees");
if (beeRoot == null) return null;
List<Map<String, Object>> result = Lists.newArrayList();
childType = childType.toLowerCase(Locale.ENGLISH);
for (IMutation mutation : beeRoot.getMutations(false)) {
if (mutation.isSecret() && !Config.showHiddenMutations) continue;
final IAlleleSpecies species = getOffspringSpecies(mutation);
if (alleleNameMatches(species, childType)) {
result.add(serializeMutation(mutation, false));
}
}
return result;
}
示例3: getBeeChildren
import forestry.api.genetics.AlleleManager; //导入依赖的package包/类
@ScriptCallable(returnTypes = ReturnType.TABLE, description = "Get possible mutations that can be created with given bee")
public List<Map<String, Object>> getBeeChildren(IBeeHousing housing, @Arg(name = "parentYpe", description = "The type of bee you want the children for") String childType) {
ISpeciesRoot beeRoot = AlleleManager.alleleRegistry.getSpeciesRoot("rootBees");
if (beeRoot == null) return null;
List<Map<String, Object>> result = Lists.newArrayList();
childType = childType.toLowerCase(Locale.ENGLISH);
for (IMutation mutation : beeRoot.getMutations(false)) {
if (mutation.isSecret() && !Config.showHiddenMutations) continue;
if (alleleNameMatches(mutation.getAllele0(), childType) || alleleNameMatches(mutation.getAllele1(), childType)) {
result.add(serializeMutation(mutation, true));
}
}
return result;
}
示例4: readFromNBT
import forestry.api.genetics.AlleleManager; //导入依赖的package包/类
@Override
public void readFromNBT(NBTTagCompound nbttagcompound) {
super.readFromNBT(nbttagcompound);
for (int i = 0; i < typeFilter.length; i++) {
typeFilter[i] = EnumFilterType.values()[nbttagcompound.getByte("TypeFilter" + i)];
}
for (int i = 0; i < 6; i++) {
for (int j = 0; j < 3; j++) {
if (nbttagcompound.hasKey("GenomeFilterS" + i + "-" + j + "-" + 0)) {
genomeFilter[i][j][0] = AlleleManager.alleleRegistry.getAllele(nbttagcompound.getString("GenomeFilterS" + i + "-" + j + "-" + 0));
}
if (nbttagcompound.hasKey("GenomeFilterS" + i + "-" + j + "-" + 1)) {
genomeFilter[i][j][1] = AlleleManager.alleleRegistry.getAllele(nbttagcompound.getString("GenomeFilterS" + i + "-" + j + "-" + 1));
}
}
}
}
示例5: getBeeSpeciesCount
import forestry.api.genetics.AlleleManager; //导入依赖的package包/类
@Override
public int getBeeSpeciesCount() {
if (beeSpeciesCount < 0) {
beeSpeciesCount = 0;
Iterator it = AlleleManager.alleleRegistry.getRegisteredAlleles().entrySet().iterator();
while (it.hasNext()) {
Entry<String, IAllele> entry = (Entry<String, IAllele>) it.next();
if (entry.getValue() instanceof IAlleleBeeSpecies)
if (((IAlleleBeeSpecies) entry.getValue()).isCounted()) {
beeSpeciesCount++;
}
}
}
return beeSpeciesCount;
}
示例6: readFromNBT
import forestry.api.genetics.AlleleManager; //导入依赖的package包/类
@Override
public void readFromNBT(NBTTagCompound nbttagcompound) {
// Legacy
if (nbttagcompound.hasKey("PrimaryId")) {
primary = ((ILegacyHandler) AlleleManager.alleleRegistry).getFromLegacyMap(nbttagcompound.getInteger("PrimaryId"));
secondary = ((ILegacyHandler) AlleleManager.alleleRegistry).getFromLegacyMap(nbttagcompound.getInteger("SecondaryId"));
if (primary == null || secondary == null)
throw new RuntimeException("Legacy conversion of chromosome failed. Did one of your bee addons not update? No legacy mapping for ids: "
+ nbttagcompound.getInteger("PrimaryId") + " - " + nbttagcompound.getInteger("SecondaryId"));
return;
}
primary = AlleleManager.alleleRegistry.getAllele(nbttagcompound.getString(UID0_TAG));
secondary = AlleleManager.alleleRegistry.getAllele(nbttagcompound.getString(UID1_TAG));
}
示例7: setItem
import forestry.api.genetics.AlleleManager; //导入依赖的package包/类
@Nonnull
private ItemStack setItem(int slot, @Nonnull ItemStack itemStack) {
if (slot < 0 || slot >= items.size()) {
return ItemStack.EMPTY;
}
ItemStack prevStack = items.get(slot);
if (!prevStack.isEmpty()) {
this.primarySpeciesUids[slot] = null;
this.secondarySpeciesUids[slot] = null;
}
items.set(slot, itemStack);
ISpeciesRoot speciesRoot = AlleleManager.alleleRegistry.getSpeciesRoot(itemStack);
if (speciesRoot != null) {
IIndividual member = speciesRoot.getMember(itemStack);
if (member != null) {
IGenome genome = member.getGenome();
primarySpeciesUids[slot] = genome.getPrimary().getUID();
secondarySpeciesUids[slot] = genome.getSecondary().getUID();
}
}
return prevStack;
}
示例8: registerDeprecatedAlleleReplacements
import forestry.api.genetics.AlleleManager; //导入依赖的package包/类
public static void registerDeprecatedAlleleReplacements() {
IAlleleRegistry registry = AlleleManager.alleleRegistry;
registry.registerDeprecatedAlleleReplacement("magicbees.effectNodeAttract", effectNodeEmpower);
registry.registerDeprecatedAlleleReplacement("magicbees.effectNodePurify", effectNodeConversionPure);
registry.registerDeprecatedAlleleReplacement("magicbees.effectNodeFlux", effectNodeConversionTaint);
registry.registerDeprecatedAlleleReplacement("magicbees.effectNodeCharge", effectNodeEmpower);
registry.registerDeprecatedAlleleReplacement("magicbees.speciesTCAttractive", BeeSpecies.TC_EMPOWERING.getSpecies());
registry.registerDeprecatedAlleleReplacement("magicbees.speciesBMBloodyBMBloody", BeeSpecies.EARTHY.getSpecies());
registry.registerDeprecatedAlleleReplacement("magicbees.speciesBMBloodyBMBound", BeeSpecies.ARCANE.getSpecies());
}
示例9: getBeeBreedingData
import forestry.api.genetics.AlleleManager; //导入依赖的package包/类
@Asynchronous
@ScriptCallable(returnTypes = ReturnType.TABLE, description = "Get the full breeding list thingy. Experimental!")
public List<Map<String, Object>> getBeeBreedingData(IBeeHousing housing) {
ISpeciesRoot beeRoot = AlleleManager.alleleRegistry.getSpeciesRoot("rootBees");
if (beeRoot == null) return null;
List<Map<String, Object>> result = Lists.newArrayList();
for (IMutation mutation : beeRoot.getMutations(false)) {
if (mutation.isSecret() && !Config.showHiddenMutations) continue;
final Map<String, Object> mutationMap = Maps.newHashMap();
try {
IAlleleSpecies allele1 = mutation.getAllele0();
if (allele1 != null) mutationMap.put(ALLELE_1, allele1.getName());
IAlleleSpecies allele2 = mutation.getAllele1();
if (allele2 != null) mutationMap.put(ALLELE_2, allele2.getName());
final IAlleleSpecies offspringSpecies = getOffspringSpecies(mutation);
mutationMap.put(MUTATION_RESULT, offspringSpecies.getName());
mutationMap.put(MUTATION_CHANCE, mutation.getBaseChance());
mutationMap.put(MUTATION_CONDITIONS, mutation.getSpecialConditions());
result.add(mutationMap);
} catch (Exception e) {
throw new RuntimeException(String.format("Failed to get bee breeding information from %s, collected data: %s", mutation, mutationMap), e);
}
}
return result;
}
示例10: listAllSpecies
import forestry.api.genetics.AlleleManager; //导入依赖的package包/类
@ScriptCallable(returnTypes = ReturnType.TABLE, description = "Get all known bees species")
public List<Map<String, String>> listAllSpecies(IBeeHousing housing) {
ISpeciesRoot beeRoot = AlleleManager.alleleRegistry.getSpeciesRoot("rootBees");
if (beeRoot == null) return null;
final Set<IAlleleSpecies> allSpecies = Sets.newTreeSet(alleleCompatator);
// approach 1: parents and children of all mutations
for (IMutation mutation : beeRoot.getMutations(false)) {
allSpecies.add(mutation.getAllele0());
allSpecies.add(mutation.getAllele1());
allSpecies.add(getOffspringSpecies(mutation));
}
// approach 2: template bees
for (IIndividual individual : beeRoot.getIndividualTemplates()) {
final IGenome genome = individual.getGenome();
allSpecies.add(genome.getPrimary()); // secondary is same as primary
}
// TODO approach 3
// beeRoot.getRegisteredAlleles(EnumBeeChromosome.SPECIES) (Forestry 4.2 API)
final List<Map<String, String>> result = Lists.newArrayList();
for (IAlleleSpecies allele : allSpecies)
if (!allele.isSecret() || Config.showHiddenBees) result.add(serializeAllele(allele));
return result;
}
示例11: getMeta
import forestry.api.genetics.AlleleManager; //导入依赖的package包/类
@Override
public Object getMeta(Item target, ItemStack stack) {
if (AlleleManager.alleleRegistry != null) {
IIndividual ind = AlleleManager.alleleRegistry.getIndividual(stack);
if (ind != null) return ConverterIIndividual.describeIndividual(ind);
}
return null;
}
示例12: handleGenomeFilterChange
import forestry.api.genetics.AlleleManager; //导入依赖的package包/类
public void handleGenomeFilterChange(PacketPayload payload) {
if (!payload.stringPayload[0].equals("NULL")) {
genomeFilter[payload.intPayload[0]][payload.intPayload[1]][payload.intPayload[2]] = AlleleManager.alleleRegistry
.getAllele(payload.stringPayload[0]);
} else {
genomeFilter[payload.intPayload[0]][payload.intPayload[1]][payload.intPayload[2]] = null;
}
}
示例13: registerErsatzGenomes
import forestry.api.genetics.AlleleManager; //导入依赖的package包/类
private void registerErsatzGenomes() {
AlleleManager.ersatzSpecimen.put(new ItemStack(Block.leaves.blockID, 1, 0), new Tree(TreeTemplates.templateAsGenome(TreeTemplates.getOakTemplate())));
AlleleManager.ersatzSpecimen.put(new ItemStack(Block.leaves.blockID, 1, 1), new Tree(TreeTemplates.templateAsGenome(TreeTemplates.getSpruceTemplate())));
AlleleManager.ersatzSpecimen.put(new ItemStack(Block.leaves.blockID, 1, 2), new Tree(TreeTemplates.templateAsGenome(TreeTemplates.getBirchTemplate())));
AlleleManager.ersatzSpecimen.put(new ItemStack(Block.leaves.blockID, 1, 3), new Tree(TreeTemplates.templateAsGenome(TreeTemplates.getJungleTemplate())));
AlleleManager.ersatzSaplings.put(new ItemStack(Block.sapling.blockID, 1, 0), new Tree(TreeTemplates.templateAsGenome(TreeTemplates.getOakTemplate())));
AlleleManager.ersatzSaplings.put(new ItemStack(Block.sapling.blockID, 1, 1), new Tree(TreeTemplates.templateAsGenome(TreeTemplates.getSpruceTemplate())));
AlleleManager.ersatzSaplings.put(new ItemStack(Block.sapling.blockID, 1, 2), new Tree(TreeTemplates.templateAsGenome(TreeTemplates.getBirchTemplate())));
AlleleManager.ersatzSaplings.put(new ItemStack(Block.sapling.blockID, 1, 3), new Tree(TreeTemplates.templateAsGenome(TreeTemplates.getJungleTemplate())));
}
示例14: registerBeeMutation
import forestry.api.genetics.AlleleManager; //导入依赖的package包/类
@Override
public void registerBeeMutation(IBeeMutation mutation) {
if(AlleleManager.alleleRegistry.isBlacklisted(mutation.getTemplate()[0].getUID()))
return;
if(AlleleManager.alleleRegistry.isBlacklisted(mutation.getAllele0().getUID()))
return;
if(AlleleManager.alleleRegistry.isBlacklisted(mutation.getAllele1().getUID()))
return;
beeMutations.add(mutation);
}
示例15: getSpecies
import forestry.api.genetics.AlleleManager; //导入依赖的package包/类
protected String[] getSpecies() {
List<String> species = new ArrayList<String>();
for (IAllele allele : AlleleManager.alleleRegistry.getRegisteredAlleles().values()) {
if (allele instanceof IAlleleBeeSpecies) {
species.add(((IAlleleSpecies) allele).getName());
}
}
return species.toArray(new String[] {});
}