0 / 0 / 0
Регистрация: 22.04.2020
Сообщений: 5
1

Игра Unity2D. Стрельба

22.04.2020, 19:19. Показов 385. Ответов 2
Метки нет (Все метки)

Помогите, когда герой стреляет пуля просто отскакивает от противника, не исчезая и не убивая противника.
вот код стрельбы:
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
using UnityEngine;
using System.Collections;
 
public class FireScript2D : MonoBehaviour {
 
public GameObject btnAttack;
public Rigidbody2D bullet;
public Transform gunPoint;
public int bulletSpeed = 10;
public float timeout = 0.5f;
public float damage = 1;
public string[] targetTags = {"Target_1", "Target_2"};
private float curTimeout;
float PosBtnAttack;
 
void Start()
{
PosBtnAttack = btnAttack.transform.position.y;
}
 
void Update()
{
RaycastHit hit;
Ray ray = Camera.main.ScreenPointToRay(transform.position);
if (Physics.Raycast(ray, out hit))
{
if(Input.GetMouseButton(0))
{
foreach(string currentTag in targetTags)
{
if(currentTag == hit.transform.tag)
{
curTimeout += Time.deltaTime;
if(curTimeout > timeout)
{
curTimeout = 0;
hit.transform.GetComponent().AddDamage(damage);
}
}
}
}
else
{
curTimeout = timeout + 1;
}
}
 
if(PosBtnAttack != btnAttack.transform.position.y)
{
curTimeout += Time.deltaTime;
if(curTimeout > timeout)
{
curTimeout = 0;
Rigidbody2D bulletInstance = Instantiate(bullet, gunPoint.position, Quaternion.identity) as Rigidbody2D;
bulletInstance.velocity = gunPoint.forward * bulletSpeed;
}
}
else
{
curTimeout = timeout + 1;
}
}
 
}
Вот код пули:
using UnityEngine;
using System.Collections;
 
public class Bullet : MonoBehaviour {
 
public float damage = 1;
public string[] targetTags = {"Target_1", "Target_2"};
public float speed = 27f;
Rigidbody2D rb;
 
void Start()
{
rb = GetComponent();
Destroy(gameObject, 5);
}
 
void Update()
{
rb.velocity = new Vector2 (speed, rb.velocity.y);
}
 
void OnTriggerEnter(Collider coll)
{
foreach(string currentTag in targetTags)
{
if(currentTag == coll.transform.tag)
{
coll.transform.GetComponent().AddDamage(damage);
}
}
Destroy(gameObject);
}
вот код который на противниках:
 
using UnityEngine;
using System.Collections;
 
public class EnemyHealth : MonoBehaviour {
 
public float HP = 10;
 
public void AddDamage(float damage)
{
HP -= damage;
if(HP <= 0)
{
Destroy(gameObject);
}
}
}
__________________
Помощь в написании контрольных, курсовых и дипломных работ здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
22.04.2020, 19:19
Ответы с готовыми решениями:

Unity2D, Стрельба с видом сверху
Всем привет, кто знает как сделать стрельбу с видом сверху, вот как на этом видео, 1:23 мин....

NavMesh в Unity2D (игра с видом сверху
У меня проблема! Я хочу сделать чтобы враги обходили стены. Но я не знаю как это реализовать. На...

Наведения врага на игрока оружием в TDS ( игра с видом сверху) в Unity2D
Я хочу сделать чтобы враг наводился на игрока за которого я управляю и начинал стрелять! Но не знаю...

Вспышка после выстрела в TDS игре на Unity2D (игра с видом сверху)
Я хочу сделать вспышку после выстрела в игре. Но не знаю как это реализовать и не знаю где брать...

2
2291 / 1465 / 849
Регистрация: 26.10.2018
Сообщений: 4,183
22.04.2020, 20:44 2
C#
1
coll.transform.GetComponent().AddDamage(damage);
Как это вообще скомпилировалось?
0
0 / 0 / 0
Регистрация: 22.04.2020
Сообщений: 5
22.04.2020, 21:29  [ТС] 3
???
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
22.04.2020, 21:29

Проблема стрельбы врагов через стены по игроку в TDS Unity2D (игра с видом сверху)
Здравствуйте уважаемые знатоки). У меня враги стреляют в меня через стены, а мне этого не надо. Я...

Игра «Стрельба из лука»
Всем привет!! помогите (( а то я вообше не понимаю(( Описание: Исходными данными...

Игра "Стрельба по мишени"
Задание: Игра &quot;Стрельба по мишени&quot; Данное задание направлено на закрепление материала по теме...

Игра "Стрельба по мишеням"
Описание игры Есть мишень, у которой имеется определенное количество концентрических кругов...

Игра "Стрельба из пушки"
помогите если не сложно за ранее спс как сделать чтобы при изменении градусов пушка меняла свое...

AI в Unity2D
Есть готовый скрипт ботинка(AI),он может меня преследовать, прыгать через платформы, убивать меня....


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.