Jump to content
UnitySpain

Search the Community

Showing results for tags 'platform'.



More search options

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Forums

  • Inicio
    • Proyectos
    • Offtopic
    • Unity Feeds
    • Website
  • Mesa de ayuda
    • Unity
    • Arte
    • Otras Especialidades
    • Builds & Dispositivos
  • Aportes de la Comunidad
    • Recursos
    • Eventos
    • Buenas Prácticas
  • Bolsa de trabajo & Colaboraciones
    • Ofertas y Demandas
  • Post Antiguos
    • General (Antiguo)

Blogs

  • byGui

Find results in...

Find results that contain...


Date Created

  • Start

    End


Last Updated

  • Start

    End


Filter by number of...

Joined

  • Start

    End


Group


Especialidad

Found 2 results

  1. Aqui os dejo una pequeña demo que he hecho en cuatro fines de semana (porque sí, porque me apetecía hacerlo). Es una pequeña demo de un juego de plataformas 2d de 2 niveles usando graficos pixel art y Unity. Podés probarlo aquí: http://www.jocyf.com/Preview/8BitPlatform/index.html Edito: Por cierto, hay unas cuantas cosas más que he ido publicando en mi página web y que podéis ver desde aquí: http://www.jocyf.com/previews.html
  2. Buenas gente, acá les traigo un simple script para controlar el movimiento de traslación de las plataformas. Lo hice con el objetivo de facilitarme este método y dejárselo a los nuevos usuarios del foro. Es algo muy básico pero cumple su función. El siguiente script se añade a la plataforma que quieras que tenga esta propiedad. using UnityEngine; using System.Collections.Generic; public class PlatformMove : MonoBehaviour { [Range(0.0f, 15.0f)] public float speed; public enum Path { loop, reverse } public Path path; public float minDistance = 0.1f; public List<Vector3> positions = new List<Vector3>(); private int index = 0; void Start() { ResetPosition(); } //para situar la plataforma al comienzo void Update () { //Traslacion if (index < positions.Count) { transform.position = Vector3.MoveTowards(transform.position, positions[index], Time.deltaTime * speed); if (Vector3.Distance(transform.position, positions[index]) < minDistance) index++; } else { //Metodos de traslacion if (path == Path.loop) index = 0; if (path == Path.reverse) { positions.Reverse(); index = 0; } } } //EDITOR public void AddPosition() { positions.Add(transform.position); } public void RemoveLastPosition(){ positions.RemoveAt(positions.Count - 1); } public void ResetPosition() { transform.position = positions[0]; } public void ResetAll() { positions.Clear(); } void OnDrawGizmosSelected() { if (positions != null) { for (int i = 0; i < positions.Count; i++) { if(i < positions.Count - 1) { Gizmos.color = Color.green; Gizmos.DrawLine(positions[i], positions[i + 1]); } else { Gizmos.color = Color.blue; Gizmos.DrawLine(positions[i], positions[0]); } } } } }Y el siguiente dentro de la carpeta "Editor" using UnityEngine; using UnityEditor; [CustomEditor(typeof(PlatformMove))] public class PlatformMoveEditor : Editor { public override void OnInspectorGUI() { DrawDefaultInspector(); PlatformMove plataformMove = (PlatformMove)target; if (GUILayout.Button("ADD")) plataformMove.AddPosition(); if (GUILayout.Button("REMOVE LAST POSITION")) { plataformMove.RemoveLastPosition(); } if (GUILayout.Button("RESET POSITION (OBJECT)")) plataformMove.ResetPosition(); if (GUILayout.Button("RESET ALL")) plataformMove.ResetAll(); } }
×
×
  • Create New...