#help-development

1 messages Β· Page 243 of 1

tender shard
#

I don't really have a clue about GUIs, I always just do it in some hacky way too

fierce whale
#

umm.. let me change question. is there any better way to get entities in straight forward from player direction?

tender shard
#

well you are using a h2 db and not sqlite

fierce whale
tender shard
tender shard
echo basalt
#

var dead

green prism
fierce whale
tender shard
echo basalt
#

no eyeszoom

green prism
#

illusion help me pls

echo basalt
#

y'all don't realize but I'm like

#

the biggest lurker here

tender shard
round finch
#

I'm always lurking

tender shard
echo basalt
echo basalt
#

type deal

echo basalt
#

I lurk at least 2 hours / day

tender shard
echo basalt
#

no

#

well

#

maybe actually

tender shard
#

I think it does

echo basalt
#

lemme check my gun code

green prism
#

But, I don't know how to do it

echo basalt
#

but it's absolute garbage

#

and verano wants to copy it

green prism
#

nice

tender shard
#

that's the best I could think of

echo basalt
#

seems like it

tender shard
#

ok yeah then just loop over all entities and check if their angle is <= desired angle in radians

#

you can just use World#getEntities() instead of Bukkit#getEntities()

#

?paste your whole pom.xml

undone axleBOT
tender shard
#

btw erm

#

why did you set the scope to "test"? o0

#

it should usually be "compile"

hazy parrot
#

also use sqlite, not h2

tender shard
#

why do you even need a db?

hazy parrot
#

Google can give you pretty nice answers

#

But most likely hight chance of corruption

echo basalt
#

S3 best

orchid gazelle
#

Simple rule:

#

JSON for public plugins, MariaDB + for some things JSON for private plugins

hazy parrot
#

what

hybrid spoke
wary harness
#

any one can tell why middle click is not working in survival mode when u click in gui

orchid gazelle
#

;)

#

Just read something about databases here and stated what the best data-storing methods are in my opinion

hazy parrot
#

Saying json is best persistent data-storing method ?

chrome beacon
orchid gazelle
wary harness
#

so only way to get middle click to work in gui would be putting player in creative and then after event back to survival

chrome beacon
#

I don't recommend doing that but yes

orchid gazelle
#

That would be a security issue

#

Maybe there are some hacky ways but yeah

hazy parrot
orchid gazelle
#

Ah and which data-storage is made specificly for minecraft?

#

Maybe pdc

#

But I don't like to use PDC

hazy parrot
#

who is talking about mc specificly ?

orchid gazelle
#

I am

hazy parrot
#

lol

remote swallow
#

Most people use mysql or sqllite for public plugins in what ive seen

orchid gazelle
#

Well you can

#

But I would not do that

river oracle
#

Mind telling me what makes json soooo great over an actual database

ivory sleet
#

Json as in flat files?

tender shard
chrome beacon
#

Yes

vivid skiff
#

How can i add a clickable text in a book in a page witch already has normal text

#

?

chrome beacon
#

Add a clickable component to the page component

civic zenith
#

I need a devloper for help to devlop lifesteal

#

can some one help?

ivory sleet
#

?services

undone axleBOT
civic zenith
#

how to add spawn in server?

#

like /spawn

chrome beacon
vivid skiff
green prism
#
        Map<Integer, Element> elements = new HashMap<>(builder.getElements());

        for(Element element : elements.values()) {

            if(element.getAction() == null) continue;

            ECompanyCreator action = ECompanyCreator.valueOf(element.getAction());
            element.setEvent(listenerSetup(action));
            elements.put(element.getSlot(), injectPlaceholders(element));
        }```

How can I prevent builder elements from getting modified?
peak depot
#

nah he wanted a final plugin

vocal cloud
green prism
vocal cloud
#

How can I prevent builder elements from getting modified?

green prism
#

...

#

Elements inside builder.getElements(); get modified by the for cycle.
How can I prevent that?

hazy parrot
#

Make hashmap immutable

gleaming grove
#

Is there any custom symbol to make straight horizontal line without spaces?

vocal cloud
#

I mean the convoluted way is to make those elements have an impl that you can instanceof check or a modifiable boolean

gleaming grove
#

thx

green prism
ivory sleet
#

I mean aren’t you supposed to mutate the builder? Sounds a bit contradictory

hazy parrot
#

Tbh

ivory sleet
#

Cuz its just an intermediate class anyway

#

Presupposing you’re using builder in the sense of the design pattern

green prism
tender shard
#

――――

green prism
#

=========

tender shard
#

I usually also just use ===

green prism
#

?

green prism
vocal cloud
#

Why not add the elements at the .build() of your builder?

#

If you're worried about them being modified during the building process

green prism
#

wdym

vocal cloud
#

What. I'm talking about the builder pattern

kindred valley
#

i am trying to add an inventory item, but its not adding and no logs on console

kindred valley
#
static Inventory kitSelect;
    static LoyalAddons plugin;

    @Override
    public void onEnable() {
        plugin = this;
        commandRegister();
        inventoryRegisterer();
        ItemSetups.setupMethod();
        inventorySetup(kitSelect, ItemSetups.getItems());
    }
    public void inventoryRegisterer() {
        kitSelect = Bukkit.createInventory(null, 9);
    }
    public void inventorySetup(Inventory i, ArrayList<ItemStack> a) {
        for(ItemStack stack: a) {
            i.addItem(stack);
        }
    }```
#

Can you please take a look, if i miss something, the inventory does not contain the items somehow

#
Item cannot be null
        at org.apache.commons.lang.Validate.noNullElements(Validate.java:364) ~[commons-lang-2.6.jar:2.6]
        at org.bukkit.craftbukkit.v1_19_R1.inventory.CraftInventory.addItem(CraftInventory.java:287) ~[spigot-1.19-R0.1-SNAPSHOT.jar:3553-Spigot-14a2382-ef09464]
        at me.limpeex.loyaladdons.LoyalAddons.inventorySetup(LoyalAddons.java:29) ~[?:?]```
#

Now getting this but i actually am adding the items by ItemSetups.setupMethod();

here;

public static void setupMethod() {
        setup(diamondKit,
                diamondKitMeta,
                "Diamond Kit",
                0,
                Material.DIAMOND_SWORD);

        setup(goldKit,
                goldKitMeta,
                "Gold Kit",
                1,
                Material.GOLDEN_SWORD);

        setup(ironKit,
                ironKitMeta,
                "Iron Kit",
                2,
                Material.IRON_SWORD);


        items.add(diamondKit);
        items.add(goldKit);
        items.add(ironKit);
    }

remote swallow
#

static PepeCryHands

green prism
# vocal cloud If you're worried about them being modified during the building process

The problem is not that...
Let's say I have a CacheInventory.java with inside some builders, at the inventory opening the builder passes me both a Map<Integer, Element> and a CustomInventory instance.

The builder's default schema contains, for example, in a item displayname %company_name% and that's what I want to change, at the same time, I want to preserve that "schema" since after you set the value "Company Name," it has to show it in GUI for confirmation.

If the default displayname is changed, you can no longer do the replace of %company_name% because there is Undefined instead of that

        this.elements = new HashMap<>();

        builder.getElements().entrySet().iterator().forEachRemaining(entry -> elements.put(entry.getKey(), entry.getValue()));

        for(Element element : elements.values()) {
            if(element.getAction() == null) return;

            ECompanyCreator action = ECompanyCreator.valueOf(element.getAction());
            element.setEvent(listenerSetup(action));
            elements.put(element.getSlot(), injectPlaceholders(element));
        }```
vocal cloud
#

Have a field for if it's been modified already?

green prism
hazy parrot
#

Just wrap it with collections.immutableMap

vocal cloud
#

immutable as in you can't add or remove from it?

green prism
hybrid spoke
green prism
hybrid spoke
#

at least not to compile time

ivory sleet
#

You should probably rename it to something else, as the term builder is relatively reserved for the builder design pattern so if you’re not implementing that pattern it gets quite misleading FutureMcServer

hazy parrot
#

I'm not sure that I understand what you want to do, sorry

vocal cloud
#

It sounds like you are inventing problems lol

#

Add a bool field that marks it as w/e

green prism
#

I have no idea how to explain myself

After I replace the placeholders, they changes also inside the builder.getElements().
I just want the builder to remain the same.
Right now, the value is always Undefined even though it shouldn't

    private Element injectPlaceholders(Element element) {
        System.out.println(LegacyComponentSerializer.legacySection().serialize(element.getDisplayName())); //result in photo
        TextReplacementConfig name_replace = TextReplacementConfig.builder().match("%company_name%").replacement(name == null ? Lang.NONE : name).build();
        TextReplacementConfig description_replace = TextReplacementConfig.builder().match("%company_description%").replacement(description == null ? Lang.NONE : description).build();
        TextReplacementConfig owner_replace = TextReplacementConfig.builder().match("%company_owner%").replacement(owner == null ? Lang.NONE : Bukkit.getOfflinePlayer(owner).getName()).build();

        Component injectedDisplayName = element.getDisplayName().replaceText(name_replace).replaceText(description_replace).replaceText(owner_replace);

        List<Component> injectedLore = element.getLore()
                .stream()
                .map(component -> component.replaceText(name_replace).replaceText(description_replace).replaceText(owner_replace))
                .toList();

        element.setDisplayName(injectedDisplayName);
        element.setLore(injectedLore);
        return element;
    }```
#

Did I explain myself better, Mike?

vocal cloud
#

Wait is the issue here the undefined or

green prism
#

%company_name% is permanently replaced with Undefined.

vocal cloud
#

Sounds like you have an entirely different issue

#

It seems to me you're writing everything in the most convoluted way possible. It's extremely hard to understand your code because it's so heavily abstracted.

green prism
#

It seems to me that the %company_name% within the builder is changed to Undefined and when it goes to change it back once the inventory is reopened, it finds Undefined and no longer %company_name% and therefore does not update the value.

green prism
green prism
vocal cloud
#

I would use the word convoluted

green prism
vocal cloud
#

Mhm

crimson terrace
#

is it called?

harsh totem
#

oh wait I found the problem nvm

crimson terrace
#

XD

harsh totem
#

It was called

#

the problem was something else

white thicket
#

Hey guys, my plugin is not able to detect the main class, idk why, I checked everything, I am using maven

remote swallow
#

?paste the error

undone axleBOT
white thicket
remote swallow
#

plugin.yml doesnt have the right main class

white thicket
peak depot
#

lightmode?

white thicket
#

or to make it short, I have a screen guard on my monitor which makes it hard to see in dark mode

#

I saw that question coming πŸ˜‚

#

?

#

I believe it is getting compiled, or else it would've given that error above

remote swallow
#

right click the jar and extract to zip or something with winrar

white thicket
#

let me do it

#

plugin.yml is there

#

yes

#

yes

#

relocate?

#

When?

remote swallow
#

wait a minute, wtf is petal and petal-api

#

on there stacktrace its using petal api

remote swallow
#

its a fork of purpur

#

i just found it

#

its made by bloom

idle spruce
#

Hello, is there an Minecraft plugin, that removes the Kill counter under the name of a player?

hybrid spoke
white thicket
#

how can I check that?

remote swallow
#

check that the package names are still correct

white thicket
#

All of them are correct

winged ridge
#

Hello guys, I have an issue I still haven't fixed, so basically I have a stone block on which I used sendBlockChange and modified it to dirt for example. When I break the block with hands the dirt "cover" breaks like I'm breaking dirt, then the stone appears but breaks by itself 5s after. How can I make the block break when the grass "cover" is broken or how can I make the block only breakable by pickaxe (because with a pickaxe this bug doesn't happen)

echo basalt
#

you want a full client-sided block system

winged ridge
echo basalt
#

you can, with packet hackery

#

basically you want fake blocks

#

so you send block packets

#

your problem is that the server is sending more packets to correct for desync issues

#

you just gotta handle them

#

It's something I've been working with for the past 2 years

subtle folio
#

Not possible with the API

echo basalt
#

^

winged ridge
#

protocollib?

winged ridge
#

I have no idea how to work with packets in minecraft tho

echo basalt
echo basalt
#

you either wait or you can just read one of the drafts

echo basalt
winged ridge
#

the crappy tutorial will probably also help me

tardy delta
#

ill steal your christmas tree

echo basalt
#

<Spoiler | Minecraft>
Minecraft's packet system is fairly simple - Running on TCP, Implemented with Netty. Feel free to skip any sections you might already know.
You can find information about Minecraft's Protocol HERE [wiki.vg/Protocol]

<Spoiler | Protocol Stages>
-> Handshake: The client and the server communicate. The client indicates its Protocol Version, what address it used to login, its port and the next stage (Status or Login)
-> Status: Once the handshake goes through, and the status stage is requested, the server responds with a Json string containing the version name, protocol version, how many players are online, the favicon and any other information required.
-> Login: Once the client is ready to login, and requested the login stage, both ends encrypt, and optionally settle on packet compression.
-> Play: When a player is at this stage, the login process has finished and the player is actively playing on the server. This is the most common state.

<Spoiler | Byte formats>
The byte format for NMS packets are quite simple. Looking at the (Protocol)[wiki.vg/Protocol] page, we can understand that each Protocol Stage contains its own registry.
Every single packet contains a Packet ID on its header. The packet ID starts at 0, for the first packet on its dedicated stage. This means that multiple packets can share the same Registry ID, because they belong to different stages.

Each packet also contains a direction: Clientbound (Server -> Client) or Serverbound (Client -> Server). All packet classes are mutual between the client and the server, given the Protocol Versions match. (ViaVersion-like plugins convert the packet contents between multiple protocol versions)

Let's grab some random packet and break it down in a simple way:
[https://imgur.com/a/O7Plb2D]

This packet is broken down into the following contents:
-> Packet ID: 0x3B (16, hex) AKA 59 (10, decimal), which is the ID of the packet in the registry
-> State: Play, which is the Protocol Stage this packet belongs to.
-> Bound To: Client, which means the packet is sent from the Server -> Client.

-> Count: VarInt (Variable integer, basically a fancy format that encodes numbers in a smaller byte length)
-> Entity IDs: Array of VarInt (We write the amount of values in the array in the field above, then write each value separately)

In case you understand concepts easier with code, here's a basic example (this is pseudo-code)
<Spoiler | PSEUDOCODE>

on packet receive(packet) -> 
    packet_id = packet.readByte() // 3B
    
    entity_count = packet.readInt()
    array = new int[entity_count] // create array with pre-set size
    
    for(index = 0; index < entity_count; index++) -> 
        array[index] = packet.readInt()
        
    // then the client just loops through the array and stops rendering such entities
```,
or, to write the packet,

mob_array = [1, 2, 3]
mob_count = mob_array.length

packet = new ByteBuffer() // just create some packet object with a given id

packet.writeByte(3B)
packet.writeInt(mob_count)

foreach id in mob_array ->
packet.writeInt(id)


where the resulting packet would look like (these values aren't necessarily bytes)
[    
    3B, -> Packet ID
    3,  -> Mob Count
    1,  -> Mob ID 1
    2,  -> Mob ID 2
    3   -> Mob ID 3
]  

------------
tardy delta
#

πŸ™

echo basalt
#

here's one of the drafts

tardy delta
#

looks like my presentation english

echo basalt
#

just explaining the basics of packets

#

I still haven't gotten to write about intercepting, or writing varints to the byte array

winged ridge
#

this looks painful

echo basalt
#

oh, full fake blocks are

#

really

#

really really painful

#

beyond belief

tardy delta
#

smh

echo basalt
#

fake entities are a lot simpler honestly

winged ridge
#

My fake blocks work without protocolib I just need the break thing

#

πŸ₯²

white thicket
tardy delta
#

show the package structure

white thicket
remote swallow
#

i wonder if the caps in the package name might be an issue

#

to stash i go

subtle folio
#

caps in a package!?!

remote swallow
#

yer

white thicket
#

no I don't think that is the iissue

subtle folio
#

try refactoring and seeing what happens

white thicket
#

because at first I had it in lower case

subtle folio
#

I've never had an issue with it without caps

white thicket
#

BRUHH I think ik why this is happening

#

wait let me test

remote swallow
#

whats the issue

white thicket
#

wait let me conofirm

#

If it works then it is a really dumb mistake

#

WAW I did a really dumb mistake

remote swallow
#

what you do lol

white thicket
#

here in plugin.yml the name is MysticChat

#

But here I had it MysticPlugin

#

πŸ€¦β€β™‚οΈ

remote swallow
white thicket
#

πŸ˜‚

#

well yeah I had it lower cased before but I thought maybe changing it a bit might work

#

idk so I tried it

#

but now I have it lower cased

#

This is so embarrassing

white root
#

What is the right way to make an API request without holding up the main thread?
I did a very rough timing of a method that I have (which involves making an api request then returning the requests body) and it takes anywhere from 500 to 700ms, which (I think) I dont want running on the main thread since (I think) it would cause lag if called multiple times since (again, I think) that the main thread just waits for my method to complete
My method gets called on the PlayerJoinEvent

subtle folio
#

Async

tardy delta
quaint mantle
#

anyone know how to play a sound on a event? its not working for me

white root
subtle folio
quaint mantle
#

yes but this dont work for me

#

always errors

remote swallow
#

?paste the errors then

undone axleBOT
quaint mantle
warm trout
#

Is there a way to speed up a bukkit scheduler?

remote swallow
#

as in?

warm trout
#

Like just run it immediately if I have the task

#

Like say there is something set to run in 7 seconds

#

Is it possible to run it sooner after I already started it

quaint mantle
#

when im putting Sound.ENTITY_BAT_TAKEOFF

#

it doesnt work

#

but it exports

remote swallow
#

well BAT_TAKEOFF doesnt exist so idk how your using that without an error

mighty pier
#

how do i get the nbttagcompound

remote swallow
#

obsfucation

mighty pier
#

thank

remote swallow
quaint mantle
#
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_351]
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_351]
    at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_351]
    at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:306) ~[spigot.jar:git-Spigot-21fe707-741a1bd]
    ... 15 more``` this are the error logs
remote swallow
#

ah 1.8

quaint mantle
#
    at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:310) ~[spigot.jar:git-Spigot-21fe707-741a1bd]
    at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62) ~[spigot.jar:git-Spigot-21fe707-741a1bd]
    at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:502) [spigot.jar:git-Spigot-21fe707-741a1bd]
    at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:487) [spigot.jar:git-Spigot-21fe707-741a1bd]
    at net.minecraft.server.v1_8_R3.PlayerConnection.a(PlayerConnection.java:270) [spigot.jar:git-Spigot-21fe707-741a1bd]
    at net.minecraft.server.v1_8_R3.PacketPlayInFlying.a(SourceFile:126) [spigot.jar:git-Spigot-21fe707-741a1bd]
    at net.minecraft.server.v1_8_R3.PacketPlayInFlying$PacketPlayInPosition.a(SourceFile:57) [spigot.jar:git-Spigot-21fe707-741a1bd]
    at net.minecraft.server.v1_8_R3.PlayerConnectionUtils$1.run(SourceFile:13) [spigot.jar:git-Spigot-21fe707-741a1bd]
    at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source) [?:1.8.0_351]
    at java.util.concurrent.FutureTask.run(Unknown Source) [?:1.8.0_351]
    at net.minecraft.server.v1_8_R3.SystemUtils.a(SourceFile:44) [spigot.jar:git-Spigot-21fe707-741a1bd]
    at net.minecraft.server.v1_8_R3.MinecraftServer.B(MinecraftServer.java:715) [spigot.jar:git-Spigot-21fe707-741a1bd]
    at net.minecraft.server.v1_8_R3.DedicatedServer.B(DedicatedServer.java:374) [spigot.jar:git-Spigot-21fe707-741a1bd]
    at net.minecraft.server.v1_8_R3.MinecraftServer.A(MinecraftServer.java:654) [spigot.jar:git-Spigot-21fe707-741a1bd]
    at net.minecraft.server.v1_8_R3.MinecraftServer.run(MinecraftServer.java:557) [spigot.jar:git-Spigot-21fe707-741a1bd]
    at java.lang.Thread.run(Unknown Source) [?:1.8.0_351]``` and this
remote swallow
#

i dont touch 1.8 so i couldnt tell you whats going on

quaint mantle
wet breach
#

I see, people still insist on getting help with 1.8

quaint mantle
#

is this code wrong

wet breach
#

is this a public plugin or something you making for your server?

quaint mantle
#

for me

wet breach
#

just modify the server code directly then

#

there is no more 1.8 updates

#

it isn't changing, you are free to do whatever you want without worry

quaint mantle
#

its best pvp

quaint mantle
wet breach
#

therefore, why make a plugin for NMS when you can just implement it directly and not mess with reflection

quaint mantle
#

what do you mean

wet breach
#

you can change whatever you want in the server code, the reason reflection is used for NMS in 1.8 is because certain things are set to private and not accessibly by normal means

#

you can remove all that reflection by either going in and making it accessible in the server code yourself or directly implement the plugin into the server code

quaint mantle
#

it is public

wet breach
#

you said it is for you

quaint mantle
#

for server from me

#

just for me

#

to learn

wet breach
#

better off learning updated NMS stuff and not some outdated stuff

echo basalt
#

why use 1.8

quaint mantle
#

what is NMS

river oracle
#

^ NMS has changed quite a bit since 1.8

echo basalt
#

for personal projects

river oracle
#

"Best pvp"

echo basalt
#

"best performance"

mighty pier
echo basalt
river oracle
#

No cap what was said earlier

mighty pier
#

uh

wet breach
mighty pier
#

oh

quaint mantle
#

nice help

wet breach
#

its outdated

echo basalt
wet breach
#

why would you expect help for something that is several years outdated?

echo basalt
#

?1.8

undone axleBOT
wet breach
#

However I am helping you

#

by informing you that if it is just for you and nothing more, then just change the server code

#

1.8 isn't getting anymore updates so you can change the code however you want without worry about some update

mighty pier
#

minecraft 1.8.8 is going to preschool

wet breach
#

if you also can't understand the reason for reflection or why it is necessary for NMS then you probably should learn the basics of it again

echo basalt
#

the most commonly desired trait is 1.8 pvp

wet breach
#

the main reason reflection is necessary is because in the server code, certain objects, methods and values are set to private and thus inaccessible by normal means

echo basalt
#

even if we make a perfect plugin

#

that intercepts packets

#

and replicates all the 1.8 logic

#

people won't be happy

wet breach
#

however I do update the protocol

river oracle
#

Are you going to update it past 1.8 ever?

echo basalt
#

if I really want a lightweight server

river oracle
#

Answered before I asked :3

echo basalt
#

I make my own or grab one of those afk lobbies that does the logic for me

#

I feel like making a modular server type deal

#

where we can disable the full achievement module and have it just... not run

#

would be great

wet breach
#

lol

wet breach
#

and then I might update some other classes here and there to make them better

echo basalt
#

frostalf is basically hypixel

#

the thing with basing off of 1.8 is that half the api is gone

river oracle
#

Lol

wet breach
echo basalt
#

reinventing the wheel I see

river oracle
#

Hypixel could kill 1.8 if they updated too bad it's probably wildly expensive

echo basalt
#

they are running a modified 1.7

#

with 1.8 mobs

wet breach
#

but unlike everyone else, hypixel is also not coming here to complain about 1.8 either πŸ˜›

#

or searching for help lol

echo basalt
#

I mean like

#

their 1.8 fork is wild

#

direct color translation on the sendMessage method is something I never expected to see

river oracle
#

Have you seen hypixel code?

wet breach
#

probably more optimal that way, I mean like I said, no more updates for it so you are free to change whatever you want really without worry about some update

echo basalt
wet breach
#

I keep forgetting who it is, but there is someone here that works on hypixel stuff

echo basalt
#

uhh

#

Dctr maybe

#

but he left hypixel

#

I remember him from my interviews

#

minikloon is not here

#

inventivetalent is not here

#

codename_b is not here

#

neither is agent_kid

#

externizable is not here

wet breach
#

Agent Kid used to be here

#

Haven't seen them in quite a while

echo basalt
#

dctr left

river oracle
#

Damm he left us :(

echo basalt
#

mgf is not here

#

Ye plancke is here

wet breach
#

But it was Agent K that was here and would talk about the hypixel stuff from time to time to clarify some myths πŸ˜›

echo basalt
#

never spoke tho

wet breach
echo basalt
#

I just clarified as much as I could when I did my interviews

echo basalt
#

seems like the right guy

wet breach
subtle folio
#

Where did all the hypixsel admins go

twilit roost
#

how can I speed up daylight cycle?

subtle folio
#

real world?

echo basalt
#

like

#

they know what they're doing

wet breach
subtle folio
remote swallow
#

didnt hypixel fire all there staff and just keep game masters

#

which they pay

wet breach
#

well I guess it wouldn't really be secretive if everyone knew right? lmao

subtle folio
#

I didn't know there was a secrect society of mc develoeprs

#

I knew there was a server full of them somewhere

wet breach
#

don't feel left out, I am not part of it either πŸ˜›

#

I just know about it is all πŸ˜‚

subtle folio
#

i dont 🀣 I dont think it would be a very good place to be

remote swallow
subtle folio
#

no ?

wet breach
#

and they get easier direct contact with Mojang, as far as I have been told anyways

remote swallow
wet breach
#

Not sure if MD ever joined it, last I remembered he was invited though

wet breach
naive bolt
#

can i stop armour stands being moved by shulkers and pistons etc?

proud basin
#

yes

naive bolt
#

how?

#

I have gravity disabled

wet breach
#

with pistons you could just cancel the event

#

or just make the piston not move it

naive bolt
#

So it's not settable in the armour stand creation?

wet breach
#

with shulkers not quite sure how they move armorstands

wet breach
wet breach
#

however they did talk over in paper though 🀨

main dew
#

how I can get block after PlayerInteractEvent?

#

like trapdoor, door etc.

remote swallow
#

check its a block interaction and there is probably a clickedBlock method

main dew
remote swallow
#

havent checked so dont know

wet breach
remote swallow
#

i would expect the even to call the block prechange if applicable, if you delay a method a tick and get the block it would give it after a change if applicable

main dew
remote swallow
#

delay it a tick or so

wet breach
#

correct because any event that is cancellable gives the previous state before anything has happened

main dew
remote swallow
#

?scheduling

undone axleBOT
remote swallow
#

you should be able to

#

BukkitScheduler#runTaskLater

main dew
#

I know but really I can't ;/

wet breach
#

Delaying a tick to get the state after an event is the appropriate solution

remote swallow
wet breach
#

well you haven't explained why you can't delay by a tick

remote swallow
#

^^

main dew
#

I need actual time when player place block and if player in this time break or place can give bags

wet breach
#

they are not going to break or place a block within 1 tick of the event

remote swallow
#

yeah

#

that would be pretty much impossible

wet breach
#

however I do have another solution

#

Do not use the block or state from the event and instead grab its location

#

use that location to use World methods to get the block instance

#

should give you the updated state as opposed to the previous

compact haven
#

isn’t the event called before the state is actually changed though

main dew
main dew
compact haven
#

that has no bearing

#

I just don’t know whether the dispatcher updates state -> call event with old state OR calls event with current state -> cancels if necessary -> updates state

wet breach
compact haven
#

my guess is the latter because that’s just intuitive with a cancellable event, but yeah would need to check impl classes for that

#

Like surely it doesn’t update state, construct a new Block and BlockState for the event, then if cancelled set it back

wet breach
main dew
#

Maybe exists something like PostPlayerInteractEvent?

compact haven
#

because that’d be required for World methods to return a different state than the event parameter

white root
#

||Please don't defenestrate me for using kotlin, Butttt.......||
Is there a way to stop AsyncPlayerPreLoginEvent#disallow() from logging to the console twice? ```kotlin
@EventHandler
fun onPlayerPreJoinEvent(event: AsyncPlayerPreLoginEvent) {
/* Some unimportant logic here */
val preLoginResult = AsyncPlayerPreLoginEvent.Result.KICK_OTHER
val reason = Messages.getString("Disallow_Join_Reasons.Proxied_Connection_Detected")
event.disallow(preLoginResult, reason)
}

The code above shows this in the console ```python
[12:28:30 INFO]: Disconnecting com.mojang.authlib.GameProfile@5a4a17a[id=71640684-7c0c-41e3-a4d4-87aa6b891fba,name=MrMcyeet,properties={textures=[com.mojang.authlib.properties.Property@5581d26c]},legacy=false] (/127.0.0.1:54564): The service that controls your IP address has disallowed you from connecting to this network.
If you believe this is an error, please contact a system administrator
[12:28:30 INFO]: com.mojang.authlib.GameProfile@5a4a17a[id=71640684-7c0c-41e3-a4d4-87aa6b891fba,name=MrMcyeet,properties={textures=[com.mojang.authlib.properties.Property@5581d26c]},legacy=false] (/127.0.0.1:54564) lost connection: The service that controls your IP address has disallowed you from connecting to this network.
If you believe this is an error, please contact a system administrator
compact haven
#

No such thing exists, to my knowledge

wet breach
#

AsyncPrelogin and PreLogin

white root
#

Damn, annoying but understandable

undone axleBOT
white root
#

bite me

tardy delta
humble tulip
#
    @EventHandler
    private void onRightClick(PlayerInteractEvent event) {
        System.out.println(event.getAction());
    }
#

not triggering for right or left click air

remote swallow
#

?interactevent

undone axleBOT
#

The PlayerInteractEvent may be called once per hand. If you only want code to be executed once, you can check the result of https://hub.spigotmc.org/javadocs/spigot/org/bukkit/event/player/PlayerInteractEvent.html#getHand(), then decide functionality.

For example, only executing code if the main hand was used:

@EventHandler
public void onPlayerInteract(PlayerInteractEvent event) {
    if (event.getHand() != EquipmentSlot.HAND) { // * if the hand used is NOT the main hand:
        return; // do not progress past this point  |
    }
    // provide functionality
}
humble tulip
#

even with items in hand

#

that's not my problem

#

it's not being called is

humble tulip
#

something's gotta be wrong

#

why tf isnt this being called for left click air

#

or right click

#

;-;

#

AAAAA

#

gonna update my server.jar

delicate lynx
#

it only triggers if you are holding an item

humble tulip
#

and it doesnt trigger if you're right clicking air with an empty hand but it's supposed to if you left click air with an empty hand

eternal oxide
#

empty hand does not trigger, left or right

humble tulip
#

i am holding an item though

eternal oxide
#

in your main hand?

humble tulip
#

yes

eternal oxide
#

what item?

humble tulip
humble tulip
#

a paper

#

anything

#

stone

eternal oxide
#

a while back the code changed to not trigger on an empty hand

#

its client side only now, unless you are holding an item

humble tulip
#

i am holding an item

eternal oxide
#

If you are holding an item and it's not triggering you have some other issue

humble tulip
tardy delta
#

a skill issue

eternal oxide
#

have you shown us any code?

humble tulip
#

it is registered because it prints the action if i click a block

eternal oxide
#

Makes no sense if you are using spigot

humble tulip
#

gonna build spigot on buildtools

#

same result

#

@EventHandler(ignoreCancelled = false) fixes it

#

wtf

#

isnt that the default?

#

wait now i removed that and it works again

#

nani???

trim creek
#

When Java is idiotic as fuck ^

humble tulip
#

now it works just fine

#

same code as before except it works now

trim creek
#

I once build my plugin that had MySQL in. I used the shaded file, and MySQL still "didn't had installed driver".

humble tulip
#

lmao

trim creek
#

Yes

#

😹

humble tulip
#

just wasted so much time debugging nothing

trim creek
#

Relatable

round finch
#

i remember then it used to be like getMainHand

humble tulip
#

why is playerinteractevent set as cancelled automatically if you right or left click air

remote swallow
#

are you running paper by chance

round finch
#

Paper🧻 mc

humble tulip
#

but i also built spigot and same thing

remote swallow
#

paper probably cancel the right click air

humble tulip
#

nah look

eternal oxide
#

I just tested it on Spigot and it all works as expected

humble tulip
#

idk what happened there

humble tulip
# humble tulip

but i also found that InteractEvent is cancelled by default if you interact with air because of this

eternal oxide
#

not on spigot

round finch
eternal oxide
#

ignore me, it is

midnight shore
#

Hi, how can i get 1, 2 and 3 considering that A is a location? I mean how can i rotate the A direction by a certain offset to get 1 and 3? (cause 2 is just A direction)

civic wind
#

So right now when i type "remove" it does nothing. When i type "add it adds player to hashmap, sends title but then removes them and sends deactivated title right after

#

I dont understand why

midnight shore
eternal oxide
#

Bukkit vector class has all the rotations

civic wind
#

Anyone?

midnight shore
civic wind
#

I’ve also tried it without using the method, same outcome

red sedge
round finch
#

remove

civic wind
round finch
#

does not have a remove from hashmap

civic wind
tardy delta
#

^^

#

write the appropriate classes and methods to modify collections instead of exposing them

civic wind
#

You're gonna have to simplify that, idk what that means lol

#

mhm?

#

or 'this' ?

#

ah yeah a setter to put into hashmap? That's what you're saying?

#

Yeah ik i removed bcos i thought it was my methods messing the command up

#

will do!

#

Do you know whats up with the command though??

civic wind
#

It's just a command? What other way could i do it lol

#

kk

#

how?

#

kk, static abuse how??

undone axleBOT
civic wind
remote swallow
#

change CommandManager to manager

#

you have a var being set on instance being created

tardy delta
#

and whers the private

civic wind
#

For this it's forcing me to as hashmap is static

#

i tried

#

ah it let me now? Weird, one more question how do i access the hashmap if it's private?

remote swallow
#

getter/setter's

civic wind
#

kk

round finch
#

ye honestly it looks kinda messy

civic wind
#

Never done get/set for hasmaps but will give it a go

#

yh

round finch
#

getter just return vaule

#

setter is sign vaule

remote swallow
#

^^

civic wind
#

so getter would return this.doublexp; ?

#

kk thanks

round finch
#

skipping java moments

civic wind
#

Not skipping, i swap between, i barely code in bukkit

#

thanks

#

Only been coding 3 months

round finch
#

sorry i just feel like this can happen alot on here
no worry

undone axleBOT
civic wind
#

Yeah i get that, but I have the odd day on bukkit as it find it good practice to implement thing's i've learnt into something practical

#

Maybe a stupid question but what is @urban grotto in place of?

round finch
#

discord lel

wet breach
#

don't use annotations like not null if you are not sure how to use them. If you use notnull and you make that thing null, bad things happen

civic wind
#

so what is the reason for the unchangeable variable?

#

ahh kk

#

so if im using this getter in a if statement i need to return it boolean? thats okay instead of Long right? i just remove the 0L?

round finch
#

ah shorting and cleaning

wet breach
#

you can make your get method return any type you want

civic wind
#

ahh yhyh

wet breach
#

well almost any

civic wind
#

sound

wet breach
#

but it makes sense however to name your get method in relation to the type you are returnning

#

so if the map holds Integers and you want to return Long

#

it makes sense then to make the method name getLong()

civic wind
#

Would this work to check if player is in hashmap?

wet breach
#

just so that it is clear on the type being returned

civic wind
#

I need to understand more on what key is

#

Okay great

#

so key would me the player.getuniqueid

#

Great thanks guys

wet breach
#

anything really, but ideally you want to use a type that is likely to be unique since the Hashmap can't have duplicate keys

#

UUID fits that

twilit roost
#

My TreePopulator suddenly stopped generating trees?

wet breach
#

and generally the preferred

civic wind
#

Cleaner? πŸ™‚

round finch
#

?paste

undone axleBOT
civic wind
#

How would i do that for args for a command though? I'd understand if it was an event

tardy delta
#

&& is a thing

civic wind
#

... true

tardy delta
#

and do early returns

wet breach
round finch
twilit roost
wet breach
#

prime example of static abuse

civic wind
round finch
#

very old code frostalf

wet breach
civic wind
#

I'll re run it and see if my problem has magically fixed

round finch
#

it is in my backup dumpster

twilit roost
# civic wind

add instanceof Player before casting
may produce Cast Errors

desert loom
wet breach
#

I love how everyone is pitching in to fix their code

civic wind
#

❀️

round finch
#

πŸ˜‰

civic wind
round finch
#

not you klocodes

civic wind
#

Hey so now i did Di, when i registered command it asks for the 3 args

civic wind
wet breach
civic wind
#

Not meant to?

#

It tells me to do

#

yeah so i do main.getInstance() on them?

#

🫣

round finch
#

so many people to skip to learn proper code writing

tardy delta
#

just use copilot which generates a whole class for you

civic wind
#

yeah cant lie im confused , im on the getters in the main class part

#

i did alt insert

#

then went to load them in onenable and it said the result was ignored

undone axleBOT
round finch
#

getters is ez

private myobject;

public object mygetter(){

return myobject;
}

civic wind
#

yh ik i literally done that

#

will paste it

#

?paste

undone axleBOT
civic wind
round finch
#

it is literally just return things

civic wind
#

i just removed that

#

it had an error

#

"public Timer getTimers() {
return timers;
}

public CommandManager getManager() {
    return manager;
}" ???
undone axleBOT
#

You can use the discord code block format to display code or just text in a more pleasing way:
```java
public class MyPlugin extends JavaPlugin {
@Override
public void onEnable() {

}

}```
Becomes:

public class MyPlugin extends JavaPlugin {
    @Override
    public void onEnable() {

    }
}```
civic wind
#
        return timers;
    }

    public CommandManager getManager() {
        return manager;
    }```
round finch
#

no shet it is null

civic wind
#

not sure ??

#

ahh kk

remote swallow
#

?paste full code

undone axleBOT
civic wind
#

I was just showing the ide error

remote swallow
#

eg timer = ...

civic wind
#

ahhh make an object of

undone axleBOT
civic wind
#

im on a udemy course, on objects currently but i just struggle with this instances etc. It's something i've been stuck on for a couple of weeks :/

lavish wing
eternal oxide
#

mih.onCommand(mih.java:56)

civic wind
#

yeah

#

oh not me? him?

#

Can i pm you?

lavish wing
remote swallow
#

are you running the command from console by chance

quaint mantle
#

How can I terminate listener?

lavish wing
#

if (secondsleft > 0) {

#

?

#

What is NPE

eternal oxide
#

thats not line 56

humble tulip
#

(cooldown.get(uuid)

#

i feel like cooldown doesnt contain uuid

#

so you're getting a npe unwrapping double from Double

quaint mantle
humble tulip
#

VotedPlayers seems like a class

#

then again

#

idk

lavish wing
#
    private int cooldowntime = 120;
    public ArrayList<String> VotedPlayers = new ArrayList<>();```
eternal oxide
#

if there is no entry this will return null cooldown.get(uuid)

lavish wing
#

But i running it from client

lavish wing
quaint mantle
eternal oxide
#

getOrDefault(uuid, 0)

quaint mantle
eternal oxide
#

unregister

quaint mantle
lavish wing
#

Thx guys getOrDefault worked

quaint mantle
#

In JavaPlugin class?

#

or Bukkit

#

thx

humble tulip
#

what sound is a good "failure" sound

#

i have player level up sound for success

#

oo ty

quaint mantle
#

Is plugin#getCommand() work globally(Every command in the server) or Locally(Internal plugin commands)?

hazy parrot
#

As its tied to JavaPlugin instance I would say "locally"

#

Usually global things are Server#something or Bukkit#something

#

Might be wrong tho

#

Also iirc getCommand just gets command from pluginyml

fluid river
#

getCommand() is picking from yml

#

if you pick a command which is not specified, you will get NPE

#

hi morice

fluid river
#

?

quaint mantle
#

I found global one

fluid river
#

oh

#

well i was just too lazy to tag

#

no

#

i mean

#

wtf

round finch
#

e_0

fluid river
#

iHateGingers_0

#

how

#

i did it

#

before

round finch
#

what your secret?

fluid river
#

a || b

#

true

fresh timber
#

I have done this and it seems to still despawn the entities

fluid river
#

maybe plugin issue

#

some other, which despawns entities for you

fresh timber
#

hmm

fluid river
#

i didn't type FREE JAVA LESSONS for like 2 weeks already

#

and havent helped anybody

round finch
#

last i saw was free fava lessons

fresh timber
#

free java lessons == scam

fluid river
#

!=

fresh timber
#

==

fluid river
#

my free java lessons == 1 step to become god

#

bruh

fresh timber
#

oooo

round finch
fluid river
#

oh

round finch
#

fava lessons

quaint mantle
#

favaπŸ’€

fluid river
#

i don't even remember typing this

#

maybe i was drunk

round finch
#

clearly

#

or tired asf

#

not hitting the keys right

#

😁

fluid river
#

nonono

remote swallow
#

hey nuker ||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​|| _ _ _ _ _ _ @fluid river

fluid river
#

jree fava lessons is good

#

hello

round finch
#

teach me fava

fluid river
remote swallow
#

maybe

fluid river
#

eplain

round finch
#

f + java?

fresh timber
#

what does clean do in maven

remote swallow
#

magic

fluid river
#

F# + java

round finch
#

yes

fluid river
fresh timber
#

huh

fluid river
#

i mean if you do mvn clean package

fresh timber
#

why do u do mvn clean package then

#

ye

#

just keep all stuff

fluid river
#

wtfff

fresh timber
#

it seems to stay tho

fluid river
#

how

remote swallow
#

hey nuker sorry about this ||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​|| _ _ _ _ _ _ @fluid river

fluid river
#

wtff

fresh timber
#

its white ;-;

fluid river
#

its orange for me

fresh timber
#

lmao

fluid river
#

how the fuck are you doing this

round finch
#

itsvollx

#

-?

fluid river
#

itsvollx

remote swallow
#

nuker

fluid river
#

is it tagging you?

round finch
#

only morice did it

remote swallow
#

look at this NukerFallCola ||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​|| _ _ _ _ _ _ @fluid river

fluid river
#

noooo

remote swallow
#

or vollx ||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​|| _ _ _ _ _ _ @round finch

fluid river
#

EpicEbicGround

#

is it orange

remote swallow
#

no

fluid river
#

how

round finch
#

can you say whatever still ping someone

fluid river
#

why

round finch
#

like a swear word

#

*bitch lel

remote swallow
#

i can do what i want when i ping people

round finch
#

works

#

morice

fluid river
#

heh

round finch
#

now do hoe

remote swallow
#

thats just a ghost ping nuker

fluid river
#

yes and

remote swallow
#

and i can see your editing the message

fluid river
#

ok and

remote swallow
fluid river
#

why am i VERIFIED for you

trim creek
round finch
#

hahaha

fluid river
#

is that some better discord shit

remote swallow
round finch
#

developer hecks

fluid river
#

never used it

trim creek
#

betterdc is against ToS btw

fluid river
#

whocares?

#

carefall doesn't care

round finch
#

saw a message with

text text (edited) test

trim creek
#

now only replace y by an i, and you can call me on my original name lmao

fluid river
#

by the way

trim creek
#

oh and also

fluid river
#

good evening comrades

trim creek
fluid river
#

where are newbies(noobs)

#

show me

round finch
#

yes we need that dev info here

fluid river
#

.

round finch
#

yeah! wtf

#

i want to know

trim creek
#

this should be illegal

fluid river
#

javascript hax

quaint mantle
remote swallow
#

dont tell them how

fluid river
#

discord is on Chromium isn't it?

remote swallow
#

no fucking clue

fluid river
#

and probably using JS

remote swallow
#

i thought it was electron

trim creek
#

someday ago... I opened a Discord terminal or what

#

inside Discord itself

#

so is probably Chromium based

fluid river
#

You can enter debug mode in discord

#

and use Debugger

#

Like in browser

trim creek
#

Yaa ya somehow possible

fluid river
#

so well

#

javascript hax

#

devs fix this

trim creek
#

uhh also just a random question Nuker. Is your pfp unicorn from My Little Pony (I don't mean this as any insultment or anything, just ciurious)?

fluid river
#

that's a fan art of rarity

#

it was .gif but i just used one of frames

#

when discord gave nitro for free i used gif

trim creek
#

ah, I thouth it was Flutter Shy or who from My Little Pony

#

thats sad actually

#

they should allow us to keep our gifs until we change it πŸ₯²

fluid river
#

true

fluid river
#

purple is just my favourite color so well

#

i have a lot of purple stuff in my life

#

champion ranks, themes and stuff

trim creek
#

I like purple as well

#

but I don't really have many stuff in purple, as of I am a guy, and in our country... being an LGBTQ person is not really allowed, and so, I don't want people think I am an LGBTQ person - and not including the fact how the law controls us, and if you are an LGBTQ person under the age of 18.... all I can say is "run for your life"

#

Altough then I misremembered the characters.

fluid river
#

associate purple with LGBT

#

πŸ˜‰

#

I'm straight

#

and i have girlfriend

trim creek
#

I completely accept that, but I know that most people in my country do not really know many things about respecting other's opinions, so I better be hiding them. πŸ€ͺ

fluid river
#

lol

trim creek
#

Hungary

stuck flax
#

if you use FileConfiguration#getString() and the path does exist but it has for example an integer instead of a string, will it return null?

undone axleBOT
remote swallow
stuck flax
#

ty

trim creek
fluid river
trim creek
#

It embed

#

:D

#

bot probably lost its goodies

#

I simply type in the URL lol

#

Cause I can remember it

#

πŸ•ΆοΈ

#

^ and on PC dark theme this is completely nothing lmao

remote swallow
#

goddamn

fluid river
#

actually i can see those glasses

#

but yeah, it's really hard

remote swallow
#

if i look hard enough

fluid river
#

depends on monitor settings i guess

remote swallow
#

i can see it, otherwise i cant

fluid river
#

you can just increase contrast

trim creek
#

Cause I have some...

#

#veryyey

fluid river
trim creek
#

Hohoooo if Hungary would be as big as how big Romania or Germany today is πŸ’€

#

We would get more insults than usual πŸ’€

#

I mean... We get jokes about being hungry... What's next actually? 😹

fluid river
#

Revert to 1991 backup

trim creek
#

1919 πŸ˜‰

round finch
#

@ every0ne why my code not work

fluid river
trim creek
#
package anya.szeret.teged;

import org.bukkit.plugin.JavaPlugin;

public class Loader extends JavaPlugin {

  public void onEnable() {
    // do yer code hearr', my fwend :3
  }

}

but hearr', my fwend, start it over 🀣

round finch
#

?paste

undone axleBOT
fluid river
#

bumped my java lesson

round finch
#

jokes

fluid river
#

thanks

#

nice formatting

trim creek
#

btw I did a question in #help-server - I prooobably need an aswner due tomorrow in American time....

round finch
trim creek
#

I can't even read it

#

D:

round finch
#

someone who has worse code i can steal?

trim creek
#
on join:
  disable script
#

here

#

this obviously does not works

round finch
#

#undeveloperment

trim creek
#

but its fun 🀣

fresh timber
#

is it useful to use the "clean" inv mvn clean package or can I just use package?

fluid river
#

idk

#

i use clean package

fresh timber
#

yea

fluid river
#

i guess that depends more on where you work at

fresh timber
#

I just make plugins for my server lol

fluid river
#

if it's just pc with dependencies from repo, you can just use package

maiden thicket
hazy parrot
#

Clean just deletes target/

fresh timber
fluid river
#

but for some devs who love to use local repos and work on some machines, it would probably be better to use clean package

fresh timber
#

that seems useless

maiden thicket
#

use gradle

#

solution

#

ez

fresh timber
#

no

fluid river
#

cuz you know, you will have some stuff which is not needed anymore in your target folder

fresh timber
#

gradle == terrible

maiden thicket
#

false

fluid river
#

wher

maiden thicket
#

was highlighting the fact that all i see are 0s emphasized

fluid river
#

it's not me tho

maiden thicket
#

i know

#

it was a joke

fluid river
#

find 2 on this picture

fresh timber
#

found

hazy parrot
fresh timber
#

why delete it

fluid river
maiden thicket
#

because maven can be buggy sometimes so gotta clean that shit

#

ez

#

what is this

#

where's waldo

fresh timber