#help-development
1 messages · Page 903 of 1
everything you say? 
everything.
20$ is 20$
i see thanks everyone
How conveniently consistent
xD
block.getType
blockData.getMaterial
yeah hey what's up with that
the api once once commited is set in stone xD it's too late to fix it now
there's probably a really poor excuse
id say they've been made at different days
one week i'm feelin like a getType and the other i'm more of a getMaterial guy
The true measure of how good you are is inversely proportional to the amount of times you look up java docs
The true measure of how good you are is inversely proportional to the amount of times you look up java docs
excuse me
wait docs for code exists?
Unless it's one of those methods with like 19 params
Like raytrace or createExplosion or potion effects
Builder pattern when
idea tells me all i need buddy
Not always
it was a halfjoke but hey
tfw when you already did more than enough work for the day but don't really have anything else to do so you reopen the ide
Me asf after pulling 7 back to back 15 hour sessions
russian sleep experiment
15 hours? are you on a holiday?
No
im not even motivated enough anymore to open the ide once
must be nice
id rather stare at the wall
Eh
fake programmer
man I actually started working on this feature just to prove to 1 person on stream that I could do it
this is some next level shit
Woke up half an hour later all lost
I can't even go to the gym, it's a rest day
I actually feel like I might go regardless just so I don't have to look at packets for another 5 hours
hah
i never learnt java
yet i'm apparently qualified enough to write a bukkit api
i did a crash course so now i know java
wish i still had that energy
i know other languages so i just assume java
but lost it years ago
Levelled blockLevelData = (Levelled) blockData;
so on this line blockData is being turned into Levelled variable? @bleak eagle
buddy this project is 8 years old and I'm still gaining power right now
exactly
this isn't even my final form
so (something) works as a converter
yup
alright thanks
Does the beard turn yellow in final form
better yet, white
but once again before writing that line make sure you have all the necessary if-checks to know if the blockData you're casting is indeed castable to Levelled @devout pivot
turned into? no. casted to? yes.
also I'm trying new meals in my strict diet and they're garbage
I fucking hate tuna
that shit is nasty
alright
magmaguy thinks white is always better, confirmed
it makes me want to pollute the oceans
racist?
i see i see
tuna is ass
Put tuna, rice and kewpie mayo together
I don't think white makes you more powerful I think me becoming even whiter increases my power level
It’s reallt good
one day I will be able to do full snow camo without requiring any clothes
isnt composters blockdata already levelled?
Can we see you without clothes rn so we can compare in the future
yes but every other blockdata which is not levelled will let your code explode
For future reference
so you have to explicity check
I must be the person on here with the most selfies second only to mfnalex drunkposting
(which you should always do)
I have a very public image
i see. so even if its levelled, other blockdata can be of other variable so i hv to first declare that its levelled to use the getLevel() method?
just dont say that to alex
he wont hesitate
it is yes
that's what we were sorta discussing, cuz in the case of a composter you are already sure it's levelled if you just check if it's a composter
but others suggested a better practice is checking if it's levelled anyways as well as checking if it's a composter because mojang has the power to make a composter non-levelled for whatever reason whenever they want to
alright understood
I think I posted like 2 way back in the day
Going to test this hypothesis
mfnalex drunkposting? elaborate.
I am surprised he isn't here right now
all good ol' alex drunkposting
posting certified hood classics like putting a hole in the wall without looking
my question was that after we checked that my block is indeed composter, it still didnt let me use getBlockData().getLevel(). is it bcz the blockdata of other blocks can be of different variable so i hv to first declare that its levelled to be able to use the getLevel() method?
exactly
or wine glass pics in the bathtub at 3am
He always posts him doing dumb shit and or singing when drunk
Quite often
that was like 5 times a day every day for a while
i see
is he drinking again?
computers are dumb and a Block is a Block, there's no specific Composter type that is Levelled, so you must check if the Block is indeed levelled and cast it
Yeah he did
yeah but I thought it failed every time
I've not been keeping up with my mfnalex lore
and alex gets drunk a few times a week
yea understood
@bleak eagle I made a PR now https://hub.spigotmc.org/stash/projects/SPIGOT/repos/bukkit/pull-requests/978/overview
there he is
Speaking of the man
Boooo UnsafeValues
why use UnsafeValues when you can use Unsafe
I've never been drunk, and I can count the individual alcoholic drinks I've had in my life in a single hand
Gotta get that ItemType and BlockType merged so we don’t need UnsafeValues
did it make the $5 pizza go down smoother?
Then we can add a ton of new api methods for items and blocks
I haven't had 5$ pizza
for at least 2 days
I tried getting chicken yesterday but it was closed
I ordered lunch at like 6:30pm
this man will have clogged arteries and a beer belly by 35
Got blackout in vietnam and woke up on a beach with all of my belongings thankfully
Plot twist
which to be fair is better than a dude I play dnd with who is 26 and already has a beer belly, que lenda
The beach was in Florida
idk why magma judges my 5$ pizza habit I'm still eating like 1.8k calories a day
Not exactly the healthiest 1.8k calories
it's still 1.8k
and I'm sure when you break it down you're hitting the right macros
calorie is calorie
don't worry illusion I'll bench press your casket at your funeral in your memory
sure buddy
avg beach activity
is this a challenge
That’s just playing league of legends
what do i get for winning
i weight like 75kg lmao not too hard
that's p easy to press
so yeah magma's legendary bench press can be achieved by a 14yo
go figure
75kg isnt easy to press

sounds like you need to press more
weak

i bet like 80% of males between 20-40 cant bench press 75kg
ImIllusion on their second cycle
tren fien
In what world is 75kg easy bruh 💀
Ive worked out for 2y now. Im at 95kg with 16% body fat and a proper 75kg press with 10 reps is def not light.
imlllusion is a stick, if he can benchpress 75kg, everyone can
I'm not a stick fym
yeah all that $5 pizza won't make you a stick
pic or didnt happen
.. no
stick.
95kg 16%
mofo how tall are you
prob 185+
Bruh isn't a stick trust me
1.80
dang you're just lean
damn
180 at 95kg is real heavy
depends on mass
programmer + gym often = winning life

I'm 185 at 98kg and I'm probably taking it down to 90
ah yes the 3 pillars of life
programmer + home gym + never see the sun again = won
ezpz
yeah I've seen plenty of people on the internet achieve 0
I've ever seen many of those people in here
most sociable, active people who program in my uni course are like 10x better coders than the shutins, it's weird
Skill issue tbh
the shutins are too addicted to honing their skills
lets see if i still have a poser pic. I dont like taking pics in the gym so i prob only have old ones
the active sociable people already got past that phase
I knew a shutin that was a great programmer
oo me me me
#help-development convo frfr
until he snapped and got committed to a mental asylum
i meant imlllusion, but if you want to flex us go for it
this is not a joke
oo not me
Not yet*
I'm lucky i started programming early, I got past that nerdy tism early, now I focus more on social skills
he's my sister's ex, showed up at my house and I took him out for a coffee and told him if he did it again I'd call the cops
man all the haters saying I'd never be anything in life were right
I don't take pics
hey at least you selfreflected to that
you're not nothing! You're some dude sitting at his computer talking on a minecraft development discord
that's.... something
think that my last pic was like.. june last year
and it was a parody of my homie's linkedin photo
dang you have 63k messages on this server
that's illusion on the left and me on the right
sure buddy
magmachad
but hey if you need poogin lmk
thank you but i'm so conflicted about this
he's literally hardcoding blocks and items into bukkit methods (with or without script, it's still hardcoded)
and the reason is i think that bukkit should not depend on craftbukkit
We don’t talk about that
it should be a full api definition and it should return edible Materials on isEdible(), no matter where you implement bukkit
like someone could implement bukkit on top of different server software and not NMS if they really wanted to
sometimes you need mistakes to learn from
and they shouldn't have to explicitly write methods that return predictable values
Those massive switch statements are all gone with ItemType/BlockType
OK this is really old. Pretty much one year ago when i still was fluffy

Also I highly doubt it's hard coded I'd reckon MD more likely than not has a tool
smile is bigger than I thought
told you
Now this +1 year
95kg for 180 is heavy
Look at all those big balls by the ceiling
like to have that look I'd have to be at what, 110?
smile so strong he has to replace his keyboard after every keystroke
I'm not
is that a 9gag shirt?
for years half of my dnd group was over 190
those guys were fucking tall
I'm just a normal size
sounds like a nerd group
Yeah my last gf git me this bc i was always browsing this garbage site when she was ranting about random stuff
Deece
deuce
deese
nuts
nuts
Nuts
sniped
A single brain cell is shared by all of #help-development
what
I wonder why there aren't more women devs
Yeah fr
Bcaus they would have to deal with us
I can't stand most other developers
I cant stand most of my own code
If there were more female devs we wouldn’t all be single!
I know multiple women devs I should introduce them to spigot
hey @lost matrix how much do you leg press
110kg
you can def do more than that
Actually there’s always the joke that programmers can’t get girlfriends so they become the girlfriend
"joke"
yeah 110 leg press is not heavy
is that including machine resistance
110 is nothing
Like what alex did
if you can't beat the evil, be the evil
Hm?
You're not usually unhinged
I'm just upset that I backslid on my leg press after the surgery, I'm aiming for 400kg by the end of the year
My guys i dont lift weight to boast about numbers. I maximize muscle entropy.
whats the point :/
I lift to not be a fatass ¯_(ツ)_/¯
Proper 10-15 reps with 3 sets on 110kg is heavy af
i lift to get women
I lift to not be at my desk for 2 hours a day every 2 days
i added the comment on that pr just for brevity so md can see it and tell us more about wtf is on
i'm not sure whether it should really be implemented this way, even though it's a lot cleaner
It shouldn’t be
imagine posting development related messages in help dev :/
true
blocks can be composted too
if a developer develops their body at the gym are they not developing?
basically I'm saying I should also charge for the time I spend at the gym in projects
that background looks like a 4:30 pm aerobic course room
Blocks that have an item form have an ItemType
It actually is. I dont like taking pics in the actual gym so i go in a side room 🙂
I have a really easy solution that works well for me
damn im good
just.. don't
I don't either
I also dont. I only made those bc gf nagged me to take some for her -.-
Thats why its a year old XD
At least she let you keep the clothes on
so you're a superstar dev and you ha(d/ve) a girlfriend? huh
👀
tbh that pic could also be 10 years old
that multi-level flex
Hey I had one too :(
I bet there's no gf and the image is ai generated
Her cat is in my profile picture
I lied about the 3 pillars
here are the 4:
- mental stability
- money
- health
- girlfriend
good luck finding someone that has all 4
true you got me. Im actually a 1.60 50kg filipino
isnt 2/3 already done by having a gf
get back to work
no
wbu boyfriend? very discriminatory, sir
because if you have a girlfriend all your money disappears
I was gonna make that joke
and when she's gone so is your mental stability for a while
Dangit
Or forever!
the fourth pillar is a lie
they all compliment each other except the last one
god forbid women have hobbies
go back to analysing jdk internals
hell yeah
See Emily took the become the girlfriend route
I am the 100%
we all know girls have cooties
it's amazing the lengths I am willing to go to not look at the code that is not generating display entities right now
This helped me with development. Thanks #help-development!
have you tried rust ?
idk all rust developers I know are cute 🥰
there's 55 game engines written in rust and 3 games
I'm already past C++ 😨
It's real
Bevy is best
Dang what happens past C++
Well, rust
after rust?
that's where the furries are, we don't talk about those
Rust C then assembly
finally, bukkit
Y2k furry?
Nah I'm just ultra femboy
yo @echo basalt is it just me or is it an insanely warm day today
I have the windows open and I think I might have to turn the ac on
It do be kinda crazy how male dominated programming is though
My college course had like 3 women
yeah it is
solid 22C here
what kind of february weather is this
but it's sunny like it's summer
i can't think of why this would be the case tbh
Where tf are you
Pipe some of that here pls. Its cold as heck today.
if they told me this was what global warming was about I'd have gone for this way earlier
it's like 25 here
can't wait for the 40C+ summer
I love 40c summer
Does not answer the question 🔥
xD
that's when you make puddles when you work out
I mean I legitimately don’t know
that's when you feel really alive
the message reads out in an ironic tone but it was a serious statement
please tell me someone here likes cold weather
tyyy
I loathe cold weather
I only like dry, quiet snow days. Damp or wet cold weather is garbage.
it's like impossible to survive i nsummer
imagine having snow lmao
winter is inf better
winter is chill
literally
shut up magma you live up north it's bearable there
come to the south that's the real shit
north
7 hours?
hey has anyone ever used protocollib?
This is littt
sumn like that
?ask
ask away homie
If you have a question, please just ask it. Don't look for staff or topic experts. Don't ask to ask or ask if people are awake or available. Just ask the question to the channel straight out, and wait patiently for a reply. Make sure you use the right channel regarding the topic of your question. Create a thread in case the channel is already in use!
7 hours?
yeah
I really don't think so
yeah, about right. nordic by heart 🔥
4hrs through the highway interesting
My Dogo on the first snowy day this winter
there's literally no place in portugal that takes 7 hours to get to my dude
92hr walk
reasonable with how slow trains are in most places
rip gtg
have fun eating rotisserie chicken
The rest you dont like?
no, the rest aren't in the list my nutritionist gave me
you know, it's a $30/mo thing which I feel is maybe not quite as fancy as you might imagine
and I end up saving way more than that in that I am eating just about the cheapest food you can find
I just try to get my 200g or protein in and the rest is whatever fits into my calories still
I started a month ago, I'm happy with it
My breakfast was a monster and m&ms im missing out
got a ton of definition in just a month
and I'm lifting way more
(but I was in recovery so it's kinda cheating)
Imagine cutting down and not just bulking 24/7
I would be hungry all day on that
I have a hard time downing it most days tbh
I mean if its only lean meat and vegetables then it can be a lot
2200cal of healthy food is a volume of food much larger than 2200 of random less healthy food
lean cuts, boiled vegatables and rice 90% of the time
trying out pasta and tuna with vegetables but man I hate it
I'll finish what I have and then never again
sigh. Its a rest day but all that got me a bit worked up. gonna go work out, see ya guys
alright so im using a packet listener PacketType.Play.Server.ENTITY_EQUIPMENT
and am trying to make a kinda anti cheat to stop people from seeing other people their durability
but yeah it doessnt work i have been trying to search it but nothing is really comming out of it
https://paste.md-5.net/anayohonit.java
can I not get a JsonObject from a JsonArray?
Isnt a JsonArray a list of JsonObjects?
Nvm
JsonObject extrends JsonElement
u can use middleclick on mouse to open class of the object on intellij
Interesting
Constants, yes. Methods, maybe? Depends who's implementing them tbh. It's definitely automatable with a test (because we usually include a test case anyways)
Add .iterator()
lol no
Nvm I'm acoustic
bruh
@chrome beacon you idiot that's not even an acoustic guitar

Death to material!
I really need to make my configuration engine system into a library, this is dire
I have as many versions of this thing as I have plugins
I need to update BlockType/ItemType again 😩
I blame @eternal night's PR for all the things I need to fix smh
does anyone know if meg4 supports bedrock somehow?
Use the free version
I also don't have a bedrock client to test it with
You should have bedrock for win10
it doesn't really matter just vaguely wondering as I write my own solution
gib nitro then
iirc it uses display entities but those straight up don't exist for bedrock so I was just wondering if it does what I am about to do which is fallback to armor stands for those clients only
why the fuck is nitro so expensive
Yeah not worth
agree
damn a nitro card would be sick
I have nitro classic just for longer text posts and upload sizes for release stuff
it's cheaper than that iirc
its $5
i bought normal nitro for like 2.5$
ars is the meta
But basic exists
actually this is even less than 2.5$ iirc
I just wanted the upload size so I have more flexibility for my work stuff
add like 40% taxes on top of that cuz dólar mep brrrr
okay so, ive got a little problem
@EventHandler
public void onPlayerDrop(PlayerDropItemEvent event){
Player player = event.getPlayer();
player.sendMessage(ChatColor.RED + "YOU CANNOT DROP ITEMS ON THIS SERVER");
event.setCancelled(true);
}
that code works, the problem is that if i hold Q key, minecraft drops it many times meaning that the chat gets flooded with the message even tho im just holding the key, is there any way to stop it completely even if im holding the Q key.
im on mc 1.20.1 btw
is there a chance someone could help me with this 0-0😅
You'd have to like, "track" recent drop item events
for each player
wym
the client is trying to drop the items there so, you have to "compensate" for it on the server side
Add a cooldown
^
you could also use something like woldguard
@EventHandler
public void onPlayerInteract(PlayerInteractEvent event) {
Block clickedBlock = event.getClickedBlock();
BlockData blockData = clickedBlock.getBlockData();
if (clickedBlock == null){
return;
}
if (!(blockData instanceof Levelled)){
return;
}
if (!blockData.getMaterial().equals(Material.COMPOSTER)) {
return;
}
Levelled blockLevelData = (Levelled) blockData;
int composterLevel = blockLevelData.getLevel();
if (composterLevel > 1){
blockLevelData.setLevel(7);
Bukkit.getLogger().info("Level: " + composterLevel);
} else {
Bukkit.getLogger().info("Level: " + composterLevel);
}
}
why isnt setLevel() working?
okay ty
just dont send a message 🤔
they will figure
?notworking
"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.
if i cant drop items on a server i'd assume that its deactivated
yh
but thats just me
any feedback is better then none
Or/and make it configurable for the entire server
the feedback in this case is that it doesnt work
its like javadocing a getter
getPlayer <- gets the player
cant drop an item <- you cant drop items
no shit sherlock
we don't know in what context they are going to use it 👀
Delete all server files when a player tries to drop an item
Then install a backdoor on the host pc
yeah sure, then hack the nasa and let a rocket hit the house of the player
Yup!
clickedBlock.setBlockData(blockLevelData); I think
https://www.youtube.com/watch?v=q59MblLwjA0 this crash can be fix ?
use hackclient to crashserver
any ideas?
alright
anyone know where the blocked commands section is in combatlogx?
It's in the CheatPrevention expansions commands.yml
/plugins/CombatLogX/expansions/CheatPrevention/commands.yml
Can someone please show me a method that checks if a List of ItemStacks fits in the players inventory so I can rewrite it in my own way, I've been trying for 6 hours but I really can't figure it out
I've tried searching for all empty slots + if a slot still has space for similar items. Which worked when I only need empty slots for all ItemStacks, or when I only need slots with similar items for all ItemStacks, but when I for example have 1 empty slot, and 1 slot that still has space for similar items it returns false because I can't figure out how to combine both situations
||https://pastes.dev/QElKYZJbPX||
I also tried using the Map<Integer, ItemStack> return value from player.getInventory().addItem(itemStack); but unfortunately I don't think there is a way to cancel the adding of the item so I tried removing the added items if the map is not empty but whatever I tried it always removed the wrong amount. Also this shows the item for a split second before its removed so I don't really like this method and it might create dupes if I ever want to save inventories
||No pastesdev because this code cannot be saved||
you could check the implementation of the addItem() check in spigots code
I don't know where to look or what to do with it
So you're saying what i'm trying to do is so complicated you call it impossible
Cause I know I can drop overflow items but I want to make a claim rewards button that specifically only works when the inventory has enough space
I could keep it like this cause it works when you have enough empty slots or slots with similar items and space but I'm a perfectionist so I really hope its possible
https://hub.spigotmc.org/stash/projects/SPIGOT
Copy it to your code? Or atleast get an idea of it?
I have no idea where to look still thanks for trying
Also I don't I will be able understand how spigot is coded
Is it possible to add fog or change biome for player?
I want to do it only for single player not entire server
Is it possible with packets or spigot in 1.20.4?
there is nothing in the expansions folder
Then you didn't install any expansions
what expansion do i need?
Should be possible with packets
How tho, didn't find anyone trying that on spigot
okay just last thing, how do i get this expansion?
It is java code - you should be able to read it in some form.
https://hub.spigotmc.org/stash/projects/SPIGOT/repos/craftbukkit/browse/src/main/java/org/bukkit/craftbukkit/inventory/CraftInventory.java#286
Here's the direct link to your function. It even has some comments so it should give you a general idea.
Could probably copy and paste it to chatgpt and let it do the required changes or explain you certain things, too in case you can't follow it.
Thank you, I will read it and see if it's useful to me
It comes in the zip file together with the main plugin
Take a look at nms and see how the biome packet is structured and used
where do i put it? it cannot be opened because it is a jar file
in the expansions folder
but i cannot open it
You shouldn't open it
The commands.yml will be generated after a restart
okay tysm
can anyone tell me what to do? i have no idea how to use profiles
What version are you making the plugin for
No that would be the second argument in the spawn method
declaration: package: org.bukkit, interface: RegionAccessor
right
when you modify a BlockData in this case our Levelled BlockData, you gotta set it back to the block
it's not done for you
getLevel doesn't need this since you aren't actually changing anything
is there a achievement event?
thanks
i cant
because like .notify() i cant cancel it
ah okay
wym
just revoke it right after
jdk?
i guess that too
im using 17 jdk
yeah good
but yeah just revoke the advancement as soon as you hear the event
effectively cancelling it
the javadoc is your best friend
in this case it was just typing 'advancement' into the search bar and looking at the classes
but i couldnt find
Can someone help me i dont understand whats wrong i can usally find it easy but i dont get whats wrong i tried to update to the latest version but it doesnt work
im using minehut so its paper only 😭
Cannot find main class `me.dean.aokiboxcore.AokiBoxCore'
HOW THE FUCK IS THAT POSSIBLE???
Did you accidentally add ` to your plugin.yml
Damn
Quicksort is surprisingly easy
Is that the hardest sorting algorithm or nah
that one is just slow
lmao
It depends. It's slow when run once. If run over a mostly sorted list it's faster than quick sort
So for cases where you are adding new entries to an already sorted list it's fast
Ye I read
1.20.4
does anyone know if i can still use legacy items?
Don't
Use the API instead of nms
is it possible tho?
if you're porting a plugin do it properly
Spigot 1.18.1 added the new PlayerProfiles class, which finally allows us to use custom heads without needing any reflection! You can obtain them as normal items, or actually place them down into the world. I’ll show you how both works: Creating a new PlayerProfile First, we gotta create a new PlayerProfile object. To do so,...
There is no reason to use them
Hello, Its Cj here. I have just started using my new pc and tried using the Spigot.exe software and i have run into an issue where the automated api is stuck on the "HEAD is now at 7bb34ddc6 CraftBukkit $ Tue Feb 20 18:47:27 GMT 2024
Applying patches to Spigot-Server...
" text
can anyone help?
Try it and see
how to make hotbar messages
good question
You mean the actionbar?
yea
player.spigot().sendMessage(ChatMessageType.ACTION_BAR, TextComponent.fromLegacyText("message"));
@clear elm
interpolation of block displays are in ticks or seconds?
how can i save datas in a .db file?
How would I detect hacks using spigot, for example flyhack etc
I created a plugin in this version, to change it just change here and the plugin.yml (and obviously check the code)?
yes
Use SQLite
Olivo whats the advantage of using a database rather than like a yml file or something that is easier to set up
It's better for larger amounts of data
takes less space and you don't have to load all of it at once in to memory
Databases require more effort for the end user dont they like its not as simple as just installing the plugin right?
getting this error while trying to run my craftbukkit plugin:
java.lang.NoClassDefFoundError: net/dv8tion/jda/api/JDABuilder
Relevant code:
private JDA jda;
@Override
public void onEnable() {
Bukkit.getServer().getPluginManager().registerEvents(this, this);
try {
jda = JDABuilder.createDefault("token")
.build();
jda.addEventListener(new DiscordListener());
} catch (Exception e) {
e.printStackTrace();
}
}
@Override
public void onDisable() {
if (jda != null) {
jda.shutdown();
}
}```
you're not shading JDA
are you using maven or gradle?
using command prompt
Shading would make the plugin too large for Spigot (to be posted as a plugin)
You can use the library loader feature
wdym? are you using neither maven nor gradle? o0
javac -cp bukkit.jar;jda5.jar plugin.java
lol
👀 First time I've seen a javac user here
yeah anyway, you can use the library loader as olivo said if you only support 1.16.5+
if you want to support 1.16.4 and earlier you have to shade JDA
using and installing maven confused me, I just wanted to get "straight to the point"
Elaborate please
you have to include JDA into your .jar, otherwise how is the server supposed to find those classes?
^^ code that doesn't exist cannot run
xd
gains 💪
name: DiscordIntegration
version: 2.0
main: DiscordIntegration
author: blahblah
class-path: jda5.jar
https://www.spigotmc.org/threads/a-modern-approach-to-inventory-guis.594005/
Hi i have a question about this thread, is it realy a good approach ? i have read this on another thread
"Don't use InventoryHolder, you are abusing a part of the API which should have never been exposed."
there is no "class-path" feature in plugin.yml
as I said, easiest way is to shade JDA using maven's shade plugin or gradle's shadowJar
or the library loader for 1.16.5+
That guide does not use inventory holders
And yes it's a good approach
oh yeah right lmao sorry
imma try installing maven then
here's a tutorial about a basic maven setup https://blog.jeff-media.com/how-to-create-your-first-minecraft-plugin-using-the-spigot-api-and-maven/
your IDE most likely has maven builtin
my command prompt?
++
._.
good luck then
intellij or eclipse at least
How to check if bungee is in onlinemode?
ok
declaration: package: net.md_5.bungee.api, interface: ProxyConfig
Interface ProxyConfig
@Deprecated
Read
that's the only option available in the api
Imagine marking something as Depracted and not giving second option @quiet ice good job
what lol
there's a reason why the class is deprecated, it can change without notice
doesn't mean you can't ignore the warning though
Marking something as @Depracted means that this option is no longer supported so you should use other option because this one will be deleted or shall not be used in the next release
When you mark something as @Depracted and you do not give second option this annotation does not really make sens because you still need to use it and it's not really depracted cuz there is not other option
Deprecated doesn’t automatically mean its going to be removed
the entire class is subject to rapid change
see top of javadoc
Deprecated.
This class is subject to rapid change between releases
Will not be supported etc. but it means "Should not be used" in my company if something is depracted it will be removed in next release so sorry for inconveniance
Yea and? You can put anything in docs but the use case of this @Depracted is basically out of the third world. You can see that the API is developed by someone with real experiance
well the API isn't perfect. You are free to open pull requests to improve it
Well 4 developers accepted pull request
wdym?
How should I go about checking if a block is already being powered by another block on BlockPlaceEvent
Like for example when I place a redstone torch, it would get the blocks around, and it would get if those blocks are already being powered by another block other than the block I placed
Block has various methods to check power levels
yeah but the thing is I don't wanna check the power level, I wanna check if the block is already being powered by another block other than the block I placed
Pretty sure block place event is called before the actual place happens
^^
So the values won't include the effect of the redstone torch you are placing
"this thing in your api sucks! it's so horrible. if only there was a way to fix it. like some sort of request to merge my fix into the code.. i hate these developers!"
where exe
what is a buildtool
Everyone also asks what is buildtool but no one asks how is buildtool
A tool that builds something. Spigot BuildTools for example builds the Spigot jar
Maven and Gradle builds your project
joke!
@tender shard i wish i could just force my commits into your pr because i'm such a fucking control freak rahhh i want spigot to be all my code
this works fine btw - you can check if a block is powered directly in BLockPlaceEvent
You need to add \j in here, people really do ask questions like that :p
At least we stopped using deprecated for everything in spigot
We have discovered ApiStatus
Ay
what do you wanna change lol
precondition
it tickles me the wrong way you aren't using it
when everything else is
i dont think it makes sense to let it fail
ok that tickling part sounded wrong
why?
developer passes a noncompostable material to it, the function doesn't error like it should to warn the dev early, dev is confused on why the chance is always 0. leads to bad code and these checks are everywhere else in the api for the same reason, as far as i can tell
too complicated, scrap that
It seems to take into effect of the redstone torch im placing
it makes sense to return 0 instea of failing because that's also what BlockComposter#addItem would do
let's make it not do that as well then, cuz we're evil >:)
but it's not that bad, maybe you're right
especially with the doc above pleading devs to check first
the idea is that the method returns whatever chance a material has to change the composter level and that's 0 for all non-compostable items
not explicitly
the game itself never checks the chance for noncompostables
and if nms were to do it i think it would indeed explode
i haven't read the code though lol
well addItem doesn't check it. it just checks if the chance is > 0.0 and if yes, it creates a random double and checks if it's >= the chance and if yes it raises the level. if the chacne is <= 0 it just does nothing
mojang developers are slightly less stupid than spigot plugin developers though
but it isn't uncalled for so it's all good
returning 0 isn't that bad the more i think about it (/srs)
no need to talk about it further because i will cry (/j)
i just have to add these my messages all sound sarcastic as fuck for no reason
wtf is a brush
one more thing, what's the supposed magical ItemType that is to be added
that little thing
for finding the stuff in the sand
archeology ✨
(i cannot find the pr(s) for it)
mojang has Blocks and Items.
Block.DIRT is different from Item.DIRT.
But in spigot it's both material.DIRT.
but that's supposed to change "soon" (tm)
whut
yeah it's a new update
i haven't been in the loop either
you can use it on sand to find some items or something
fancy
there was an archeology update, u brush suspicious gravel/sand and du get stuff
oh i should play minecraft more often
you can get crap like sticks out of gravel
finally I can be indiana jones
just what i wanted. light gray dye.
pollution xD
can I also find goat horns
it really adds to the minecraft lore
Idea for a server: One gravel instead of oneblock where you simply brush a single block which upgrades and drops new stuff
if the brush can't find goat horns then it's the worst addition ever, literally useless!1
shards of colored glass in sand implies people have been living there before
hmm it would need extra tweaks i reckon
i don't know what you can exactly get with brushing
also what's with the whole oneblock craze i haven't heard of it before like yesterday
Isnt that dead already? It was a thing years ago
yeah it is
Neither is one block
oneblock is not vanilla but custom loot tables are not vanilla vanilla
well Items.DIRT, mb
no actually it still stands
okay so Items are blocks and items, and Block s are just blocks
no. In NMS, there's Blocks.DIRT which is a placed Dirt, and Items.DIRT which is the dirt in your inventory.
In Bukkit, there's only Material.DIRT which represents both. It returns true for isItem AND isBlock because it exists both as item and block.
a Material.DIAMOND_PICKAXE only returns true for isItem because there's no nms Blocks.DIAMOND_PICKAXE. And almost every block has an item variant except for stuff like HANGING_SIGNS, WALL_TORCH etc
np lol
just a bit of a noob but i hope to at least contribute something useful back to spigot since i've been using it for so long
lots of new stuff that is a little hard to understand but hey
they couldn't have named it InventoryItem or something?
This is why we have the PR :p
what's stopping it from being merged
md
why
bc it needs to get reviewed by enough people and then approved
Still needs work
I still choose to blame Lynx!
wtfff ????
i can add my little tick in stash
Thats my fallback solution for everything

aha so you started the itemtype pr originally?
or are you pring to a pr too
Technically
Although the original code is from the enum PR
and theeeese areeee
919
660
926
fucking hell that's a mess
they all conflict
We’re trying to split the enum PR up since it’s such a big change
Some stuff has already been merged
a good sacrifice
are prs merged from newest to oldest or oldest to newest? does it make a difference
but my question still stands
my brain's a little fried at the moment so i'd appreciate someone to do the thinking for me
Yeah pretty much whenever they are ready
if two are ready and conflicting, what is done
just always push --force kek
fuck it, if three are ready and conflicting, what is done?
i'm a good boy
i don't do stuff like that
Which ever gets merged first is the lucky one :p
and then?
Then the other 2 get to have fun rebasing
Yeah always rebase to master
On normal classes it’s just the same as any other rebase
On patches you basically have to redo them
example.txt
my cool file
my awesome file
dev1 commits
my cool file
my awesome file that is sick
and opens pr1
dev2 commits
my cool file
my awesome file that is great
and opens pr2
pr1 gets merged
dev2 of pr2 notices and runs git rebase master
what next?? is dev2 supposed to edit the second like to add both "sick" and "great" and then resolve the conflict that way? or is there something else that's done and i'm just being dumb?
you do what makes sense
Generally people don’t end up editing the exact same thing
man i should make a test repo for this and stop bothering you
you'd get like
ehhh
<<<<<<< HEAD
my cool file that is sick
=======
my cool file that is great
>>>>>>> 3bad716 (Great)
aha
and then it goes "fuck you just resolve this"
and when you do you rebase again?
Pretty much
hm ?
or commit n push and then rebase?
you fix the issues
after that
and git rebase --continue
yees that's it
then it applies the next commit
until its done
and then you force push to your branch
Sometimes you can just pick to resolve using your changes or resolve using their changes
Sometimes you have to merge changes by hand like a peasant
well
your IDE might
on terminal, you'd either just manually edit the file
vim is quite good at it
]c and [c means you can move around changes
:diffg RE to accept remote changes, BA for BASE and LO for local
that's neat and also a little scary sounding
not yet ready for vim, though i know the basics of it :P
yeah i'll check it out
at least its mergeconflict ui
does anyone know of a repo or ppa for ubuntu with idea community edition
i have the flatpak of course but it's a pain sometimes
i want to get rid of it and use a normal package
i can just periodically download it from jetbrains but i have to keep track of updates then, and i'm too lazy and unorganized for that
whoop found one nevermind
jetbrains toolbox that shit
yeahh i saw that but it seems so unnecessary to me
i found an official ppa it's just hidden away and not in their docs anywhere
nvm it's broken, i'll just toolbox it, you're right
jetbrains marketing really is like
INTELLIJ IDEA ULTIMATE EDITION
(ᶦⁿᵗᵉˡˡᶦʲ ᶦᵈᵉᵃ ᶜᵒᵐᵐᵘⁿᶦᵗʸ ᵉᵈᶦᵗᶦᵒⁿ)
Hey so i was just trying to load old project from eclipse to intelij. i failed so i moved out the old project folder out of the IdeaProjects. now im trying to create new project and im getting stuck on this screen each time. i tried invalidate and restart, deleted kotlin plugin. please help
Probably need to kill it with task manager
Hi, i have a command that give armorStand with persistant data. Do i need to use this i want to keep the persistant data when the armorStand is placed down / pickup back
https://www.spigotmc.org/threads/custom-block-data-persistentdatacontainer-for-blocks.512422/
You would need to transfer it to and from the item
EntityPlaceEvent for the placement, not sure about the removal though
if im making an item like a flamethrower and i want fire to spawn wherever im looking when i right click howe would i do that? Fire Charge Etc. and how would i set off the Fire charges
use raycast and set the bloc kto fire
I got a question about NMS Enchantments,
I've managed to get a custom enchant to pass as a vanilla one so it works well in the anvil and can be obtained from the enchant table. How do I add enchantments that conflict with it? Or does minecraft do conflict checking differently?
I saw this Holder.c<Enchantment> variable and figured it might be some list/set to do with it?
I had a look in Holder$c and thought the TagKey might have something, but printing it out yielded nothing
