#1 02-03-2008 05:21

localGhost
Registered: 02-03-2008
Posts: 2

Удаление объектов на карте.

КУ!

Возможно ли програмно убрать конкретные объекты размеженные на карте (в IPL)? как это сделать и что нужно знать об объекте для этого?


нашел такой вот опкод:

0777: delete_objects_in_object_group

он не поможет в моей задаче?

Last edited by localGhost (02-03-2008 06:42)

Offline

#2 02-03-2008 13:40

Seemann
Registered: 07-08-2006
Posts: 2,155

Re: Удаление объектов на карте.

Чтобы программно убрать определенный объект, тебе нужно узнать его имя - handle. Handle - это число, позволяющее отличить один объект от другого, оно записывается в переменную при создании объекта, как в опкоде

0107: 0@ = create_object #AD_FLATDOOR at 1833.36 -1995.45 12.5

0@ содержит handle объекта, который можно использовать для совершения каких-либо действий над ним, например удаление:

0108: destroy_object 0@

Проблема в удалении статических IPL-объектов в том, что ты не знаешь заранее его handle.

Проблему может решить Interceptor, который способен искать объект в заданных координатах и возвращать его handle. После этого объект можно удалить (я проделывал такой трюк с фонарными столбами). С домами такое не прокатит.
http://sannybuilder.com/forums/viewtopic.php?id=75

Offline

#3 02-03-2008 14:26

localGhost
Registered: 02-03-2008
Posts: 2

Re: Удаление объектов на карте.

а почему с домами не прокатит?

Offline

#4 02-03-2008 14:36

Seemann
Registered: 07-08-2006
Posts: 2,155

Re: Удаление объектов на карте.

Дом - это не объект в скриптовом смысле. Опкод 0108 на него не действует. Дом если и можно удалить, то только на уровне вызова каких-то специфических процедур из exe.

Offline

#5 26-05-2008 08:30

3Doomer
From: КаZан
Registered: 14-05-2008
Posts: 659
Website

Re: Удаление объектов на карте.

Seemann wrote:

Дом - это не объект в скриптовом смысле. Опкод 0108 на него не действует. Дом если и можно удалить, то только на уровне вызова каких-то специфических процедур из exe.

А может 03B6: replace_model_at -2049.171 250.3193 34.477 radius 20.0 from #HUBHOLE1_SFSE to #HUBHOLE2_SFSE
чем-то помочь? Типо заменить опкодом дом на такой-же, а потом уже удалить...


GIMS developer

Offline

Board footer

Powered by FluxBB