#help-development

1 messages Ā· Page 997 of 1

worthy yarrow
#

I can say that's when it's not just a nurses job

#

But I swear I have never had a doctor do anything but give me a diagnoses

#

That may not be true, the head injury I wasn't even awake for a couple days so who knows about that one... I do however have another story where the doctor just came in and said "glue" if you can guess where that is going

worthy yarrow
#

So for all my medical experiences, I've only had a doctor tell me what the problem is and nothing else lol

#

I think the issue is that I always try to yap when I wake up and end up saying stupid shit 😦

river oracle
#

nurses do, do a lot of work, but operations and such are usually left up to the doctors.

worthy yarrow
#

Oh yeah I knew that, like I said I think I just say shit in a rather stupid way

#

But then again, I've never had an experience where the doctor really did anything

#

Damnit I filled the chat with my issues again D:, pretty please if you'd be so kind ā¤ļø

dawn flower
#

?

#

basically an event that's triggered when u do Entity#remove

dawn flower
#

?

worthy yarrow
#

Take a look at the way I get rid of the display entity in that class

#

I cache all my active entities, when they are done doing what I want, then they simply get removed from mem and despawned

#

My point being, instead of using an event to handle the cleanup, you should have cleanup implemented yourself

#

^ not in all cases, but in this particular one I think 160k display entities has something to do with not handling the ones you dont need anymore :p

dawn flower
#

ah

#

so i basically cache all text displays and respawn them if they aint alive

#

also does Entity#isAlive return false if the entity's chunk is unloaded

worthy yarrow
#

If you NEED to keep them spawned

dawn flower
worthy yarrow
#

Then keep in mem sure

worthy yarrow
#

uh

#

That is a good question

dawn flower
#

and i want a good answer

worthy yarrow
#

We all do D:

dawn flower
#

i cant even find the 160k display entities

worthy yarrow
#

We figured out these were your entities?

dawn flower
#

i looked at all of them

#

theyre all one

worthy yarrow
#

I meant are the 160k entities coming from your plugin?

dawn flower
#

they prob are

#

theyre all at the chunk at 24, -16

#

how do i tp to that

worthy yarrow
#

If so then you've gotta do something about the cleanup, and also with the caching, you should be able to keep new entities from spawning given you're only keeping track of your display entities... as to not let 160k random ones get spawned

dawn flower
#

yeah i found it

#

oh fuck my pc is dying

worthy yarrow
#

kek

dawn flower
#

help

worthy yarrow
#

You could write a quick patch plugin that removes all entities in that chunk

dawn flower
dawn flower
#

how would i even get the entities there

eternal oxide
#

kill them all

#

there is a command for it

dawn flower
eternal oxide
#

Your plugin shoudl spawn them as needed. you shoudl not be relying on them staying alive

worthy yarrow
#

^

#

Like in the damage holograms repo I sent you

worthy yarrow
#

Each hologram from that plugin is only alive for about 3 seconds

dawn flower
#

my plugin stops them from dying

worthy yarrow
#

Then it's removed forever

eternal oxide
#

they will not be saved so they get removed when the chunk unloads

dawn flower
#

?

eternal oxide
#

you can spawn them again when the chunk loads

dawn flower
#

oh

#

how do i kill them then

eternal oxide
#

you don;t bother

#

or just Entity#remove

dawn flower
worthy yarrow
#

That's the beauty of code

dawn flower
#

:-:

eternal oxide
#

if persistence is false they don;t get saved so are removed when teh chunk unloads

dawn flower
#

im just gonna yoink all entities in that chunk

#

wait is a text display a tile entity or an entity

eternal oxide
#

entity

worthy yarrow
#

entity

#

Damnit elgarl

eternal oxide
#

or use the /kill command

dawn flower
#

yall should be jealous from how unlaggy my server is

worthy yarrow
#

You've got me beat by 20,000 ms

tardy delta
# dawn flower gg

best thing about windows is that it reports your application as frozen, even though its simply blocking the main thread (ik this is an issue on mc)

#

well ye how else would it differentiate

worthy yarrow
#

#gptApplicationFreezingModel

dawn flower
#

minecraft:kill @e[type=text_display]?

tardy delta
#

why do all ai models respond with "oh sorry youre indeed right " when you ask for extra details on an issue?

worthy yarrow
#

?tas

undone axleBOT
dawn flower
tardy delta
#

/tp @e ~ ~ ~

worthy yarrow
#

Nice

dawn flower
#

i should make a hologram system

worthy yarrow
#

The system I've got for that damage holograms plugin might help

dawn flower
#

essential suffers killing just afew entities and minecraft killed 164k entities in like 10 seconds

worthy yarrow
#

I'm trying to reach that level of optimizations D:

trail coral
#

whats the best GUI api rn?

dawn flower
#

bukkit api

#

jk

#

theres plenty, just choose what you need

trail coral
#

whats the most popular ones

dawn flower
#

idk

quaint mantle
worthy yarrow
#

C# is the pest of all languages

trail coral
#

hahaha lolololol

#

youre so funny

#

😐

dawn flower
#

welcome to C, the safest programming language ever

#

icba making a hologram plugin, does dh support text displays

quaint mantle
#

Welcome to python, the fastest language ever

dawn flower
#

assembly >>>>>>>>

#

100 lines to print hello world šŸ—æ

worthy yarrow
dawn flower
#

they aint but if it bugs im screwed

#

i have one but it uses armor stands and buggy af

worthy yarrow
#

False, just handle cleanup more gracefully

#

Cuz somehow you let 160k spawn D:

flint coyote
#

Can we gather some hate for JS?

dawn flower
#

i wish display entities were living entities like armor stands

#

just cancel death event and it never dies

trail coral
#

fuck JS

quaint mantle
worthy yarrow
#

I don't think a text display can ever die if you set persistence to true... unless you remove it yourself

dawn flower
#

imagine having dynamic variable types like js, fuck js

dawn flower
#

interpreted language, pathetic

trail coral
#

how do I load in a building asynchronously?

dawn flower
#

how do u load in a building?

trail coral
#

i have a hashmap with all the blocks and locations

dawn flower
#

use scheduler for async stuff

worthy yarrow
#

Why not use world edit

trail coral
#

i dont want my plugin to depend on stuff

#

other than protocollib

flint coyote
#

You can't place blocks async. There are some hacks to place blocks faster though. But you should still split it into a task if it's too many

worthy yarrow
#

fair enough i guess

trail coral
#

its like a small structure

#

like maybe a tree

flint coyote
#

Then you can do it sync, that's np

worthy yarrow
#

you could do stage building system, where it builds in stages

flint coyote
#

just loop

worthy yarrow
#

That'll help performance

trail coral
#

yeah but heres the problem

#

i want to place that building at different locations right

#

so how do i save the locations correctly

#

i cant just save the current loc

worthy yarrow
#

uh

trail coral
#

did i explain that correctly?

worthy yarrow
#

If your locations need to be persistent then prolly flat file

trail coral
#

like all the block locations are relative to the current location

worthy yarrow
#

You could just save it in mem but that introduces the risk of server crashes and what that entails for your plugin

#

Stage building could also be expanded to support these kinda things, ie: server crashes but your plugin saved the stage it was on, when it comes back up resumes from it's stage

flint coyote
#

and calculate it by using the current location + offset

trail coral
#

how do i save offsets

worthy yarrow
#

Well define save

#

Should it only be saved for that process? Or is it a location you'll be reusing? If it needs to be persistent then I'd say just put it in a flat file and grab it whenever you need

#

Otherwise you could just save the offset in memory

#

Rather caching in mem*

trail coral
#

just a hashmap of all the blocks if

#

ig

worthy yarrow
#

Hmm

#

I wonder if you could define your structure / building with an offset and just store that, rather than the individual offsets of each block

trail coral
#

idk man its too late rn either way so im probably gonna head out

worthy yarrow
#

No worries man haha

worthy yarrow
#

bump šŸ˜„

ivory sleet
#

Got any metrics?

worthy yarrow
#

I do not, I'm quite sure it's related to the temperature system however (the radius calculations for heat sources)

#

I'm sorta in the middle of switching to even based temp updates (anytime the temp should change is when the event will be called)

dawn flower
#

does Entity#isAlive return false if the chunk is unloaded?

worthy yarrow
#

if it's not persistent

dawn flower
#

if its persistent

#

does it

worthy yarrow
#

I'd assume they would if its true

dawn flower
#

hologram system or caching all text displays?

worthy yarrow
#

I feel like you'd be doing both, in the sense that you dont want all text displays cached with your plugin

#

Ie: your system handles your holograms

dawn flower
#

i don't want text displays dying at all (unless they aren't persistent) in my server so it doesn't make sense to make a hologram system if basically all text displays in my server are holograms

worthy yarrow
#

I just meant in the sense if other plugins use text displays you might run into issues by caching all of them

dawn flower
#

i can add an identifier in the PDC or smth to identify unkillable text displays

worthy yarrow
#

Ig it depends how many holograms you want active at any given time

dawn flower
#

like 7

worthy yarrow
#

Point is include a method that can handle the cleanup either individually or in bulk

#

ie: removeTextDisplays method

wintry elk
#

can someone tell me what im doing wrong here

chrome beacon
#

?notworking

undone axleBOT
#

"Does not working" is a useless statement. Please describe what exactly is not working, what you expect it to do, and what actually happens. If you get any console errors, also ?paste the entire stacktrace.

eternal oxide
#

are they stationary?

dawn flower
#

i dont trust myself with /kill

eternal oxide
#

you don;t need kill

#

you literally spawn them and forget

dawn flower
#

i might do /killall all for any reason

eternal oxide
#

spawn them, setPersistent(false) and do nothing else

dawn flower
#

oh

worthy yarrow
#

When the chunk is derenderd, the holograms are automatically despawned

eternal oxide
#

if you want to kep them there if a player returns you can track the chunk you spawned them in and respawn on chunk load

dawn flower
#

i would do that if i want to make a hologram system

worthy yarrow
storm crystal
#

what kind of concurrency is introduced to solve minecraft's single threaded nature in spigot API?

quaint mantle
#

Nor will be in the future

storm crystal
#

oh, so schedulers are really more of an illusion?

quaint mantle
#

Async scheduler can’t even do spigot api

hazy parrot
#

Schedulers in spigot api are not coroutines

young knoll
#

I mean, async can do spigot api

#

Just only certain parts

ivory sleet
storm crystal
#

I'm just worried that I might overhead the game with schedulers too much when doing things like damage over time or cooldowns and such

young knoll
#

You can always keep a global scheduler for that

ivory sleet
#

eh I dont think you need to care too much abt it, unless u actually experience lag, or have a reasonable functional requirement to adhere by

young knoll
#

But honestly the game is already doing a ton of work each tick, a little more probably won't make a huge difference

ivory sleet
#

yeah and in worst case scenario, u may wna implement some work distribution algorithm that can split x amount of work into several ticks

alpine urchin
#

people like to make everything asynchronous

#

and just cause they don't see any results in TPS (duh)

#

they think everything's fine

#

XD

#

it's like shoving the dirt under the rug

#

it's still there

olive lance
#

Can anybody hear listen to touch tone dialing and tell me what is the number

inner mulch
dawn flower
#

how possible is it to make the pattern on a shield an image

jagged bobcat
#

You could make a custom banner pattern now I think

#

And apply multiple players

warm galleon
#

I need a plugin that when the card is inserted in the ATM, the bank account can be opened and only then, can someone help me? who can help me send me sms in dm

young knoll
#

Nah banner patterns aren’t data driven yet

cursive kite
#

I have a boss which I display the health of with /boss. I save an instance of the LivingEntity by reference in the class. The issue is once the chunk unloads and a player comes back to the boss and reloads the chunks the boss is no longer the same LivingEntity instance therefore /boss will always display the health of the boss before it unloaded. How can I fix this to keep it up to date?

wintry elk
young knoll
#

Or keep track of its uuid and use the same event

cursive kite
#

I’m using 1.8 for this project 😦

young knoll
#

Well then you can still track uuid

#

And the event will be ChunkLoadEvent instead

cursive kite
#

So during chunk load check if entities contains my bosses uuid and if so update the references

#

?

young knoll
#

Yes

storm crystal
#

Can I spawn particles that appear only to specific player?

slender elbow
#

yep, you can use the spawnParticle method on Player

#

the one in World will broadcast the particles to nearby players

warm galleon
#

Hello I need someone with experience with plugins to tell me what a plugin is called just by appearance

storm crystal
vague swallow
#

Hey, just a quick question for those who know the newer versions: How do I change the scale of a block display entity? Like how do I stretch it into the x Direction for example?

young knoll
vague swallow
#

gracias

storm crystal
#

Okay

vague swallow
wintry elk
storm crystal
#

Is there any better way to create on click events than invisible armor stands? I essentially want to make portal with particles and make it clickable to travel and its the only thing I can think of

inner mulch
#

playerinteractevent

vague swallow
#

I was confused for a sec bc there was no .setScale but only getScale

young knoll
#

Yeah it’s mutable

vague swallow
#

yeah I found out then

#

thanks!

young knoll
#

All the transformation components are

slender elbow
young knoll
#

Huh then maybe they are

#

I don’t remember that change tho

slender elbow
#

I can't find anything in the wiki about data packs supporting that tho

#

this is so weird lol

young knoll
#

Mojang is a silly goose sometimes

merry cove
#

am stuck, trying to see when fishhook lands in lava and maintain it there in a bobbing effect, but somehow this ain't working? :|.. do I need to bounce it higher, or create a task and repeat it? assumed it would repeat itself.

    @EventHandler
    public void onHookBurn(EntityDamageEvent event) {
        Entity entity = event.getEntity();
        if(event.getCause() == EntityDamageEvent.DamageCause.LAVA) {
            testProject.getLogger().info("EntityDamageEvent fired");
            if (entity instanceof TextDisplay display) {
                if (display.isInsideVehicle() && display.getVehicle() instanceof FishHook fishHook) {
                    event.setCancelled(true);
                    fishHook.setFireTicks(0);
                    fishHook.setVisualFire(false);

                    Vector v = fishHook.getVelocity();
                    fishHook.setVelocity(new Vector(v.getX() / 4, 0.05, v.getZ() / 4));
                    testProject.getLogger().info("bounce...");
                }
            }
        }
    }```
#

I know I am using textdisplay, tried with fishhook first, same result.

worldly ingot
#

Neither of those entities take damage as far as I'm aware

#

Only living entities can, which neither of them are

merry cove
#

hmm, could use a strider or something, sec

#

trying

#

yea this way aint working...

#

any suggestions to a different way of doing this? I could just make a task, but seem a bit intesive

flint drift
#

Hi everyone! I've been looking to hire a developer to help with some plugin configuration on my new server. Between work and family, I just don't have the time to figure some of this stuff out. Would appreciate anyone who can point me in the direction of someone who can help šŸ™‚

slender elbow
flint drift
#

Tried that forum, I can't post anything because my account has "insufficient privileges to post here"

slender elbow
#

you can look up the posts from devs offering their services and contact them

#

there was another link, uh

#

?services

undone axleBOT
slender elbow
#

probably linked in there :^)

eternal night
worldly ingot
merry cove
#

so figured a way to make the hook float in lava, but it aint pretty and resource friendly. (this code is for testing, don't hate).

public class HookTester implements Listener {

    private final TestProject testProject;
    private BukkitTask bobbingTask;

    public HookTester(TestProject testProject) {
        this.testProject = testProject;
    }

    @EventHandler
    public void onCast(PlayerFishEvent event) {
        if (event.getState() == PlayerFishEvent.State.FISHING) {
            FishHook fishHook = event.getHook();
            bobbingTask = new BukkitRunnable() {
                @Override
                public void run() {
                    if (fishHook.isValid()) {
                        if (isHookInLava(fishHook)) {
                            bobHook(fishHook);
                        }
                    } else {
                        cancel();
                    }
                }
            }.runTaskTimer(testProject, 0L, 0L);
        } else if (event.getState() == PlayerFishEvent.State.REEL_IN) {
            if (bobbingTask != null && !bobbingTask.isCancelled()) {
                bobbingTask.cancel();
                testProject.getLogger().info("Bobbing task cancelled.");
            }
        }
    }

    private void bobHook(FishHook fishHook) {
        Location hookLocation = fishHook.getLocation();
        Block block = hookLocation.getBlock();
        if (block.getType() == Material.LAVA || block.getRelative(0, 1, 0).getType() == Material.LAVA) {
            fishHook.setGravity(false);
            fishHook.setFireTicks(0);
            fishHook.setVisualFire(false);
            Vector vector = fishHook.getVelocity();
            fishHook.setVelocity(vector.setY(.15));
            testProject.getLogger().info("Hook bobs above lava.");
        }
    }
}```
worldly ingot
merry cove
#

I hate that I can't find a better way >.<

slender elbow
#

oh god

worldly ingot
#

Some people have way too much free time

#

I wish I could be a professional shitposter

young knoll
#

Wait that’s awesome

#

And they can go on shields too

#

Mojang be on that data driven train again

#

Cmon Mojang you know what’s next

slender elbow
#

(what's next?)

#

well, we know what's next

#

enchantments

young knoll
#

Blocks plz

slender elbow
#

gotta wait until they componentify them first

#

then we can dream

young knoll
#

How about villager trades

buoyant viper
#

if it has some mode of display, bad apple will be played on it

young knoll
#

I’ve seen it on sheep and trapdoors

vast ledge
#

Ive seen it on the fileexplorer

sour mountain
#

does anyone know of a bukkit event for when a player enters or leaves a dimension? ex: going from overworld to nether via nether portal

vast ledge
#

Yea

#

its called PlayerChangeWorldEvent

#

afaik

#

No

#

PlayerEnterPortalEvent

sour mountain
#

oh cool thank you!

#

@vast ledge do you also happen to know how to get the coordinates of where the player was when they left the dimension?

vast ledge
#

If you're using the PlayerPortalEvent, you can just do player.getLocation(), thats the previouse location, then you'd have to wait a second, and the get location again for the output location

sour mountain
#

I want to use PlayerChangeWorldEvent() so I can track when they just teleport to another dimension as well

#

I tried p.getLocation() but it just gave me the location of them after they went through the portal

vast ledge
#

fo rthat one, use #getFrom()

buoyant jasper
#

i have problem last 2 kits not showing

#

?paste

undone axleBOT
buoyant jasper
sour mountain
#

im not at pc anymore right now but I think it just returns the world the player came from not the coordinates in the world they came from

vast ledge
#

Yea, then i dont know :(

sour mountain
#

alr thanks for the help

rotund ravine
#

?jd-s

undone axleBOT
worthy yarrow
tender shard
worthy yarrow
#

^

#

That's true

slender elbow
#

the ability to play bad apple on 3x2 is unmatched

ivory sleet
worthy yarrow
#

There are a couple that are just runTask, but most are async as well, I wasn't really sure how much of a difference it made but either way it's still causing my test server to run 20,000ms behind

ivory sleet
#

yes

#

so the issue is the Thread.sleep()

#

you're calling it on main server thread

worthy yarrow
#

wait

slender elbow
#

me when I leave the debugger attached and forget the game is running

worthy yarrow
#

god damnit

ivory sleet
#

yea maybe u switch it to just another runTaskTimer, altho nested callbacks can be a hell to deal with

worthy yarrow
#

I'm upset at that

#

cuz 2 days

#

I looked 😦

ivory sleet
#

🄲

worthy yarrow
#

I 100% forgot all events run main thread kek

ivory sleet
#

the applyColdEffect is truly async tho, or well dispatched in a separate thread pool

worthy yarrow
#

Odd

tender shard
#

wth is a cold effect?

ivory sleet
#

runTaskTimerAsynchronously

slender elbow
#

when you fall in snow

worthy yarrow
#

I have a couple of those I'm pretty sure

vast ledge
slender elbow
#

you FREEZE to death

vast ledge
slender elbow
#

god bless leather boots

vast ledge
#

xD

tender shard
worthy yarrow
#

Yeah I am kinda unaware of proper threading techniques lol

ivory sleet
#

yea well in short:
runTask
runTaskLater
runTaskTimer

these run on the server thread, so no volatile, no ConcurrentHashMap etc needed

#

and the ones with -Asynchronously suffix do not run on the server thread, and thus additional proper thread safety may be needed

worthy yarrow
#

Gotcha

ivory sleet
#

yea, also in general, Thread.sleep is usually sth u rarely (im lying) see used in a production ready program, well in spigot/bukkit

worthy yarrow
#

I'm not sure where to put the emitTemp method now... The point is to have event driven updates for the temp system but the display part I need the temp increments to go 1c by 1c (reason for the thread.sleep)

ivory sleet
#

why not substitute the while loop + thread sleep with another runTaskTimer?

slender elbow
#

generally speaking you should never really see a sleep call, but rather use a scheduler to run the thing later in time

#

it will take care of all the nasty details for you :>

worthy yarrow
#

Hmm

#

The issue I now see is that the calculation methods will be called for every time I need to run the task which is kinda heavy

#

So perhaps another structure redesign is in my midst

ivory sleet
#

well its a bit heavy, but definitely lighter than that sleep(1_000L);

worthy yarrow
#

Yeah well perhaps if I didn't forget the events run on main thread lol

tender shard
ivory sleet
#

sooo

tender shard
#

haha

#

no offense btw

ivory sleet
#

;)

worthy yarrow
#

To be fair I had already known the most of that, but apparently I just like to block the main thread

hollow summit
#

blocking the main thread is very fun

#

10/10 would recommend

worthy yarrow
ivory sleet
#

worth a try

drifting ice
#

hello :)

#

for my plugin i want my custom items to glow without having an enchant, how would i do that?

#

this is what i have for the displayname

#

but when i tried to add lore and make the item glow it caused like 11 errors

vast ledge
#

"Make it Glow"????

#

Like the name

#

or?

drifting ice
#

nvm i think i got it

#

i meant the enchantment glint, but with no enchants attached

drifting ice
#

tested my custom 2 weapons plugin, and neither of them are functional

#

trial and error

cursive kite
#

There is always a side it refuses them to look in

#

Arrows allowed full range except despawn

worthy yarrow
#

Hey choco wanna know the daily stupid?

worthy yarrow
cursive kite
#

Anyone know about the sitting on armor stands?

smoky anchor
#

Rotate the armor stand
Make it face a different way

cursive kite
#

I just dont like the movement

#

Is it possible to make the arrow not despawn instead

smoky anchor
cursive kite
#

When player is turning around certain directions are glitchy

smoky anchor
#

Do you need them to turn in 360° at all time ?

eternal oxide
cursive kite
#

Ideally I don’t want it so if they choose to turn around while sitting certain directions have weird movements

#

While on an arrow it does not cause this behavior

eternal oxide
#

and whats the issue with using an arrow?

#

ah it despawns

#

you would have to check in the projectile hit event and if its your arrow cancel the event

#

looks like the Spigot API needs to add a setLife() for Projectile entities

#

oh nm, it has it

#

@cursive kite ^ set that to zero every 30 seconds or so

#

um, can't set to zero. One then

#

Arrows are despawned after 1200 ticks

cursive kite
#

Good idea! I will give that a go

#

Any way to make the arrow invisible

cursive kite
#

For this project I am using 1.8 :p

smoky anchor
#

Uhh, that will not work I think ?
I don't exactly know what that method does, but I think it just does not send the entity to the client.

#

Meaning a client would not know what to sit on.

smoky anchor
undone axleBOT
eternal oxide
#

if you can;t set it invisible setItem to somethign tiny

cursive kite
#

Well.. despite resetting the ticks the player still gets dismounted

#

Player is shown standing but if they try to walk away it teleports them back to the sitting location (standing) until they properly dismount (shift)

eternal oxide
#

yeah 1.8 bug

#

was fixed around 1.10.4 ish

dawn flower
#

hypixel at its peak prob had more players than all of 1.8+ servers combined

eternal oxide
#

client auto despawns arrow when it should not

cursive kite
#

Hm what else can i try ive been googling for alternatives for this project

eternal oxide
#

server doesn;t so insists player is still a passenger, so teleports them back

cursive kite
#

I understand this is an old version but this is what i am doing for my project...

eternal oxide
#

what exactly are you trying to do with the player sitting?

cursive kite
#

Just cosmetic feature

dawn flower
#

then figure something else for cosmetics

cursive kite
#

:l

smoky anchor
#

idk how arrow sitting looks like, but you can try having the armor stand a player is sitting on rotate with the player

#

dunno if it will look the same, but the wierd teleporting thing should be gone

eternal oxide
#

yep, the player is jerking on the stand as it wants you to face forwards

#

forward arc

cursive kite
#

should i use a different enitty

eternal oxide
#

could try

#

small slime or something

#

with AI disabled

smoky anchor
#

I bet all (living) entities have the same facing thing

cursive kite
#

Can you make minecarts invis? lol

smoky anchor
#

RP needed

cursive kite
#

rp?

smoky anchor
#

resourcepack

cursive kite
#

hmm

smoky anchor
#

It's a kinda weird hack where you make all minecarts invisible and give the ones you want to be visible a custom model for the display thing that minecarts have for some reason

cursive kite
#

Slime also has the movement glitch 😢

eternal oxide
#

no way around that with a living entity then

cursive kite
#

Everything beside that dang arrow lol

eternal oxide
#

how about an item frame?

#

it can be setInvisible

#

and its not living

smoky anchor
#

To move it off-grid you'd probably have to make it ride a different entity, but that's no that bad

cursive kite
#

well -

eternal oxide
#

Else you have to use an armorStand and set its facing to the players direction every move

vague swallow
#

Hey guys, does anyone know the the EntityDismountEvent is deprecated and what to use instead?

eternal oxide
#

Not deprecated

cursive kite
#

Seems to only be when facing backwards on the stand, so i guess ill just check the stair facing and ensure they can atleast look forward normally

smoky anchor
cursive kite
#

Wont the player be sitting off the stair then lol

sullen marlin
cursive kite
#

Despite armor stand being set a small it makes the passenger sit as default height :/

eternal oxide
#

just go with the AS and align it to the stair.

#

that way you don;t need to mess with anything and the not being able to face backwards will make sense.

dawn flower
#

how do i get the "null" block

#

the black and purple one

smoky anchor
#

what version ?

dawn flower
#

1.20

eternal oxide
#

thats not a null block, thats a missing texture

#

or is that purple

dawn flower
#

they call it null in hypixel so i just call it null, plus its easier šŸ¤·ā€ā™‚ļø

smoky anchor
#

create RP with broken model
idk of any way for new version

dawn flower
#

is there a way to do it with spigot

cursive kite
dawn flower
#

thats a cute armor stand

smoky anchor
dawn flower
#

isnt there a sitting pose

#

Entity#setPose(Pose.SITTING)

cursive kite
#

What are you on about... I do not want to create a RP

cursive kite
dawn flower
#

use packets

#

or make the armorstand abit lower

smoky anchor
#

Just make the armorsstand normal size (cause in 1.8 the hitbox does not changed based on the armorstand size...)
position it under the stair
set it invisible

dawn flower
#

can i make a giant in minecraft wear a command block (and make it visible)

cursive kite
#
BlockFace facing = stairBlock.getFace(stairBlock.getRelative(BlockFace.DOWN));

            switch (facing) {
                case SOUTH:
                    return 0;
                case WEST:
                    return 90;
                case NORTH:
                    return 180;
                case EAST:
                    return -90;
                default:
                    return 0;
            }
#

Is this good math

dawn flower
#

remove case SOUTH:

#
            return switch (facing) {
                case WEST -> 90
                case NORTH -> 180
                case EAST -> -90
                default -> 0
            }```
eternal oxide
dawn flower
#

damn

#

ima just use display blocks

smoky anchor
drowsy helm
#

with 1.8

#

😦

hollow bobcat
#

Hello, someone know how is made this ? I know that he is using custom fonts. But as we can see he can chat + see action bar messages + clickable buttons (prob inventory?). And he is riding something it must have have something to do with that

cursive kite
#

For some reason it is returning 0.0 for each facing stair

drowsy helm
#

guessing mount is just to stop moving while in the inv

smoky anchor
#

can't be in inventory and open chat

eternal oxide
#

can do with a Text display

drowsy helm
eternal oxide
#

thats the tab complete

smoky anchor
#

riding is probably for the cursor, might be the thing with riding and spectating ?

eternal oxide
#

every character you type fires tab complete, you copy that onto a text display

drowsy helm
#

looks cool but would be really finnicky

hollow bobcat
#

Oh OK i learnt that yes it was display entities and the player is teleported elsewhere

hollow bobcat
chrome beacon
#

That type of UI is done by overlaying the entire screen with a texture from a resource pack

vague swallow
#

What is the mycelium partile called in the particle enum?

chrome beacon
#

To detect button you listen for the punch and then calculate the relative position that they were punching

#

And then map that on to the screen

vague swallow
#

what

#

Yes I tried

#

but I still cant find it

drowsy helm
#

cant find what

hushed spindle
#

seems that ItemFlag.HIDE_POTION_EFFECTS is gone with 1.20.5, what replaced it?

drowsy helm
#

he gave you the javadoc link

eternal oxide
hushed spindle
#

oh i see

#

my mistake, didnt see

#

thank you

vague swallow
smoky anchor
#

random question, what version are you using ?

drowsy helm
#

are you importing the right Particle class

vague swallow
#

org.bukkit.Keyed right?

eternal oxide
#

um

drowsy helm
#

wot

vague swallow
#

wait

#

what

hushed spindle
#

org.bukkit.Particle right

vague swallow
drowsy helm
#

what version

#

are you using

vague swallow
#

1.20.4

drowsy helm
#

does it just say doesnt exist or?

#

because you're not doing anything with it rn

pliant topaz
#

can confirm tho, just tested

#

same here in 1.20.4

#

it just doesn't exist for some reason

vague swallow
#

it says it doesn't exist

hushed spindle
#

well they did change a lot of names in 1.20.6

smoky anchor
#

TOWN_AURA

#

for 1.20.4

drowsy helm
#

yeah its not dang

smoky anchor
#

who tf named that

blazing ocean
pliant topaz
hushed spindle
#

they honestly changed the naming convention way too late

drowsy helm
#

town aura

hushed spindle
#

its such a pain in the ass to account for with plugins that need to be backward compatible

drowsy helm
#

wtf does taht even mean

hushed spindle
#

its nice that its more consistent now but it shoulda been done years back

drowsy helm
#

massive job + not enough contributors

vague swallow
smoky anchor
upper tendon
#

How hard would it be to port my 1.19 plugin to the latest version? (and how would I go about it?)

drowsy helm
#

Simply change the version then remove errors

blazing ocean
upper tendon
drowsy helm
#

An inventory is a ui

blazing ocean
#

but it's just an item

eternal oxide
#

you could do it with display entities and hidden (AI disabled) slimes.

blazing ocean
#

oh god

dawn flower
#

every time i spawn a giant it just disappears after some time, why?

hushed spindle
#

is there any replacement to PotionType.UNCRAFTABLE in 1.20.5+?

eternal oxide
#

peaceful?

dawn flower
eternal oxide
#

how long is "some time"?

dawn flower
#

i found setRemoveWhenFarAway

dawn flower
eternal oxide
#

even if you stood near it?

hushed spindle
#

oh you can just enter null? sick

dawn flower
#

u can do that for everything

#

(except primitives)

dawn flower
eternal oxide
#

If you are moving away from teh giant and it despawns setPersistence(true)

hushed spindle
#

not everything no, some parameters will need to be not null

dawn flower
#

can u set the view range of any entity or only display entities

#

wait view range doesnt even work on display blocks..

chrome beacon
young knoll
#

Only display entities

knotty meteor
#
                    Crops crop = new Crops(CropState.MEDIUM);
                        BlockState state = plant.getState();
                        state.setData(crop);
                        state.update(true, false);```

Hey, Crops is deprecated in 1.20.2 and when i execute this it wont work and crops break. 
Someone knows the right version for 1.20.2?
sullen marlin
#

are you under a rock... thats from 1.12

#

the right thing is whatever BlockData is listed in the documentation for the block you care about

knotty meteor
#

I want to change cropstate of Potatoes

sullen marlin
#

getBlockData

sullen marlin
#

getBlockData + Ageable

knotty meteor
#

Alright thank you :D

dawn flower
#

i set the view range to -1000000 and theres no difference

#

and before u say it bugs at negative, i set it to 0.1 and still no difference

young knoll
#

It’s a multiplier to the clients entity view distance

dawn flower
#

oh

#

so i cant make the giant disappear as the display disappears?

young knoll
#

What

dawn flower
#

cuz if ur abit far it just looks like a display block floating

#

im using display blocks as a "head" for a giant

#

like this

young knoll
#

Can’t you just put an actual block on its head

dawn flower
#

it doesnt scale

young knoll
#

That’s weird

#

The rest of the armor clearly does

dawn flower
#

a normal helmet scales

#

but a block doesn't

#

im gonna try making the block display a passenger to the giant

young knoll
#

Use a normal zombie and the scale attribute

#

Kek

dawn flower
#

and itll prob do the same thing

#

wtf

#

now the giant disappears after the display block

#

it tripled the view range for the giant

storm crystal
#

what's a safe way to implement global constants to use around different classes?

eternal oxide
#

if they are really constants then a Static class is fine

#
public final class Constants {
  private Constants() {}

  public static final double PI = 3.14;
}```
pseudo hazel
#

yeah

#

public static final

upper tendon
#

What was org.bukkit.Material replaced with?

dawn flower
#

nothing

upper tendon
#

😦

wanton comet
#

they seem to do some clientside changes on 1.20.5/6 intentially or not, but now any item with custom enchantment that is registered on the server, but not on client will insta kick the player. Not sure if this can be fixed at all, therefore no way to update the plugin

How are enchantments registered on the client side?

eternal oxide
#

but org.bukkit.Material still exists, or should

upper tendon
#

but like each item is still in the Material enum

eternal oxide
#

yes

upper tendon
#

idk why it says Material doesn't exist then, same with Sound

eternal oxide
#

clear caches and restart

upper tendon
#

nope...

carmine mica
mellow snow
#

I got an error from getDisguiseAPI

        if (plugin instanceof LibsDisguises) {
            LibsDisguises libsDisguises = (LibsDisguises) plugin;
            // Utilizza i metodi di LibsDisguises per applicare la texture al giocatore
            libsDisguises.getDisguiseAPI().setPlayerSkin(player, texture, signature);
        } else {
            player.sendMessage("Il plugin LibsDisguises non ĆØ stato trovato.");
        }
    }```
storm crystal
#

so it would be List<String>

#

so that I can iterate through it without need of creating one for each class that I need it in

#

I was thinking about adding parser too

#

for colors

hazy parrot
#

Why not enum instead of string

storm crystal
pliant topaz
#

yes

storm crystal
#

okay I could do it

#

where should I put one?

#

as in

storm crystal
#

would it be better to put such enum in separate file or like inside same file as my main plugin class?

pliant topaz
#

seperate

storm crystal
eternal oxide
#

You need to learn what static means

storm crystal
#

its redundant

storm crystal
eternal oxide
#

that example I gave would be accessible from ANY other class using Constants.PI;

#

a single instance accessible from anywhere

storm crystal
#

isnt that singleton?

#

or does singleton need to be passed but returns just that one instance?

eternal oxide
#

yes and no, as you are not actually instancing the class

lean pumice
#

Why if i do the build tool in 1.19 i can see the src and in 1.8.8 no?

eternal oxide
#

if you want to iterate then an Enum is better for you. It should be its own class

eternal oxide
lean pumice
#

ah

#

sry

civic sluice
smoky anchor
upper tendon
young knoll
#

Yes 1.21 adds data driven enchantments

#

very hype

wanton comet
#

when does 1.21 come

smoky anchor
#

(once again, hoping for in-built datapack support)

young knoll
#

You mean for plugins? one dayā„¢ļø

smoky anchor
wanton comet
#

hopefully

tardy delta
eternal oxide
#

makes sense

#

however, protect from instancing?

tardy delta
#

if people wanna be stupid, let them be stupid

dry hazel
#

interfaces for constants are super nice, you could implement the interface in a place where you use it a lot and shorten the references a bit

eternal oxide
#

nah, lock everything down. Prevent everything you don;t want

tardy delta
#

in kotlin you have objects, not as java.lang.Object but as object Something { /* declarations */ } which makes a singleton to compare it in java terms

#

so you could do Constants.X and no way you could ever instantiate X

#

anyways that was the lesson kotlin for today

#

im now wondering if im actually correct

dry hazel
#

you are

tardy delta
#

static fields, no singleton

dry hazel
#

that's only for const afaik

tardy delta
#

i believe a companion object creates a singleton

blazing ocean
#

me love objects

hazy parrot
#

If u want it to compile to static, u have to add @JvmStatic annotation

mellow edge
#

difference between:
PacketPlayOutRelEntityMove
PacketPlayOutEntityLook
I need NPC's body to move in given yaw (converted ofc)

#

I don't know which packet handles it tho

eternal oxide
#

rel but you need to calculate the values. it's an x/y/z offset from the current location

#

Basically it's the vector you want them to move in, normalized and multiply by how far you want them to move (up to 8 blocks)

mellow snow
#

I got an error on getDisguiseAPI

    private void applyTexture(Player player, String texture, String signature) {
        if (plugin instanceof LibsDisguises) {
            LibsDisguises libsDisguises = (LibsDisguises) plugin;
            // Utilizza i metodi di LibsDisguises per applicare la texture al giocatore
            libsDisguises.getDisguiseAPI().setPlayerSkin(player, texture, signature);
        } else {
            player.sendMessage("Il plugin LibsDisguises non ĆØ stato trovato.");
        }
    }```
eternal oxide
#

no error = we can;t help you

#

as you've posted twice now

mellow snow
#

This type of error

#

I don't understand what's the problem

eternal oxide
#

What error? You are just postign code

mellow snow
#

you see that getDisguiseAPI() it's red?

#

It's because it's not correct

eternal oxide
#

ah ok

mellow snow
#

but idk why

eternal oxide
#

wowo their wiki is so rubbish

mellow snow
eternal oxide
#

well it looks liek DisguiseAPI is a static access

#

so no plugin.getDisguiseAPI

#

just DisguiseAPI.

#

for everything else it's LibsDisguises.getInstance()

vague swallow
#

Which event can I use if I want to check if any entity is moving no matter which type it has?

eternal oxide
#

there is no move event for entities

broken nacelle
#

see if ur using an updated api

vague swallow
#

How can I prevent a spider from jumping then?

eternal oxide
#

mess with its AI

#

good luck with that

eternal oxide
#

pointless

#

he wants to prevent it jumping so checking its location will not help

#

There is no event for mob moving.

#

Only way to prevent it is modifying the AI so it can't jump

broken nacelle
eternal oxide
#

Still not. No way to detect when it jumps

#

unless you are going to set its velocity every tick on every spider

#

then spiders will not be able to climb either

broken nacelle
eternal oxide
#

god no

#

every tick?

hybrid quartz
#

How can use spawn particle only for exact player? Cause when I use spawn mob_appearance elder guardian spawn for all player's nearby
p.getWorld().spawnParticle(Particle.MOB_APPEARANCE, location, 1);

broken nacelle
eternal oxide
#

prevent

#

you can;t prevent it without being able to know when it jumps

#

which can;t be detected without lots of load on your server

#

Modifying the AI is the only suitable method

broken nacelle
#

@vague swallow why do you want to prevent the spider jump?

eternal oxide
#

good question

rapid vigil
#

because when you try to hit them, they jump thus dodging the attack

broken nacelle
#

mm

broken nacelle
eternal oxide
#

what? of course they will

broken nacelle
eternal oxide
#

Tell me how you are going to tell teh difference between a spider jumping and one climing a block?

broken nacelle
#

he just wants to stop the spider jumps when he attacks it

#

not all the spiders

eternal oxide
#

my question still stands, how are you going to differentiate between a jump and climbing a block?

pseudo hazel
#

can I stop this from happening when I am teleporting between worlds?

rapid vigil
#

just don't move too quickly

eternal oxide
#

not easily

pseudo hazel
#

im literally cross dimensionally teleporting

#

how does it even move too quickly

#

does it just not care about the world or what

eternal oxide
#

yeah, it sees movement past 8 blocks in a tick and you get spam

pseudo hazel
#

jeez

#

how does regular minecraft teleports fix that then

#

like going through portals

eternal oxide
#

the moved too quickly is a spigot thing

eternal oxide
pseudo hazel
#

yes but moving through a nether portal doesnt spam my console

#

even though its functionally the same thing

broken nacelle
#

check if the players hits a spider

eternal oxide
#

and then?

pseudo hazel
broken nacelle
#

then set the spider velocity

eternal oxide
#

So the player hits a spider, but its not moving yet so theres no velocity to zero out

#

it doesn;t start to move until after the damage event has finished

eternal oxide
#

During the damage event the spider does not move

#

there is no velocity to zero

chrome beacon
rapid vigil
hybrid quartz
#

oh yeah really

#

thanks guys

rapid vigil
#

np :D

umbral ridge
#

turn them off or on

pseudo hazel
#

okay so its up to the server owner

#

sadge

teal kindle
#

Does recipe exact choice work with items that have custom attribute modifiers?

lost matrix
hybrid quartz
#

How can I show player death message or demo message? Or is it possible only with NMS

eternal oxide
#

Bukkit.broadcast

hybrid quartz
#

but i need to broadcast this title when you dead

#

where is respawn and leave buttonsd

eternal oxide
#

then send a title

#

Bukkit.spigot().sendMessage

hybrid quartz
#

this will just send message

teal kindle
# lost matrix It should be valid for any change in the nbt data

Thanks, I'm having an issue where my custom recipes do not work. I believe the issue is because I used UUID.randomUUID() when I created the attribute modifiers used in the ingredients of the recipe, and random UUIDs should almost never collide. Should/can I use the same UUID when creating attribute modifiers?

hybrid quartz
#

can't send screenshoot

#

can i send links here?

eternal oxide
#

you can not send messages IN the death screen

hybrid quartz
lost matrix
hybrid quartz
#

And messages that demo version ended also

lost matrix
#

Lol

eternal oxide
#

demo version?

pseudo hazel
#

thats bedrock

lost matrix
hybrid quartz
hybrid quartz
patent coyote
#

how would i go about teleporting a player in a boat where they player and the boat get teleported instead of just the player

#

1.20.6 api

lost matrix
patent coyote
#

alr ty

lost matrix
#

Cluby has Something to say about this as well? smileybolb

drifting ice
#

?paste

undone axleBOT
ivory sleet
#

cluby? lol

kindred sentinel
#

Do anyone know how to rotate display item?

chrome beacon
#

set the transform

patent coyote
#

how do i teleport a boat lmao

kindred sentinel
round finch
#

How you save a hashmap into a chunk?

#

Or list idk

#

PDC

kindred sentinel
#

You can try to transform list into array and add there an array

quaint mantle
#

?pdc

chrome beacon
#

?morepdc

undone axleBOT
grim hound
#

What would happen if a synchronized method called itself?

#

Cuz for non-sync it'd result in StackOverflow

kindred sentinel
# chrome beacon ?morepdc

Even in the summon generator when I'm trying to rotate display item with right rotation, it doesn't work, it changes it's scale, or something like that

#

but it's invisible

#

And rotating it using a plugin is even more difficult

patent coyote
#

i cant seem to teleport a boat

dawn flower
#

is there a list of supressable warnings in @SuppressWarnings?

patent coyote
#
Boat boat = (Boat) player.getVehicle();
            boat.teleport(destination);
#

how come that dosnt work?

dawn flower
#

u cant teleport vehicles with passengers

patent coyote
#

ah i see

dawn flower
#

dismount the player then teleport the boat then remount

#

its usually not even visible cuz of how fast it happens and to make it even more convincing teleport the player with the boat then remount

patent coyote
#

thank you for the advice

dawn flower
#

np

patent coyote
#

hmm

#

this actually is a problem

#

wait nvm

#

im just slow

#

thank you again

kindred sentinel
#

._.

patent coyote
dawn flower
#

np

pseudo hazel
#

but probably the latter

young knoll
#

It's also a quaternion not a standard vector

kindred sentinel
#

Well... Okay, I will just continue using armor stands ,_,

remote swallow
#

@young knoll run /summon block_display ~-0.5 ~-0.5 ~-0.5 {Passengers:[{id:"minecraft:item_display",item:{id:"minecraft:acacia_boat",Count:1},item_display:"none",transformation:[10.0000f,0.0000f,0.0000f,0.5000f,0.0000f,1.0000f,0.0000f,0.5000f,0.0000f,0.0000f,10.0000f,0.0625f,0.0000f,0.0000f,0.0000f,1.0000f]}]}

kindred sentinel
remote swallow
#

ah i see

clear elm
#

Could not find artifact me.clip:placeholderapi:pom:2.11.5 in spigotmc-repo (https://hub.spigotmc.org/nexus/content/repositories/snapshots/)
why cant i import papi in my projekt
<dependency>
<groupId>me.clip</groupId>
<artifactId>placeholderapi</artifactId>
<version>2.11.5</version>
<scope>provided</scope>
</dependency>

young knoll
#

Doesn't it have its own repo

#
  <repositories>
        <repository>
            <id>placeholderapi</id>
            <url>https://repo.extendedclip.com/content/repositories/placeholderapi/</url>
        </repository>
    </repositories>
clear elm
#

ty

lethal coral
#

If a chunk is already saved and I call this method, would this effectively delete the chunk?

        for (Chunk chunk : chunksToUnload) {
            world.unloadChunk(chunk.getX(), chunk.getZ(), false);
        }
young knoll
#

no

lethal coral
#

ok how can I actually delete a chunk then

acoustic pendant
#

If I want to make a 8h cooldown for example, should i do it with hashmaps or another way?

dapper flower
#

like delete all the blocks in the chunk?

lethal coral
#

completely unload the chunk and delete it from the world folder

dapper flower
#

you can refresh chunks but not delete em iirc, why do you need to delete a chunk in the first place

lethal coral
#

because I'm optimizing my world

#

it's not a survival world

#

it's for lobbies/minigame maps

dapper flower
#

then you can't unless you use edit the world with an external program

#

like MCEdit

lethal coral
#

why not

dapper flower
#

beacause you just can't, it isn't a feature

lost matrix
#

You can very well just delete the region files in the world folder to prune it

#

Just make Sure the chunks arent loaded at that time

#

But for lobbies and Minigame maps, i would suggest using a void ChunkGenerator implemntation

lethal coral
#

so it's like 2k chunks loaded instead of way less

lost matrix
#

Then delete them smileybolb

lethal coral
#

easier said than done 😭

eternal night
#

just grab mcaselector stonks

lost matrix
#

Literally call .delete() in the Files

lethal coral
#

I have to go inside of the region files

#

ā˜¹ļø

tardy delta
#

have fun

lethal coral
eternal night
#

If this is a one time thing, literally just mcaselector

#

a tool to do exactly that, yank old chunks

lethal coral
#

no this is a map editor plugin

eternal night
#

oh

lethal coral
#

😭

eternal night
#

Tell them to use mcaselector instead 5Head

lethal coral
#

it'd just be a lot easier in the long run if I made this automatic

eternal night
#

I mean, NMS it is for you then

lost matrix
lethal coral
lost matrix
#

?workdistro

plush sluice
#
case ZOMBIE -> {
                Zombie zombie = (Zombie) e.getEntity();
                Objects.requireNonNull(zombie.getAttribute(Attribute.GENERIC_SCALE)).setBaseValue(scale);
            }
case BLAZE -> {
                Blaze blaze = (Blaze) e.getEntity();
                Objects.requireNonNull(blaze.getAttribute(Attribute.GENERIC_SCALE)).setBaseValue(scale);
            }
and other mobs

is it possible to make it work for all mobs that i add to config?

#

I need to Specify that blaze is Blaze because otherwise i wont be able to use blaze.getAttribute()

noble crown
#
if (e.getEntity() instanceof LivingEntity livingEntity) {
    livingEntity.getAttribute(Attribute.GENERIC_SCALE).setBaseValue(scale);
}

should work ig

proper cosmos
#

Is Player#damage armor dependant?

acoustic pendant
#
                            cooldownManager.setCooldown(playerUUID, Duration.ofHours(section.getLong("time")));
                            cooldownManager.setCooldown(playerUUID, Duration.ofHours(1));```
Could someone tell me why is the second one working but not the first one?
rotund ravine
#

Define not working

lean arrow
#
@EventHandler
    fun bottomBorder(event: PlayerMoveEvent) {
        if (!isSkyBattle(event.player.world)) return
        if (event.from.y <= 71) {
            val damage = EntityDamageEvent(event.player, DamageCause.VOID, 20.0)
            Bukkit.getPluginManager().callEvent(damage)
        }
    }

anyone know why this event doesn't get called? Done some debug statements and it definitely gets reached but the player never gets damaged

chrome beacon
#

Firing the event won't actually damage the player

#

it will just trigger the event

lean arrow
#

šŸ˜”

remote swallow
#

use player.damage

rotund ravine
lean arrow
#

i can do from an entity

#

but the void isnt an entity

acoustic pendant
rotund ravine
#

Set their hp @lean arrow

rotund ravine
acoustic pendant
#

i'll do

rotund ravine
#

Set their hp based on the returned totaldamage from the event or smth @lean arrow

acoustic pendant
young knoll
#

😩

rotund ravine
rotund ravine
acoustic pendant
nova quail
#

How can I check if player was pushed by plugin and then cancel fall damage?

                CoolDownManager.setPushCooldown(player.getPlayer(), Plugin.getInstance().getConfig().getInt("cooldowns.push"));

                Location location = p.getLocation();
                p.setVelocity(location.getDirection().multiply(2).setY(30));
            } else {
acoustic pendant
#

it shouldn't be but idk

young knoll
#

Also .damage can do typed damage

#

In modern versions

rotund ravine
tardy delta
nova quail
rotund ravine
young knoll
#

I don't think eclipse made the class package private :c

remote swallow
#

it did

patent coyote
#

how can i check if the player has a lead on a entity

nova quail
rotund ravine
#

Are they always falling

nova quail
rotund ravine
#

Alright

#

Then simply flag the player when you push them. When they take damage next time check for flag and if falldamage, remove flag and cancel the damage event.

nova quail
rotund ravine
#

A set of uuids will work fine

nova quail
#

ok thanks

#

i'll try

nova quail
# rotund ravine A set of uuids will work fine

Why It don't work? Am I using right event?

    @EventHandler
    public void onEntityDamage(EntityDamageEvent e) {
        if (e.getEntity() instanceof Player) {
            Player player = (Player) e.getEntity();
            if (pushedInAirPlayers.contains(player.getUniqueId())) {
                pushedInAirPlayers.remove(player.getUniqueId());
                e.setCancelled(true);
            }
        }
    }
}
chrome beacon
#

That contains check is reduntant

nova quail
#

sorry don't know english very good

chrome beacon
#

It means not needed

patent coyote
#

i got itworkin

chrome beacon
#

because remove already returns if the element was removed or not

karmic sapphire
#

Heyyy I was wondering if anyone had any idea on how to fix this bug I keep on encountering whenever I build a project on Ubuntu. https://mclo.gs/k83w4CC It keeps on saying permission denied.

nova quail
#

but player still dies when he fall on the ground

lethal coral
#

is running these two methods even doing anything?

chrome beacon