Skocz do zawartości
  • 👋 Witaj na MPCForum!

    Przeglądasz forum jako gość, co oznacza, że wiele świetnych funkcji jest jeszcze przed Tobą! 😎

    • Pełny dostęp do działów i ukrytych treści
    • Możliwość pisania i odpowiadania w tematach
    • System prywatnych wiadomości
    • Zbieranie reputacji i rozwijanie swojego profilu
    • Członkostwo w jednej z największych społeczności graczy

    👉 Dołączenie zajmie Ci mniej niż minutę – a zyskasz znacznie więcej!

    Zarejestruj się teraz

Menu - unity


Rekomendowane odpowiedzi

Opublikowano

Siemka.

1. Wie ktoś może jak się robi z obrazka przycisk? Jaki skrypt trzeba do niego przypisać?

 

2. Jeszcze korzystając z okazji, że nikt nie odpowiedział da się zrobić jakiś prosty system renderingu? Bo jak np. 1 potworek respi się co 5 sec i idzie w prawo, no i jak się zrespi 100 tych potworków to cały telefon się zacina, bo nie daje rady obliczyć wszystkich potworków. Chciałbym coś zrobić aby jak coś jest 300px od ekranu to znikało czy coś takiego. Wie ktoś jak to wykonać?

 

EDIT: 

Znalazłem taki skrypt:

using UnityEngine;
using System.Collections;

public class Example : MonoBehaviour {
public Texture aTexture;
void OnGUI() {
if (Event.current.type.Equals(EventType.Repaint))
Graphics.DrawTexture(new Rect(10, 10, 100, 100), aTexture);

}
}

Tylko, że nie da się to tego wstawić elementów które są w empty object.

Opublikowano

Znowu te j*bane OnGUI(). Boże...

using UnityEngine;
using System.Collections;

public class menuButton : MonoBehaviour {
	public Sprite wcisnietySprite;
	private Sprite _domyslnySprite;
	private SpriteRenderer _sr;

	// OBIECUJĘ, ŻE JAK JUŻ ZACZNĘ ZARABIAĆ MILIONY O KTÓRYCH MÓWIŁEM PARĘ DNI TEMU
	// TO BĘDĘ PAMIĘTAĆ O HENB, BO W KOŃCU ON WSZYSTKO ZAKODZIŁ


	// Use this for initialization
	void Start () {
		_sr = this.gameObject.GetComponent<SpriteRenderer>();
		_domyslnySprite = _sr.sprite;
	}

	/// <summary>
	/// Raises the mouse down event.
	/// </summary>
	void OnMouseDown()
	{
		_sr.sprite = wcisnietySprite;
	}


	/// <summary>
	/// Raises the mouse up event.
	/// </summary>
	void OnMouseUp()
	{
		_sr.sprite = _domyslnySprite;
		// To co ma się dziać...
	}
	
	
}

Jak chcesz, żeby to jakoś wyglądało, to przygotuj normalną grafikę przycisku, i trochę przyciemnioną (taką żeby wyglądała na "przyciśniętą"). Normalną wrzuć na scenę jako Sprite, dodaj do niej BoxCollider2D, i ten skrypt. W inspektorze dodaj przyciśniętą grafikę i powinno śmigać.

 

 

 

 

 

 

2. Jeszcze korzystając z okazji, że nikt nie odpowiedział da się zrobić jakiś prosty system renderingu? Bo jak np. 1 potworek respi się co 5 sec i idzie w prawo, no i jak się zrespi 100 tych potworków to cały telefon się zacina, bo nie daje rady obliczyć wszystkich potworków. Chciałbym coś zrobić aby jak coś jest 300px od ekranu to znikało czy coś takiego. Wie ktoś jak to wykonać?

 

okey+the+last+one+was+pretty+funny+but+t

 

Nie wiem jak ma się do tego system renderingu, ale przypuszczam że chodzi ci o za dużo aktywnych gameobjectów. Moje ulubione powiedzenie: "Jest wiele sposobów żeby to zrobić". Pierwszy z brzegu:

Stwórz trigger, w miejscu w którym potworków nie są już widoczne. Wrzuć na niego skrypt z taką metodą:

	void OnTriggerEnter(Collider other)
	{
		Destroy(other.gameObject);
	}
Opublikowano
OBIECUJĘ, ŻE JAK JUŻ ZACZNĘ ZARABIAĆ MILIONY O KTÓRYCH MÓWIŁEM PARĘ DNI TEMU
TO BĘDĘ PAMIĘTAĆ O HENB, BO W KOŃCU ON WSZYSTKO ZAKODZIŁ

Ok. Dzięki. Nawet dodam Cię do autorów skryptów ;d.

 

 

Jeszcze przepraszam, ale co to jest to Trigger? 

Opublikowano
OBIECUJĘ, ŻE JAK JUŻ ZACZNĘ ZARABIAĆ MILIONY O KTÓRYCH MÓWIŁEM PARĘ DNI TEMU
TO BĘDĘ PAMIĘTAĆ O HENB, BO W KOŃCU ON WSZYSTKO ZAKODZIŁ

Ok. Dzięki. Nawet dodam Cię do autorów skryptów ;d.

 

 

Jeszcze przepraszam, ale co to jest to Trigger? 

 

Haha :D Spokoluz,

Jeżeli w box collider zaznaczysz "Is trigger" to wtedy przez ten obiekt będą "przelatywać" inne obiekty. Wtedy możesz korzystać z eventów takich jak: OnTriggerEnter - przy wejściu w trigger (w przykładzie, który Ci napisałem wcześniej niszczę to co wpadło w trigger). OnTriggerStay - tutaj przykładem może być odejmowanie hp gracza kiedy ten idzie przez lawę. OnTriggerExit - tutaj też można próbować ograniczyć liczbę obiektów. Wtedy wszystko dzieje się wewnątrz triggera, a przy OnTriggerExit niszczysz obiekt. 

 

Edit:

Przepraszam, nie tylko box collider. Każdy collider może być triggerem. Najprościej zrobić Cube i zaznaczyć, że jest triggerem.

Opublikowano

A więc tak. Dodaje Box Collider do jakiegoś elementu. Zaznaczam Is trigger i dodaje ten twój skrypt, no ale niestety nie działa. Ten skrypt twój mam dodawać do tego elemtu co ma niszczyć te potworki?

 

A tak wgl mam nowe hobby, zobacz sobie jest pod moim avatarem. :P

Opublikowano

Postaw klocek, jakkolwiek to brzmi na drodze po której idą przeciwnicy. Jeżeli mają rigidbody i wpadną w trigger to te eventy powinny się odpalić.

Opublikowano

Ojj.. No właśnie. To musi być w "Rigid Body 2D" a nie "Rigid Body" bo inaczej przesuwanie obiektu w lewo nie działa.

Jest jakiś sposób by to Trigger działało też na rigid Body?

Zarchiwizowany

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

×
×
  • Dodaj nową pozycję...