- Баллы
- 76
- Имя в Minecraft
- Votybo
Написал на Java для примера
Суть в том что когда например на строке 15 символов то мы смещаем следующее предложение на строку ниже(Нужно в Lore)
По сути уже код есть но работает криво
Просто устал разбираться в этом один, вдруг есть способ по проще это всё делать
Суть в том что когда например на строке 15 символов то мы смещаем следующее предложение на строку ниже(Нужно в Lore)
По сути уже код есть но работает криво
PHP:
public class TestClass
{
public static void main(String[] str)
{
int maxLength = 15;
List<String> stringList = Arrays.asList (
"Тут сообщение номер 1 и пусть ещё несколько букв",
"Тут сообщение номер 2 и пусть ещё несколько букв",
"Тут сообщение номер 3 и пусть ещё несколько букв");
System.out.println (method(stringList, maxLength));
}
public static List<String> method(List<String> w, int maxLength)
{
List<String> result = new ArrayList<> ();
result.add ("");
for(int i = 0; i < w.size (); i++) {
String text = w.get (i);
/*
String endLine = text.split (" ")[text.split (" ").length-1];
*/
String endLine = "";
String latestLine = text.split (" ")[text.split (" ").length - 1];
int latestLength;
for (String message : text.split (" ")) {
latestLength = endLine.length ();
if ((latestLength + message.length ()) > maxLength) {
System.out.println ("Размер сообщения: " + (latestLength + message.length ()) + ", сообщение перенесено на новую строку");
System.out.println ("Сообщение: " + endLine + " AND " + message);
if(latestLine.equalsIgnoreCase (message)){
System.out.println ("Попробуем");
}else{
endLine = message;
continue;
}
}
endLine += " " + message;
if((result.size () - 1) > 0){
setLine(result, message, maxLength, endLine);
System.out.println (result.get (result.size () - 1));
}else{
result.add (endLine);
}
}
}
return result;
}
private static void setLine(List<String> result, String message, int maxLength, String endLine){
if((result.get (result.size () - 1).length () + message.length ()) < maxLength)
{
result.set (result.size () - 1, endLine);
}else{
result.add (endLine);
}
}
}
PHP:
[, Тут сообщение, номер 1 и пусть, ещё несколько, ещё несколько букв, Тут сообщение, номер 2 и пусть, ещё несколько, ещё несколько букв, Тут сообщение, номер 3 и пусть, ещё несколько, ещё несколько букв]
Просто устал разбираться в этом один, вдруг есть способ по проще это всё делать