Привет.
Можете помочь. Мне нужен скрипт например я подхожу к какому нибудь месту и появляются 2 gui кнопки да и нет если нажать да то загружается другой лвл если Нет то просто исчезают кнопки
gate1 писал(а):Ставишь на то место триггер, при входе в него активируешь свое gui, если да то Application.LoadLevel.
Смысла тебе писать код нету, тк видимо ты не читал справку или не смотрел уроки, там это все есть
KorsaiR писал(а):разжевал как мог..переваривай)Синтаксис:Используется csharpusing UnityEngine;
using System.Collections;
public class loadlvl : MonoBehaviour {
public bool quest;//bool переменная, которую можно включить и отключить
// Use this for initialization
void Start () {
quest = false;//изначально переменная отключенна
}
// Update is called once per frame
void Update () {
}
void OnTriggerEnter(Collider obj){//если в коллайдер вошел обьект..
if(obj.CompareTag("Player")){//с тегом Player(этот тег ты должен присвоить игроку..)
quest = true;//включить переменную
}
else{//иначе
quest = false;//переменная отключенна
}
}
void OnTriggerExit(Collider obj){//при выходе из коллайдера
if(obj.CompareTag("Player")){//обьекта с тегом Player
quest = false;//переменная отключается
}
}
void OnGUI(){//теперь самм текст и кнопки
if(quest){//если переменная включена
GUI.Label(new Rect(Screen.width/2,Screen.height/2,200,100),"LoadNewLevel?");//создаем текст
if(GUI.Button(new Rect(Screen.width/2,Screen.height/2+30,50,30),"yes")){//и кнопку.Если на неё тыкаем,то..
Application.LoadLevel(1);//загрузить Level(1)(там ты поставишь свою цифру,какой тебе нужен уровень)
}
if(GUI.Button(new Rect(Screen.width/2+50,Screen.height/2+30,50,30),"no")){//если нажать No -
quest = false;//переменная отключается => табличка пропадает.
}
}
}
}
KorsaiR писал(а):разжевал как мог..переваривай)Синтаксис:Используется csharpusing UnityEngine;
using System.Collections;
public class loadlvl : MonoBehaviour {
public bool quest;//bool переменная, которую можно включить и отключить
// Use this for initialization
void Start () {
quest = false;//изначально переменная отключенна
}
// Update is called once per frame
void Update () {
}
void OnTriggerEnter(Collider obj){//если в коллайдер вошел обьект..
if(obj.CompareTag("Player")){//с тегом Player(этот тег ты должен присвоить игроку..)
quest = true;//включить переменную
}
else{//иначе
quest = false;//переменная отключенна
}
}
void OnTriggerExit(Collider obj){//при выходе из коллайдера
if(obj.CompareTag("Player")){//обьекта с тегом Player
quest = false;//переменная отключается
}
}
void OnGUI(){//теперь самм текст и кнопки
if(quest){//если переменная включена
GUI.Label(new Rect(Screen.width/2,Screen.height/2,200,100),"LoadNewLevel?");//создаем текст
if(GUI.Button(new Rect(Screen.width/2,Screen.height/2+30,50,30),"yes")){//и кнопку.Если на неё тыкаем,то..
Application.LoadLevel(1);//загрузить Level(1)(там ты поставишь свою цифру,какой тебе нужен уровень)
}
if(GUI.Button(new Rect(Screen.width/2+50,Screen.height/2+30,50,30),"no")){//если нажать No -
quest = false;//переменная отключается => табличка пропадает.
}
}
}
}
KorsaiR писал(а):название скрипта должно совпадать с классом.то есть loadlvl.к тому же на объекте ,на который кидаешь его - должен быть коллайдер - триггер.ставишь галочку там IsTrigger и всё должно работать,сам этоим же скриптом пользуюсь.
Сейчас этот форум просматривают: Yandex [Bot] и гости: 15