Показать сообщение отдельно
Старый 17.05.2010, 11:35   #23
TOM_RUS
MaNGOS Dev
 
Регистрация: 11.03.2010
Сообщений: 468
Сказал(а) спасибо: 0
Поблагодарили 514 раз(а) в 163 сообщениях
TOM_RUS Как свет с небесTOM_RUS Как свет с небесTOM_RUS Как свет с небесTOM_RUS Как свет с небесTOM_RUS Как свет с небесTOM_RUS Как свет с небес
По умолчанию

Какой-то странный патч. В команде добавления GO почему-то идет запись в таблицу creature_transport...
Код:
@@ -726,6 +727,13 @@ bool ChatHandler::HandleGameObjectAddCommand(const char* args)
     float o = float(chr->GetOrientation());
     Map *map = chr->GetMap();
 
+	if(chr->GetTransport())
+	{
+		chr->GetTransport()->AddNpcPassager(id, chr->GetTransOffsetX(), chr->GetTransOffsetY(), chr->GetTransOffsetZ(), chr->GetTransOffsetO());
+		WorldDatabase.PQuery("INSERT INTO creature_transport (entry, npc_entry, TransOffsetX, TransOffsetY, TransOffsetZ, TransOffsetO) values (%u, %u, %f, %f, %f, %f)", chr->GetTransport()->GetEntry(), id, chr->GetTransOffsetX(), chr->GetTransOffsetY(), chr->GetTransOffsetZ(), chr->GetTransOffsetO());
+		return true;
+	}
+
В аналогичной команде для добавления creature этот код вообще отсутствует.
Видимо надо перенести в bool ChatHandler::HandleNpcAddCommand(const char* args)...

Так же не понятно зачем были добавлены
Код:
+		// Transport info
+		uint64 m_transportGUID;
+		float m_transportPosition[4];
+
Это уже есть в классе MovementInfo...

Код:
        // transport
        ObjectGuid t_guid;
        Position t_pos;
        uint32   t_time;
        int8     t_seat;
        uint32   t_time2;

        void SetTransportData(ObjectGuid guid, float x, float y, float z, float o, uint32 time, int8 seat)
        {
            t_guid = guid;
            t_pos.x = x;
            t_pos.y = y;
            t_pos.z = z;
            t_pos.o = o;
            t_time = time;
            t_seat = seat;
        }
А так для работы патча естественно надо таблицу заполнить, тогда NPC не будут никуда проваливаться

Последний раз редактировалось TOM_RUS; 17.05.2010 в 11:41.
TOM_RUS вне форума   Ответить с цитированием