Четверг, 21 Ноября 2024, 19:00

Приветствую Вас Гость

Меню сайта
Категории каталога
Создание игр [358]
Статьи об общих понятиях связанных с созданием игр.
Программирование [83]
Гайды по программированию на разных ЯП.
Движки и Гейммейкеры [147]
Статьи о программах для создания игр, уроки и описания.
Софт [43]
Различные программы, в том числе в помощь игроделам.
2D-графика [14]
Уроки по рисованию, растр, пиксель-арт, создание спрайтов и пр.
3D-графика [17]
Уроки по моделированию, ландшафт, модели, текстурирование и пр.
Моддинг игр [5]
Модификация компьютерных игр, создание дополнений, перевод, хакинг.
Игры [167]
Статьи об играх, в том числе и сделанных на гейммейкерах.
Разное [132]
Статьи, которые не вошли в определённые разделы.
Наш опрос
Какой жанр игр вам больше нравится играть?
Всего ответов: 2484
Главная » Статьи » Создание игр

Unity3D Как сделать систему Score
Здравствуйте уважаемые. В этом уроке мы будем рассматривать реализацию очков в Unity. Ну, давайте приступим.
Для начала мы создадим скрип C# "Score". Мы объявим в нём переменную:
Code

public int Score;

Это будет сама переменная очков. Мы делаем её целым числом (int). Теперь давайте выводить её на экран. Мы рассмотрим метод OnGUI().
Создаём его в скрипте:
Code

void OnGUI(){

}

В этом методе рассматривается весь GUI. Давайте добавим текст с обозначением очков. Это делается так:
Code

GUI.Label(new Rect(10, 10, 100, 100), "Score: " Score);

Рассмотрим, что мы сделали. Мы создали лейбел. То бишь текст. Мы указали Rect. Я привык делать его отдельной переменной, например "public Rect variable;".
Но тут особо настраивать не нужно. Мы поместим кол-во очков в верхний левый угол.
Давайте теперь повесим этот скрипт наш на игрока.
Теперь давайте сделаем объект, при столкновении с которым у нас будут пополняться очки.
Перед этим не забудем игроку дать имя "Player". Так как мы будем его по нему искать.
Создадим скрипт "AddScore". В нём создаём переменную игрока.
Code

public GameObject Player;

Теперь давайте в методе старта найдём нашего игрока по имени:
Code

void Start(){
Player = GameObject.Find("Player");
}

Теперь сделаем так, чтобы при столкновении с объектом, на котором висит этот скрипт у игрока повышались очки. Для этого мы будем использовать "void OnCollisionEnter(Collision variable)". И проверим коллизию с игроком.
Code

void OnCollisionEnter(Collision variable){
if(variable.gameObject == Player){
Player.GetComponent<Score>().Score += 10;
Destroy(gameObject);
}
}

Мы сделали при столкновении с объектом прибавление очков на 10 и уничтожаем этот объект.
Теперь вешаем этот скрипт на, допустим, простую сферу и тестируем. Всё должно работать!
Спасибо за внимание.
Категория: Создание игр | Добавил: Nekit_Aut (01 Июня 2012) | Автор: Курбатов Никита Алексеевич
Просмотров: 41989 | Комментарии: 7 | Рейтинг: 4.1/18 |
Теги: Unity, очки, UnityScript, Unity3D, C#, Score, скрипты
Дополнительные опции:
Также если вы считаете, что данный материал мог быть интересен и полезен кому-то из ваших друзей, то вы бы могли посоветовать его, отправив сообщение на e-mail друга:

Игровые объявления и предложения:
Если вас заинтересовал материал «Unity3D Как сделать систему Score», и вы бы хотели прочесть что-то на эту же тему, то вы можете воспользоваться списком схожих материалов ниже. Данный список сформирован автоматически по тематическим меткам раздела. Предлагаются такие схожие материалы: Если вы ведёте свой блог, микроблог, либо участвуете в какой-то популярной социальной сети, то вы можете быстро поделиться данной заметкой со своими друзьями и посетителями.

Всего комментариев: 7
+2-
7 Nekit_Aut   (03 Июня 2012 22:33) [Материал]
Nekit_AutJHawk, Instantiate(переменная префаба обьекта, позиция появления, поворот появления);

+-2-
6 JHawk   (03 Июня 2012 20:28) [Материал]
JHawkNekit_Aut а что бы обьект появился, что писать вместо destroy???

+2-
5 JHawk   (03 Июня 2012 17:53) [Материал]
JHawkНекит, большое тебе спасибо!

+2-
4 kazenostro   (03 Июня 2012 15:50) [Материал]
kazenostroочень познавательно спасибо большое

+1-
3 MadMax52   (03 Июня 2012 00:26) [Материал]
MadMax52Все бы хорошо, но ты не добавил получившийся скрипт целиком в конец статьи.

+2-
1 Fr0sT   (01 Июня 2012 21:21) [Материал]
Fr0sTКруто круто!!!Обожаю твои уроки)))Всё просто класс!!!!!

+1-
2 Nekit_Aut   (01 Июня 2012 21:49) [Материал]
Nekit_AutМмм? Спасибо огромное =) В ближайшее время постараюсь написать ещё один happy

Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]
Поиск по сайту
10 случ. движков
  • Core
  • PICO-8
  • Graphic Adventure Assembler for C64
  • Mosi
  • G3D Engine
  • Clickteam Fusion
  • EasyRPG
  • 8bitworkshop
  • Advanced RPG Maker
  • Doom 3
  • Друзья сайта
    Игровой форум GFAQ.ru Перевод консольных игр
    Все права сохранены. GcUp.ru © 2008-2024 Рейтинг