WFT
Recoded, added features, removed useless stuff, more efficent code, PER PLAYER TEXT
Install / Use
/learn @WolfDen133/WFTREADME
WFloatingText - 1.5.3
Hello, and welcome to WFloatingText.

Please note that 1.5.2 to 1.5.3 you will now need to use
\#instead of#
NOW IN API 5.0
This is the official recode of my old plugin WFT, witch had some issues. Overall I was not happy with the result, the code was messy, it was all in one file, there was useless and in-efficient code, with a hard api to use, so decided to recode it.
I have added features, because I felt the plugin needed them, and removed features, as some features where not needed.
Features added
- WFT-OLD Migration
- Multiple language support
- Optional display identifier
- More Tags
- Per-Player Texts
- Packet Texts over Entity
- More efficient and pretty code
- Operator texts More info here
- Operator change detection
- Multi newline support
Migration: This should have been added on 1.0, but texts from WFT-OLD will now be automaticly migrated to WFT format.
Language support: You can now change the language of the plugin to suit your server.
Display identifier: You can now turn on or off the option to see the texts unique identifier (Much like Texter, but optional).
More tags: Added many more tags for better, they are also player specific.
Per-Player texts: Players will now get a specific text depending on what tag you use.
Packets: The old plugin used entities, putting more load on the server, whereas this plugin uses packets, therefore creating a more lightweight plugin.
Efficient and pretty code: The code in this plugin is WAY more efficient and clean that the old plugin. The code is also spaced out in multiple files.
Operator texts: Have the option only displaying text to operators, this could be useful for a general server overview in your spawn world without it affecting your general players! Again, more info here
Operator change detection: WFloatingText will now automatically detect when your operator status changes, so no more annoying re-logging
Multi-newline support: You can use either \n for a new line for always player facing texts, or use \# to keep the shape of your text, or have the best of both worlds
Bug Fixes
List form would crash the server
Status: Fixed
Version: >=1.5.1
Fixed in: <=1.5.2
https://github.com/WolfDen133/WFT/issues/21
Status: Fixed
Version: >=1.3.5
Fixed in: <=1.3.6
https://github.com/WolfDen133/WFT/issues/20
Status: Fixed
Version: >=1.3.4
Fixed in: <=1.3.5
https://github.com/WolfDen133/WFT/issues/12
Status: Fixed
Version: >=1.3.1
Fixed in: <=1.3.2
https://github.com/WolfDen133/WFT/issues/16
Status: Fixed
Version: >=1.3.2
Fixed In: <=1.3.3
Features
- Refresh timer
- Tags for various things
- Lots of useful commands
- Form or command line options
- Help subcommand for new people
- Powerful fast and efficient code
- Extensive customizable
Example

Commands
Master command is ft|wft.master
| Subcommand | Permission | Description | Aliases |
|------------|-------------------|----------------------------------|--------------------------------------------------------|
| wft | wft.command.use | The master command | ft |
| add | ~ | Add a new ft | spawn, summon, new, make, create, c, a |
| remove | ~ | Remove a existing ft | break, delete, bye, d, r, |
| edit | ~ | Edit an existing ft | e, change |
| tp | ~ | Teleport to an ft | teleportto, tpto, goto, teleport |
| tphere | ~ | Teleport a ft to you | teleporthere, movehere, bringhere, tph, move |
| list | ~ | See a list of the current fts | see, all |
| help | ~ | So you can get some in-game help | stuck, h, ? |
| reload | ~ | Re-read and reload all texts | - |
Tags
| Tag | Description |
|--------------------|------------------------------------------------------------|
| \# | New Section |
| \n | New line |
| & | Use for color codes (same as §) |
| {NAME} | Players real name |
| {REAL_NAME} | Players real name |
| {DISPLAY_NAME} | Players display name (often nick plugins use display name) |
| {PING} | Players Current Ping |
| {MAX_PLAYERS} | Maximum players that can be on the server |
| {ONLINE_PLAYERS} | Currently online player count |
| {X} | Players X Position |
| {Y} | Players Y Position |
| {Z} | Players Z Position |
| {REAL_TPS} | Current server tps |
| {TPS} | Average server tps |
| {REAL_LOAD} | Current server load |
| {LOAD} | Average server load |
| {LEVEL_NAME} | Players current level name |
| {LEVEL_FOLDER} | Players current level folder name |
| {LEVEL_PLAYERS} | Players current level player count |
| {CONNECTION_IP} | The IP address that the player connected from |
| {SERVER_IP} | The servers IP address |
| {TIME} | Current server time (Customisable in config) |
| {DATE} | Current server date (Customisable in config) |
Create your own
See how to create your own here
Languages
- Czech (cz)
- English (en)
- German (de)
- Russian (ru)
- Slovak (sk)
- Spanish (sp)
- Ukrainian (ua)
- Turkish (tr)
- Indonesian (id)
But feel free to add your own!
NEW API
Notes:
- Docs are presented:
$varableName // [varableType] explanation
Example:
Import the classes
Creating the text
// Creation and registration
$position = new Position($x, $y, $z, $world);
WFT::getInstance()->getTextManager()->registerText(
$identifier, // [STRING] Unique identifier that is used in the api to manipulate the text in future
$text, // [STRING] In raw, the text that you want for the text's content
$position, // [OBJECT: POSITION] Where the text is placed in the server
($spawnToAll) // [BOOL] (optional) Whether the text is spawned to the server on creation
($saveText) // [BOOL] (optional) Whether WFT creates a config file for the text and reloads it when the server is restarted (set to false if you are going to be registering texts on enable)
); // Returns the created text
// Spawning (unnecessary if $spawnToAll is true)
// (identifier is the one used to register the ft)
WFT::getInstance()->getTextManager()->getActions()->spawnTo($player, $identifier);
// or
WFT::getInstance()->getTextManager()->getActions()->spawnTo($identifier);
Getting and changing the text's content
// Getting the ft
$floatingText = WFT::getInstance()->getTextManager()->getTextById($identifier);
// Changing the text
$floatingText->setText($text);
// Pushing the update
WFT::getInstance()->getTextManager()->getActions()->respawnTo($player, $floatingText);
// or
WFT::getInstance()->getTextManager()->getActions()->respawnToAll($floatingText);
Removing the text
// Remove the text
WFT::getInstance()->getTextManager()->removeText($identifier);
That's it, the rest is handled by the plugin
Credit
- WolfDen133 (Main Programmer) [ฬ๏ɭŦ๔єภ133;#6969]
- McMelonTV (Translations - Slovak, Czech) [McMelon#9999]
- TheFixDev (Translation - German) [𝓗𝓪𝓫𝓓𝓲𝓬𝓱𝓢𝓸𝓖𝓮𝓻𝓷#6158]
- kostamax27 (Suggestion & Translation - Russian, Ukrainian) [kostamax27#0160]
- Sergittos (Translation - Spanish) [Sergittos#0001]
- DragonfireHD (Translation - Turkish)
- keenanyafiqy (Translation - Indonesian)
