#Summon Mushroom Tree?
1 messages · Page 1 of 1 (latest)
Yes.
mushrooms (red and brown) have almost no variabtion, just 1 or 2 extra blocks for height
honestly you could just make them yourself
What do you mean?
I'd like them to grow into the big mushroom trees you get by bonemealing them.
yeah
Yeah that's more than 1 or 2 blocks.
1 or 2 blocks hight difference across all variations
Ah, I gotcha.
so honestly, you can just make the top part and push it up a bit
Like pre-build it, then have the skript generate it over the mushrooms?
I mean I could, but I'd rather do it this way, as people will be building near the mushrooms and stuff.
Is there any reason for this to not work?
i mean you could make a function for it
also, change loop all blocks within {_mushtree1} and {_mushtree2}: to loop all blocks within {_mushtree1} and {_mushtree2} where [(red mushroom and brown mushroom) contains input]:
Why?
this way you're not looping all those unnecessary blocks
Aaah.
Sweet! Thanks.
It does lag quite a bit when it gens.
I'm all down for optimizing.
Errors from this, btw.
Says it isn't a valid lambda statement.
What does this mean?
this just means itll see if the name contains the text "mushroom"
because thats honestly better than parsing them as blocks
"stringify" means to put in quotes.
Ah
string is basically the same sa text
Where do I put this?
right at the end of the loop before the colon
location(x, y, z, world [optional yaw and pitch])
skript will want you to add .5 to the ends too
Well, it was working for the other skript.
Which is the same but just makes it generate grass.
One sec.
OH.
Because I forgot commas, lol.
I think.
skript likes the centre of the blocks, not the corners .0 will give
Yeah, was because of it.
Noted.
Just this one, now.
you're looping twice?
just loop all blocks between a and b where ["%input%" contains "mushroom"]:
Oops, my bad.
Ran fine.
I'll test and see.
Works as intended.
Now all I need to add is the mushrooms growing.
Going to try and test the grow thing again.
This is the error it gives me when I try to use it.
I'm using it correctly according to the documentation, I think??
https://skripthub.net/docs/?id=1006 This is the grow event, which triggers when something grows, so i think it should be possible to grow a mushroom
maybe check the aliases
Well I want the mushroom to grow, not something happen when it does grow.
yeah, im saying if its an object in on grow you should be able to use grow effect
Ah.
Yeah, well I don't know why it isn't working. The line of code I'm using was taken directly from the documentation.
So maybe a bug, perhaps?
trigger:
execute console command "fill 54 -25 -522 54 -29 -562 minecraft:tinted_glass"
execute console command "fill 54 -25 -562 14 -29 -562 minecraft:tinted_glass"
execute console command "fill 14 -25 -562 14 -29 -522 minecraft:tinted_glass"
execute console command "fill 14 -25 -522 54 -29 -522 minecraft:tinted_glass"
set {_mushtree1} to location 273, -29, -303 in world "world"
set {_mushtree2} to location -205, -29, -781 in world "world"
loop all blocks within {_mushtree1} and {_mushtree2} where ["%input%" contains "mushroom"]:
chance of 1%:
broadcast "&eMushroom spawned!"
grow a huge red mushroom above the event block```
Is there another event that lets me bonemeal stuff?
unless i just overlooked something
I'm sure there's another workaround but eh, if I have to, I'll just do the manual version.
How would I make it spawn something like a tree? Or, one that I built?
they're pretty simple
just set a var to the location, raise it up a bit and then fill in surrounding blocks
Well I'm sure, but how do I take this, and save it as a build to generate it?
This is something I've never done before.
you can save it, or you can just build it from scratch each time:```set {_base} to (the block the little mushroom is at)
chance of 50%:
add 1 to {_height}
set block at {_base} ~ vector(0, 4 + ({_height} ? 0), 0) to mushroom stem
this is now the centre of the red part
#now you can either play with more vectors or use "block 1 north/east/west/south of {_block}```
Oooh, sick.
"(the block the little mushroom is at)" what do I put here?
The Y? Or, just the name of the block?
Oooohhh.
trigger:
execute console command "fill 54 -25 -522 54 -29 -562 minecraft:tinted_glass"
execute console command "fill 54 -25 -562 14 -29 -562 minecraft:tinted_glass"
execute console command "fill 14 -25 -562 14 -29 -522 minecraft:tinted_glass"
execute console command "fill 14 -25 -522 54 -29 -522 minecraft:tinted_glass"
set {_mushtree1} to location 273, -29, -303 in world "world"
set {_mushtree2} to location -205, -29, -781 in world "world"
loop all blocks within {_mushtree1} and {_mushtree2} where ["%input%" contains "mushroom"]:
chance of 1%:
broadcast "&eMushroom spawned!"
set {_base} to event block
chance of 50%:
add 1 to {_height}
set block at {_base} ~ vector(0, 4 + ({_height} ? 0), 0) to mushroom stem```
Alright, this is what I got.
No errors, but the "spawnnightstuff" command is just, missing.
Restarted my server, tweaked it, nothing. No idea why.
Oh wait.
Sorry, hold on.
Nope, still missing.
Any ideas?
For context, the previous Skript is this.
trigger:
set {_mush1} to location -214, -29, -294 in world "world"
set {_mush2} to location 282, -30, -790 in world "world"
set {_pos1} to location -214, -29, -294 in world "world"
set {_pos2} to location 282, -30, -790 in world "world"
loop all blocks within {_pos1} and {_pos2}:
if loop-block is tall grass or large fern:
chance of 1%:
set block at loop-block to short grass
if loop-block is short grass:
chance of 5%:
set block at loop-block to air
if loop-block is fern:
chance of 0.5%:
set block at loop-block to large fern
if loop-block is short grass:
chance of 2%:
set block at loop-block to tall grass
if loop-block is short grass:
chance of 7%:
set block at loop-block to air
if loop-block is grass block:
chance of 6%:
set block above loop-block to short grass
chance of 0.1%:
set block above loop-block to fern
loop all blocks within {_mush1} and {_mush2}:
if loop-block is red mushroom or brown mushroom:
chance of 85%:
set block at loop-block to air
if loop-block is short grass:
chance of 0.2%:
set block at loop-block to red mushroom
chance of 0.2%:
set block at loop-block to brown mushroom
execute console command "fill 14 -25 -562 54 -29 -522 air replace minecraft:tinted_glass"
wait 1 seconds
execute console command "killall drops world"
wait 0.1 seconds
broadcast "&c< &6All drops have been cleared! &c>"
wait 0.5 seconds
broadcast "&eIt's daytime! Go out and gather!"```
This is the day variant. I'll try to incorporate your fix for the night one into it later.
you can if loop-block is short grass: chance of 1%: #stuff else chance of 5%: # else chance of 0.5% #
if you mean the mushrooms arent growing, you can debug
but also set the chance to 100% to make sure you dont get unlucky
Oh nah the command is just missing. I restarted, so we'll see if it's back.
Also, I have it ordered in such a way because if it's all at once, then it kind of just overlaps. Short grass is supposed to turn into tall grass for a chance, etc.
Unless you mean for all short grass things.
I'm kind of tired rn so forgive my slowness.
Yeah, the /spawnnightstuff is still missing.
No idea what I did that made it vanish, even though I'm defining the command?
yeah no idea eitehr
Gonna optimize the Skript using your help, then I'll put the night stuff in a different skript. Maybe that'll fix it, idk.
One sec.
trigger:
set {_mush1} to location -214, -29, -294 in world "world"
set {_mush2} to location 282, -30, -790 in world "world"
set {_pos1} to location -214, -29, -294 in world "world"
set {_pos2} to location 282, -30, -790 in world "world"
loop all blocks within {_pos1} and {_pos2} where ["%input%" contains "red mushroom" or "brown mushroom" or "tall grass" or "tall fern"]:
chance of 2%:
set block at loop-block to air
loop all blocks within {_pos1} and {_pos2} where ["%input%" contains "short grass"]:
chance of 3%:
set loop-block to tall grass
else chance of 1%:
set loop-block to fern
else chance of 8%
set loop-block to air
else chance of 0.3%:
set loop-block to red or brown mushroom
loop all blocks within {_pos1} and {_pos2} where ["%input%" contains "grass"]:
chance of 8%:
set block above loop-block to short grass
else chance of 0.5%:
set block above loop-block to fern
else chance of 0.4%
set block above loop-block to dandelion or poppy```
Here's my script.
So, it's erroring on the "else chances"
It can't understand them.
should work
Is there an addon I need?
a chance is just a condition
no, which do you have?
Skript, SkBee, Skellett and SkQuery.
Idk, I just assumed I might need one.
No reason for it to not work.
Also. I moved the spawnnightstuff script to a different script, and the command is still missing, so. Idk.
Maybe my Skript version is outdated?
I'm having a lot of weird issues that shouldn't exist.
maybe, whats /sk info send
My version's 2.6.4
maybe theres an outdated addon or something too
.
remove skquery. not sure if its interferring with yout code, but its useless.
its outdated and all of its features are in skbee or in plain skript
So, the night skript command shows up now, (but doesn't work, but we'll worry about that later.)
Should I just do it the way I had it before, since this still isn't working?
sure
Alr.
set it to event-block's location
Oh yeah, I tried that first.
Didn't work.
Oh, lmao
Now it's just the bottom error.
Both? Or the latter if the first doesn't work?
Well, I tried them both one at a time and it gave the same error.
set block at {_base} ~ vector(0, 1, 0) give an error?
i have no idea whats going on
My Skript is cursed.
These are my plugins, but none of them should be causing issues?
i havent used all of them so i cant validate them, but i dont see anything there
Well, I have, and I can comfortably say they're functional, so idk.
Is there something we're overlooking?
trigger:
execute console command "fill 54 -25 -522 54 -29 -562 minecraft:tinted_glass"
execute console command "fill 54 -25 -562 14 -29 -562 minecraft:tinted_glass"
execute console command "fill 14 -25 -562 14 -29 -522 minecraft:tinted_glass"
execute console command "fill 14 -25 -522 54 -29 -522 minecraft:tinted_glass"
set {_mushtree1} to location 273, -29, -303 in world "world"
set {_mushtree2} to location -205, -29, -781 in world "world"
loop all blocks within {_mushtree1} and {_mushtree2} where ["%input%" contains "mushroom"]:
chance of 1%:
set {_base} to loop-block's location
chance of 50%:
broadcast "&eMushroom spawned!"
add 1 to {_height}
set block at {_base} ~ vector(0, 1, 0) to mushroom stem```
yeah somethings wrong
Should I ping someone or smth?