Jump to content
Search In
  • More options...
Find results that contain...
Find results in...

How to format parts of the text in a TextComponentString?


Alsan Ali
 Share

Recommended Posts

For example, I have a TextComponentString like this:

 

new TextComponentString("Hi, there!")

 

I want the 'Hi' to be blue and 'there' to be green. Also, how do we make parts of the text clickable? Like, if the player clicks 'hi' it will execute code

Edited by Alsan Ali
Forgot to mention some things
Link to comment
Share on other sites

25 minutes ago, Alsan Ali said:

For example, I have a TextComponentString like this:

 


new TextComponentString("Hi, there!")

 

I want the 'Hi' to be blue and 'there' to be green. Also, how do we make parts of the text clickable? Like, if the player clicks 'hi' it will execute code

 

use Color Codes.

http://minecraft.tools/en/color-code.php (use the MOTD one)

 

Example of something I use in my mod (the first line is in orange/gold + Italics. the next line is normal white)

Spoiler

@Override
    public void addInformation(ItemStack stack, World worldIn, List<String> tooltip, ITooltipFlag flagIn) {
        
        tooltip.add("\u00A76\u00A7o"+"The ore must first be crushed, chemically processed and then refined using Electrolysis.");
        tooltip.add("By-Products of this ore include Gallium, Iron Oxides, Silica (Silicon Oxide) and Titania (Titanium Oxide).");
    }

 

For the commands, look at how vanilla does it in the books. you wouldn't be limited by vanilla commands though, you could directly call your own java code

Edited by Cadiboo

About Me

Spoiler

My Discord - Cadiboo#8887

My WebsiteCadiboo.github.io

My ModsCadiboo.github.io/projects

My TutorialsCadiboo.github.io/tutorials

Versions below 1.14.4 are no longer supported on this forum. Use the latest version to receive support.

When asking support remember to include all relevant log files (logs are found in .minecraft/logs/), code if applicable and screenshots if possible.

Only download mods from trusted sites like CurseForge (minecraft.curseforge.com). A list of bad sites can be found here, with more information available at stopmodreposts.org

Edit your own signature at www.minecraftforge.net/forum/settings/signature/ (Make sure to check its compatibility with the Dark Theme)

Link to comment
Share on other sites

9 minutes ago, diesieben07 said:

No.

 

Create a "base" TextComponentString with an empty string in it. Then you can use ITextComponent::appendSibling on it with differently formatted components to form one big component.

Thanks, I thought about doing this, just didn't know how to nest TextComponentStrings together. And can you tell me the reason why color codes can't be used? I just want to know

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
 Share



  • Recently Browsing

    No registered users viewing this page.

  • Posts

    • MC version :1.16.5 Forge version :36.2.20 I added "MeleeAttackGoal" in my entity,and then I can‘t summon this entity.what's wrong in my code? //the entity's code package net.fsmc.classmates.animals; import net.minecraft.entity.AgeableEntity; import net.minecraft.entity.EntityType; import net.minecraft.entity.LivingEntity; import net.minecraft.entity.ai.attributes.Attributes; import net.minecraft.entity.ai.goal.*; import net.minecraft.entity.merchant.villager.AbstractVillagerEntity; import net.minecraft.entity.monster.ZombifiedPiglinEntity; import net.minecraft.entity.passive.AnimalEntity; import net.minecraft.entity.passive.IronGolemEntity; import net.minecraft.entity.passive.TurtleEntity; import net.minecraft.entity.player.PlayerEntity; import net.minecraft.world.World; import net.minecraft.world.server.ServerWorld; import javax.annotation.Nullable; public class n7Yjy extends AnimalEntity  {          public n7Yjy(EntityType<? extends AnimalEntity> type, World worldIn) {         super(type, worldIn);     }          public static AttributeModifierMap.@NotNull MutableAttribute registerAttributes() {          return MobEntity.func_233666_p_()                  .createMutableAttribute(Attributes.MOVEMENT_SPEED, 0.23000000417232513D)                  .createMutableAttribute(Attributes.ATTACK_DAMAGE, 7.0D)                  .createMutableAttribute(Attributes.FOLLOW_RANGE, 40.0D)                  .createMutableAttribute(Attributes.MAX_HEALTH, 30.0D);      }          @Override     protected void registerGoals(){         this.goalSelector.addGoal(2, new RandomWalkingGoal(this , 1D,1));         this.goalSelector.addGoal(3, new LookAtGoal(this,PlayerEntity.class,8.0f));         this.goalSelector.addGoal(3,new MeleeAttackGoal(this,0.3,true));         this.Target();     }     public void Target(){         this.targetSelector.addGoal(2, (new HurtByTargetGoal(this,new Class[0])).setCallsForHelp(new Class[]{ZombifiedPiglinEntity.class}));         this.targetSelector.addGoal(1, new NearestAttackableTargetGoal<>(this, PlayerEntity.class, true));         this.targetSelector.addGoal(1, new NearestAttackableTargetGoal<>(this, AbstractVillagerEntity.class, false));         this.targetSelector.addGoal(1, new NearestAttackableTargetGoal<>(this, IronGolemEntity.class, true));         this.targetSelector.addGoal(1, new NearestAttackableTargetGoal<>(this, TurtleEntity.class, 10, true, false, TurtleEntity.TARGET_DRY_BABY));     }     @Nullable     @Override     public AgeableEntity createChild(ServerWorld serverWorld, AgeableEntity ageableEntity) {         return null;     } }
    • I am trying to set up my first project and it says this: Unsupported Java.  Your build is currently configured to use Java 16.0.1 and Gradle 6.8.1. Possible solution:  - Use Java 15 as Gradle JVM: Open Gradle settings   - Upgrade Gradle wrapper to 7.0 version and re-import the project I know I am using Java 15 already because in the gradle settings it says gradle JVM: 15 version 15.0.2 So my question is how do I upgrade the gradle wrapper? Sorry if this is a noobie question, trying to set up my first project.  
    • Yes, I don't think you want this as a mod jar. I am not 100% on the details, but ModLauncher implements a multi-module-layer system and you need to load into a specific layer.
    • 1.17 is no longer a supported version. Currently supported versions are 1.16.5 (LTS) and 1.18.1 (latest).
    • User was banned for piracy. Buy the game.
  • Topics

  • Who's Online (See full list)

×
×
  • Create New...

Important Information

By using this site, you agree to our Privacy Policy.