Code Monkey home page Code Monkey logo

Comments (11)

Pieter12345 avatar Pieter12345 commented on July 21, 2024

Appears that colorize(&#11223344) does work, but is not documented. That reforms the feature request to updating the colorize() documentation.

afbeelding

from commandhelper.

malonnnn avatar malonnnn commented on July 21, 2024

The issue I'm having...

from a YML file, I have:

niceName: '&#FF00BBTest &1T&2e&3s&4t &#888888Test'

Then I read it in:

@char = read('./rpgClasses/'.@class)
@char = yml_decode(@char)

Then I print it:

ptellraw(@player, array(array(text: colorize(@char['niceName']))))

But it looks like:

https://i.imgur.com/1AI5GY2.png

The first word is a completely wrong color (looks like AQUA), and the 3rd word looks more like DARK_GRAY on my screenshot, and more like GRAY on yours. The hex colors are becoming the "standard" minecraft/terminal colors for me

from commandhelper.

PseudoKnight avatar PseudoKnight commented on July 21, 2024

Oh, that's because you're using ptellraw(), which doesn't really support hex colors in the text value. (it seems to be using the last color code from the hex code, in this case: 'B') Use text component colors there instead.

from commandhelper.

PseudoKnight avatar PseudoKnight commented on July 21, 2024

e.g. ptellraw(@player, array(array(color: '#FF00BB', text: 'Test')))

from commandhelper.

malonnnn avatar malonnnn commented on July 21, 2024

What about trying to do multiple fancy color codes?

&#FF0000T&#BB0000e&#880000s&#330000t

I would still like to be able to easily do that

edit: oh wait, are you saying i should reopen this as a feature request to ptellraw?

from commandhelper.

PseudoKnight avatar PseudoKnight commented on July 21, 2024

Multiple colors would require multiple text components.

ptellraw(@player, array(array(color: '#FF0000', text: 'T'), array(color: '#BB0000, text: 'e'), array(color: '#880000', text: 's'), array(color: '#330000', text: 't')))

This is just the json text format mojang uses. https://minecraft.fandom.com/wiki/Raw_JSON_text_format

from commandhelper.

malonnnn avatar malonnnn commented on July 21, 2024

So are you saying I can't have a feature request to simplify this process?

Like how would I store a complicated colored name in a yaml file? I mean since ptellraw supports standard color codes already, I feel it should also support hex.

from commandhelper.

PseudoKnight avatar PseudoKnight commented on July 21, 2024

It's complicated. You're using ptellraw(), which expects a specific vanilla format. The hex code format was never vanilla to begin with. So while the client can still handle the old color codes, the hex format is not supported. It only works with msg() because Spigot converts hex color codes to the json format before sending it to the client. I wrote some rough code on my server to approximately convert to mojang json text format, but an alternative some people are using is minimessage() in CHPaper. It's more 1:1 with the json format. https://docs.advntr.dev/minimessage/format.html

from commandhelper.

malonnnn avatar malonnnn commented on July 21, 2024

Oh wow okay, I'm using CHPaper already and I see that minimessage() is supported there... would that more or less be able to fully replace ptellraw() for me?

from commandhelper.

PseudoKnight avatar PseudoKnight commented on July 21, 2024

Yes. It supports all the most common features that you'd likely use. There's pros and cons to each approach, but I think minimessage would fit your use case quite well, if you like the format.

from commandhelper.

LadyCailin avatar LadyCailin commented on July 21, 2024

We should still update the docs for colorize to indicate that they support hex colors.

from commandhelper.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.