Форум программистов
 
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.
Внимание! Некоторое время письма не доходят до аккаунтов MAIL RU GROUP, не доходят на все почтовые ящики mail.ru, inbox.ru, bk.ru. Пишите им жалобы, чтобы быстрее восстановили получение писем, регистрируйтесь через яндекс почту и gmail, туда письма с активизацией доходят.

Вернуться   Форум программистов > разработка игр, графический дизайн и моделирование > Gamedev - cоздание игр: Unity, OpenGL, DirectX
Регистрация

Восстановить пароль
Повторная активизация e-mail

Ответ
 
Опции темы
Старый 13.06.2018, 12:17   #1
tetta
Пользователь
 
Регистрация: 09.05.2017
Сообщений: 13
Репутация: 10
По умолчанию Змейка [Хвост]

Код:

public Text coin;
	public Text score;
	public GameObject SnakeBody;
	private int c = 0;
	private int s = 0;
	private int i = 0;
	private List<GameObject> Tail = new List<GameObject>();


	void Start () {
		//transform.localScale = new Vector3 (PlayerPrefs.GetFloat ("ScaleX"),PlayerPrefs.GetFloat ("ScaleY"), 1f);
		//GetComponent<SpriteRenderer> ().sprite = Resources.Load<Sprite>("Image/" + PlayerPrefs.GetString ("Name"));

		PlayerPrefs.SetInt ("Click", 0);

		Tail.Clear ();
		for(int i = 0; i < 3; i++)
			AddTail();
	}
//движение головы
	void Update () {
		TailMove ();
		i = PlayerPrefs.GetInt ("Click");
		if (i == 0) {
			transform.Translate (Time.deltaTime * PlayerPrefs.GetFloat ("Power"), 0f, 0f);
		} else if (i == 1) {
			transform.Translate (0f, Time.deltaTime * PlayerPrefs.GetFloat ("Power"), 0f);
		} else if (i == 2) {
			transform.Translate (-Time.deltaTime * PlayerPrefs.GetFloat ("Power"), 0f, 0f);
		} else if (i == 3) {
			transform.Translate (0f, -Time.deltaTime * PlayerPrefs.GetFloat ("Power"), 0f);
		} else if (i == -1) {
			transform.Translate (0f, 0f, 0f);
		}
	}
//столкновение объектов
	void OnCollisionEnter2D(Collision2D col){
		if (col.gameObject.tag == "coin") {
			c = c + 1;
			coin.text = c.ToString ();
			Destroy (col.gameObject);
		}

		if (col.gameObject.tag == "score") {
			s = s + 1;
			score.text = s.ToString ();
			Destroy (col.gameObject);
			AddTail ();
		}
	}
//движение хвоста
	public void TailMove(){
		Tail [0].transform.position = this.transform.position;
		for (int j = Tail.Count-1; j > 0; j--) {
			Tail [j].transform.position = Tail [j - 1].transform.position;
		}
	}
//доб. хвоста
	public void AddTail(){
		Vector3 Position = transform.position;

		if (Tail.Count > 0) {
			Position = Tail [Tail.Count - 1].transform.position;
		}
		Position.x--;
		GameObject Body = Instantiate (SnakeBody, Position, Quaternion.identity) as GameObject;

		Tail.Add (Body);
	}

Снимок экрана (107).jpg
Вот у меня создается хвост, но он весь на персонаже, как сделать так, что бы это было похоже на хвост? Я знаю, что передаю координаты головы. (Белое - голова. Черный - хвосты)(На Unity)

Последний раз редактировалось tetta; 13.06.2018 в 12:18. Причина: Забыл упомянуть движок
tetta вне форума   Ответить с цитированием
Старый 22.06.2018, 16:37   #2
Мaкс
Форумчанин
 
Регистрация: 12.06.2018
Адрес: Научная столица России.
Сообщений: 422
Репутация: -5
По умолчанию

На каком языке программирования ты это написал?
Мaкс вне форума   Ответить с цитированием
Старый 22.06.2018, 16:40   #3
p51x
Профессионал
 
Регистрация: 15.02.2010
Сообщений: 12,822
Репутация: 2143
По умолчанию

С# в Unity...
__________________
Запомните раз и навсегда: помочь != "решите за меня"!
p51x вне форума   Ответить с цитированием
Старый 22.06.2018, 16:40   #4
Мaкс
Форумчанин
 
Регистрация: 12.06.2018
Адрес: Научная столица России.
Сообщений: 422
Репутация: -5
По умолчанию

Понятно...
Мaкс вне форума   Ответить с цитированием
Ответ

Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Хвост змейки monchess Общие вопросы C/C++ 0 23.12.2013 01:32
исправить хвост acheron1757 Общие вопросы Delphi 1 24.06.2013 11:07
Рисуется хвост за текстом (TextOut) artemavd Общие вопросы Delphi 19 17.05.2012 10:29
Pascal хвост змейки zhenka619 Помощь студентам 1 30.12.2011 14:01
Хвост для кометы X@OC JavaScript, Ajax 0 29.07.2011 10:34


20:34.


Powered by vBulletin® Version 3.8.8 Beta 2
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.

RusProfile.ru


Справочник российских юридических лиц и организаций.
Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru