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

Скрипт спавна монстров

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

У кого небудь есть скрипт на рандомный спавн монстров, после убийства одного монстра? Типа как на PWSoft, только на люцероподные? Если есть в кого-то, поделитесь пожалуйста


 
package ai;

import net.sf.l2j.gameserver.ThreadPoolManager;
import net.sf.l2j.gameserver.model.actor.instance.L2NpcInstance;
import net.sf.l2j.gameserver.model.actor.instance.L2PcInstance;
import net.sf.l2j.gameserver.model.quest.jython.QuestJython;
import scripts.clanhalls.BanditStronghold;
 
public class BanditCamp extends QuestJython
{
	private static final int[] CAMPS = {35423,35424,35425,35426,35427};
	private static final int[] BOSSES = {35428,35429,35430,35431,35432};
	private L2NpcInstance camp = null;
	public BanditCamp(int questId, String name, String descr)
	{
		super(questId, name, descr, 1);
		for (int i: CAMPS)
		{
			this.addSpawnId(i);
		}
		for (int k: BOSSES)
		{
			this.addKillId(k);
		}
	}
	
    public String onSpawn(L2NpcInstance npc) 
	{ 
		camp = npc;
		ThreadPoolManager.getInstance().scheduleGeneral(new CheckSiege(), 5000);
		return null; 
	} 
	
	public String onKill(L2NpcInstance npc, L2PcInstance killer, boolean isPet) 
	{ 
		BanditStronghold.getCH().notifyDeath(npc.getObjectId());
		return null; 
	}
	
	public class CheckSiege implements Runnable
	{
		public CheckSiege()
		{
		}
		
		public void run()
		{	
			for (int i = 0; i < 7200000; i += 3000)
			{
				try
				{
					Thread.sleep(3000);
					if (BanditStronghold.getCH().inProgress())
						break;
				}
				catch (InterruptedException e)
				{
				}
			}
			camp.deleteMe();
		}
	}
	
	public static void main (String... arguments )
	{
		new BanditCamp(-1,"BanditCamp","BanditCamp");
	}
}

 

 

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


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

У кого небудь есть скрипт на рандомный спавн монстров, после убийства одного монстра? Типа как на PWSoft, только на люцероподные? Если есть в кого-то, поделитесь пожалуйста

 

package ai;

import net.sf.l2j.gameserver.ThreadPoolManager;
import net.sf.l2j.gameserver.model.actor.instance.L2NpcInstance;
import net.sf.l2j.gameserver.model.actor.instance.L2PcInstance;
import net.sf.l2j.gameserver.model.quest.jython.QuestJython;
import scripts.clanhalls.BanditStronghold;
 
public class BanditCamp extends QuestJython
{
	private static final int[] CAMPS = {35423,35424,35425,35426,35427};
	private static final int[] BOSSES = {35428,35429,35430,35431,35432};
	private L2NpcInstance camp = null;
	public BanditCamp(int questId, String name, String descr)
	{
		super(questId, name, descr, 1);
		for (int i: CAMPS)
		{
			this.addSpawnId(i);
		}
		for (int k: BOSSES)
		{
			this.addKillId(k);
		}
	}
	
    public String onSpawn(L2NpcInstance npc) 
	{ 
		camp = npc;
		ThreadPoolManager.getInstance().scheduleGeneral(new CheckSiege(), 5000);
		return null; 
	} 
	
	public String onKill(L2NpcInstance npc, L2PcInstance killer, boolean isPet) 
	{ 
		BanditStronghold.getCH().notifyDeath(npc.getObjectId());
		return null; 
	}
	
	public class CheckSiege implements Runnable
	{
		public CheckSiege()
		{
		}
		
		public void run()
		{	
			for (int i = 0; i < 7200000; i += 3000)
			{
				try
				{
					Thread.sleep(3000);
					if (BanditStronghold.getCH().inProgress())
						break;
				}
				catch (InterruptedException e)
				{
				}
			}
			camp.deleteMe();
		}
	}
	
	public static void main (String... arguments )
	{
		new BanditCamp(-1,"BanditCamp","BanditCamp");
	}
}

 

 

 

Могу набросать код. Смотря на скок надо тебе.

  • Upvote 1

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


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

Могу набросать код. Смотря на скок надо тебе.

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

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

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


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

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

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

а чево rnd не применяешь короче в скайп пикай

  • Upvote 1

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


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

изучай программирование - отпадут такие вопросы
в любом случае знание программирования пригодится, так что будет не зря

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


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

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

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

Получилось запилить такую фишку?

Мне тоже такая нужна, не мог бы поделиться?

  • Upvote 1

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


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

Получилось запилить такую фишку?

Мне тоже такая нужна, не мог бы поделиться?

package ai;


import ru.catssoftware.gameserver.model.L2Attackable;
import ru.catssoftware.gameserver.model.actor.instance.L2NpcInstance;
import ru.catssoftware.gameserver.model.actor.instance.L2PcInstance;
import ru.catssoftware.gameserver.model.quest.Quest;
import ru.catssoftware.tools.random.Rnd;


public class FOGMobs extends Quest {




private final static int Boss = 50111;
private final static int Mobs = 50112;
private final static int Chance = 90;


public FOGMobs(int questId, String name, String descr)
{
super(questId, name, descr);
addKillId(Boss);
super.addSpawnId(Mobs);
}


@Override
public String onKill (L2NpcInstance npc, L2PcInstance killer, boolean isPet) 
{




if(Rnd.get(100)<Chance) 
{
L2Attackable Boss = (L2Attackable)addSpawn(Mobs,npc.getX(),npc.getY(),npc.getZ(),npc.getHeading(),true,0);
}
return null;
}


public static void main (String... arguments )
{
new FOGMobs(-1,"FOGMobs","FOGMobs");
}


}

Изменено пользователем MeRDox
  • Upvote 1

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


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

У кого небудь есть скрипт на рандомный спавн монстров, после убийства одного монстра? Типа как на PWSoft, только на люцероподные? Если есть в кого-то, поделитесь пожалуйста

[spoiler=SpawnNpc]

 

package ai;

import net.sf.l2j.gameserver.ThreadPoolManager;
import net.sf.l2j.gameserver.model.actor.instance.L2NpcInstance;
import net.sf.l2j.gameserver.model.actor.instance.L2PcInstance;
import net.sf.l2j.gameserver.model.quest.jython.QuestJython;
import scripts.clanhalls.BanditStronghold;
 
public class BanditCamp extends QuestJython
{
	private static final int[] CAMPS = {35423,35424,35425,35426,35427};
	private static final int[] BOSSES = {35428,35429,35430,35431,35432};
	private L2NpcInstance camp = null;
	public BanditCamp(int questId, String name, String descr)
	{
		super(questId, name, descr, 1);
		for (int i: CAMPS)
		{
			this.addSpawnId(i);
		}
		for (int k: BOSSES)
		{
			this.addKillId(k);
		}
	}
	
    public String onSpawn(L2NpcInstance npc) 
	{ 
		camp = npc;
		ThreadPoolManager.getInstance().scheduleGeneral(new CheckSiege(), 5000);
		return null; 
	} 
	
	public String onKill(L2NpcInstance npc, L2PcInstance killer, boolean isPet) 
	{ 
		BanditStronghold.getCH().notifyDeath(npc.getObjectId());
		return null; 
	}
	
	public class CheckSiege implements Runnable
	{
		public CheckSiege()
		{
		}
		
		public void run()
		{	
			for (int i = 0; i < 7200000; i += 3000)
			{
				try
				{
					Thread.sleep(3000);
					if (BanditStronghold.getCH().inProgress())
						break;
				}
				catch (InterruptedException e)
				{
				}
			}
			camp.deleteMe();
		}
	}
	
	public static void main (String... arguments )
	{
		new BanditCamp(-1,"BanditCamp","BanditCamp");
	}
}

 

 

а как он на пвСофт работает? сам принцип какой? в зоне спавнит рандомно? или после смерти моба появляется рандомный моб?

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


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

а как он на пвСофт работает? сам принцип какой? в зоне спавнит рандомно? или после смерти моба появляется рандомный моб?

Скрипт, который висит в начале темы, никого не спавнит Не знаю к чему его вообще туда добавили. А вообще можно написать с любыми условиями скрипт, хоть рандомного моба, хоть в рандомном месте.

  • Upvote 1

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


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

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

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

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

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

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

Войти

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

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

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

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

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