Проблема с скриптом!
|
|
Sniper00766 | Дата: Пятница, 09 Марта 2012, 22:53 | Сообщение # 1 |
частый гость
Сейчас нет на сайте
| Написал скрипт на здоров'я( что бы показывало сколько у тебя здоров'я) Вот он: using UnityEngine; using System.Collections;
public class PlayerHealth : MonoBehaviour { // Блок публичных переменных public int maxHealth = 100; // Блок переменных локального пользования private int _curHealth = 100; private float healthBarLeaght;
void Start () { // Ширина бара healthBarLeaght = Screen.width /2; if(maxHealth<1) maxHealth=1; _curHealth=maxHealth; }
void Update(){
}
void onGUI (){ //Выводится бар состаяния здоров'я GUI.Box(new Rect(10,10,healthBarLeaght,20),_curHealth + "/" + maxHealth);
public void AddjustCurrentHealth( int adj){ _curHealth = adj; if(_curHealth < 0) _curHealth =0; if(_curHealth > maxHealth)_curHealth = maxHealth; healthBarLeaght = (Screen.width / 2) * (_curHealth / (float)maxHealth); } }
И в консоле появляеться такая ошибка: Assets/Bot_Scripts/PlayerHealth.cs(26,22): error CS1525: Unexpected symbol `public'
И я ничего не могу сделать, Помогите пожалуста!
Сообщение отредактировал Sniper00766 - Пятница, 09 Марта 2012, 22:54 |
|
| |
Demeron | Дата: Пятница, 09 Марта 2012, 23:16 | Сообщение # 2 |
User created in C++
Сейчас нет на сайте
| Попробуй заменить Code public class PlayerHealth : MonoBehaviour { на Code class PlayerHealth : MonoBehaviour {
|
|
| |
MyACT | Дата: Суббота, 10 Марта 2012, 05:33 | Сообщение # 3 |
C# CODERS
Сейчас нет на сайте
| Demeron, это ничего не изменит,т.к это само название скрипта и из-за него не может быть ошибки,там что то на 26 строке... Добавлено (10.03.2012, 05:29) --------------------------------------------- В 26 строке убери public ,а оставь void и то что далее Добавлено (10.03.2012, 05:33) ---------------------------------------------
Code using UnityEngine; using System.Collections;
public class PlayerHealth : MonoBehaviour { // Блок публичных переменных public int maxHealth = 100; // Блок переменных локального пользования private int _curHealth = 100; private float healthBarLeaght;
void Start () { // Ширина бара healthBarLeaght = Screen.width /2; if(maxHealth<1) maxHealth=1; _curHealth=maxHealth; }
void Update(){ AddjustCurrentHealth(); }
void onGUI (){ //Выводится бар состаяния здоров'я GUI.Box(new Rect(10,10,healthBarLeaght,20),_curHealth + "/" + maxHealth);
void AddjustCurrentHealth() { _curHealth = adj; if(_curHealth < 0) _curHealth =0; if(_curHealth > maxHealth)_curHealth = maxHealth; healthBarLeaght = (Screen.width / 2) * (_curHealth / (float)maxHealth); } } Вот так попробуй,у тебя метода обработки вроде нет,попробовал добавить проверь
3дэшечки: https://sketchfab.com/myactyindie Курентли воркс он: https://myacty.itch.io/raskopnik
|
|
| |
Sniper00766 | Дата: Суббота, 10 Марта 2012, 10:00 | Сообщение # 4 |
частый гость
Сейчас нет на сайте
| MyACT, Поставил твой скрипт и появилось две такие ошибки: Assets/Bot_Scripts/PlayerHealth.cs(26,25): error CS1547: Keyword `void' cannot be used in this context Assets/Bot_Scripts/PlayerHealth.cs(26,26): error CS1525: Unexpected symbol `(', expecting `)', `,', `;', `[', or `=' Что делать? Просто очень хочеться доделать этот скрипт!Добавлено (10.03.2012, 10:00) --------------------------------------------- MyACT, Всё я разобрался, я нашел в инете этот скрипт написаный другим челом, если хочешь можешь глянуть: [code] // Выводит бар показывающий сосотояние здоровья игрока
using UnityEngine; using System.Collections;
public class PlayerHealth : MonoBehaviour { //публичные переменные для настроек public int maxHealth = 100; //блок переменных локального пользования private int _curHealth = 100; private float healthBarLength; //производятся начальные расчеты при создании объекта void Start () { //задаем начальную ширину бара здоровья healthBarLength = Screen.width /2; //предотвращаем ввод неправильного значения //максимального значения if(maxHealth<1) maxHealth=1; _curHealth = maxHealth; } void Update () { } // Выводится сам бар посредством графического интерфейса //событие вывода этого интерфейса - стандартое void OnGUI() { //выводится бар состояния здоровья и числовые значения его GUI.Box(new Rect(10,10,healthBarLength,20),_curHealth + "/" +maxHealth); } // Производим расчет нужной ширины бара состояния здоровья //исходя из текущего состояния здоровья public void AddjustCurrentHealth( int adj){ _curHealth = adj; //блок по предотвращению неверного состояния здоровья //меньше нуля и больше максимума //так как изменяем здоровье из вне if(_curHealth < 0) _curHealth = 0; if(_curHealth > maxHealth) _curHealth = maxHealth; //расчет бара непосредственно healthBarLength = (Screen.width / 2) * (_curHealth / (float)maxHealth); } }
|
|
| |
MyACT | Дата: Суббота, 10 Марта 2012, 11:51 | Сообщение # 5 |
C# CODERS
Сейчас нет на сайте
| Sniper00766, ну исходи из ошибок в консоли там нет символов,и где то недочет. Надеюсь ты понял ошибку сравнив те два кода?
3дэшечки: https://sketchfab.com/myactyindie Курентли воркс он: https://myacty.itch.io/raskopnik
|
|
| |
Sniper00766 | Дата: Суббота, 10 Марта 2012, 14:03 | Сообщение # 6 |
частый гость
Сейчас нет на сайте
| MyACT, Да понял, спасибо за помощь!
|
|
| |
rudolf86 | Дата: Среда, 14 Марта 2012, 18:45 | Сообщение # 7 |
частый гость
Сейчас нет на сайте
| всем привет ,у меня такая проблема, открываю демо проект а когда нажимаю pley пишет (( all compiler errors have to be fixed before you can enter playmode! )) игра не запускается .. Добавлено (14.03.2012, 18:45) --------------------------------------------- всем привет ,у меня такая проблема, открываю демо проект а когда нажимаю pley пишет (( all compiler errors have to be fixed before you can enter playmode! )) игра не запускается .. Добавлено (14.03.2012, 18:45) --------------------------------------------- всем привет ,у меня такая проблема, открываю демо проект а когда нажимаю pley пишет (( all compiler errors have to be fixed before you can enter playmode! )) игра не запускается ..
ajgjdajgadm
|
|
| |
05142 | Дата: Среда, 14 Марта 2012, 18:56 | Сообщение # 8 |
постоянный участник
Сейчас нет на сайте
| rudolf86, ну так прочитай что написано и исправь эти ошибки.
mecinvader
|
|
| |
MyACT | Дата: Четверг, 15 Марта 2012, 04:19 | Сообщение # 9 |
C# CODERS
Сейчас нет на сайте
| rudolf86, значит в каком то скрипте неполадка
3дэшечки: https://sketchfab.com/myactyindie Курентли воркс он: https://myacty.itch.io/raskopnik
|
|
| |
Pashko | Дата: Воскресенье, 25 Марта 2012, 10:05 | Сообщение # 10 |
уже был
Сейчас нет на сайте
| У меня была такая же ошибка, причем в чистом проекте. Переустановка Unity помогла.
|
|
| |
MyACT | Дата: Воскресенье, 25 Марта 2012, 13:55 | Сообщение # 11 |
C# CODERS
Сейчас нет на сайте
| Pashko, лол что?!Что за бред ты сказал?
3дэшечки: https://sketchfab.com/myactyindie Курентли воркс он: https://myacty.itch.io/raskopnik
|
|
| |
Jericho | Дата: Четверг, 29 Марта 2012, 15:35 | Сообщение # 12 |
Ubuntu 11.10 user
Сейчас нет на сайте
| Pashko, ага не заработала опера снес винду так получается?
Уютненькая страничка Ерихона
xxx: Так вы представляете, у него там фрагмент кода в 15 строк повторяется 37 раз. Если вынести в функцию можно сэкономить полтыщи строк! yyy: это припев. © Антон Антоненко
|
|
| |
MyACT | Дата: Четверг, 29 Марта 2012, 15:46 | Сообщение # 13 |
C# CODERS
Сейчас нет на сайте
| Jericho, да,получается так.Он либо тролль,либо не понял о чем речь
3дэшечки: https://sketchfab.com/myactyindie Курентли воркс он: https://myacty.itch.io/raskopnik
Сообщение отредактировал MyACT - Пятница, 30 Марта 2012, 14:36 |
|
| |