﻿1
00:00:04,500 --> 00:00:05,120
‫Hola y bienvenido.

2
00:00:05,130 --> 00:00:11,160
‫En esta lección, diseñaremos un arma de modo que cuando presionemos el botón del mouse

3
00:00:11,160 --> 00:00:14,490
‫o el gatillo, obtengamos un mensaje de registro.

4
00:00:14,490 --> 00:00:19,530
‫Y este mensaje de registro es el primer paso para que muchas otras cosas se ejecuten desde la parte posterior de esta

5
00:00:19,530 --> 00:00:20,310
‫arquitectura de armas.

6
00:00:20,310 --> 00:00:22,110
‫Vamos a sumergirnos y ver cómo se hace.

7
00:00:23,120 --> 00:00:26,700
‫Así que queremos que esta arma finalmente pueda disparar.

8
00:00:26,720 --> 00:00:28,250
‫Y ese es el núcleo de esto.

9
00:00:28,250 --> 00:00:32,960
‫¿Por qué elegimos tener el arma como el núcleo de nuestra arquitectura de tiro?

10
00:00:32,990 --> 00:00:38,750
‫Bueno, como ya mencioné un poco, queremos poder admitir diferentes tipos de métodos de

11
00:00:38,750 --> 00:00:39,470
‫disparo.

12
00:00:39,490 --> 00:00:42,350
‫Ahora, ¿cuáles son los tipos de métodos de disparo que normalmente podemos tener?

13
00:00:42,470 --> 00:00:48,140
‫Eso es fuego directo, que a menudo utiliza el trazado de rayos y la línea de visión directa para determinar si una víctima

14
00:00:48,140 --> 00:00:49,610
‫ha sido alcanzada o no.

15
00:00:49,730 --> 00:00:52,550
‫Entonces iría y diría, está bien, puedo ver a ese enemigo.

16
00:00:52,580 --> 00:00:55,580
‫Es que la línea de visión desde el arma hasta el enemigo es clara.

17
00:00:55,580 --> 00:00:56,340
‫Lo golpea.

18
00:00:56,360 --> 00:00:57,930
‫Así que tenemos que hacerle daño.

19
00:00:57,950 --> 00:01:01,340
‫De lo contrario, si fallé y no golpeé al enemigo, no hace daño.

20
00:01:01,370 --> 00:01:02,750
‫Esa es una manera muy fácil.

21
00:01:02,750 --> 00:01:05,600
‫Realmente no replica la física de una bala, pero no hay necesidad de hacerlo.

22
00:01:05,630 --> 00:01:09,920
‫Entonces, por razones de rendimiento, ahora no usamos un lanzacohetes o algo así, a menudo es

23
00:01:09,920 --> 00:01:11,000
‫un proyectil muy lento.

24
00:01:11,000 --> 00:01:16,340
‫Queremos ver el efecto de ese proyectil moviéndose por el aire y el tiempo de retraso puede ser importante.

25
00:01:16,730 --> 00:01:21,760
‫En cuyo caso, podríamos generar ese proyectil y ver si el proyectil golpea en

26
00:01:21,770 --> 00:01:28,950
‫5 segundos, o podríamos tomar una ruta diferente con caída de balas y rifles y rifles de francotirador en largas distancias.

27
00:01:29,030 --> 00:01:32,960
‫Así que todo esto podría cambiar dependiendo de la implementación de nuestra pistola.

28
00:01:32,960 --> 00:01:36,130
‫Ahora vamos a implementar un arma durante esta sección.

29
00:01:36,170 --> 00:01:38,840
‫Va a ser un rifle, un tipo de arma de tiro directo.

30
00:01:38,840 --> 00:01:45,500
‫Pero para dejar esa arquitectura abierta para que la extiendas, vamos a hacer que el arma sea la responsable

31
00:01:45,530 --> 00:01:46,490
‫de disparar.

32
00:01:46,520 --> 00:01:52,010
‫Eso significa que tenemos que seguir adelante e introducir alguna arquitectura de tiro en nuestra arma.

33
00:01:52,010 --> 00:01:53,010
‫Así que tenemos un disparo.

34
00:01:53,030 --> 00:02:00,650
‫H Queremos crear una función pública para esto que nos permita esencialmente apretar el gatillo

35
00:02:00,650 --> 00:02:02,690
‫del arma del tirador.

36
00:02:02,690 --> 00:02:03,000
‫Correcto.

37
00:02:03,020 --> 00:02:05,220
‫Entonces, desde donde sea que estemos vinculando la entrada.

38
00:02:05,240 --> 00:02:12,360
‫En el caso del enemigo, por ejemplo, vamos a apretar el gatillo desde el aire.

39
00:02:13,010 --> 00:02:15,550
‫Así que sigamos adelante y creemos un vacío.

40
00:02:15,560 --> 00:02:20,960
‫No tiene que tener un método de disparo de tipo de retorno y no necesita tomar nada.

41
00:02:20,970 --> 00:02:24,500
‫Todo lo que necesitamos saber es que queremos apretar el gatillo en este marco.

42
00:02:24,800 --> 00:02:27,170
‫Así que tener eso es suficiente.

43
00:02:27,290 --> 00:02:33,740
‫Ahora voy a seguir adelante y crear la rotación con el cambio de control P y crear la implementación.

44
00:02:34,730 --> 00:02:40,160
‫Y luego aquí, todo lo que voy a hacer es poner un registro de

45
00:02:40,160 --> 00:02:48,550
‫YUI y solo voy a hacer una advertencia para destacar y cambiar el mensaje a Te han disparado así y eso es genial. .

46
00:02:48,560 --> 00:02:52,880
‫Eso es lo que llamaremos en nuestro personaje, DOT CBP.

47
00:02:54,020 --> 00:02:57,440
‫Entonces, esto va a ser un desafío para usted, ¿hay alguna entrada más vinculante?

48
00:02:57,440 --> 00:02:58,730
‫Hemos hecho muchos enlaces de entrada aquí.

49
00:02:58,730 --> 00:03:01,670
‫Tienes muchos ejemplos de enlace de entrada.

50
00:03:01,910 --> 00:03:02,960
‫Adelante, haz esto.

51
00:03:02,960 --> 00:03:08,480
‫Para conectar una acción de disparar, tendrá que crear una nueva acción en la configuración del proyecto para

52
00:03:08,510 --> 00:03:09,020
‫disparar.

53
00:03:09,380 --> 00:03:16,850
‫Vincúlelo a su tecla, a su gatillo derecho, a lo que quiera vincularlo, luego vincúlelo en el método del componente de entrada del

54
00:03:17,210 --> 00:03:20,120
‫jugador de configuración de caracteres para hacer esto.

55
00:03:20,480 --> 00:03:26,240
‫Y luego, después de vincular el personaje, debería poder llamar al disparador desde

56
00:03:26,240 --> 00:03:30,290
‫la función que ha creado en el personaje.

57
00:03:30,290 --> 00:03:36,320
‫Recuerde poner una función en el personaje para configurar la vinculación, en lugar de intentar vincular

58
00:03:36,320 --> 00:03:38,300
‫directamente a esa arma.

59
00:03:38,300 --> 00:03:40,250
‫Vincularse directamente al arma no va a funcionar.

60
00:03:40,250 --> 00:03:42,710
‫Necesitas poner un pequeño intermediario de funciones allí.

61
00:03:43,460 --> 00:03:48,860
‫Así que pausa el video y te daré una pequeña pista o un pequeño comienzo si estás

62
00:03:48,860 --> 00:03:52,910
‫luchando con la última parte del desafío de crear la función intermedia.

63
00:03:53,690 --> 00:03:55,220
‫Bien, aquí viene la pista.

64
00:03:55,220 --> 00:03:56,630
‫Si no quieres las pistas, haz una pausa ahora.

65
00:03:56,930 --> 00:04:03,740
‫Pero la sugerencia será que vamos a hacer algo como esto, que es tener una nueva

66
00:04:03,740 --> 00:04:08,930
‫función privada llamada void, disparar y crear la implementación en C++.

67
00:04:09,200 --> 00:04:14,600
‫Y va a ser aquí donde llamemos al propio método de las armas.

68
00:04:14,600 --> 00:04:18,290
‫Así que las armas aprietan el gatillo, vamos a disparar.

69
00:04:19,370 --> 00:04:24,890
‫Y luego aprieta el gatillo desde dentro dispara.

70
00:04:24,890 --> 00:04:26,180
‫Y esto es lo que necesitas unir.

71
00:04:27,290 --> 00:04:34,190
‫De acuerdo, vuelve a sacar el video, si es ahí donde quieres tomar las cosas y luego vamos a configurar

72
00:04:34,190 --> 00:04:34,900
‫las acciones.

73
00:04:34,910 --> 00:04:35,240
‫Bueno.

74
00:04:35,240 --> 00:04:37,990
‫Así que vamos a ir a la configuración de nuestro proyecto.

75
00:04:38,000 --> 00:04:44,900
‫Entonces, configuración, configuración del proyecto y queremos acoplar esto e ir a nuestra entrada y queremos agregar una

76
00:04:44,900 --> 00:04:47,240
‫nueva acción y la llamaremos disparar.

77
00:04:48,300 --> 00:04:59,940
‫Y luego vamos a vincular esto al botón izquierdo del mouse y al gatillo derecho, no al eje del gatillo

78
00:04:59,940 --> 00:05:00,540
‫derecho.

79
00:05:01,140 --> 00:05:02,010
‫La derecha.

80
00:05:02,970 --> 00:05:03,720
‫Solo dispara.

81
00:05:04,200 --> 00:05:06,090
‫Pensé que eso era lo que había seleccionado, pero no lo hice.

82
00:05:06,750 --> 00:05:09,420
‫Por lo tanto, se une tanto al controlador como al mouse.

83
00:05:09,930 --> 00:05:15,150
‫Y voy a ir y unir el eje y dispararle a un personaje CP.

84
00:05:15,330 --> 00:05:17,490
‫Así que copie este eje de enlace para saltar.

85
00:05:17,880 --> 00:05:18,720
‫Quiero decir, acción.

86
00:05:18,720 --> 00:05:20,880
‫Por supuesto, siempre voy a confundir a esos dos.

87
00:05:21,450 --> 00:05:24,810
‫Tenemos un cambio de llamada al eje de disparo aquí.

88
00:05:24,870 --> 00:05:31,980
‫El presionado es lo que queremos y, en lugar de unirnos para saltar, vamos a unirnos a una sesión de

89
00:05:31,980 --> 00:05:32,520
‫personaje.

90
00:05:33,550 --> 00:05:34,330
‫Al igual que.

91
00:05:34,570 --> 00:05:36,010
‫Y sigamos adelante y construyamos.

92
00:05:36,790 --> 00:05:37,070
‫Bueno.

93
00:05:37,090 --> 00:05:38,740
‫Parece que eso ha tenido éxito.

94
00:05:38,890 --> 00:05:40,660
‫Cerremos eso abajo.

95
00:05:40,780 --> 00:05:42,460
‫Y ver si funciona.

96
00:05:42,580 --> 00:05:48,460
‫Así que salgamos del juego y presionemos reproducir nuevamente y echemos un vistazo al registro de salida.

97
00:05:48,460 --> 00:05:50,320
‫Crucialmente jugar.

98
00:05:50,620 --> 00:05:51,120
‫Sí.

99
00:05:51,220 --> 00:05:54,310
‫Entonces, si presiono el botón del mouse, está funcionando.

100
00:05:54,640 --> 00:05:58,300
‫A ver si pasa lo mismo si uso el gatillo derecho.

101
00:05:58,840 --> 00:05:59,130
‫Sí.

102
00:05:59,140 --> 00:05:59,410
‫Derecha.

103
00:05:59,410 --> 00:06:01,510
‫El gatillo también funciona para disparar.

104
00:06:01,810 --> 00:06:07,480
‫Entonces, obviamente, un mensaje de registro no es la mejor manera de hacerle saber a tu jugador que algo está pasando en el

105
00:06:07,480 --> 00:06:07,850
‫juego.

106
00:06:07,870 --> 00:06:11,860
‫Entonces, en la próxima lección, veremos cómo agregar efectos de partículas para hacer precisamente eso.

107
00:06:12,250 --> 00:06:12,940
‫Te veré allá.

