Ru-MaNGOS

Ru-MaNGOS (http://mangos.ytdb.ru/index.php)
-   Прочая документация (http://mangos.ytdb.ru/forumdisplay.php?f=33)
-   -   ScriptDev2 Работа с ГО. (http://mangos.ytdb.ru/showthread.php?t=2008)

xmolex 03.08.2010 18:22

ScriptDev2 Работа с ГО.
 
Подскажите, пожалуйста, как можно добавить сундук (ГО). Функций для суммона ГО я не нашел. Может кто подскажет в какую сторону копать? Или может можно фазу сменить как-то?
Буду признателен за любую информацию.

virusav 03.08.2010 18:37

Видимо:
Код:

bool GameObject::Create(uint32 guidlow, uint32 name_id, Map *map, uint32 phaseMask, float x, float y, float z, float ang, float rotation0, float rotation1, float rotation2, float rotation3, uint32 animprogress, GOState go_state)

rsa 03.08.2010 18:40

Нет, не выйдет. Можно через SummonGameObject от Карателя/zergtmn но это кастомпатч и за него здесь сильно ворчат...

xmolex 03.08.2010 18:44

Цитата:

Сообщение от rsa (Сообщение 11914)
Нет, не выйдет. Можно через SummonGameObject от Карателя/zergtmn но это кастомпатч и за него здесь сильно ворчат...

Тоесть на текущий момент этого сделать нельзя, без изменений в ядре?

KiriX 03.08.2010 18:48

Сейчас подобные вещи реализуются отрицательным временем респа ГО. ГО стоит в мире всегда, но с отрицательным временем респа. После опред дейтсвий с НПС ГО проявляется. Функцию не помню.

rsa 03.08.2010 19:15

Цитата:

Сообщение от xmolex (Сообщение 11915)
Тоесть на текущий момент этого сделать нельзя, без изменений в ядре?

Именно так. Текущую работу с ГО описал Kirix

zergtmn 03.08.2010 19:38

Цитата:

Сообщение от xmolex (Сообщение 11915)
Тоесть на текущий момент этого сделать нельзя, без изменений в ядре?


xmolex 03.08.2010 19:46

Цитата:

Сообщение от zergtmn (Сообщение 11919)


Lordronn 03.08.2010 22:31

Вам надо именно заспавнить ГО, либо же сделать его видемым, как к примеру сундук в ЦЛК/ИК/ИЧ?

Код:

                if (GameObject* pChest = instance->GetGameObject(m_uiSaurfangCacheGUID))
                    if (pChest && !pChest->isSpawned())
                    {
                        pChest->SetRespawnTime(pChest->GetRespawnDelay());
                    }

pChest->SetRespawnTime(pChest->GetRespawnDelay());//разве на мангосе такой функции нету???

rsa 04.08.2010 06:59

Есть. Но чтобы заспаунить сундук, нужно чтобы он уже стоял в мире с отрицательным временем респауна. См. выше. А человек хочет _добавить_ объект на ходу.


Текущее время: 09:32. Часовой пояс GMT +3.

ru-mangos.ru - Русское сообщество MaNGOS