|
Lancelot
Пользователь Регистрация: Окт. 2004
Всего: 8 сообщений
|
Я тут подумал, а нельзя ли изменить навык "Ловушки" или он прошит в движок? Есть ли возможность изменить его так - что когда используешь его на себя, под игроком появляется ловушка. Которую гипотетически можно будет использовать для минирования врагов бегущих на чузена.
|
Отправлено: 16:34 - 6 Апр., 2005
|
|
|
Tehnokrat
Модератор
Откуда: Новосибирск Регистрация: Окт. 2003
Всего: 489 сообщений
|
Вообще-то ловушки наступательного (ногой наступательного ) действия ставятся в редакторе карт и во время игры поставлены быть не могут. Но с помощью скриптов можно сделать нечто подобное, однако гиммор ещё тот... хотя лично я не пробовал.
----- Прошлое можно узнать, но нельзя изменить. Будущее можно изменить, но нельзя узнать.
|
Отправлено: 23:59 - 6 Апр., 2005
|
|
|
Ray
Модератор
Откуда: Донецк,Украина Регистрация: Янв. 2004
Всего: 746 сообщений
|
Можно. Достаточно немного включить воображение. Я просто когда-то об этом думал, да руки не дошли. Может потом возьмусь. А идея довольно проста. Что нам мешает создавать не spatial script, а обычный предмет. Сделать его вид на земле под вид ловушки. Обозначить спец. действия (при попадании перс. в радиус уничтожать объект и производить взрыв). В инвентарь не класть, можно придумать что-нибудь. Как устанавливать тоже можно придумать.
----- Не бывает невозможных задач – бывает мало времени.
|
Отправлено: 11:48 - 7 Апр., 2005
|
|
Tehnokrat
Модератор
Откуда: Новосибирск Регистрация: Окт. 2003
Всего: 489 сообщений
|
А ещё предупреждать чузена при приближении к ловушке, проверять навык "Ловушки" при попытке разминирования и соответственно реагировать на это действие. Теоретически выглядит неплохо, осталось только придумать наилучший способ установки и маскировки.
----- Прошлое можно узнать, но нельзя изменить. Будущее можно изменить, но нельзя узнать.
|
Отправлено: 23:33 - 7 Апр., 2005
|
|
Dar
Пользователь
Откуда: Воронеж Регистрация: Дек. 2004
Всего: 289 сообщений
|
Цитата:
Можно. Достаточно немного включить воображение. Я просто когда-то об этом думал, да руки не дошли. Может потом возьмусь. А идея довольно проста. Что нам мешает создавать не spatial script, а обычный предмет. Сделать его вид на земле под вид ловушки. Обозначить спец. действия -при попадании перс. в радиус уничтожать объект и производить взрыв). В инвентарь не класть, можно придумать что-нибудь. Как устанавливать тоже можно придумать.
Интересует как вычислить этот "радиус" и нанести любому критеру в его пределах повреждения, если ловушка радиоуправляемая, а тогда ведь critter_dmg(source_obj, random(10, 40), 0 bwor 256 bwor 512); не прокатит.
|
Отправлено: 8:39 - 20 Янв., 2006 | ИСПРАВЛЕНО: Dar - 8:41 - 20 Янв., 2006
|
|
Wasteland Ghost
Маленькое Злое Привидение
Откуда: Россия, Самара Регистрация: Дек. 2002
Всего: 2251 сообщение
|
Да, главной проблемой станет вычисление всех объектов, которым надо наносить дамаг. В принципе, функции перебора в Фоле есть. Но десять раз в секунду... Это будет слайдшоу .
|
Отправлено: 13:12 - 20 Янв., 2006
|
|
Dar
Пользователь
Откуда: Воронеж Регистрация: Дек. 2004
Всего: 289 сообщений
|
Так все таки можно подробнее? Я попытался так: variable pid_Critter := 16777216; variable N := 0; ................ ................ while (N < 473) do begin pid_Critter := pid_Critter +1; IF (tile_distance_objs(self_obj, tile_contains_pid_obj(tile_num(self_obj), dude_obj, pid_Critter)) <= 6 ) then begin critter_dmg(tile_contains_pid_obj(self_obj, dude_obj, pid_Critter), random(80, 200), 0 bwor 256 bwor 512); end IF (tile_distance_objs(self_obj, tile_contains_pid_obj(tile_num_in_direction(tile_num(self_obj), 0, 1), dude_obj, pid_Critter)) <= 6 ) then begin critter_dmg(tile_contains_pid_obj(self_obj, dude_obj, pid_Critter), random(80, 200), 0 bwor 256 bwor 512); end IF (tile_distance_objs(self_obj, tile_contains_pid_obj(tile_num_in_direction(tile_num(self_obj), 1, 1), dude_obj, pid_Critter)) <= 6 ) then begin critter_dmg(tile_contains_pid_obj(self_obj, dude_obj, pid_Critter), random(80, 200), 0 bwor 256 bwor 512); end IF (tile_distance_objs(self_obj, tile_contains_pid_obj(tile_num_in_direction(tile_num(self_obj), 2, 1), dude_obj, pid_Critter)) <= 6 ) then begin critter_dmg(tile_contains_pid_obj(self_obj, dude_obj, pid_Critter), random(80, 200), 0 bwor 256 bwor 512); end IF (tile_distance_objs(self_obj, tile_contains_pid_obj(tile_num_in_direction(tile_num(self_obj), 3, 1), dude_obj, pid_Critter)) <= 6 ) then begin critter_dmg(tile_contains_pid_obj(self_obj, dude_obj, pid_Critter), random(80, 200), 0 bwor 256 bwor 512); end IF (tile_distance_objs(self_obj, tile_contains_pid_obj(tile_num_in_direction(tile_num(self_obj), 4, 1), dude_obj, pid_Critter)) <= 6 ) then begin critter_dmg(tile_contains_pid_obj(self_obj, dude_obj, pid_Critter), random(80, 200), 0 bwor 256 bwor 512); end IF (tile_distance_objs(self_obj, tile_contains_pid_obj(tile_num_in_direction(tile_num(self_obj), 5, 1), dude_obj, pid_Critter)) <= 6 ) then begin critter_dmg(tile_contains_pid_obj(self_obj, dude_obj, pid_Critter), random(80, 200), 0 bwor 256 bwor 512); end N := N + 1; end ........... Но эффекта ни какого в смысле урона критерам. Где я затупил? PS Взрывчатка - это анимированный сценари обьект.
|
Отправлено: 23:40 - 20 Янв., 2006 | ИСПРАВЛЕНО: Dar - 23:41 - 20 Янв., 2006
|
|
Wasteland Ghost
Маленькое Злое Привидение
Откуда: Россия, Самара Регистрация: Дек. 2002
Всего: 2251 сообщение
|
Название темы изменено на более подходящее.
|
Отправлено: 10:05 - 21 Янв., 2006
|
|
|
|