Jump to content
  • 0

Question

Posted
Index: java/net/sf/l2j/gameserver/model/actor/instance/L2ClanManagerInstance.java
===================================================================
--- java/net/sf/l2j/gameserver/model/actor/instance/L2ClanManagerInstance.java	(revision 0)
+++ java/net/sf/l2j/gameserver/model/actor/instance/L2ClanManagerInstance.java	(working copy)
@@ -0,0 +1,116 @@
/*
 * This program is free software: you can redistribute it and/or modify it under
 * the terms of the GNU General Public License as published by the Free Software
 * Foundation, either version 3 of the License, or (at your option) any later
 * version.
 * 
 * This program is distributed in the hope that it will be useful, but WITHOUT
 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
 * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
 * details.
 * 
 * You should have received a copy of the GNU General Public License along with
 * this program. If not, see <http://www.gnu.org/licenses/>.
 */
package net.sf.l2j.gameserver.model.actor.instance;

import net.sf.l2j.Config;
import net.sf.l2j.gameserver.ai.CtrlIntention;
import net.sf.l2j.gameserver.network.serverpackets.ActionFailed;
import net.sf.l2j.gameserver.network.serverpackets.MyTargetSelected;
import net.sf.l2j.gameserver.network.serverpackets.NpcHtmlMessage;
import net.sf.l2j.gameserver.network.serverpackets.SocialAction;
import net.sf.l2j.gameserver.network.serverpackets.ValidateLocation;
import net.sf.l2j.gameserver.templates.chars.L2NpcTemplate;
import net.sf.l2j.util.Rnd;

/**
 * @author Debian
 *
 */
public class L2ClanManagerInstance extends L2NpcInstance
{
	public L2ClanManagerInstance(int objectId, L2NpcTemplate template)
	{
		super(objectId, template);
	}
	
	@Override
	public void onBypassFeedback(L2PcInstance player, String command)
	{
		if (command.startsWith("levelup"))
		{
			if(player.getClan() != null)
			{
				if (!player.isClanLeader())
				{
					player.sendMessage("Only clan leaders, can use this service.");
				}
				if (player.isClanLeader() && player.getClan().getReputationScore() > 50000)
				{
					player.getClan().takeReputationScore(50000);
					player.getClan().changeLevel(8);
					player.sendMessage("Your clan successfully changed to level 8.");
				}
				else
				{
					player.sendMessage("Your clan must have 50000 clan reputation points in order to buy level 8.");
				}
			}
			else
			{
				player.sendMessage("You don't have a clan.");
			}
		}
	}
	
    @Override
    public void onAction(L2PcInstance player)
    {
		if (this != player.getTarget()) {
			player.setTarget(this);
			player.sendPacket(new MyTargetSelected(getObjectId(), player.getLevel() - getLevel()));
			player.sendPacket(new ValidateLocation(this));
		}
		else if (isInsideRadius(player, INTERACTION_DISTANCE, false, false)) {
			SocialAction sa = new SocialAction(this, Rnd.get(8));
			broadcastPacket(sa);
			player.setCurrentFolkNPC(this);
			showMessageWindow(player);
			player.sendPacket(ActionFailed.STATIC_PACKET);
		}
		else {
			player.getAI().setIntention(CtrlIntention.INTERACT, this);
			player.sendPacket(ActionFailed.STATIC_PACKET);
		}
    }
    
    private void showMessageWindow(L2PcInstance player)
    {
        NpcHtmlMessage debian = new NpcHtmlMessage(5);
        StringBuilder tb = new StringBuilder("");
            
        tb.append("<html><head><title>Clan Manager</title></head><body>");
        tb.append("<center>");
        tb.append("<img src=\"L2Font-e.replay_logo-e\" width=256 height=80>");
        tb.append("<br>");
        tb.append("<img src=\"l2ui_ch3.herotower_deco\" width=256 height=32 align=center>"); 
        tb.append("<br>");
        tb.append("<font color=\"FFAA00\">Clan Manager</font>");
        tb.append("<br>");
        tb.append("</center>");
        tb.append("<center>");
        tb.append("<a action=\"bypass -h npc_" + getObjectId() + "_levelup\">Get your clan at level 8.</a><br>");
        tb.append("<font color=\"FFAA00\">It costs 50.000 clan reputation points.</font>");
        tb.append("<br>");
        tb.append("</center>");
        tb.append("<center>");
        tb.append("<img src=\"l2ui_ch3.herotower_deco\" width=256 height=32 align=center>");
        tb.append("<br>");
        tb.append("<font color=\"FFAA00\">" + Config.SERVER_NAME + "</font>");  
        tb.append("</center>");
        tb.append("</body></html>");
            
        debian.setHtml(tb.toString());
        player.sendPacket(debian);
    }	
}

As titlle say anyone have this code for frozen?

Recommended Posts

  • 0
Posted (edited)

What do you need?

An npc to do a clan lvl 8 and give 50k rep?

 

Edit: You want to add this on l2jfrozen? or from fromzen to another project?

I don't understand...

Edited by 'Baggos'
  • 0
Posted

i want to add this code because i want remove the html from code side and paste it on merchant because i want make one npc who will enclude many thinks like Enchant skill,enchant item,increase clan lvl etc ... sec i will post errors

  • 0
Posted (edited)


* Foundation, either version 3 of the License, or (at your option) any later

 * version.

 * 

 * This program is distributed in the hope that it will be useful, but WITHOUT

 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS

 * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more

 * details.

 * 

 * You should have received a copy of the GNU General Public License along with

 * this program. If not, see <http://www.gnu.org/licenses/>.

 */

package com.l2jfrozen.gameserver.model.actor.instance;

 

import com.l2jfrozen.gameserver.ai.CtrlIntention;

import com.l2jfrozen.gameserver.network.serverpackets.ActionFailed;

import com.l2jfrozen.gameserver.network.serverpackets.MyTargetSelected;

import com.l2jfrozen.gameserver.network.serverpackets.NpcHtmlMessage;

import com.l2jfrozen.gameserver.network.serverpackets.SocialAction;

import com.l2jfrozen.gameserver.network.serverpackets.ValidateLocation;

import com.l2jfrozen.gameserver.templates.L2NpcTemplate;

import com.l2jfrozen.util.random.Rnd;

 

/**

 * @author Debian

 * 

 * Rework Ayami

 */

public class L2ClanManagerInstance extends L2FolkInstance

{

public L2ClanManagerInstance(int objectId, L2NpcTemplate template)

{

super(objectId, template);

}

 

@Override

public void onBypassFeedback(L2PcInstance player, String command)

{

if (command.startsWith("levelup"))

{

if(player.getClan() != null)

{

if (!player.isClanLeader())

{

player.sendMessage("Only clan leaders, can use this service.");

}

if (player.isClanLeader() && player.getClan().getReputationScore() > 50000)

{

player.getClan().takeReputationScore(50000);

player.getClan().changeLevel(8);

player.sendMessage("Your clan successfully changed to level 8.");

}

else

{

player.sendMessage("Your clan must have 50000 clan reputation points in order to buy level 8.");

}

}

else

{

player.sendMessage("You don't have a clan.");

}

}

}

 

    @Override

    public void onAction(L2PcInstance player)

    {

if (!canTarget(player))

return;

 

player.setLastFolkNPC(this);

 

// Check if the L2PcInstance already target the L2NpcInstance

if (this != player.getTarget())

{

// Set the target of the L2PcInstance player

player.setTarget(this);

 

// Send a Server->Client packet MyTargetSelected to the L2PcInstance player

MyTargetSelected my = new MyTargetSelected(getObjectId(), 0);

player.sendPacket(my);

my = null;

 

// Send a Server->Client packet ValidateLocation to correct the L2NpcInstance position and heading on the client

player.sendPacket(new ValidateLocation(this));

}

else

{

// Calculate the distance between the L2PcInstance and the L2NpcInstance

if (!canInteract(player))

{

// Notify the L2PcInstance AI with AI_INTENTION_INTERACT

player.getAI().setIntention(CtrlIntention.AI_INTENTION_INTERACT, this);

}

else

{

showMessageWindow(player);

}

}

// Send a Server->Client ActionFailed to the L2PcInstance in order to avoid that the client wait another packet

player.sendPacket(ActionFailed.STATIC_PACKET);

}

    

    private void showMessageWindow(L2PcInstance player)

    {

        NpcHtmlMessage debian = new NpcHtmlMessage(5);

        StringBuilder tb = new StringBuilder("");

            

        tb.append("<html><head><title>Clan Manager</title></head><body>");

        tb.append("<center>");

        tb.append("<img src=\"L2Font-e.replay_logo-e\" width=256 height=80>");

        tb.append("<br>");

        tb.append("<img src=\"l2ui_ch3.herotower_deco\" width=256 height=32 align=center>"); 

        tb.append("<br>");

        tb.append("<font color=\"FFAA00\">Clan Manager</font>");

        tb.append("<br>");

        tb.append("</center>");

        tb.append("<center>");

        tb.append("<a action=\"bypass -h npc_" + getObjectId() + "_levelup\">Get your clan at level 8.</a><br>");

        tb.append("<font color=\"FFAA00\">It costs 50.000 clan reputation points.</font>");

        tb.append("<br>");

        tb.append("</center>");

        tb.append("<center>");

        tb.append("<img src=\"l2ui_ch3.herotower_deco\" width=256 height=32 align=center>");

        tb.append("<br>");

        tb.append("</center>");

        tb.append("</body></html>");

        debian.setHtml(tb.toString());

        player.sendPacket(debian);

    }

}

Edited by Ayami-
  • 0
Posted

Works fine,i correct a copy/paste wrong line: 

/*
 * This program is free software: you can redistribute it and/or modify it under
 * the terms of the GNU General Public License as published by the Free Software
 * Foundation, either version 3 of the License, or (at your option) any later
 * version.
 * 
 * This program is distributed in the hope that it will be useful, but WITHOUT
 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
 * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
 * details.
 * 
 * You should have received a copy of the GNU General Public License along with
 * this program. If not, see <http://www.gnu.org/licenses/>.
 */
package com.l2jfrozen.gameserver.model.actor.instance;
 
import com.l2jfrozen.gameserver.ai.CtrlIntention;
import com.l2jfrozen.gameserver.network.serverpackets.ActionFailed;
import com.l2jfrozen.gameserver.network.serverpackets.MyTargetSelected;
import com.l2jfrozen.gameserver.network.serverpackets.NpcHtmlMessage;
import com.l2jfrozen.gameserver.network.serverpackets.SocialAction;
import com.l2jfrozen.gameserver.network.serverpackets.ValidateLocation;
import com.l2jfrozen.gameserver.templates.L2NpcTemplate;
import com.l2jfrozen.util.random.Rnd;
 
/**
 * @author Debian
 * 
 * Rework Ayami
 */
public class L2ClanManagerInstance extends L2FolkInstance
{
public L2ClanManagerInstance(int objectId, L2NpcTemplate template)
{
super(objectId, template);
}
 
@Override
public void onBypassFeedback(L2PcInstance player, String command)
{
if (command.startsWith("levelup"))
{
if(player.getClan() != null)
{
if (!player.isClanLeader())
{
player.sendMessage("Only clan leaders, can use this service.");
}
if (player.isClanLeader() && player.getClan().getReputationScore() > 50000)
{
player.getClan().setReputationScore(50000, true);
player.getClan().changeLevel(8);
player.sendMessage("Your clan successfully changed to level 8.");
}
else
{
player.sendMessage("Your clan must have 50000 clan reputation points in order to buy level 8.");
}
}
else
{
player.sendMessage("You don't have a clan.");
}
}
}
 
    @Override
    public void onAction(L2PcInstance player)
    {
if (!canTarget(player))
return;
 
player.setLastFolkNPC(this);
 
// Check if the L2PcInstance already target the L2NpcInstance
if (this != player.getTarget())
{
// Set the target of the L2PcInstance player
player.setTarget(this);
 
// Send a Server->Client packet MyTargetSelected to the L2PcInstance player
MyTargetSelected my = new MyTargetSelected(getObjectId(), 0);
player.sendPacket(my);
my = null;
 
// Send a Server->Client packet ValidateLocation to correct the L2NpcInstance position and heading on the client
player.sendPacket(new ValidateLocation(this));
}
else
{
// Calculate the distance between the L2PcInstance and the L2NpcInstance
if (!canInteract(player))
{
// Notify the L2PcInstance AI with AI_INTENTION_INTERACT
player.getAI().setIntention(CtrlIntention.AI_INTENTION_INTERACT, this);
}
else
{
showMessageWindow(player);
}
}
// Send a Server->Client ActionFailed to the L2PcInstance in order to avoid that the client wait another packet
player.sendPacket(ActionFailed.STATIC_PACKET);
}
    
    private void showMessageWindow(L2PcInstance player)
    {
        NpcHtmlMessage debian = new NpcHtmlMessage(5);
        StringBuilder tb = new StringBuilder("");
            
        tb.append("<html><head><title>Clan Manager</title></head><body>");
        tb.append("<center>");
        tb.append("<img src=\"L2Font-e.replay_logo-e\" width=256 height=80>");
        tb.append("<br>");
        tb.append("<img src=\"l2ui_ch3.herotower_deco\" width=256 height=32 align=center>"); 
        tb.append("<br>");
        tb.append("<font color=\"FFAA00\">Clan Manager</font>");
        tb.append("<br>");
        tb.append("</center>");
        tb.append("<center>");
        tb.append("<a action=\"bypass -h npc_" + getObjectId() + "_levelup\">Get your clan at level 8.</a><br>");
        tb.append("<font color=\"FFAA00\">It costs 50.000 clan reputation points.</font>");
        tb.append("<br>");
        tb.append("</center>");
        tb.append("<center>");
        tb.append("<img src=\"l2ui_ch3.herotower_deco\" width=256 height=32 align=center>");
        tb.append("<br>");
        tb.append("</center>");
        tb.append("</body></html>");
        debian.setHtml(tb.toString());
        player.sendPacket(debian);
    } 
}
  • 0
Posted

Don't you see that this code is shit w/o logic?

 

 

if (player.isClanLeader() && player.getClan().getReputationScore() > 50000)
{
player.getClan().setReputationScore(50000, true);
player.getClan().changeLevel(8);
player.sendMessage("Your clan successfully changed to level 8.");
}
else
{
player.sendMessage("Your clan must have 50000 clan reputation points in order to buy level 8.");
}

 

Made my day.

  • 0
Posted

Don't you see that this code is shit w/o logic?

if (player.isClanLeader() && player.getClan().getReputationScore() > 50000)
{
player.getClan().setReputationScore(50000, true);
player.getClan().changeLevel(8);
player.sendMessage("Your clan successfully changed to level 8.");
}
else
{
player.sendMessage("Your clan must have 50000 clan reputation points in order to buy level 8.");
}

Made my day.

I am confused with this..

This "NPC" now, take from a player 50.001 rep points, and give back clan lvl 8 and 50k rep?

  • 0
Posted

I am confused with this..

This "NPC" now, take from a player 50.001 rep points, and give back clan lvl 8 and 50k rep?

Eh :P i just reworked his code indeed it doesnt give logic stuff xD 

Guest
This topic is now closed to further replies.


  • Posts

    • Looking to hire a skilled L2J developer or team to build a custom private server for solo play with advanced server-side AI bots. This is NOT for public launch — just a self-hosted project where I can simulate a full L2 experience alone or with a few friends. 🔹 What I Need A private L2J server ( High Five preferred, newer versions can work as well) with bots that: Farm 24/7 on their own (solo or in bot parties) Can be invited into party and follow basic orders (attack, follow, res, heal, etc.) Are able to join Olympiad, fight with proper logic (per class), and rank up Can coordinate for Raid Bosses (check spawn, move, assist, heal, DPS, etc.) Act like real players: town routines, rebuffing, restocking, even chatting if possible Have different roles: tanks, healers, nukers, archers, etc. Can interact through simple in-game commands or NPC interface 🔹 Your Job Set up the server and geodata Integrate a scalable bot system (written in Java or scriptable) Write clean, modular AI behavior (farming, PvP, party play, raid logic, etc.) Allow me to control/assign bots easily (in-game or config) Bonus: basic UI or GM panel for bot config 🔹 Payment Serious budget for serious work PayPal, crypto, or preferred method Project-based or hourly, negotiable Milestone-based OK 🔹 Contact Send me: Your experience with L2J or similar projects Any bot/AI systems you've built before Estimated timeframe Pricing expectations
    • Yeah, it’s wild how much gambling has changed. When I was growing up, even scratch-off tickets felt like a big thing, but now with so many casino apps and betting sites, it’s just everywhere. I know a few people who got caught up in online slots during lockdown and really struggled to stop, just because it was always on their phone.   I stick to in-game stuff like skin trading for games like CS2 or Dota, which to me feels less risky, especially if you know the value of the items. If you’re curious how these trades work or want to see some guides, just visit website—there’s a lot of info about trading without real gambling involved.
    • Yea, his work is amazing, very well done designs, but the timing is not really his thing. I’m waiting for logo and launcher design since December 2024, so 10 days is not really that much lol
    • Discord         :  utchiha_market Telegram        : https://t.me/utchiha_market Auto Buy Store  : https://utchihamkt.mysellauth.com/ Not sure if we’re legit? Check Our server — real reviews, real buyers https://discord.gg/uthciha-servicess  | https://campsite.bio/utchihaamkt  
  • 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