Извините, ничего не найдено.

Не расстраивайся! Лучше выпей чайку!
Регистрация
Справка
Календарь

Вернуться   www.boolean.name > Программирование игр для компьютеров > Unity > Физика

Ответ
 
Опции темы
Старый 10.08.2014, 11:34   #16
pax
Unity/C# кодер
 
Аватар для pax
 
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,502
Написано 2,957 полезных сообщений
(для 5,222 пользователей)
Ответ: Толчок

1. Не понятно на каком объекте этот скрипт.
2. Если такой скрипт на игроке, то он применяет силу к игроку.
3. Для поиска врагов можно использовать теги. Наприер если всем врагам назначить тег Enemy, то потом можно получить все объекты с этим тегом http://docs.unity3d.com/ScriptRefere...tsWithTag.html и применить к ним что-то. Например силу взрыва.
4. Если опираться на твой подход, то применить к врагу силу можно так:
GameObject.Find("enemy1").rigidbody.AddExplosionForce(100,transform.position,10); 
Шутки мы понимаем, но нормальные шутки
__________________
Blitz3d to Unity Wiki
(Offline)
 
Ответить с цитированием
Старый 10.08.2014, 22:25   #17
6082asil
AnyKey`щик
 
Регистрация: 09.08.2014
Сообщений: 16
Написано 0 полезных сообщений
(для 0 пользователей)
Ответ: Толчок

using UnityEngine;
using System.Collections;

[RequireComponent (typeof (Rigidbody))]

public class spacebarImpulse : MonoBehaviour {



	void Start () {
		
	}

	void Update () {
		if(Input.GetKeyDown(KeyCode.Space)) {
			GameObject.Find("astar").GetComponent<AstarPath>().enabled = !GameObject.Find("astar").GetComponent<AstarPath>().enabled;
			GameObject[] Enemies = GameObject.FindGameObjectsWithTag("enemy");
			foreach (GameObject enemy in Enemies) {
				GetComponent<AIFollow>().enabled = !GetComponent<AIFollow>().enabled;
				rigidbody.AddExplosionForce(10,transform.position,5);
			}
		}
	}
}
После компиляции:
Assets/Handmade/Enemy/spacebarImpulse.cs(18,45): warning CS0219: The variable `enemy' is assigned but its value is never used

При нажатии на пробел:
NullReferenceException: Object reference not set to an instance of an object
spacebarImpulse.Update () (at Assets/Handmade/Enemy/spacebarImpulse.cs:19)
(Offline)
 
Ответить с цитированием
Старый 10.08.2014, 22:40   #18
Mr_F_
Легенда
 
Аватар для Mr_F_
 
Регистрация: 13.09.2008
Сообщений: 3,897
Написано 2,146 полезных сообщений
(для 5,767 пользователей)
Ответ: Толчок

ну не будь дураком.

foreach (GameObject enemy in Enemies) {
GetComponent<AIFollow>().enabled = !GetComponent<AIFollow>().enabled;
rigidbody.AddExplosionForce(10,transform.position, 5);
}
ты берёшь компоненты AIFollow и rigidbody у вызывающего скрипта, у котрого их нет.
ты делаешь цикл по врагам и НЕ ЮЗАЕШЬ объект enemy.
__________________
бложик
geom.io
твиттер
(Offline)
 
Ответить с цитированием
Старый 10.08.2014, 22:50   #19
6082asil
AnyKey`щик
 
Регистрация: 09.08.2014
Сообщений: 16
Написано 0 полезных сообщений
(для 0 пользователей)
Ответ: Толчок

			foreach (GameObject enemy in Enemies) {
				enemy.GetComponent<AIFollow>().enabled = !GetComponent<AIFollow>().enabled;
				enemy.rigidbody.AddExplosionForce(10,transform.position,5);
			}
Так чтоли? Кажется, нет, потому что так все равно не работает.

ну не будь дураком.
Это между прочим не так-то просто.
(Offline)
 
Ответить с цитированием
Старый 10.08.2014, 23:05   #20
Mr_F_
Легенда
 
Аватар для Mr_F_
 
Регистрация: 13.09.2008
Сообщений: 3,897
Написано 2,146 полезных сообщений
(для 5,767 пользователей)
Ответ: Толчок

= !GetComponent<AIFollow>().enabled;
ну а тут почему забыл?
__________________
бложик
geom.io
твиттер
(Offline)
 
Ответить с цитированием
Старый 10.08.2014, 23:22   #21
6082asil
AnyKey`щик
 
Регистрация: 09.08.2014
Сообщений: 16
Написано 0 полезных сообщений
(для 0 пользователей)
Ответ: Толчок

Ох..ну вот, я ведь сказал, что это непросто. с:

Ну..теперь просто ничего не происходит. Вернее, они не отталкиваются, а просто наклоняются в сторону игрока.
(Offline)
 
Ответить с цитированием
Старый 10.08.2014, 23:29   #22
Mr_F_
Легенда
 
Аватар для Mr_F_
 
Регистрация: 13.09.2008
Сообщений: 3,897
Написано 2,146 полезных сообщений
(для 5,767 пользователей)
Ответ: Толчок

больше силу попробуй ставить
__________________
бложик
geom.io
твиттер
(Offline)
 
Ответить с цитированием
Старый 10.08.2014, 23:38   #23
6082asil
AnyKey`щик
 
Регистрация: 09.08.2014
Сообщений: 16
Написано 0 полезных сообщений
(для 0 пользователей)
Ответ: Толчок

Бинго! Как жахнуло-то. с:
Большое спасибо, взрыв сам работает.
Но вы бы не могли мне еще объяснить почему, когда я нажимаю второй раз на пробел (ну, скрипты обратно включаются), то все враги встают на те места, откуда улетели?
P.S.: A* Pathfinding Project...кажется, в нем причина..вы случаем не имели с ним дело?
(Offline)
 
Ответить с цитированием
Старый 11.08.2014, 02:47   #24
pax
Unity/C# кодер
 
Аватар для pax
 
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,502
Написано 2,957 полезных сообщений
(для 5,222 пользователей)
Ответ: Толчок

Сообщение от Mr_F_ Посмотреть сообщение
ну не будь дураком.
Mr_F_ пожалуйста, тоже не надо таких выражений.

Оффтоп удален.
__________________
Blitz3d to Unity Wiki
(Offline)
 
Ответить с цитированием
Эти 2 пользователя(ей) сказали Спасибо pax за это полезное сообщение:
Mr_F_ (11.08.2014), Randomize (11.08.2014)
Старый 11.08.2014, 15:36   #25
6082asil
AnyKey`щик
 
Регистрация: 09.08.2014
Сообщений: 16
Написано 0 полезных сообщений
(для 0 пользователей)
Ответ: Толчок

Ну так что, никто не проконсультирует?
(Offline)
 
Ответить с цитированием
Старый 11.08.2014, 19:31   #26
pax
Unity/C# кодер
 
Аватар для pax
 
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,502
Написано 2,957 полезных сообщений
(для 5,222 пользователей)
Ответ: Толчок

Вероятно никто не использует эту систему поиска путей здесь. Скорее всего тебе надо для каждого объекта после взрыва пересчитать позицию на сетке навигации, а потом заново включать поиск пути к игроку.
__________________
Blitz3d to Unity Wiki
(Offline)
 
Ответить с цитированием
Ответ


Опции темы

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


Часовой пояс GMT +1, время: 23:40.


vBulletin® Version 3.6.5.
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.
Перевод: zCarot
Style crйe par Allan - vBulletin-Ressources.com