Результаты поиска
|
|
Dropp | Дата: Вторник, 17 Апреля 2012, 22:13 | Сообщение # 1 | Тема: Вопрос-[ответ] по Unity |
был не раз
Сейчас нет на сайте
| Со старым вопросом ясно.А как с помощью GUI вывести значение переменной на экран?
|
|
| |
Dropp | Дата: Вторник, 17 Апреля 2012, 22:09 | Сообщение # 2 | Тема: Вывод значения переменной на сцену |
был не раз
Сейчас нет на сайте
| Читал, с англ. не очень,если не сложно напишите хотя бы отрывок из скрипта.
Добавлено (17.04.2012, 21:43) --------------------------------------------- выводятся только строки и юнити мне выдает ошибку мол only string.А мне значение переменной нужно.
Добавлено (17.04.2012, 22:09) --------------------------------------------- Вот код
Code using UnityEngine;
using System.Collections;
public class MyLevel : MonoBehaviour {
private int _ourLevel=1;//текущий левел игрока
private int _maxLevel=3;//максимальный левел игрока
public int levelup=100;//кол/во экспы для получения нового уровня
public int ourExp;//текущее кол/во экспы
// Use this for initialization
void Start () {
//прокачка
if(ourExp<levelup)_ourLevel=1;
else if(ourExp>100)_ourLevel=2;
else _ourLevel=3;
void OnGUI () {
selectionGridInt = GUI.Box (new Rect (25, 25, 300, 60), _ourLevel);
}
}
// Update is called once per frame
void Update () {
if (ourExp<0) ourExp=0;
}
}
Выдает аж 4 ошибки.Кому не сложно,помогите.
Сообщение отредактировал Dropp - Вторник, 17 Апреля 2012, 22:11 |
|
| |
Dropp | Дата: Вторник, 17 Апреля 2012, 18:49 | Сообщение # 3 | Тема: Вывод значения переменной на сцену |
был не раз
Сейчас нет на сайте
| Что же,подобный вопрос я задал в конце этой темы, вопрос достаточно нубский, но просто я, как и многие другие, немного не понимают логику C# и юнити-скриптингка в целом.Вопрос заключается в следующем: Как вывести в В Бокс или поле(родное или импортированное) значение переменной?Для начала скажите как вывести значение в родное поле,а там посмотрим.Заранее спасибо.
Сообщение отредактировал Dropp - Вторник, 17 Апреля 2012, 18:49 |
|
| |
Dropp | Дата: Вторник, 17 Апреля 2012, 18:27 | Сообщение # 4 | Тема: lvl система в rpg |
был не раз
Сейчас нет на сайте
| Кстати, с выводом левла у самого проблема.Пробовал через GUI.Box, выдает ошибку,а в консоль мне не нужно выводить.Посоветуйте самое лучшее решение,пожалуйста.
|
|
| |
Dropp | Дата: Вторник, 17 Апреля 2012, 15:14 | Сообщение # 5 | Тема: lvl система в rpg |
был не раз
Сейчас нет на сайте
| Самый простой способ-Если Кол/во експы>=нужному колву для левла текущий левел="новый левел"
|
|
| |
Dropp | Дата: Вторник, 17 Апреля 2012, 13:02 | Сообщение # 6 | Тема: Вопрос-[ответ] по Unity |
был не раз
Сейчас нет на сайте
| seaman, А как он тогда пишется?
|
|
| |
Dropp | Дата: Вторник, 17 Апреля 2012, 13:00 | Сообщение # 7 | Тема: lvl система в rpg |
был не раз
Сейчас нет на сайте
| Могу ошибиться, но опытные люди меня поправят.Сразу говорю,чтобы все работало, нужен далеко не один этот скрипт.Например тебе надо будет написать скрипт отображения левла, изменения кол во экспы.И этот скрипт не самый удобный способ для прокачки и может глючить, зато показательный,если голова на плечах есть то можно и без стольких переменных обойтись, вообщем мы же учимся. Code
using UnityEngine; using System.Collections;
public class MyLevel : MonoBehaviour { private int _ourLevel=1;//текущий левел игрока private int _maxLevel=5;//максимальный левел игрока public int levelup=100;//кол/во экспы для получения нового уровня private int _secondLevel=levelup;//второй левел private int _thirdLevel=levelup*2;//третий левел private int _foursLevel=levelup*3;//четвертый левел private int _fivesLevel=levelup*4;//пятый левел public int ourExp=0;//текущее кол/во экспы
// Use this for initialization void Start () { //прокачка if(ourExp<levelup)_ourLevel=1; else if(ourExp>=_secondLevel) _ourLevel=2; else if(ourExp>=_thirdLevel)_ourLevel=3; else if(ourExp>=_foursLevel)_ourLevel=4; else if(ourExp>=_fivesLevel)_ourLevel=5; else _ourLevel=5; } // Update is called once per frame void Update () { if (ourExp<0) ourExp=0 }
}
Сообщение отредактировал Dropp - Вторник, 17 Апреля 2012, 13:01 |
|
| |
Dropp | Дата: Вторник, 17 Апреля 2012, 11:57 | Сообщение # 8 | Тема: Вопрос-[ответ] по Unity |
был не раз
Сейчас нет на сайте
| Здравствуйте, столкнулся с проблемой. Хотел написать код на C#, который делал бы полоску здоровья, ошибок там нет, даже unity их там не нашел. и script спокойно присоединился к FirstPersonController, но полоски нету.Вот код,может я ошибся. Code using UnityEngine; using System.Collections; //Публичный класс здоровья public class HP : MonoBehaviour {
public int maxHealth = 100; //максимальное здоровье
private int _ourHealts = 100; //текущее здоровье private float polhp; //полоска
// Use this for initialization void Start () { polhp= Screen.width/2; // размер полоски if(maxHealth<0) maxHealth=0; // защита от ошибки } // Update is called once per frame void Update () { } void OnGui () { GUI.Box(new Rect(10,10,polhp,20),_ourHealts + "/" + maxHealth); // Бокс с полоской } public void AddjustCurrentHealth(int adj) { _ourHealts=adj; if(_ourHealts<0) _ourHealts=0; //страховка if(_ourHealts > maxHealth) _ourHealts=maxHealth;//страховка } }
|
|
| |