sábado, 9 de marzo de 2019

Haciendo juego de mazmorra.

Hola amigos en esta sección reportare los avances de mi juego.


Empezamos con lo que llevo del juego:



Si tienen 'dudas' déjenlas en los comentarios con gusto les ayudo.

Script del Player (jugador):

01 using System.Collections;
02 using System.Collections.Generic;
03 using UnityEngine;
04 
05 public class PlayerController : MonoBehaviour
06 {
07     public static PlayerController sharedInstance;
08 
09     public bool directionRight;
10 
11     // Velocidad del personaje
12     public float speed = 4f;
13 
14     // Movimiento del personaje.
15     Animator anim;
16     Rigidbody2D rb2d;
17     Vector2 move;
18     // Tomar el Render del personaje.
19     SpriteRenderer spriteRenderer;
20 
21     // Cambiar posicion de espada.
22     SpriteRenderer sword;
23     Transform targetSword;
24     Transform targetRightSword;
25 
26     private void Awake()
27     {
28         if(sharedInstance == null)
29         {
30             sharedInstance = this;
31         }
32     }
33 
34     // Start is called before the first frame update
35     void Start()
36     {
37         directionRight = true;
38 
39         anim = GetComponent<Animator>();
40         rb2d = GetComponent<Rigidbody2D>();
41         spriteRenderer = GetComponent<SpriteRenderer>();
42 
43         sword = transform.GetChild(0).GetComponent<SpriteRenderer>();
44         targetSword = transform.GetChild(1).GetComponent<Transform>();
45         targetRightSword = transform.GetChild(2).GetComponent<Transform>();
46     }
47 
48     // Update is called once per frame
49     void Update()
50     {
51         Movements();
52 
53         MoveAnimation();
54     }
55 
56     void FixedUpdate()
57     {
58         //Nos movemos en el fixed por las fisicas
59         rb2d.MovePosition(rb2d.position + move * speed * Time.deltaTime);
60     }
61 
62     void Movements()
63     {
64         move = new Vector2(
65             Input.GetAxisRaw("Horizontal"),
66             Input.GetAxisRaw("Vertical")
67             );
68         if(move == Vector2.left)
69         {
70             spriteRenderer.flipX = true;
71             sword.transform.position = new Vector2(targetSword.transform.position.x, 
                                                                                  targetSword.transform.position.y);
72             directionRight = false;
73         }
74         if(move == Vector2.right)
75         {
76             spriteRenderer.flipX = false; 
77             sword.transform.position = new Vector2(targetRightSword.transform.position.x, 
                                                                                  targetRightSword.transform.position.y);
78 
79             directionRight = true;
80 
81         }
82     }
83 
84     void MoveAnimation()
85     {
86         if (move != Vector2.zero)
87         {
88             anim.SetBool("isWalking", true);
89         }
90         else
91         {
92             anim.SetBool("isWalking", false);
93         }
94     }
95 }

3 comentarios:

  1. Excelente inicio!! que bueno que estés haciendo el juego, te deseo todo el éxito del mundo y cuando este finalizado avísame así lo juego!

    ResponderEliminar
  2. Casinos Near Fort Lauderdale Casino & Hotel - Mapyro
    Find 태백 출장안마 Casinos Near Fort Lauderdale Casino & Hotel in Fort Lauderdale, 경상남도 출장샵 FL, United States. A 강원도 출장마사지 map showing casinos and other 성남 출장안마 lodging nearest to Fort Lauderdale Casino & Hotel, 대구광역 출장샵

    ResponderEliminar