| У меня появилась проблема с моим скриптом | 
|  | 
| 
| KrokoEvil | Дата: Воскресенье, 08 Сентября 2013, 09:35 | Сообщение # 1 |  | был не раз Сейчас нет на сайте | я делал скрипт анимации чтобы при 1 нажатие была анимация прицеливание а при 2 нажатие типо он убирает пест ккбы от бедра но у меня там есть проблема в то что он прицеливается но не убирает обратно или при каждом нажатие происходит 1 анимация в общем вот код
 
 Код using UnityEngine; using System.Collections;
 
 public class Aim : MonoBehaviour {
 public Transform GunAim;
 public AnimationClip Aim1;
 public AnimationClip Aim2;
 private float Timeout;
 private int rndAnim;
 //как видите я делал это через Bool но не это не работает (кому не лень можете объяснить как пользоваться переменой Bool или кинте ссылку на описание желательно рус)
 public bool AimTest;
 void Update ()
 {
 if(Input.GetMouseButtonDown(1))
 {
 if(Timeout>0)
 {
 Timeout -= Time.deltaTime;
 }
 if(Input.GetMouseButtonDown(1)&Timeout<=0&AimTest==false)
 {
 Timeout = 0.035f;
 Vector3 DirectionRay = transform.TransformDirection(Vector3.forward);
 RaycastHit Hit;
 rndAnim = Random.Range(0,1);
 if(rndAnim==0)
 {
 GunAim.animation.Play(Aim1.name);
 AimTest = true;
 }
 if(Input.GetMouseButtonDown(1)&Timeout<=0&AimTest==true)
 {
 Timeout = 0.035f;
 //не знаю почему но нижние 2 строки  выводит как ошибку а хотя на самом пистолете также на Лкм стрельба и на R перезарядку также стоит и все пашет а тут выводит ошибку
 Vector3 DirectionRay = transform.TransformDirection(Vector3.forward);
 RaycastHit Hit;
 rndAnim = Random.Range(0,1);
 if(rndAnim==0)
 {
 GunAim.animation.Play(Aim2.name);
 AimTest = false;
 }
 }
 }
 }
 }
 }
 
Зарание спасибо
 
 http://afraidoflight.ucoz.ru/ Сайт моего проекта (Анонс :D)
 |  |  |  |  | 
| 
| NEBR | Дата: Воскресенье, 08 Сентября 2013, 10:15 | Сообщение # 2 |  |   почти ветеран Сейчас нет на сайте | KrokoEvil, Те две строчки выводят ошибку, потому что ты эти переменные уже объявил чуть выше и они у тебя в этом же блоке. Юнька об этом писала в консоли. Ты копируй что там написано, и через гугл переводчик переводи, будет понятно что это за ошибки. Если ты хочешь в том месте кода выпустить еще один луч, его нужно назвать по другому. И ячейку для хранения объекта с которым он столкнется - тоже по другому назвать. А вообще скрипт нелогичен. Не понимаю зачем нужен рандом анимаций, если их две и по логике первая проигрывается при прицеливании, вторая - после. Рандом тут не нужен... Взял бы какой нибудь тутор на эту тему, разобрал бы его, сделал что нибудь похожее ) 
 King Size #Gamiron12
 |  |  |  |  | 
| 
| KrokoEvil | Дата: Воскресенье, 08 Сентября 2013, 11:51 | Сообщение # 3 |  | был не раз Сейчас нет на сайте | эм а как мне хотяб реализовать действие при повторном нажатие ? 
 http://afraidoflight.ucoz.ru/ Сайт моего проекта (Анонс :D)
 |  |  |  |  | 
| 
| NEBR | Дата: Воскресенье, 08 Сентября 2013, 17:42 | Сообщение # 4 |  |   почти ветеран Сейчас нет на сайте | например через булевую переменную. Скрипт на C# 
 
 Код  private bool flag = false;
 void Update() {
 if (Input.GetMouseButtonDown(0)) {
 if (flag == false) {
 // логика при первом нажатии
 flag = true;
 }
 else if (flag == true) {
 // логика при втором нажатии
 flag = false;
 }
 }
 
 King Size #Gamiron12
 
 
 Сообщение отредактировал NEBR - Воскресенье, 08 Сентября 2013, 17:43 |  |  |  |  | 
| 
| Левша | Дата: Воскресенье, 08 Сентября 2013, 20:21 | Сообщение # 5 |  |   почти ветеран Сейчас нет на сайте | Код if (flag == false) { // логика при первом нажатии
 flag = true;
 }
 else if (flag == true) { // если до этого дойдет, то и так ясно что оно true - условие лишнее.
 // логика при втором нажатии
 flag = false;
 
   
 X.cor.R (Prologue)
 
 
 Сообщение отредактировал Левша - Воскресенье, 08 Сентября 2013, 20:22 |  |  |  |  | 
| 
| lentinant | Дата: Воскресенье, 08 Сентября 2013, 22:11 | Сообщение # 6 |  |   ленивый программист Сейчас нет на сайте | И вообще, були можно записывать как 
 Код if(!flag) {
 }
 else
 {
 }
 Когда-то тут будут ссылки на крутые проекты. Или нет.
 |  |  |  |  | 
| 
| KrokoEvil | Дата: Понедельник, 09 Сентября 2013, 10:21 | Сообщение # 7 |  | был не раз Сейчас нет на сайте | Спасибо вам большое   
 http://afraidoflight.ucoz.ru/ Сайт моего проекта (Анонс :D)
 |  |  |  |  |