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

Lineage II
Дискуссии на тему создания, настройки и обслуживания серверов Lineage 2. При поддержке: Премиум услуги по рекламе

Ответ
Опции темы
Непрочитано 17.04.2010, 18:05   #1
Пользователь

Автор темы (Топик Стартер) Офф торг на l2teon. Как реализовать и возможно ли это?

Доброе время суток уважаемые админы/гм и прочие представители класса правящего...

Вот возникла такая проблема очень нужен офф торг. Но с великим удивлением мы узнали что сборка l2teon Interlude данной фишки не предусматривает.

Вот и очень хотелось бы узнать реально ли реализовать это, и если да то как? =) За инструкцию для нубов отдельное большое человеческое СПАСИБО =)

MelkiyGnom вне форума Ответить с цитированием
Непрочитано 17.04.2010, 19:26   #2
Аватар для Devilop
Герой

По умолчанию Re: Офф торг на l2teon. Как реализовать и возможно ли это?

если есть исходники то делаешь новую команду которая после введения выкидывает игрока из игры а чара оставляет
__________________
ЛЮДИ ВКЛЮЧИТЕ ВАШИ МОЗГИ
а то китайцы уже андроидов в телефоны пихают
Nokia N810

Devilop вне форума Отправить сообщение для Devilop с помощью ICQ Отправить сообщение для Devilop с помощью Skype™ Ответить с цитированием
Сказали спасибо:
Непрочитано 17.04.2010, 20:20   #3
Пользователь

Автор темы (Топик Стартер) Re: Офф торг на l2teon. Как реализовать и возможно ли это?

Это то мы понимаем. Как именно сделать эту команду =) Обьснение требуется для нубов =)
MelkiyGnom вне форума Ответить с цитированием
Непрочитано 17.04.2010, 21:00   #4
Аватар для Ozzy
Администратор

По умолчанию Re: Офф торг на l2teon. Как реализовать и возможно ли это?

Тебе нужно создать воисхендлер ну и саму систему офф трейда Причем лучше не создавать с нуля а посмотреть как это реализовано в других сборках. Если что скажи в какой сборке (с сорцами) есть офф трейд - постараюсь помочь
Ozzy вне форума Ответить с цитированием
Сказали спасибо:
Непрочитано 17.04.2010, 22:52   #5
Изгнанные

По умолчанию Re: Офф торг на l2teon. Как реализовать и возможно ли это?

Ребят а подскажите в зборке L2JFree 1.1.5A stable (Hellbaund) офф трейд реализован ???
bizi вне форума Ответить с цитированием
Непрочитано 17.04.2010, 23:20   #6
Аватар для Devilop
Герой

По умолчанию Re: Офф торг на l2teon. Как реализовать и возможно ли это?

странно
начался разговор про ИТ зборку а закончился вопросом про Hellbaund
__________________
ЛЮДИ ВКЛЮЧИТЕ ВАШИ МОЗГИ
а то китайцы уже андроидов в телефоны пихают
Nokia N810

Devilop вне форума Отправить сообщение для Devilop с помощью ICQ Отправить сообщение для Devilop с помощью Skype™ Ответить с цитированием
Непрочитано 17.04.2010, 23:33   #7
Аватар для Ozzy
Администратор

По умолчанию Re: Офф торг на l2teon. Как реализовать и возможно ли это?

bizi, а что тебе мешает посмотреть?
Ozzy вне форума Ответить с цитированием
Непрочитано 18.04.2010, 02:30   #8
Изгнанные

По умолчанию Re: Офф торг на l2teon. Как реализовать и возможно ли это?

Я проверил он не реализован (.
Кто может помочь с исходниками к этой зборке, да и в настройке офф торга.
ICQ и Skype смотрите в профиле.
bizi вне форума Ответить с цитированием
Непрочитано 27.04.2010, 10:33   #9
Аватар для Joker
Герой

По умолчанию Re: Офф торг на l2teon. Как реализовать и возможно ли это?

Ozzy,
вот оффлайн торг из сорцев Ighap,как его мона засунуть в l2jteon?
PHP код:
/*
 * 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.l2emu.gameserver.datatables;

import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;

import com.l2emu.Config;
import com.l2emu.L2DatabaseFactory;
import com.l2emu.gameserver.idfactory.IdFactory;
import com.l2emu.gameserver.model.L2ManufactureItem;
import com.l2emu.gameserver.model.L2ManufactureList;
import com.l2emu.gameserver.model.L2World;
import com.l2emu.gameserver.model.TradeList.TradeItem;
import com.l2emu.gameserver.model.actor.instance.L2PcInstance;

public class 
OfflineTradersTable
{
    private final static 
Log _log LogFactory.getLog(OfflineTradersTable.class);

    public static 
void storeTradeItems()
    {
        
System.out.println("Store offline traders...");
        
Connection con null;
        try
        {
            
con L2DatabaseFactory.getInstance().getConnection();
            
PreparedStatement stm1 con.prepareStatement("insert into `offline_characters` values(?,?,?,?,?)");
            
PreparedStatement stm2 con.prepareStatement("insert into `offline_shops` values(?,?,?,?)");
            for(
L2PcInstance pc L2World.getInstance().getAllPlayers().values())
            {
                if(
pc.isOfflineTrade()) 
                
synchronized(pc)
                {
                    
int shopId IdFactory.getInstance().getNextId();
                    
stm1.setInt(1pc.getObjectId());
                    
stm1.setInt(2shopId);
                    
stm1.setInt(3pc.getPrivateStoreType());
                    
String title "";
                    
int isPackage  0;
                    if(
pc.getPrivateStoreType()==L2PcInstance.STORE_PRIVATE_BUY
                    {
                        
title pc.getBuyList().getTitle();
                        
isPackage pc.getBuyList().isPackaged()?1:0;
                    }
                    else if(
pc.getPrivateStoreType()==L2PcInstance.STORE_PRIVATE_SELL ||
                            
pc.getPrivateStoreType()== L2PcInstance.STORE_PRIVATE_PACKAGE_SELL)
                    {
                        
title pc.getSellList().getTitle();
                        
isPackage pc.getSellList().isPackaged()||pc.getPrivateStoreType()== L2PcInstance.STORE_PRIVATE_PACKAGE_SELL ?1:0;
                    }
                    else 
                        
title pc.getCreateList().getStoreName();
                    
stm1.setInt(4isPackage);
                    
stm1.setString(5title);
                    
stm1.execute();

                    
stm2.setInt(1shopId);
                    switch(
pc.getPrivateStoreType()) 
                    {
                        case 
L2PcInstance.STORE_PRIVATE_BUY:
                            for(
TradeItem itpc.getBuyList().getItems() ) 
                            {
                                
stm2.setInt(2it.getItem().getItemId());
                                
stm2.setLong(3it.getCount());
                                
stm2.setLong(4it.getPrice());
                                
stm2.execute();
                            }
                            break;
                        case 
L2PcInstance.STORE_PRIVATE_PACKAGE_SELL:
                        case 
L2PcInstance.STORE_PRIVATE_SELL
                            for(
TradeItem itpc.getSellList().getItems())
                            {
                                
stm2.setInt(2it.getObjectId());
                                
stm2.setLong(3it.getCount());
                                
stm2.setLong(4it.getPrice());
                                
stm2.execute();
                            }
                            break;
                        case 
L2PcInstance.STORE_PRIVATE_MANUFACTURE:
                            for(
L2ManufactureItem itpc.getCreateList().getList())
                            {
                                
stm2.setInt(2it.getRecipeId() );
                                
stm2.setInt(30);
                                
stm2.setLong(4it.getCost());
                                
stm2.execute();
                            }
                            break;
                    }
                }
            }
            
stm1.close();
            
stm2.close();
        }
        catch (
Exception e)
        {
            
System.out.println("OfflineTradersTable[storeTradeItems()]: Error while saving offline traders: " e);
            
e.printStackTrace();
        }
        
finally
        
{
            
L2DatabaseFactory.close(con);
        }
    }

    public static 
void loadOffliners()
    {
        
System.out.print("Load offline traders...");
        
Connection con null;
        
int nTraders=0;
        try
        {
            
con L2DatabaseFactory.getInstance().getConnection();
            
PreparedStatement stm con.prepareStatement("Select charId, shopid, mode, packaged, title from offline_characters");
            
PreparedStatement stm2 con.prepareStatement("select itemid, count, price from offline_shops where shopid=?");
            
ResultSet rs stm.executeQuery();
            while(
rs.next())
            {
                
L2PcInstance offliner L2PcInstance.load(rs.getInt(1));
                if(
offliner!=null) try
                {
                    
stm2.setInt(1rs.getInt(2));
                    
ResultSet rs2 stm2.executeQuery();
                    while (
rs2.next())
                    {
                        switch(
rs.getInt(3))
                        {
                            case 
L2PcInstance.STORE_PRIVATE_BUY:
                                
offliner.getBuyList().addItemByItemId(rs2.getInt(1), rs2.getInt(2), rs2.getInt(3));
                                break;
                            case 
L2PcInstance.STORE_PRIVATE_SELL:
                                
offliner.getSellList().addItem(rs2.getInt(1), rs2.getInt(2), rs2.getInt(3));
                                break;
                            case 
L2PcInstance.STORE_PRIVATE_MANUFACTURE:
                                
offliner.getCreateList().add(new L2ManufactureItem(rs2.getInt(1),rs2.getInt(3)));
                                break;
                        }
                    }
                    
rs2.close();
                    
                    
offliner.spawnMe();
                    
                    
offliner.sitDown();
                    if (
Config.OFFLINE_SET_NAME_COLOR)
                        
offliner.getAppearance().setNameColor(Config.OFFLINE_NAME_COLOR);
                    
offliner.setPrivateStoreType(rs.getInt(3));
                    switch(
rs.getInt(3))
                    {
                        case 
L2PcInstance.STORE_PRIVATE_BUY:
                            
offliner.getBuyList().setTitle(rs.getString(5));
                            
offliner.getBuyList().setPackaged(rs.getInt(4)!=0);
                            break;
                        case 
L2PcInstance.STORE_PRIVATE_SELL:
                            
offliner.getSellList().setTitle(rs.getString(5));
                            
offliner.getSellList().setPackaged(rs.getInt(4)!=0);
                            break;
                        case 
L2PcInstance.STORE_PRIVATE_MANUFACTURE:
                            
offliner.getCreateList().setStoreName(rs.getString(5));
                            break;
                    }
                    
offliner.setOfflineTrade(true);
                    
offliner.broadcastUserInfo();
                    
nTraders++;
                }
                catch(
Exception e)
                {
                    
e.printStackTrace();
                    
offliner.decayMe();
                    
offliner null;
                }
            }
            
stm2.close();
            
rs.close();
            
stm.close();
            
stm con.prepareStatement("delete from offline_characters");
            
stm.execute();
            
stm.close();
            
stm con.prepareStatement("delete from offline_shops");
            
stm.execute();
            
stm.close();
            
            
_log.info(nTraders+" trader(s) loaded");
        }
        catch (
Exception e)
        {
            
_log.error("OfflineTradersTable[loadOffliners()]: Error while loading offline traders: " e);
        }
        
finally
        
{
            
L2DatabaseFactory.close(con);
        }
    }

Joker вне форума Ответить с цитированием
Непрочитано 27.04.2010, 16:40   #10
Аватар для Lomeista
Герой

По умолчанию Re: Офф торг на l2teon. Как реализовать и возможно ли это?

реализовал офф трейд за основу был взят офф трейд с EmuRT
Lomeista вне форума Ответить с цитированием
Ответ


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

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

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

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

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Пати,торг Karat Серверная часть 6 05.04.2010 07:14
Подкажите пожалуйста как реализовать? avemaria Архив 0 21.03.2010 18:45
l2Teon virus Lineage II 0 15.03.2010 22:03
Kак увеличеть время бафов в L2Teon? nikolazzzz Lineage II 3 05.02.2010 15:37
Торг зона. Ametist Lineage II 2 13.01.2010 00:37


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

Вверх