gu2ma

Akademia CD-Action [GAMMA]
  • Zawartość

    69
  • Rejestracja

  • Ostatnia wizyta

2 obserwujących

O gu2ma

  • Tytuł
    Ork

Informacje profilowe

  • Płeć
    mężczyzna

Dodatkowe informacje

  • Ulubiony gatunek gier

Ostatnie wizyty

2794 wyświetleń profilu
  1. @DataOchi wybacz, że dopiero teraz odpisuję, ale nie spodziewałem się, że ktoś jeszcze zainteresuje się kursem. Szkoda, że nie wysłałeś mi prywatnej wiadomości
  2. Skrypt PlayerMovement odpowiada za skok.
  3. Zrobiłeś prefab bohatera i umieściłeś go na drugim poziomie?
  4. Obecnie nic nie wiadomo.
  5. @ThePolishAssasin po prawo w "Inspector" >>> Transform pozycja "Z" musi mieć wartość "0". Mowa oczywiście o WayPoint-cie.
  6. Pierwsza część kursu nie wyjaśnia nam dokładnie zasad grawitacji. W obecnej fazie musimy do tego przywyknąć i starać się wykonywać skok tylko w sytuacjach wymagających tego od nas.
  7. Postaram Ci się później pomóc. Czekam na Twój odpis w temacie:
  8. Witaj. Już ponad rok minął od założenia tego tematu, ale czy znalazłaś na to rozwiązanie? Obecnie mam ten sam problem. (napisy wyświetlają się poprawnie). Pozdrawiam, Sebastian.
  9. @pejter wstępnie umawiamy się na następną niedzielę? Wtedy będę mógł na spokojnie zerknąć na Twoją pracę. Niestety nie jestem programistą z wykształcenia, o Unity mam pojęcie wyłącznie dzięki magazynowi CD-Action. Ciężko jest mi coś zasugerować po Twoim opisie problemu. edit: Jeżeli nie odezwę się w sobotę to proszę wyślij mi przypomnienie w wiadomości prywatnej, dobrze? Spróbuj jeszcze raz zapoznać się z pierwszą ramką z numeru magazynu (252), w której jest mowa o warstwach. Może przeoczyłeś pewien drobny szczegół. Przeczytaj sobie jeszcze raz dokładnie proces tworzenia skryptu Camera Follow(ten sam numer czasopisma) i przypinania do niego bohatera. W tym celu najlepiej załóż nowy projekt, abyś miał wszystko poukładane. edit2: Problem użytkownika @pejter został rozwiązany
  10. @pejter znajdziesz jutro czas? Pogadalibyśmy przez wideo konferencję skype. @BigRedChick Skrypt Bullet: using UnityEngine; using System.Collections; public class Bullet : MonoBehaviour { public float m_Speed = 10; public float m_LifeTime = 5; private Rigidbody2D m_Rigidbody; void Start() { m_Rigidbody = GetComponent<Rigidbody2D>() as Rigidbody2D; m_Rigidbody.velocity = new Vector2(m_Speed * transform.right.x, 0); Destroy(gameObject, m_LifeTime); } void OnCollisionEnter2D(Collision2D coll) { Destroy(gameObject); } ------------------------------------------------------------------- Skrypt Weapon: using UnityEngine; using System.Collections; public class Weapon:MonoBehaviour { public GameObject m_Bullet; public Transform m_BulletSpawnPoint; public int m_MagazineCapacity = 10; public int m_MaxAmmo = 30; private int m_CurrentAmmoAmount; private int m_CurrentMagazineAmount; // Use this for initialization void Start() { m_CurrentMagazineAmount = m_MagazineCapacity; m_CurrentAmmoAmount = m_MaxAmmo; } // Update is called once per frame void Update() { if (Input.GetButtonDown("Reload")) { int bulletsToAdd = m_MagazineCapacity - m_CurrentMagazineAmount; if (m_CurrentAmmoAmount < bulletsToAdd) { bulletsToAdd = m_CurrentAmmoAmount; } m_CurrentAmmoAmount-= bulletsToAdd; m_CurrentMagazineAmount += bulletsToAdd; } if (Input.GetButtonDown("Fire1") && m_CurrentMagazineAmount > 0){ Instantiate(m_Bullet, m_BulletSpawnPoint.position, m_BulletSpawnPoint.rotation); m_CurrentMagazineAmount--; } } public void AddBulets(int amount) { m_CurrentAmmoAmount = Mathf.Clamp(m_CurrentAmmoAmount + amount, 0, m_MaxAmmo); } }
  11. @pejter w pliku: Main Camera masz dodany skrypt: CameraFollow, a w polu target: Player ? @BigRedChick masz błąd w skrypcie. Po: " m_CurrentMagazineAmount--; " - końcówka skryptu USUŃ WSZYSTKO! i wklej to: } } public void AddBulets(int amount) { m_CurrentAmmoAmount = Mathf.Clamp(m_CurrentAmmoAmount + amount, 0, m_MaxAmmo); } } Powinno pomóc. Pozdrawiam, Sebastian Jakbyś miał problemy @BigRedChick oto cały poprawnie napisany skrypt WEAPON: using UnityEngine; using System.Collections; public class Weapon:MonoBehaviour { public GameObject m_Bullet; public Transform m_BulletSpawnPoint; public int m_MagazineCapacity = 10; public int m_MaxAmmo = 30; private int m_CurrentAmmoAmount; private int m_CurrentMagazineAmount; // Use this for initialization void Start() { m_CurrentMagazineAmount = m_MagazineCapacity; m_CurrentAmmoAmount = m_MaxAmmo; } // Update is called once per frame void Update() { if (Input.GetButtonDown("Reload")) { int bulletsToAdd = m_MagazineCapacity - m_CurrentMagazineAmount; if (m_CurrentAmmoAmount < bulletsToAdd) { bulletsToAdd = m_CurrentAmmoAmount; } m_CurrentAmmoAmount-= bulletsToAdd; m_CurrentMagazineAmount += bulletsToAdd; } if (Input.GetButtonDown("Fire1") && m_CurrentMagazineAmount > 0){ Instantiate(m_Bullet, m_BulletSpawnPoint.position, m_BulletSpawnPoint.rotation); m_CurrentMagazineAmount--; } } public void AddBulets(int amount) { m_CurrentAmmoAmount = Mathf.Clamp(m_CurrentAmmoAmount + amount, 0, m_MaxAmmo); } }
  12. W którym skrypcie pokazuje Ci błąd?
  13. Powiedz mi @tosadrian tylko szczerze, posiadasz wszystkie części magazynu związane z kursem "Unity - robimy platformówkę" ?
  14. Proszę o zadawanie pytań w temacie poniżej: http://forum.cdaction.pl/forum/371-kurs-unity-w-cd-action/ PS Panowie proszę o dokładny opis problemu (zrzuty ekranu w wysokiej jakości też mogą być).
  15. @pejter powiedz mi, a dodałeś do każdej rzeczy typu: postać, tło, platforma - osobną warstwę? (Sorting Layer) @Kubowski zauważylem, że masz pewne braki, jeżeli do tej pory robiłeś wszystko zgodnie z instrukcjami podanymi w czasopiśmie mój kod powinien Ci pomóc - oczywiście najpierw skopiuj i zapisz swoją treść! using UnityEngine; using System.Collections; using System.Collections.Generic; public class Enemy : MonoBehaviour { public int m_Health = 3; public float m_JumpForce = 350; public List<WayPoint> m_WayPoints; public float m_Speed = 5; public float m_SnapDistance = 0.4f; public GameObject m_Target; public float m_TargetDistance = 3; public JumpPoint m_JumpPoint; private Animator m_Animator; private bool m_InAir; private float m_WayPointTime = 0; private float m_CurrentWayPointTime = 0; private int m_CurrentWayPointIndex = 0; private bool m_DestinationReached = false; private Rigidbody2D m_Rigidbody; void Start() { m_Rigidbody = GetComponent<Rigidbody2D>() as Rigidbody2D; m_Animator = GetComponent<Animator>()as Animator; } void Update() { if (m_Rigidbody != null) { if (m_Rigidbody.velocity.y != 0) { m_InAir = true; } else { m_InAir = false; } if (m_Animator != null) if (m_Rigidbody.velocity.y != 0) { m_Animator.Play("Jump"); } else { if (m_Rigidbody.velocity.x != 0) { m_Animator.Play("Walk"); } else if (m_Rigidbody.velocity.x == 0) { m_Animator.Play("Idle"); } } } if (m_Target == null) { if (!m_DestinationReached) { if (Vector3.Distance(transform.position, m_WayPoints[m_CurrentWayPointIndex].transform.position) > m_SnapDistance) { Follow(m_WayPoints[m_CurrentWayPointIndex].gameObject); } else { m_Rigidbody.position = m_WayPoints[m_CurrentWayPointIndex].transform.position; m_WayPointTime = m_WayPoints[m_CurrentWayPointIndex].m_WaitTime; m_DestinationReached = true; m_CurrentWayPointIndex = (++m_CurrentWayPointIndex) % m_WayPoints.Count; m_Rigidbody.velocity = Vector3.zero; } } else { m_CurrentWayPointTime += Time.deltaTime; if (m_CurrentWayPointTime >= m_WayPointTime) { m_CurrentWayPointTime = 0; m_DestinationReached = false; } } } else { if (Vector3.Distance(transform.position, m_Target.transform.position) > m_TargetDistance) { Follow(m_Target); } } } void Follow(GameObject target) { Vector2 direction = target.transform.position - transform.position; direction.Normalize(); float targetY = target.transform.position.y; if (target.GetComponent<BoxCollider2D>() != null) { targetY = target.GetComponent<BoxCollider2D>().bounds.min.y; } float enemyY = gameObject.GetComponent<BoxCollider2D>().bounds.min.y; float diff = Mathf.Abs(targetY - enemyY); if (!m_InAir) { if (m_JumpPoint != null && diff > 0.1f) { Vector3 velocity = Vector3.zero; if (m_JumpPoint.m_Up != null && direction.y > 0) { velocity = m_JumpPoint.m_Up.transform.position - transform.position; velocity = new Vector3(velocity.x, velocity.y * m_JumpForce * 2, velocity.z); } else if (m_JumpPoint.m_Down != null && direction.y < 0) { velocity = m_JumpPoint.m_Down.transform.position - transform.position; velocity = new Vector3(velocity.x * m_JumpForce, -velocity.y * m_JumpForce, velocity.z); } m_Rigidbody.velocity = velocity; } else { m_Rigidbody.velocity = new Vector2(direction.x * m_Speed, m_Rigidbody.velocity.y); } } } void OnCollisionEnter2D(Collision2D coll) { Bullet bullet = coll.collider.GetComponent<Bullet>() as Bullet; if (bullet != null) { m_Health--; if (m_Health <= 0) { Destroy(gameObject); } } } void OnTriggerEnter2D(Collider2D other) { PlayerMovement player = other.GetComponent<PlayerMovement>(); if (player != null) { m_Target = player.gameObject; } } void OnTriggerExit2D(Collider2D other) { PlayerMovement player = other.GetComponent<PlayerMovement>(); if (player != null) { m_Target = null; } } }