BiomeTweaker

BiomeTweaker

13M Downloads

[SUGGESTION] A script command to blacklist certain biomedict types

Sunconure11 opened this issue ยท 14 comments

commented

Basically what it says on the tin. It'd allow for more precise control over tweaks done to the biomedictionary involving generation.

commented

Could you elaborate on what you mean by blacklist?

commented

Maybe I'm misunderstanding what you mean, but couldn't you just do

types = forBiomesOfTypes("TYPE")
types.remove()
#etc...

That would remove all biomes with dictionary type "TYPE" from generation.

commented

Basically like the command for preventing stuff from generating or spawning in certain biomes, but, applied to the biomedictionary.

commented

Ill write down a better example later, then

commented

Basically though, look at the current blacklist for generation and spawning in biomes, and apply that instead to the dictionary

commented

Basically, ForAllBiomesExcept applied to the biome dictionary.

commented
types = forBiomesOfTypes("TYPE")
except = forAllBiomesExcept(types)
except.doStuff()

That doesn't do what you want...?

commented

If you wanted to do stuff for biomes 1,53,42,32, and make sure you don't modify any biomes with types "TYPE1" and "TYPE2", you could do

biomes = forBiomes(1, 53, 42, 32)
types = forBiomesOfTypes("TYPE1", "TYPE2")
noTypes = subtractFrom(biomes, types)
noTypes.doStuff()

There's also intersect and union... Pretty much every logical quantifier can be made.

commented

I see.

commented

I'll write down what I've come up. I was able to get stuff like Erebus and Twilight Forest mobs spawn in the overworld, there was a syntax error stopping them from spawning.

commented

http://pastebin.com/hiWprY1n

I think I got it... I think. I probably did something wrong, but, I'll test it.

Edit 1: Trying this script out now: http://pastebin.com/GMdmKbFU

Edit 2: Getting there...

Edit 3: http://pastebin.com/bHjGKyw4

commented

Hm, if that stops modification of certain dictionary types, that could work.

commented

You can't pass dictionary types to forAllBiomesExcept. I think you want something like this

withBison = forBiomesOfTypes("PLAINS", "SPARSE", "MESA", "DRY", "SAVANNA", "MOUNTAIN", "HILLS", "COLD", "FOREST")
noBison = forBiomesOfTypes("JUNGLE", "WASTELAND", "SPOOKY", "BEACH", "END", "NETHER", "OCEAN", "RIVER", "MUSHROOM", "DEAD")
bison = subtractFrom(withBison, noBison)

bison.addSpawn("totemic_commons.pokefenn.entity.animal.EntityBuffalo", "CREATURE", 15, 1, 4)
commented

http://pastebin.com/bHjGKyw4

I already managed to figure that out.