Ikeky | Дата: Суббота, 07 Апреля 2018, 06:04 | Сообщение # 1 | Тема: Проблемы с классами UNITY C# |
был не раз
Сейчас нет на сайте
| скинул код говорит ошибка в 76 строчке , 10 букве : "Class, struct, or interface method must have a return type".
------------------
Код using System.Collections; using System.Collections.Generic; using UnityEngine;
public class PlayerShoot : MonoBehaviour { [Header("Rifle")] public Rigidbody bullet; public AudioClip[] RifleAudios; public Gun[] guns = new Gun[2]; public class Gun{ public string name; public bool enabled = false; public GameObject obj; public GameObject dulo; public Animator anime; public int ammo; public int magazin; public float Mouse_Sens = 5; public int ammoempty; public int minrange; public int maxrange; public int Damage; public float firerate; public float timefire; public float dist; public AudioClip[] audio; public float timer; public void Fire(int Irecoilright, int Irecoildown, Transform ICamera, Rigidbody Iobjbul, int _damage, Vector3 p_tr) { timer = 0f; Quaternion bulrotX = Quaternion.AngleAxis(1, Vector3.up + new Vector3(0, Irecoilright, 0)); Quaternion bulrotY = Quaternion.AngleAxis(1, Vector3.right + new Vector3(0, Irecoildown, 0)); Rigidbody bullet = Instantiate(Iobjbul, dulo.GetComponent<Transform>().position, ICamera.rotation * bulrotY * bulrotX); bullet.AddForce(bullet.GetComponent<Transform>().forward * 7000f); bullet.GetComponent<BulletChecker>().Damage = _damage; bullet.GetComponent<BulletChecker>().p_tr = p_tr; ammo--; } public void SoundReload() { if (enabled) { obj.GetComponent<AudioSource>().clip = audio[0]; obj.GetComponent<AudioSource>().Play(); } } public void Reload(){ if (enabled) { if (ammo != ammoempty && magazin != 0) { if ((magazin / ammoempty).ToString("0") != "0") { magazin -= ammoempty - ammo; ammo += ammoempty - ammo; SoundReload(); } else if ((magazin / ammoempty).ToString("0") == "0" && ammo + magazin <= ammoempty) { ammo += magazin; magazin = 0; SoundReload();
} else { ammo += magazin; magazin -= magazin; SoundReload(); } } } } } public Gun(string aname, bool _enabled, int aammo, int amagazin, float asense, Animator aanime, GameObject aobj, GameObject adulo, int aammoempty, float afirerate, int adamage, float adist,AudioClip[] _audio) { audio = _audio; name = aname; aammo = aammo; enabled = _enabled; magazin = amagazin; Mouse_Sens = asense; anime = aanime; dulo = adulo; obj = aobj; ammoempty = aammoempty; firerate = afirerate; Damage = adamage; dist = adist; } public Gun() {
} }; Transform Camera; void Awake () { Camera = gameObject.transform.GetChild(0).GetComponent<Transform>(); guns[0] = new Gun(RifleAudios,"Rifle", true, 8, 30, 5f, s_anime, s_obj, s_dulo, 8, 0.8f, 70, 5f); }
void Update (){ foreach(Gun gun in guns) { if (gun.enabled) { gun.timer += Time.deltaTime; if (Input.GetButton("Fire1") && gun.timer >= gun.firerate && Time.timeScale != 0) { Shoot(); } } } } }
Сообщение отредактировал Ikeky - Суббота, 07 Апреля 2018, 08:14 |
|
| |
Ikeky | Дата: Среда, 07 Февраля 2018, 06:41 | Сообщение # 2 | Тема: Глупость метода rotation |
был не раз
Сейчас нет на сайте
| Благодарю всех за инфу про rotation! тему можно закрывать
|
|
| |
Ikeky | Дата: Вторник, 06 Февраля 2018, 15:41 | Сообщение # 3 | Тема: Глупость метода rotation |
был не раз
Сейчас нет на сайте
| Я довольно плохо знаю c#, но часть понимаю т.к. есть опыт с js. Так вот у меня произошла проблема с rotation, я не понимаю его смысл и значение которое выдаёт. Хотел значит сделать дырки от пуль понадобился " поворот оси Y" у камеры , чтобы он корректно отображался. Написал команду instantiate, наткнулся на поворот обьекта при создании. Написал [new Vector3(0,camera_transform.rotation.y, 90);] выдало ошибку кватариона. У меня зародилось мнение что rotation бессмысленный метод который можно было бы убрать из unity. прямо хандра иззза этого.
Помогите разобраться с rotation
http://s1.uploadpics.ru/images/-JMpMCrVm7.png
http://s1.uploadpics.ru/images/-13afArEm7.png
http://s1.uploadpics.ru/images/by3CMRrEQ7.png
http://s1.uploadpics.ru/images/-yueXCHVXm.png
Сообщение отредактировал Ikeky - Вторник, 06 Февраля 2018, 15:42 |
|
| |