[Вопрос] Уничтожение деревьев в радиусе
|
|
InvisibleCatэ | Дата: Вторник, 29 Мая 2012, 22:01:26 | Сообщение # 1 |
3 уровень
Группа: Пользователи
Сообщений: 40
Награды: 0
Репутация: 8
Блокировки:
| Напиши пожалуйста функцию, которая разрушает деревья вокруг указанной точки. Code function DestroyTrees takes integer range, location point returns nothing
|
|
|
|
ctpaxm | Дата: Вторник, 29 Мая 2012, 22:51:55 | Сообщение # 2 |
7 уровень
Группа: Проверенные
Сообщений: 418
Награды: 0
Репутация: 60
Блокировки:
| нужна переменная типа integer, в которую записываешь радиус в котором будут унечтожены деревья, и локация где будет унечтожено Добавлено (29 Май 2012, 22:51:55) --------------------------------------------- а... понял, недочитал:)
Dead Girls can't say NOT! Делаю свой ORPG проект, нужны триггерщики(JASS-еры) и идейщики... Все подробности в ЛС
|
|
|
|
Dreii | Дата: Среда, 30 Мая 2012, 08:54:13 | Сообщение # 3 |
10 уровень
Группа: Проверенные
Сообщений: 4991
Награды: 0
Репутация: 603
Блокировки:
| Code void CountDestsEnum() { if GetDestructableLife(GetEnumDestructable())> 0 { KillDestructable(GetEnumDestructable()) } } void CountDests(real x, real y, real rad) { rect r = Rect(-rad,-rad,rad,rad) MoveRectTo(r,x,y) EnumDestructablesInRect(r, null, function CountDestsEnum) RemoveRect(r) r = null }
|
|
|
|
SirNikolas | Дата: Среда, 30 Мая 2012, 09:01:51 | Сообщение # 4 |
Группа: Модераторы
Сообщений: 6729
Награды: 1
Репутация: 1867
Блокировки:
| Dreii, а проверку на круг? Добавлено (30 Май 2012, 09:01:51) ---------------------------------------------
Quote (Dreii) rect r = Rect(-rad,-rad,rad,rad) MoveRectTo(r,x,y) Не проще ли сразу Rect(x - rad, y - rad, x + rad, y + rad)?
|
|
|
|
Dreii | Дата: Среда, 30 Мая 2012, 09:10:05 | Сообщение # 5 |
10 уровень
Группа: Проверенные
Сообщений: 4991
Награды: 0
Репутация: 603
Блокировки:
| SirNikolas, может и проще =) просто в старой карте нашел и вставил. не вникал особо
|
|
|
|
InvisibleCatэ | Дата: Среда, 30 Мая 2012, 10:01:10 | Сообщение # 6 |
3 уровень
Группа: Пользователи
Сообщений: 40
Награды: 0
Репутация: 8
Блокировки:
| Quote (Dreii) void CountDestsEnum() { if GetDestructableLife(GetEnumDestructable())> 0 { KillDestructable(GetEnumDestructable()) } } void CountDests(real x, real y, real rad) { rect r = Rect(-rad,-rad,rad,rad) MoveRectTo(r,x,y) EnumDestructablesInRect(r, null, function CountDestsEnum) RemoveRect® r = null } А как запускать такую функцию ? Мне нужно ее запускать лишь с двумя значениями: Точка и Радиус.
|
|
|
|
SirNikolas | Дата: Среда, 30 Мая 2012, 16:22:21 | Сообщение # 7 |
Группа: Модераторы
Сообщений: 6729
Награды: 1
Репутация: 1867
Блокировки:
| X, Y и радиус.
|
|
|
|
Dreii | Дата: Среда, 30 Мая 2012, 17:42:15 | Сообщение # 8 |
10 уровень
Группа: Проверенные
Сообщений: 4991
Награды: 0
Репутация: 603
Блокировки:
| например: CountDests(GetWidgetX(caster),GetWidgetY(caster),500.)
|
|
|
|