AI скрипт - Форум администраторов игровых серверов
Форум администраторов игровых серверов StormWall - Защита от DDos атак
Регистрация Мнения Справка Пользователи Календарь Все разделы прочитаны
Вернуться   Форум администраторов игровых серверов > MMO > Lineage II > Работа со скриптами

Работа со скриптами Помощь в редактировании и написании квестов к Java серверам, а так же эвентов.

Ответ
Опции темы
Непрочитано 22.08.2010, 15:33   #1
Пользователь

Автор темы (Топик Стартер) AI скрипт

У меня появилась задумка сделать лестничных мобов т.е. убил моба одного за место его появился моб с другим ид и т.д у меня такая проблема:
1) значения в базе меняются т.е. скрипт работает но в игре при убийстве моба он респится снова со старых значений. Что надо добавить в скрипт, что бы значения из базы в игру обновлялись. (хз мб поможет думаю можно сделать по аналогу //respawnall, но у меня не получилось)

Сборка л2опен эпилог рева 900+(+ скока точно не помню)


Удаление из базы
Код:
	public void DeleteHeader(int spawnId)
	{
			Connection con = null;
			try
			{
				con = L2DatabaseFactory.getInstance().getConnection();
				PreparedStatement statement = con.prepareStatement("DELETE FROM `spawnlist` WHERE (`id`=?)");
				statement.setInt(1, spawnId);
				statement.execute();
				statement.close();
			}
			catch (Exception e)
			{
				_log.log(Level.WARNING, "SpawnTable: Could not store spawn in the DB:" + e.getMessage(), e);
			}
			finally
			{
				L2DatabaseFactory.close(con);
			}
	}


Вставка в базу
Код:
	public void InsertHeader(int id, int spawnId)
	{
			Connection con = null;
			try
			{
				con = L2DatabaseFactory.getInstance().getConnection();
				PreparedStatement statement = con.prepareStatement("INSERT INTO `spawnlist` (`id`, `location`, `count`, `npc_templateid`, `locx`, `locy`, `locz`, `randomx`, `randomy`, `heading`, `respawn_delay`, `loc_id`, `periodOfDay`) VALUES (?, '', '1', ?, '-82155', '152749', '-3179', '0', '0', '64055', '10', '0', '0')");
				statement.setInt(1, spawnId);
				statement.setInt(2, id);
				statement.execute();
				statement.close();
			}
			catch (Exception e)
			{
				_log.log(Level.WARNING, "SpawnTable: Could not store spawn in the DB:" + e.getMessage(), e);
			}
			finally
			{
				L2DatabaseFactory.close(con);
			}
	}
onKill
Код:
	public String onKill(L2Npc npc, L2PcInstance player, boolean isPet)
	{
		int npcId = npc.getNpcId();
		int objId = npc.getObjectId();
		if (npcId == LEADER0_1)
		npc.broadcastPacket(new NpcSay(objId, 0, npcId, "I am very sad..."));
		DeleteHeader(6000, 10000);
		InsertHeader(6000, 10000);
		return "";
	}
надеюсь у кого нибудь мысли будут
nikitawasa вне форума Ответить с цитированием
Непрочитано 22.08.2010, 16:08   #2
Изгнанные

Thumbs up Re: AI скрипт

Цитата:
Сообщение от nikitawasa Посмотреть сообщение
У меня появилась задумка сделать лестничных мобов т.е. убил моба одного за место его появился моб с другим ид и т.д у меня такая проблема:
1) значения в базе меняются т.е. скрипт работает но в игре при убийстве моба он респится снова со старых значений. Что надо добавить в скрипт, что бы значения из базы в игру обновлялись. (хз мб поможет думаю можно сделать по аналогу //respawnall, но у меня не получилось)

Сборка л2опен эпилог рева 900+(+ скока точно не помню)


Удаление из базы
Код:
	public void DeleteHeader(int spawnId)
	{
			Connection con = null;
			try
			{
				con = L2DatabaseFactory.getInstance().getConnection();
				PreparedStatement statement = con.prepareStatement("DELETE FROM `spawnlist` WHERE (`id`=?)");
				statement.setInt(1, spawnId);
				statement.execute();
				statement.close();
			}
			catch (Exception e)
			{
				_log.log(Level.WARNING, "SpawnTable: Could not store spawn in the DB:" + e.getMessage(), e);
			}
			finally
			{
				L2DatabaseFactory.close(con);
			}
	}


Вставка в базу
Код:
	public void InsertHeader(int id, int spawnId)
	{
			Connection con = null;
			try
			{
				con = L2DatabaseFactory.getInstance().getConnection();
				PreparedStatement statement = con.prepareStatement("INSERT INTO `spawnlist` (`id`, `location`, `count`, `npc_templateid`, `locx`, `locy`, `locz`, `randomx`, `randomy`, `heading`, `respawn_delay`, `loc_id`, `periodOfDay`) VALUES (?, '', '1', ?, '-82155', '152749', '-3179', '0', '0', '64055', '10', '0', '0')");
				statement.setInt(1, spawnId);
				statement.setInt(2, id);
				statement.execute();
				statement.close();
			}
			catch (Exception e)
			{
				_log.log(Level.WARNING, "SpawnTable: Could not store spawn in the DB:" + e.getMessage(), e);
			}
			finally
			{
				L2DatabaseFactory.close(con);
			}
	}
onKill
Код:
	public String onKill(L2Npc npc, L2PcInstance player, boolean isPet)
	{
		int npcId = npc.getNpcId();
		int objId = npc.getObjectId();
		if (npcId == LEADER0_1)
		npc.broadcastPacket(new NpcSay(objId, 0, npcId, "I am very sad..."));
		DeleteHeader(6000, 10000);
		InsertHeader(6000, 10000);
		return "";
	}
надеюсь у кого нибудь мысли будут
А в Пагане такой ai ещё не реализован?
GoodShadow вне форума Отправить сообщение для GoodShadow с помощью ICQ Отправить сообщение для GoodShadow с помощью Skype™ Ответить с цитированием
Непрочитано 22.08.2010, 20:36   #3
Пользователь

Автор темы (Топик Стартер) Re: AI скрипт

Там такого не заметил, желательно конечно написать кусок кода (мб там слепой и не вижу).
nikitawasa вне форума Ответить с цитированием
Ответ


Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 
Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Скрипт SkyAngel Lineage II 0 14.06.2010 02:52
Скрипт на exp Shema Серверная часть 1 19.03.2010 13:27
[help] скрипт послабляем RB Tonchi Работа со скриптами 2 11.07.2009 01:54


© 2007–2022 «Форум администраторов игровых серверов»
Защита сайта от DDoS атак — StormWall
Работает на Булке неизвестной версии с переводом от zCarot
Текущее время: 14:52. Часовой пояс GMT +3.

Вверх