ftest

[CENTER] https://www.paypal.com/en_US/i/btn/btn_donateCC_LG.gif
If you like this plugin and you want to thanks for my sacrificed long time of hard work, you can doante me.
Happy, with every single donation :)
<<color #0000ff>>

[ATTACH=full]21890[/ATTACH] <</color>>[/CENTER]
About:
This plugin allows player/developer to fast building colored messages by blocks. You can build chars with using default font (like Mineplex), or with system fonts intalled on your operating system or located in fonts folder in folder plugin. You can too build your chars with animation, what give you good effect and less lag by no instant setting blocks with bigger chars.

CharsApi can be used to select place where we must go on example in lobby above portal tell about type of server ("Survival Server"), can be used in minigames to notify player how much is to start game, type of gameplay, players in game and etc. Generally you can inform player about everything you want, by using blocks.

Configuration:
Plugin is Multi-lingual.
Current translations:


  • English
  • Polish

    Rest of configure informations you can find in file.
    • Images:
      [INDENT]1.Normal [SPOILER]
      http://i60.tinypic.com/116ozk4.png
      [/SPOILER]
      2.Fonts [SPOILER]
      http://i57.tinypic.com/25p6ybs.png
      http://i57.tinypic.com/2ursh3l.png
      http://i61.tinypic.com/3hkpk.png
      http://i57.tinypic.com/2mmz4zs.png
      http://i57.tinypic.com/2n7f49.png
      [/SPOILER]
      3.Animations (Actual: 18 input, 6 output) [SPOILER]
      http://i59.tinypic.com/55nrk2.png
      http://i61.tinypic.com/256e3ok.png
      http://i60.tinypic.com/2nm214n.png
      http://i59.tinypic.com/r0du81.png
      http://i60.tinypic.com/2ptcbpv.png
      http://i59.tinypic.com/16a3c69.png
      http://i59.tinypic.com/35icb34.png
      [/SPOILER][/INDENT]
    • Installing fonts:
      [INDENT]
      Example web with fonts: http://www.dafont.com/

1.Fonts
[INDENT]a) On server:
[INDENT]Open plugins > CharsApi > Fonts > put there your fonts[/INDENT]
b) On local system (Windows):
[INDENT]Open Control Panel > Fonts > drop there your font[/INDENT][/INDENT]
2. Start Server[/INDENT]
Commands:
[INDENT]Aliases:


  • chars
  • char
  • ch
    • Arguments:

  • build <string format> - building chars
  • clear <ID> - clear chars with that ID
  • clear all - clear all chars from map
  • list <page_number> - show you detected fonts
  • font default - set default builder font
  • font <size> <type_font> <name_font> - set builder font


type_font:

*
* 0 - Normal * 1 - Bolded * 2 - Italic
name_font - name of font you can get from /ch list. On example "Agency FB"

  • animations <in / out> - show you builder <building/clearing> animations
  • updater <updater_subcommand> - menager of auto updating chars
    • Examples of using:

  • Unknown color 'rgb(0, 0, 0)'. /ch build &2Welcome &fthere's &4Merbio
  • Unknown color 'rgb(0, 0, 0)'. /ch clear 1
  • Unknown color 'rgb(0, 0, 0)'. /ch font 38 1 Agency FB
  • Unknown color 'rgb(0, 0, 0)'. /ch list 1
  • Unknown color 'rgb(0, 0, 0)'. /ch updater create chars_spawn 9[/INDENT]
    • <Format> Default builder block is White Wool like subtitles on a chat. To change this in <format> you write text in that same way. &(0-9 and a-f)

  • /ch build &aGreen


Text "green" from green wool
You can too change builded block, who you can colored with using character "#".


  • /ch build #c&1I am #p&5player


Text "I am(from blue clay) player(from purple glass pane)"


[INDENT]Parameters:


  • C - clay
  • W - wool
  • G - glass
  • P - glass pane
    [/INDENT]
    Plugin have some alternative blocks. &(g-m)

  • /ch build #cclay &gBlock


Text "clay (from white clay) Block(from bedrock)"


You can too build chars with effect(input animation). You can change this with using character "@".


  • /ch build @4#g&aGreen Dragon


Animated Text "green dragon" from green glass


You can clear animation with effect(output animation). You can change this with using character "!".


  • /ch build !1#c&8Drop Blocks
  • /ch clear <id_of_this_chars>


Dropping chars clearing animation effect ;]


You can create multiple chars (texts "starting in new line") with use character "\n".


  • /ch build @6#g&aFirst Line\n@5#c&5Second Line


Line 1: Animated text "First Line" from green glass
Line 2: Animated text "Second Line" from purple clay


You can add to yours chars overline with use character "$".


  • /ch build $w#c&4Car


Text "Car" from red clay with black wool overline


[INDENT]Parameters: (similary like in color blocks)


  • C - Black Clay
  • W - Black Wool
  • G - Black Glass
  • P - Black Glass Pane
  • L - LightBlock - Glowstone
    [/INDENT]
    • Updater:
      [INDENT]Main args: [INDENT]/ch u <subcommand>[/INDENT] Subcommands:

  • create <updater_name> <updated_time> - create updater
  • remove <updater_name> - remove updater
  • tpto <updater_name> - teleports player to updater
  • setloc - set updater location and facing
  • settime <updated_time> - set updater update time
  • add <text> - add text to update
  • del <id_text> - remove text from updater
  • info - information about actual updater (with texts id's)
  • list - updaters list
  • select <updater_name> - select updater to edit
  • flush - clear all updaters texts on air
  • start - starting updater
  • stop - stoping updater
  • save - saving updater
    Examples of using: [INDENT]<<color #000000>>Updater allows you to create auto-changing chars on your server.

So, we want to create 3 chars changing in one place by 12 seconds.
First you must to set settings of your builder like /ch font, becaouse updater will remeber this settings. You can combine fonts in updater.<</color>> <<code>>/ch u create n_spawn 12

  1. When you create updater that he is auto-targeting /ch u select
  2. so in next commands you musn't use updater_name in commands like /ch u add /ch u add @3#c&1Welcome /ch u add @3#c&2on /ch font 30 1 Agency FB /ch u add @3#c&3SPAWN&4! /ch u save <</code>>

Removing updater from meganger.

/ch u remove n_spawn

Changing location and facing updater to player location, and changing update time to 15.
<<code>>/ch u select n_spawn /ch u select n_spawn

  1. second time to agree updater selection /ch u stop
  2. Stop to plugin allows change updater settings /ch u setloc /ch u settime 15 /ch u save
  3. When we saving updater will be save + automatic starting ;] (/ch u start) <</code>>[/INDENT][/INDENT]
    • Api Section:
      [INDENT]
      Blocks builder class.
      [SPOILER]
      [INDENT]Class used to building your chars, that have settings like font, default font space, space over building location and etc.
      CharsBuilder builder = new CharsBuilder();
      
      [/INDENT]
      [/SPOILER]
    • Creating and removing chars.
      [SPOILER]
      [INDENT]CharsString - this class is used to operating on your blocks message. That contains scheme of your text, informations like actual location, and functions, to on example delete this text.

First you must to create scheme of your text:

CharsString textCS = builder.replace("#cYour Text");

Next you can to build this text by using builder:

textCS = builder.build(buildLocation, spawnLocation, textCS);


"build" function return new CharsString with remembered before blocks who was set to build message.
First location is location were plugin will build text, second is location to were will be rotated text.

You can to build text from players location and players facing:

textCS = builder.build(player, textCS);

Builder have too other "build" functions.

Now we can to remove our text.

textCS.clearChars();

[/INDENT]
[/SPOILER]
Changing builder settings.
[SPOILER]
[INDENT]BlockSettings - class who contains builder settings.

We can create new object of class with default options by:

BlockSettings settings = new BlockSettings();

,or we can get actual builder settings (If settings of builder was not changed before, so have default settings of builder.

BlockSettings settings = builder.getBlockSettings();

If we have object of class, we can to modify him properties now:
1. Default font blocks word spacing:

settings.setWordSpacing(int);

2.Default font blocks letter spacing:

settings.setLetterSpacing(int);

3.How many blocks over player will be builded chars:

settings.setPlayerSpacing(int);

4.Character of decoding color of blocks:

settings.setColorChar(char);

5.Character of decoding color blocks material:

settings.setColoredBlockChar(char);

6.Character of decoding input animation:

settings.setInputAnimationChar(char);

7.Character of decoding output animation:

settings.setOutputAnimationChar(char);

8.Add replacer character of material like "&g - bedrock":

settings.addMaterialReplacement(char, Material);


Character from '0-9,a-f' will be not working, becaouse colors haves, highter priority.

9.Setting all list of replacer materials:

settings.setMaterialReplacementList(HashMap<Character, Material>;

10.Clearing list of replacer materials:

settings.clearMaterialReplacementList();

11.Changing blocade of building chars for only air blocks:

settings.setOnlyAirBlocade(boolean);


Default: true - blocking.

12.Set building font:

settings.setFont(java.awt.Font);

and now we can set builder settings by our settings:

builder.setBlockSettings(settings);

in good way you can too do something like that:

builder.setBlockSettings(new BlockSettings().setColorChar('$').setFont(new Font("Arial", 0, 20)).setPlayerSpacing(8).addMaterialReplacement('N', Material.SPONGE));

[/INDENT]
[/SPOILER]
Creating auto changing chars.
[SPOILER]
[INDENT]CharsUpdater - that is class who manage your chars, and changing it.

CharsUpdater updater = new CharsUpdater(int, org.bukkit.Location, org.bukkit.block.BlockFace);



  1. Seconds with updater change chars
  2. Location where he change chars
  3. Face - rotation with where he will building chars

    Adding chars to updater:
    int ID = updater.addCharsString(builder, String format);
    

    Chars will be builded with settings (font, spacing and etc.), like have your builder when you add chars.
    This function return Integer - ID of added chars.

Removing chars:

updater.removeCharsString(ID);

Changing seconds of updating:

updater.setSeconds(int);

Changing location of updating:

updater.setLocation(Location);

Changing face chars:

updater.setFacing(BlockFace);

Checking about updater is working:

updater.isRunning();

And finaly:

Staring updater:

updater.start();

Stoping updater:

updater.cancel();

I prefere everytime when you adding / changing something in updater stopping him, and after changes starting.[/INDENT]
[/SPOILER][/INDENT]
[SPOILER]
[/SPOILER]Plugin have many more function and classes, but I describe most usefull ;]
If you want to see its, use shorcuts "Alt + Space" on plugin clasess, or package "pl.merbio."
Have fun with it!


Comments

Posts Quoted:
Reply
Clear All Quotes