Jump to content

Recommended Posts

Posted

ade parte mia new idea :P den pisteyw na yparxei kati paramoio :P

[GR]dokimasmeno se l2jserver H5

[ENG]Tested in l2jserverH5

 

[ENG]create a file inside data/scripts/custom/BugReport/ with name BugReport.java and paste the code bellow

[GR]dhmiourghste ena ena file me name: BugReport.java mesa sto data/scripts/custom/BugReport/

kai kade paste ton parakatw kodika.

package custom.BugReport;

import java.io.BufferedWriter;
import java.io.File;
import java.io.FileWriter;
import java.util.StringTokenizer;
import java.util.logging.Logger;

import com.l2jserver.gameserver.cache.HtmCache;
import com.l2jserver.gameserver.model.L2World;
import com.l2jserver.gameserver.model.actor.L2Npc;
import com.l2jserver.gameserver.model.actor.instance.L2PcInstance;
import com.l2jserver.gameserver.model.quest.Quest;
import com.l2jserver.gameserver.network.L2GameClient;
import com.l2jserver.gameserver.network.clientpackets.Say2;
import com.l2jserver.gameserver.network.serverpackets.CreatureSay;
import com.l2jserver.gameserver.network.serverpackets.NpcHtmlMessage;

/**
* @author -=DoctorNo=-
* Version 2.3
*/
public class BugReport extends Quest
{
private Logger _log = Logger.getLogger(BugReport.class.getName());
private static final int NpcId = 553; // npc id here
private static String htmlLoc = "data/scripts/custom/BugReport/1.htm";

public BugReport(int questId, String name, String descr)
{
	super(questId, name, descr);
	addFirstTalkId(NpcId);
	addTalkId(NpcId);
	addStartNpc(NpcId);
}

@Override
public String onAdvEvent(String event, L2Npc npc, L2PcInstance player)
{
	if (event.startsWith("report"))
	{
		sendReport(event, npc, player, event);
	}
	return "";
}

private void sendReport(String event, L2Npc npc, L2PcInstance player, String command)
{
	StringTokenizer st = new StringTokenizer(command);
	st.nextToken();

	String message = "";
	String _type = null; // General, Fatal, Misuse, Balance, Other
	L2GameClient info = player.getClient().getConnection().getClient();

	try
	{
		_type = st.nextToken();
		while(st.hasMoreTokens())
			message = message + st.nextToken() + " ";

		if (message.equals(""))
		{
			player.sendMessage("Message box cannot be empty.");
			return;
		}

		String fname = "data/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: " + message);
		player.sendMessage("Report sent. GMs will check it soon. Thanks...");

		for(L2PcInstance allgms: L2World.getInstance().getAllGMs())
		{
			allgms.sendPacket(new CreatureSay(0, Say2.SHOUT, "Bug Report Manager", player.getName() + " sent a bug report."));
			allgms.sendPacket(new CreatureSay(0, Say2.SHOUT, "Report Type", _type + "."));
		}

		_log.info("Character: " + player.getName() + " sent a bug report.");
		out.close();
	}
	catch (Exception e)
	{
		player.sendMessage("Something went wrong try again.");
	}
}

@Override
public String onFirstTalk(L2Npc npc, L2PcInstance player)
{
	final int npcId = npc.getNpcId();
	if (player.getQuestState(getName()) == null)
		newQuestState(player);

	if (npcId == NpcId)
	{
		String html = HtmCache.getInstance().getHtm(player.getHtmlPrefix(), htmlLoc);
		html = html.replaceAll("%player%", player.getName());

		NpcHtmlMessage npcHtml = new NpcHtmlMessage(0);
		npcHtml.setHtml(html);
		player.sendPacket(npcHtml);
	}
	return "";
}

public static void main(final String[] args)
{
	new BugReport(-1, BugReport.class.getSimpleName(), "custom");
	System.out.println("CUSTOM: BugReport Manager loaded");
}
}

[ENG]in the same folder create one html with name: 1.htm and paste the code bellow

[GR]ston idio fakelo dhmiourghste ena htm me name:1.htm kai valte ton parakatw kodika

<html>
<title>Bug Report Manager</title>
<body>
<br><br>
<center>
<table border="0" height=10 bgcolor="444444" width=240>
<tr><td align=center><font color="00FFFF">Hello %player%.</font></td></tr>
<tr><td align=center><font color="00FFFF">There are no Gms online</font></td></tr>
<tr><td align=center><font color="00FFFF">and you want to report something?</font></td></tr>
<tr><td align=center><font color="00FFFF">Now it is possible.</font></td></tr>
</table>
<br>
<img src="L2UI.SquareWhite" width=280 height=1>
<br><br>
<table width=250>
<tr>
<td><font color="LEVEL">Select Report Type:</font></td>
<td><combobox width=105 var=type list=General;Fatal;Misuse;Balance;Other></td>
</tr>
</table>
<br><br>
<multiedit var="msg" width=250 height=50><br>
<button value="Report It" action="bypass -h Quest BugReport report $type $msg" width=128 height=26 back="L2UI_ct1.button_df" fore="L2UI_ct1.button_df"></td>
<br>
<img src="L2UI.SquareWhite" width=280 height=1>
<br><br><br><br><br><br><br>
<font color=3293F3>L2Total Team</font><br>
<img src="L2UI.SquareWhite" width=280 height=1>
</center>
</body></html>

 

[ENG]dont forget to add in scripts.cfg file

[GR]mhn ksexase sto scripts.cfg na  kanete paste afto

custom/BugReport/BugReport.java

 

[ENG]finally create an empty folder with name BugReports in data/

[GR]kai telos na dhmiourghse enan adeio fakelo me name BugReports

mesa sto data...

Den asxoli8ika kai polu, alla sta petaxta pou ekana 2-3 tests den mou evgale provlhma.

 

Version 2.3 Change log.

1. Code rework-format

2. Empty message box check added

 

jjblw0.jpg

width=1024 height=599http://i49.tinypic.com/2yxg7ld.jpg[/img]

width=1024 height=599http://i49.tinypic.com/whh6h.jpg[/img]

Posted

Polu kalo alla de nomizeis pws siga siga oi players ta pernoun ola sto piato? As kanoyn ena petition i na kanoun log in sto forum. :-P

axxaax Player : den 3erw apo forum re soz den 3erw kan ti einai forum kaneme pt..
  • 1 month later...

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.




  • Posts

    • Hello everyone, Martin here - aka tehSx1, junior developer. I’m currently looking for work in private server development. I have experience working with L2JLucera, L2JEternity, L2JMobius, with Classic, Interlude, and H5 clients. The last project I participated in was L2-Avalon, a rework of Interlude using Classic files. I’m from Argentina, but I understand English very well for fluent communication. I can work on configuration, maintenance, creating NPCs, mobs, items, fixing skills, or anything related to the server side. I also have basic knowledge to work on the client side as well. I have some self-taught knowledge of Java, so with a bit of time and ChatGPT I can get things done there too. Anyone interested can contact me on Discord (Smookes420#4425) to discuss terms. I’m open to new opportunities and excited to take part in new projects to continue my learning process. P.S.: I’ve been playing Lineage 2 since I was 6 years old on Chronicle C1. I’m 26 now. It’s all about the passion for the game, bro. 
    • What does ‘half-finished’ even mean? Most projects based on L2Off use essentially the same files made for gold-style servers, and they’re fully functional. As for the L2J branches, calling them ‘half-finished’ couldn’t be further from the truth, they’re not only complete in the sense of gold-style projects but are actually extended with even more features.
    • Discord         :  utchiha_market Telegram        : https://t.me/utchiha_market Auto Buy Store  : https://utchiha-market.mysellauth.com/ Not sure if we’re legit? Check Our server — real reviews, real buyers https://discord.gg/4EPpYhe2HA  | https://campsite.bio/utchihaamkt  
    • sell adena l2rebon signature x1 - 1kk = 1 dollars l2reborn x10 - 500kk = 4.7 dollars E-Global x Lu4 - 1kk = 2.7 dollars BOHPTS - x20-x500 TOP PRICE DISCORD - GODDARDSHOP TELEGRAM - MMOPROMO Also on sale are Epic jewelry, Clothes at a very good price
    • For wholesale clients   We understand that favorable terms are especially important when dealing with large volumes. That’s why we offer a flexible system for wholesale clients  we can discuss pricing and provide personalized solutions tailored to your needs. With us, you get not only a reliable service but also support focused on long-term cooperation. We value partners who operate at scale and do everything possible to make it convenient and profitable for you to grow together with Vibe SMS.   Website link — https://vibe-sms.net/ Our Telegram channel — https://t.me/vibe_sms   Quality in the Details     As Henry Ford said: "Quality means doing it right even when no one is looking."   At Vibe SMS, we believe the same. Every number and every feature is designed to make your work easy and stress-free. With us, it’s simple: grab a number, complete your task, and move forward. Reliability, comfort, and attention to detail — that’s our vibe, helping you focus on what really matters.   Website link — https://vibe-sms.net/ Our Telegram channel — https://t.me/vibe_sms  
  • Topics

×
×
  • Create New...

AdBlock Extension Detected!

Our website is made possible by displaying online advertisements to our members.

Please disable AdBlock browser extension first, to be able to use our community.

I've Disabled AdBlock