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

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

Ответ
Опции темы
Непрочитано 08.03.2009, 22:54   #1
Аватар для SpeedFaer
Пользователь

Автор темы (Топик Стартер) Анонс при PvP и Pk для L2jServer

Файл: L2jServer\L2_GameServer\java\net\sf\l2j\Config.jav a

Ищем:

Код:
public static boolean	L2JMOD_CHAMPION_ENABLE;
И перед этим добавляем:

Код:
    public static boolean   L2JMOD_SHOW_PVP;
    public static boolean   L2JMOD_SHOW_PK;
    public static String    L2JMOD_PK_KILL_YOU;
    public static String    L2JMOD_YOU_KILL_PK;
    public static String    L2JMOD_YOU_KILL_AND_STATE_PK;
    public static String    L2JMOD_PVP_KILL;
Ищём:
Код:
L2JMOD_CHAMPION_ENABLE              	= Boolean.parseBoolean(L2JModSettings.getProperty("ChampionEnable", "false"));
И перед этим добавляем:
Код:
                    L2JMOD_SHOW_PVP                 = Boolean.parseBoolean(L2JModSettings.getProperty("ShowPvp", "false"));
                    L2JMOD_SHOW_PK                  = Boolean.parseBoolean(L2JModSettings.getProperty("ShowPk", "false"));
                    L2JMOD_PK_KILL_YOU              = L2JModSettings.getProperty("PkKillYou", "kill");
                    L2JMOD_YOU_KILL_PK              = L2JModSettings.getProperty("YouKillPk", "kill");
                    L2JMOD_YOU_KILL_AND_STATE_PK    = L2JModSettings.getProperty("YouKillPkAndStatePk", "kill");
                    L2JMOD_PVP_KILL                 = L2JModSettings.getProperty("PvpKill", "kill");
Сохраняем файл.

Файл: L2jServer\L2_GameServer\java\net\sf\l2j\gameserver \model\actor\instance\L2PcInstance.java

Идём на 5026 строку.

Так выглядит:
Код:
					else
					{
						if (!(isInsideZone(ZONE_PVP) && !isInsideZone(ZONE_SIEGE)) || pk == null)
							onDieUpdateKarma(); // Update karma if delevel is not allowed
					}
				}
			}
                             #+++++ Сюда добавляем +++++#
		}
		
		// Untransforms character.
		if (isTransformed())
			untransform();
Добавляем это:
Код:
            if (pk != null) {
                if (getName() != pk.getName() && pk.getAccessLevel().isGm() != true && getAccessLevel().isGm() != true) {
                    String announcetext = "";
                    if (Config.L2JMOD_SHOW_PK && getPvpFlag() == 0) {
                          if (pk.getKarma() > 0) {
                               announcetext = pk.getName() + " " + Config.L2JMOD_PK_KILL_YOU + " " + getName() + "!";
                          } else if (getKarma() > 0) { 
                               announcetext = pk.getName() + " " + Config.L2JMOD_YOU_KILL_PK + " " + getName() + "!";
                          } else { 
                               announcetext = pk.getName() + " " + Config.L2JMOD_YOU_KILL_AND_STATE_PK + " " + getName() + "!";
                          }
                    } else if (Config.L2JMOD_SHOW_PVP) {
                          announcetext = pk.getName() + " " + Config.L2JMOD_PVP_KILL + " " + getName() + "!";
                    }
                Announcements.getInstance().announceToAll(announcetext);
                }
            }
Сохраняем файл.

Теперь в конфигах в файл l2jmods.properties добавляем это:

Код:
# Показывать PvP
ShowPvp = True
# Показывать Pk
ShowPk = True
# Что показывать между никами, если Pk убивает кого-то
PkKillYou = \u0433\u043E\u043F\u043D\u0443\u043B(\u0430)
# Если кто-то убивает Pk
YouKillPk = \u043F\u043E\u043A\u0430\u0437\u0430\u043B(\u0430) \u0440\u043E\u0437\u043E\u0432\u043E\u0433\u043E \u0441\u043B\u043E\u043D\u0438\u043A\u0430
# Если убивает и становится пк
YouKillPkAndStatePk = \u0433\u043E\u043F\u043D\u0443\u043B(\u0430)
# При обычном пвп
PvpKill = \u043F\u043E\u0431\u0435\u0434\u0438\u043B(\u0430)
Сохраняем файл.

Если один из игроков ГМ, то обьявления не будет.

Не пугаемся этих "\uxxxx" строк в конфигах, это кодировка UTF, тоесть будет писать по русскому. Можете заменить на своё.
__________________
Если в жизни любишь риск - форматируй жосткий диск!
SpeedFaer вне форума Отправить сообщение для SpeedFaer с помощью ICQ Ответить с цитированием
Сказали спасибо:
Непрочитано 10.03.2009, 14:45   #2
Новичок

По умолчанию Ответ: Анонс при PvP и Pk для L2jServer

Это все конечно хорошо, но хотелось бы узнать как это все далать в сборках L2_Emu. Ответьте плз если кто-нить знает
Kcapgac вне форума Ответить с цитированием
Непрочитано 10.03.2009, 16:03   #3
Аватар для DarkLoki
Пользователь

По умолчанию Ответ: Анонс при PvP и Pk для L2jServer

Точно так же в соответствующие файлы, только конфиги в другой файлик положить. В случае чего, следуя ошибкам компиляции сгладить неровности.
__________________
Я не прав? Докажите это тут или тут
* Интересная тема * для новичков *
DarkLoki вне форума Ответить с цитированием
Непрочитано 23.03.2009, 19:35   #4
Пользователь

По умолчанию Ответ: Анонс при PvP и Pk для L2jServer

Интересно было быузнать как реализовать такую вещь, что к примеру убивают гуарда в гиран кастл и он пишет что был убит гуард в гиран кастл. Если кто знает помогите плиз.
saduga вне форума Ответить с цитированием
Непрочитано 29.03.2009, 20:51   #5
Пользователь

По умолчанию Ответ: Анонс при PvP и Pk для L2jServer

как я понел это кодировка UTF как например мне саставить другие слова у каво словарик есть) ну типа буква (Пример- А это \u0433 )???
И как бы мадифицировать Этот скрипт например
игрок А кбил игрока Б в пвп написалось одно
а когда игрока А ибил игрока Б и В подрят написалось Другое
а какгда А убил Б В Г то другое как это сделать ???
Каму нужно под л2Ему магу выложить спрашивайте переделал все пашет Норм)
Tram вне форума Ответить с цитированием
Непрочитано 30.03.2009, 03:43   #6
Аватар для PROGRAMMATOR
Администратор

По умолчанию Ответ: Анонс при PvP и Pk для L2jServer

Цитата:
Сообщение от Tram Посмотреть сообщение
как я понел это кодировка UTF
Неужели?
Цитата:
Сообщение от SpeedFaer Посмотреть сообщение
это кодировка UTF
Можно написать свой конвертер, можно найти на форуме я выкладывал программу и можно использовать онлайновую версию UTF Converter.

Цитата:
Привет Зона!
Цитата:
\u041F \u0440 \u0438 \u0432 \u0435 \u0442 \u0020 \u0417 \u043E \u043D \u0430 \u0021
__________________
composer require laravel/framework
yarn add vue
PROGRAMMATOR вне форума Отправить сообщение для PROGRAMMATOR с помощью ICQ Отправить сообщение для PROGRAMMATOR с помощью Skype™ Ответить с цитированием
Непрочитано 30.03.2009, 07:33   #7
Пользователь

По умолчанию Ответ: Анонс при PvP и Pk для L2jServer

Цитата:
Сообщение от PROGRAMMATOR Посмотреть сообщение
Неужели?


Можно написать свой конвертер, можно найти на форуме я выкладывал программу и можно использовать онлайновую версию UTF Converter.
Спс биг помголо очень!

Добавлено через 52 минуты
Помогите даработать вот хачю чтобы было типа Когда игрок А убил Б и В подрят выписался анонс и так адали когда А убил Б и В и Г подярд если кто друго Убил Игрока Г или Б то сбиватеся и начинается все заного
Это под L2Emu Config.java
PHP код:
//=====================================================================================
    
public static final String    PVPANNOUNCE_FILE    "./config/mods/pvpannounce.properties";
//=====================================================================================
    
public static boolean       PVPANNOUNCE_SHOW_PVP//Показывать PvP
    
public static boolean       PVPANNOUNCE_SHOW_PK//Показывать Pk
    
public static String        PVPANNOUNCE_PK_KILL_YOU//Что показывать между никами, если Pk убивает кого-то
    
public static String        PVPANNOUNCE_YOU_KILL_PK//Если кто-то убивает Pk
    
public static String        PVPANNOUNCE_YOU_KILL_AND_STATE_PK//Если убивает и становится пк
    
public static String        PVPANNOUNCE_PVP_KILL//При обычном пвп Игрок А убил игрока Б
    
public static String        PVPANNOUNCE_PVP_KILL2//При пвп если игрок А убил игрока Б и В
    
public static String        PVPANNOUNCE_PVP_KILL3//При пвп если игрок А убил игрока Б и В и Г
    
    
public static void loadPvpAnnounceConfig()
    {
        
System.out.println("Loading: " PVPANNOUNCE_FILE);
        try
        {
            
Properties PvpAnnounceSettings = new L2Properties("./" PVPANNOUNCE_FILE);            
            
PVPANNOUNCE_SHOW_PVP                 Boolean.parseBoolean(PvpAnnounceSettings.getProperty("ShowPvp""false"));
            
PVPANNOUNCE_SHOW_PK                  Boolean.parseBoolean(PvpAnnounceSettings.getProperty("ShowPk""false"));
            
PVPANNOUNCE_PK_KILL_YOU              PvpAnnounceSettings.getProperty("PkKillYou""kill");
            
PVPANNOUNCE_YOU_KILL_PK              PvpAnnounceSettings.getProperty("YouKillPk""kill");
            
PVPANNOUNCE_YOU_KILL_AND_STATE_PK    PvpAnnounceSettings.getProperty("YouKillPkAndStatePk""kill");
            
PVPANNOUNCE_PVP_KILL                 PvpAnnounceSettings.getProperty("PvpKill""kill");
            
PVPANNOUNCE_PVP_KILL2                 PvpAnnounceSettings.getProperty("PvpKill2""kill");
            
PVPANNOUNCE_PVP_KILL3                 PvpAnnounceSettings.getProperty("PvpKill3""kill");
        }
        catch (
Exception e)
        {
            
_log.error(e.getMessage(), e);
            throw new 
Error("Failed to Load " PVPANNOUNCE_FILE " File.");

        }
    } 
pvpannounce.properties
PHP код:
# Показывать PvP
ShowPvp True
# Показывать Pk
ShowPk True
# Что показывать между никами, если Pk убивает кого-то
PkKillYou = \u0433\u043E\u043F\u043D\u0443\u043B(\u0430)
# Если кто-то убивает Pk
YouKillPk = \u043F\u043E\u043A\u0430\u0437\u0430\u043B(\u0430) \u0440\u043E\u0437\u043E\u0432\u043E\u0433\u043E \u0441\u043B\u043E\u043D\u0438\u043A\u0430
# Если убивает и становится пк
YouKillPkAndStatePk = \u0433\u043E\u043F\u043D\u0443\u043B(\u0430)
# При обычном пвп
PvpKill = \u043F\u043E\u0431\u0435\u0434\u0438\u043B(\u0430)
#
PvpKill2 = \u043F\u043E\u0431\u0435\u0434\u0438\u043B(\u0430)
#
PvpKill3 = \u043F\u043E\u0431\u0435\u0434\u0438\u043B(\u0430
а вот L2PcInstance.java Вызволо проблемы помогите даработать
PHP код:
                {
                if (
pk != null
                    {    
                if (
getName() != pk.getName() && pk.getAccessLevel().isGm() != true && getAccessLevel().isGm() != true
                        {
                        
String announcetext "";
                        if (
Config.PVPANNOUNCE_SHOW_PK && getPvpFlag() == 0) {
                            if (
pk.getKarma() > 0) {
                                
announcetext pk.getName() + " " Config.PVPANNOUNCE_PK_KILL_YOU " " getName() + "!";
                            } else if (
getKarma() > 0) { 
                                
announcetext pk.getName() + " " Config.PVPANNOUNCE_YOU_KILL_PK " " getName() + "!";
                            } else { 
                                
announcetext pk.getName() + " " Config.PVPANNOUNCE_YOU_KILL_AND_STATE_PK " " getName() + "!";
                            }
                            } else if (
Config.PVPANNOUNCE_SHOW_PVP) {
                            
announcetext pk.getName() + " " Config.PVPANNOUNCE_PVP_KILL " " getName() + "!";
                            }
                            
Announcements.getInstance().announceToAll(announcetext);
                        }
                    }
                } 
))))) ну как вам?!Разберемся в месте!

Последний раз редактировалось Tram; 30.03.2009 в 08:26. Причина: Добавлено сообщение
Tram вне форума Ответить с цитированием
Непрочитано 31.03.2009, 03:27   #8
Аватар для PROGRAMMATOR
Администратор

По умолчанию Ответ: Анонс при PvP и Pk для L2jServer

А что же вы попытались сделать? Я вижу только добавление пару строк в конфигурацию и все. Так помогать никто не будет, нужно хоть что-то набросать, что бы видно было, что пытались реализовать, а не просто попрошайничать.

Может пригодится, написал Converter to Unicode.
Вложения
Тип файла: zip Converter.zip (133.6 Кб, 40 просмотров)
__________________
composer require laravel/framework
yarn add vue
PROGRAMMATOR вне форума Отправить сообщение для PROGRAMMATOR с помощью ICQ Отправить сообщение для PROGRAMMATOR с помощью Skype™ Ответить с цитированием
Непрочитано 31.03.2009, 07:33   #9
Пользователь

По умолчанию Ответ: Анонс при PvP и Pk для L2jServer

Цитата:
Сообщение от PROGRAMMATOR Посмотреть сообщение
А что же вы попытались сделать? Я вижу только добавление пару строк в конфигурацию и все. Так помогать никто не будет, нужно хоть что-то набросать, что бы видно было, что пытались реализовать, а не просто попрошайничать.

Может пригодится, написал Converter to Unicode.
Вот имено тошто соброзил то и сделал а вот с этим(проблема!
Tram вне форума Ответить с цитированием
Непрочитано 03.04.2009, 20:42   #10
Пользователь

По умолчанию Ответ: Анонс при PvP и Pk для L2jServer

PHP код:
  
                if (
pk != null)  
                    {     
                if (
getName() != pk.getName() && pk.getAccessLevel().isGm() != true && getAccessLevel().isGm() != true)  
                        { 
                        
String announcetext ""
                        if (
Config.PVPANNOUNCE_SHOW_PK && getPvpFlag() == 0) { 
                            if (
pk.getKarma() > 0) { 
                                
announcetext pk.getName() + " " Config.PVPANNOUNCE_PK_KILL_YOU " " getName() + "!"
                            } else if (
getKarma() > 0) {  
                                
announcetext pk.getName() + " " Config.PVPANNOUNCE_YOU_KILL_PK " " getName() + "!"
                            } else {  
                                
announcetext pk.getName() + " " Config.PVPANNOUNCE_YOU_KILL_AND_STATE_PK " " getName() + "!"
                            } 
                            } else if (
Config.PVPANNOUNCE_SHOW_PVP) { 
                            
announcetext pk.getName() + " " Config.PVPANNOUNCE_PVP_KILL " " getName() + "!"
                            } 
                            
Announcements.getInstance().announceToAll(announcetext); 
                        } 
                    } 
                } 
насчет Этока не кто не знает как реализовать про убийство игрока вот кстате есче есть вапросик
куда примкнуть кусок этого кода чтобы при убийстве игрока васпроизвелся звук
PHP код:
st.playSound("ItemSound.quest_tutorial"
вот есче кусочек)
PHP код:
st player.getQuestState(qn
Tram вне форума Ответить с цитированием
Ответ


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

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

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

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


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

Вверх