mirror of
https://github.com/pmmp/PocketMine-MP.git
synced 2025-09-07 18:32:55 +00:00
TextFormat: Moved toANSI() to Terminal, close #1995
This also removes a cyclic dependency between TextFormat and Terminal, meaning that TextFormat is now standalone without any external dependencies. This is also an API break. Beware all ye who wander here, master = bleeding-edge!
This commit is contained in:
@ -24,7 +24,7 @@ declare(strict_types=1);
|
||||
namespace pocketmine\utils;
|
||||
|
||||
/**
|
||||
* Class used to handle Minecraft chat format, and convert it to other formats like ANSI or HTML
|
||||
* Class used to handle Minecraft chat format, and convert it to other formats like HTML
|
||||
*/
|
||||
abstract class TextFormat{
|
||||
public const ESCAPE = "\xc2\xa7"; //§
|
||||
@ -395,97 +395,4 @@ abstract class TextFormat{
|
||||
|
||||
return $newString;
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns a string with colorized ANSI Escape codes
|
||||
*
|
||||
* @param string|array $string
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
public static function toANSI($string) : string{
|
||||
if(!is_array($string)){
|
||||
$string = self::tokenize($string);
|
||||
}
|
||||
|
||||
$newString = "";
|
||||
foreach($string as $token){
|
||||
switch($token){
|
||||
case TextFormat::BOLD:
|
||||
$newString .= Terminal::$FORMAT_BOLD;
|
||||
break;
|
||||
case TextFormat::OBFUSCATED:
|
||||
$newString .= Terminal::$FORMAT_OBFUSCATED;
|
||||
break;
|
||||
case TextFormat::ITALIC:
|
||||
$newString .= Terminal::$FORMAT_ITALIC;
|
||||
break;
|
||||
case TextFormat::UNDERLINE:
|
||||
$newString .= Terminal::$FORMAT_UNDERLINE;
|
||||
break;
|
||||
case TextFormat::STRIKETHROUGH:
|
||||
$newString .= Terminal::$FORMAT_STRIKETHROUGH;
|
||||
break;
|
||||
case TextFormat::RESET:
|
||||
$newString .= Terminal::$FORMAT_RESET;
|
||||
break;
|
||||
|
||||
//Colors
|
||||
case TextFormat::BLACK:
|
||||
$newString .= Terminal::$COLOR_BLACK;
|
||||
break;
|
||||
case TextFormat::DARK_BLUE:
|
||||
$newString .= Terminal::$COLOR_DARK_BLUE;
|
||||
break;
|
||||
case TextFormat::DARK_GREEN:
|
||||
$newString .= Terminal::$COLOR_DARK_GREEN;
|
||||
break;
|
||||
case TextFormat::DARK_AQUA:
|
||||
$newString .= Terminal::$COLOR_DARK_AQUA;
|
||||
break;
|
||||
case TextFormat::DARK_RED:
|
||||
$newString .= Terminal::$COLOR_DARK_RED;
|
||||
break;
|
||||
case TextFormat::DARK_PURPLE:
|
||||
$newString .= Terminal::$COLOR_PURPLE;
|
||||
break;
|
||||
case TextFormat::GOLD:
|
||||
$newString .= Terminal::$COLOR_GOLD;
|
||||
break;
|
||||
case TextFormat::GRAY:
|
||||
$newString .= Terminal::$COLOR_GRAY;
|
||||
break;
|
||||
case TextFormat::DARK_GRAY:
|
||||
$newString .= Terminal::$COLOR_DARK_GRAY;
|
||||
break;
|
||||
case TextFormat::BLUE:
|
||||
$newString .= Terminal::$COLOR_BLUE;
|
||||
break;
|
||||
case TextFormat::GREEN:
|
||||
$newString .= Terminal::$COLOR_GREEN;
|
||||
break;
|
||||
case TextFormat::AQUA:
|
||||
$newString .= Terminal::$COLOR_AQUA;
|
||||
break;
|
||||
case TextFormat::RED:
|
||||
$newString .= Terminal::$COLOR_RED;
|
||||
break;
|
||||
case TextFormat::LIGHT_PURPLE:
|
||||
$newString .= Terminal::$COLOR_LIGHT_PURPLE;
|
||||
break;
|
||||
case TextFormat::YELLOW:
|
||||
$newString .= Terminal::$COLOR_YELLOW;
|
||||
break;
|
||||
case TextFormat::WHITE:
|
||||
$newString .= Terminal::$COLOR_WHITE;
|
||||
break;
|
||||
default:
|
||||
$newString .= $token;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
return $newString;
|
||||
}
|
||||
|
||||
}
|
||||
|
Reference in New Issue
Block a user