Понедельник, 11 Ноября 2024, 03:40

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

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 1 из 1
  • 1
cant add script
dreenlineДата: Суббота, 20 Сентября 2014, 09:48 | Сообщение # 1
постоянный участник
Сейчас нет на сайте
Привет, ребята! Нужна ваша помощь! Проходил урок . В общем, юнити никак не хочет съедать скрипт, который представлен в этом уроке(или ниже). В чем может быть проблема? Ошибка: cant add component because it doesnt exist.
А вот сам скрипт:

using UnityEngine;
using System.Collections;

public class characterController : MonoBehaviour {
public float maxSpeed = 10f;
public float jumpForce = 700f;
bool facingRight = true;
bool grounded = false;
public Transform groundCheck;
public float groundRadius = 0.2f;
public LayerMask whatIsGround;

public float move;

// Use this for initialization
void Start () {

}

// Update is called once per frame
void FixedUpdate () {

grounded = Physics2D.OverlapCircle (groundCheck.position, groundRadius, whatIsGround);

move = Input.GetAxis ("Horizontal");

}

void Update(){
if (grounded && (Input.GetKeyDown (KeyCode.W)||Input.GetKeyDown (KeyCode.UpArrow))) {

rigidbody2D.AddForce (new Vector2(0f,jumpForce));
}
rigidbody2D.velocity = new Vector2 (move * maxSpeed, rigidbody2D.velocity.y);

if (move > 0 && !facingRight)
Flip ();
else if (move < 0 && facingRight)
Flip ();

if (Input.GetKey(KeyCode.Escape))
{
Application.Quit();
}

if (Input.GetKey(KeyCode.R))
{
Application.LoadLevel(Application.loadedLevel);
}

}

void Flip(){
facingRight = !facingRight;
Vector3 theScale = transform.localScale;
theScale.x *= -1;
transform.localScale = theScale;
}
}


Сообщение отредактировал dreenline - Суббота, 20 Сентября 2014, 10:00
Jlovenpk1Дата: Суббота, 20 Сентября 2014, 10:51 | Сообщение # 2
участник
Сейчас нет на сайте
Group Chek - Добавил?

DjanStudio
dreenlineДата: Суббота, 20 Сентября 2014, 17:37 | Сообщение # 3
постоянный участник
Сейчас нет на сайте
Нет по моему, все делал по уроку. А как его поставить?
JHawkДата: Суббота, 20 Сентября 2014, 18:05 | Сообщение # 4
めゃくちゃちゃ
Сейчас нет на сайте
dreenline, удалить юнити и идти делать уроки.
LertmindДата: Суббота, 20 Сентября 2014, 19:25 | Сообщение # 5
заслуженный участник
Сейчас нет на сайте
Ты должен файл назвать так: имя.cs, где имя это название класса (public class characterController : MonoBehaviour {).
В данном случае ты скачал с именем "charactercontroller.cs.cs", переименуй в "characterController.cs".

Добавлено (20.09.2014, 19:25)
---------------------------------------------
Я этот урок тоже читал, автор не предполагал, что человек может не знать, как нужно называть скрипты.

dreenlineДата: Воскресенье, 21 Сентября 2014, 14:52 | Сообщение # 6
постоянный участник
Сейчас нет на сайте
Цитата Lertmind ()
Ты должен файл назвать так: имя.cs, где имя это название класса (public class characterController : MonoBehaviour {).
В данном случае ты скачал с именем "charactercontroller.cs.cs", переименуй в "characterController.cs".
Добавлено (20.09.2014, 19:25)
---------------------------------------------
Я этот урок тоже читал, автор не предполагал, что человек может не знать, как нужно называть скрипты.

Я переименовывал и называл по другому,все равно та же ошибка.

Добавлено (21.09.2014, 14:52)
---------------------------------------------
Переименовал, пишет то же самое

romeo98Дата: Воскресенье, 21 Сентября 2014, 18:01 | Сообщение # 7
участник
Сейчас нет на сайте
название скрипта должно ПОЛНОСТЬЮ соответствовать названию класса (только без .cs). Регистр в том числе! У тебя название скрипта "charactercontroller.cs", а название класса "characterСontroller". Вот и конфликт. Переименуй еще раз, только в "characterController.cs". Вообще, по "моральным правилам программистов", классы и скрипты называют с большой буквы. Это не обязательно, но так в основном делают. Тоесть, "CharacterController.cs", но если так переименуешь, то не забудь и класс переименовать в "CharacterController".

Flist - social platform
PuzzleSystem - Open-source Unity Asset
[2D] Mission: Defender


Сообщение отредактировал romeo98 - Воскресенье, 21 Сентября 2014, 18:03
MANMANAДата: Воскресенье, 21 Сентября 2014, 19:55 | Сообщение # 8
почти ветеран
Сейчас нет на сайте
если не помогли здравые подсказки выше, то удали скрипт, пересоздай его заново в соответствии с советами выше.
Второй вариант - если есть ошибки в этом или ЛЮБОМ другом скрипте, то вылезет такая же ошибка. Исправь ВСЕ ошибки (предупреждения не в счет) и все получится.


http://www.3dbuffer.com/ Текстуры, Unity3D, Blender: Эффекты, скрипты, моделирование, текстурирование, скульптинг
VKонтакте 3Dbuffer

Последнее:

Новый раздел "Текстуры"

Как запатентовать, защитить техническое решение, игру, идею
LertmindДата: Воскресенье, 21 Сентября 2014, 21:09 | Сообщение # 9
заслуженный участник
Сейчас нет на сайте
romeo98, там специально не названо "CharacterController", чтобы не было конфликта со стандартным классом в Unity. Автор статьи не придумал ничего лучше, мда.

Сообщение отредактировал Lertmind - Воскресенье, 21 Сентября 2014, 21:11
dreenlineДата: Воскресенье, 21 Сентября 2014, 22:36 | Сообщение # 10
постоянный участник
Сейчас нет на сайте
Цитата romeo98 ()
название скрипта должно ПОЛНОСТЬЮ соответствовать названию класса (только без .cs). Регистр в том числе! У тебя название скрипта "charactercontroller.cs", а название класса "characterСontroller". Вот и конфликт. Переименуй еще раз, только в "characterController.cs". Вообще, по "моральным правилам программистов", классы и скрипты называют с большой буквы. Это не обязательно, но так в основном делают. Тоесть, "CharacterController.cs", но если так переименуешь, то не забудь и класс переименовать в "CharacterController".

Спасибо большое, все получилось!

Добавлено (21.09.2014, 22:36)
---------------------------------------------
Только почему то он не работает, ну да ладно, буду потом разбираться

  • Страница 1 из 1
  • 1
Поиск:

Все права сохранены. GcUp.ru © 2008-2024 Рейтинг