Перейти к содержанию
Авторизация  
vadim346

Нужна Помощь По Нпс

Рекомендуемые сообщения

Здравствуйте помогите с нпс L2BugReportInstance у него в окне для описания ошибки не пишется по русски как заставить его чтобы там можно было писать по русски

Вот сам код:

package acis.gameserver.model.actor.instance;

import javolution.text.TextBuilder;
import acis.gameserver.ai.CtrlIntention;
import acis.gameserver.model.L2World;
import acis.gameserver.network.L2GameClient;
import acis.gameserver.network.clientpackets.Say2;
import acis.gameserver.network.serverpackets.*;
import acis.gameserver.templates.chars.L2NpcTemplate;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileWriter;
import java.util.StringTokenizer;
public class L2BugReportInstance extends L2NpcInstance
{
   private static String _type;
   public L2BugReportInstance(int objectId, L2NpcTemplate template)
   {
    super(objectId, template);
   }
   @Override
   public void onBypassFeedback(L2PlayerInstance player, String command)
   {
    if (command.startsWith("send_report"))
    {
	    StringTokenizer st = new StringTokenizer(command);
	    st.nextToken();
	    String msg = null;
	    String type = null;
	    type = st.nextToken();
	    msg = st.nextToken();
	    try
	    {
		    while (st.hasMoreTokens())
		    {
			    msg = msg + " " + st.nextToken();
		    }
		    sendReport(player, type, msg);
	    }
	    catch (StringIndexOutOfBoundsException e)
	    {
	    }
    }
   }
   static
   {
    new File("log/BugReports/").mkdirs();
   }
   private void sendReport(L2PlayerInstance player, String command, String msg)
   {
    String type = command;
    L2GameClient info = player.getClient().getConnection().getClient();
    if (type.equals("Обшие"))
	    _type = "General";
    if (type.equals("Скилы"))
	    _type = "Skills";
    if (type.equals("Квесты"))
	    _type = "Quest";
    if (type.equals("Нпс"))
	    _type = "Npc";
    if (type.equals("Петы"))
	    _type = "Pets";
    if (type.equals("Статы"))
	    _type = "Stats";
    try
    {
	    String fname = "log/BugReports/" + player.getName() + ".txt";
	    File file = new File(fname);
	    boolean exist = file.createNewFile();
	    if (!exist)
	    {
		    player.sendMessage("You have already sent a bug report, GMs must check it first.");
		    return;
	    }
	    FileWriter fstream = new FileWriter(fname);
	    BufferedWriter out = new BufferedWriter(fstream);
	    out.write("Character Info: " + info + "\r\nBug Type: " + _type + "\r\nMessage: " + msg);
	    player.sendMessage("Report sent. GMs will check it soon. Thanks...");
	    for (L2PlayerInstance allgms : L2World.getInstance().getAllGMs())
		    allgms.sendPacket(new CreatureSay(0, Say2.SHOUT, "Bug Report Manager", player.getName() + " Оставил описание недоработки."));
	    System.out.println("Character: " + player.getName() + " sent a bug report.");
	    out.close();
    }
    catch (Exception e)
    {
	    player.sendMessage("Something went wrong try again.");
    }
   }
   @Override
   public void onAction(L2PlayerInstance player)
   {
    if (!canTarget(player))
    {
	    return;
    }
    if (this != player.getTarget())
    {
	    player.setTarget(this);
	    player.sendPacket(new MyTargetSelected(getObjectId(), 0));
	    player.sendPacket(new ValidateLocation(this));
    }
    else if (!canInteract(player))
    {
	    player.getAI().setIntention(CtrlIntention.AI_INTENTION_INTERACT, this);
    }
    else
    {
	    showHtmlWindow(player);
    }
    player.sendPacket(new ActionFailed());
   }
   private void showHtmlWindow(L2PlayerInstance activeChar)
   {
    NpcHtmlMessage nhm = new NpcHtmlMessage(5);
    TextBuilder replyMSG = new TextBuilder("");
    replyMSG.append("<html><title>Bug Report Manager</title>");
    replyMSG.append("<body><br><br><center>");
    replyMSG.append("<table border=0 height=10 bgcolor=\"ffba00\" width=240>");
    replyMSG.append("<tr><td align=center><font color=\"000000\">Привет " + activeChar.getName() + ".</font></td></tr>");
    replyMSG.append("<tr><td align=center><font color=\"000000\">Сейчас нет администрации.</font></td></tr>");
    replyMSG.append("<tr><td align=center><font color=\"000000\">Вы нашли не доработку?</font></td></tr>");
    replyMSG.append("<tr><td align=center><font color=\"000000\">Администрация просит их оставить тут.</font></td></tr>");
    replyMSG.append("</table><br>");
    replyMSG.append("<img src=\"L2UI.SquareWhite\" width=280 height=1><br><br>");
    replyMSG.append("<table width=250><tr>");
    replyMSG.append("<td><font color=\"00FF00\">Недоработка в:</font></td>");
    replyMSG.append("<td><combobox width=105 var=type list=Общих;Скилах;Квестах;Нпсах;Петах;Статах></td>");
    replyMSG.append("</tr></table><br><br>");
    replyMSG.append("<multiedit var=\"msg\" width=250 height=50><br>");
    replyMSG.append("<br><img src=\"L2UI.SquareWhite\" width=280 height=1><br><br><br><br><br><br><br>");
    replyMSG.append("<button value=\"Отправить Отчет\" action=\"bypass -h npc_" + getObjectId() + "_send_report $type $msg\" width=204 height=20 back=\"sek.cbui75\" fore=\"sek.cbui75\">");
    replyMSG.append("</center></body></html>");
    nhm.setHtml(replyMSG.toString());
    activeChar.sendPacket(nhm);
    activeChar.sendPacket(new ActionFailed());
   }
}

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

мне надо чтобы вот тут могло писаться по русски а то пишется только на английском

replyMSG.append("<multiedit var=\"msg\" width=250 height=50><br>");

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

стоит в программе Utf-8 но все равно не пишется по русски в игре в этом нпсе

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

может какую не то строку нужно добавить?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

помоему проблема в патче... не помню но давно вроде когда поменял патч не мог писать в админке анонсы на русском... может то же самое и тут

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Поставьте кодировку ANSI.

 

Совет:

Посмотрел код вашего NPC. Советую сделать так:

1. Убрать полностью javolution с кода:

import javolution.text.TextBuilder;

2. Все TextBuilder заменить на StringBuilder.

На пример:

TextBuilder replyMSG = new TextBuilder("");

Меняем на:

StringBuilder replyMSG = new StringBuilder();

Изменено пользователем SoFace

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Патч пилить надо, вопрос в нем.

Причем тут патч ?

Если человек использует Английский патч, то да.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Патч русифицированный

 

Такая проблема может возникнуть либо с патчем, либо с кодировкой utf-8

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Патч русифицированный

Поставьте кодировку ANSI.

 

Совет:

Посмотрел код вашего NPC. Советую сделать так:

1. Убрать полностью javolution с кода:

import javolution.text.TextBuilder;

2. Все TextBuilder заменить на StringBuilder.

На пример:

TextBuilder replyMSG = new TextBuilder("");

Меняем на:

StringBuilder replyMSG = new StringBuilder();

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

я так как вы сказали сделал а вот проблема такая же.

а вот где другой патч взять?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

я так как вы сказали сделал а вот проблема такая же.

а вот где другой патч взять?

Как вариант:

http://forummaxi.ru/index.php?showtopic=39380

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

блин файл удален(((

Было залито на яднекс диск же.

Читайте ту тему ниже.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Было залито на яднекс диск же.

Читайте ту тему ниже.

Спасибо сейчас проверю

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти
Авторизация  

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×
×
  • Создать...