Переключение и подбор оружия одинаковой логикой

Форум для самых маленьких, а так же тех, кому недосуг читать справку самостоятельно.

Переключение и подбор оружия одинаковой логикой

Сообщение NatanDreik 25 авг 2018, 19:55

Наверное глупый вопрос, но я не могу разобраться. Есть два скрипта - один для подбора пушек, второй для их переключения. Как сообщать скрипту переключения, что оружия у игрока ещё нет?
Скрипт подбора оружия:
Синтаксис:
Используется csharp
 void OnTriggerStay(Collider cl)
    {
        if (cl.tag == "Player" && Input.GetKeyUp(KeyCode.F))
        {
           Gun.SetActive(true);
            Destroy(gameObject);
        }
    }

Скрипт переключения оружия:
Синтаксис:
Используется csharp

public class Weapon_Character : MonoBehaviour
{
   
    public GameObject Weapon1;
    public GameObject Weapon2;
    public GameObject Weapon3;

  void Update()
    {
if (Input.GetKeyDown(KeyCode.Alpha1))
        {
            Gun1.SetActive(true);
            Gun2.SetActive(false);
            Gun3.SetActive(false);
        }
и т.д.
NatanDreik
UNец
 
Сообщения: 20
Зарегистрирован: 17 авг 2018, 17:53

Re: Переключение и подбор оружия одинаковой логикой

Сообщение Anonymyx 25 авг 2018, 20:08

У вас не совсем верный подход к реализации задачи.
Если по нормальному, то тут вам нужен класс оружия и инвентарь с массивом подобранных оружий, типа вашего оружия. При подборе добавлять оружие в массив, а выбирать пушку по индексу в массиве.
Аватара пользователя
Anonymyx
Адепт
 
Сообщения: 1973
Зарегистрирован: 05 апр 2015, 15:55

Re: Переключение и подбор оружия одинаковой логикой

Сообщение NatanDreik 26 авг 2018, 10:21

Anonymyx писал(а):Если по нормальному.

А если максимально просто? Примитивная возможность подбора оружия с дальнейшим переключением между собой. Я не очень понимаю, как реализовать это.
NatanDreik
UNец
 
Сообщения: 20
Зарегистрирован: 17 авг 2018, 17:53

Re: Переключение и подбор оружия одинаковой логикой

Сообщение NatanDreik 27 авг 2018, 04:17

Неужели сложно подсказать , как это реализовать. В интернете информации нет, везли либо про подбор, либо про переключение.
NatanDreik
UNец
 
Сообщения: 20
Зарегистрирован: 17 авг 2018, 17:53

Re: Переключение и подбор оружия одинаковой логикой

Сообщение Rando_OM 27 авг 2018, 07:25

В интернете все по отдельности, потому что все должно работать по отдельности. Вам написали выше,
Anonymyx писал(а):вам нужен класс оружия и инвентарь с массивом подобранных оружий, типа вашего оружия. При подборе добавлять оружие в массив, а выбирать пушку по индексу в массиве.
Мои игры доступны онлайн на Kongregate.com! ---->>
Rando_OM
UNIт
 
Сообщения: 94
Зарегистрирован: 22 дек 2015, 03:44
Откуда: Россия
Skype: gorodok402
  • Сайт

Re: Переключение и подбор оружия одинаковой логикой

Сообщение IDoNotExist 27 авг 2018, 08:47

NatanDreik писал(а):Как сообщать скрипту переключения, что оружия у игрока ещё нет?

Сделай скрипт оружия, повесь на префабы оружия, каждому префабу впиши в скрипте уникальный ID (int переменной, тэгом, слоем). Перед подбором проходись по списку оружия в скрипте переключения ищи совпадение по ID, если совпадение есть, значит в скрипте есть такое оружие.
Аватара пользователя
IDoNotExist
Адепт
 
Сообщения: 1432
Зарегистрирован: 23 мар 2011, 09:18
Skype: iamnoexist

Re: Переключение и подбор оружия одинаковой логикой

Сообщение Bill Gates 27 авг 2018, 08:55

Bill Gates
UNIт
 
Сообщения: 127
Зарегистрирован: 16 июл 2015, 11:27

Re: Переключение и подбор оружия одинаковой логикой

Сообщение NatanDreik 27 авг 2018, 12:05

Bill Gates писал(а):Unity 5.6.3 https://ru.files.fm/u/4emwn535

Нереальное спасибо. Теперь я ещё в большем недоумении о дальнейших действиях, буду разбираться.
NatanDreik
UNец
 
Сообщения: 20
Зарегистрирован: 17 авг 2018, 17:53

Re: Переключение и подбор оружия одинаковой логикой

Сообщение NeProUser 28 авг 2018, 21:25

попробуй в скрипте переключения создать 7 публичных GameObject .
и одну типа int;

private int WhatWeapon;
public GameObject weapo1;
public GameObject weapo2;
public GameObject weapo3;
public GameObject EmptyWeapon;
public GameObject Weapon1;
public GameObject Weapon2;
public GameObject Weapon3;

в EmptyWeapon из них через инспектор кладём пустой объект.
в void Start пишем что :

weapo1 = EmtpyWeapon;
weapo2 = EmptyWeapon;
weapo3 = EmptyWeapon;

в Weapon1 кидаем первое оружие (на сцене через инспектор !оружие должно быть на сцене! * желательно у камеры игрока).
соответственно в Weapon2 и Weapon3 кидаем второе и третье оружие.

в Update пишем

if(Input.GetKeyDown (KeyCode.Какой угодно)){
if(WhatWeapon < 3){
WhatWeapon = WhatWeapon + 1;
}else{
WhatWeapon = 0;
}
}

if(WhatWeapon == 0){
weapo1.SetActive (true);
weapo2.SetActive (false);
weapo3.SetActive (false);
}
if(WhatWeapon == 1){
weapo1.SetActive (false);
weapo2.SetActive (false);
weapo3.SetActive (true);
}
if(WhatWeapon == 2){
weapo1.SetActive (false);
weapo2.SetActive (false);
weapo3.SetActive (true);
}



создаём скрипт подбора
в нём объявляем три публичных bool.

public bool W1;
public bool W2;
public bool W3;

затем в OnTriggerStay пишем. (void OnTriggerStay (Collider col))

if(col.tag == "Player"){
if(Input.GetKeyDown(KeyCode.E)){
if(W1 == true){
col.gameObject.GetComponent <скрипт переключения> ().weapo1 = Weapon1;
}
if(W2 == true){
col.gameObject.GetComponent <скрипт переключения> ().weapo2 = Weapon2;
}
if(W3 == true){
col.gameObject.GetComponent <скрипт переключения> ().weapo3 = Weapon3;
}
Destroy (gameObject, 1);
}
}



PS. предложенный мной способ несовершенен и может быть криво написан.
Очередной новичок
Аватара пользователя
NeProUser
UNIт
 
Сообщения: 121
Зарегистрирован: 29 апр 2018, 20:22

Re: Переключение и подбор оружия одинаковой логикой

Сообщение NatanDreik 29 авг 2018, 09:31

NeProUser писал(а):PS. предложенный мной способ несовершенен и может быть криво написан.

Искреннее спасибо за попытку помочь. Не в обиду будет сказано, но этот скрипт похож на мертворожденного ребёнка.
NatanDreik
UNец
 
Сообщения: 20
Зарегистрирован: 17 авг 2018, 17:53

Re: Переключение и подбор оружия одинаковой логикой

Сообщение Anonymyx 29 авг 2018, 16:19

Так вы же хотели "максимально просто" :)
Аватара пользователя
Anonymyx
Адепт
 
Сообщения: 1973
Зарегистрирован: 05 апр 2015, 15:55

Re: Переключение и подбор оружия одинаковой логикой

Сообщение NatanDreik 10 сен 2018, 15:41

Добрый день. Как здесь https://ru.files.fm/u/4emwn535 привязать к айтему модель, чтобы делать Instantiate? Автор вырезал комментарии и эту функцию, просит 1.5к рублей за помощь. Помогите, если не сложно, могу заплатить, но в пределах разумного.
NatanDreik
UNец
 
Сообщения: 20
Зарегистрирован: 17 авг 2018, 17:53

Re: Переключение и подбор оружия одинаковой логикой

Сообщение IDoNotExist 10 сен 2018, 17:11

NatanDreik писал(а):Добрый день. Как здесь https://ru.files.fm/u/4emwn535 привязать к айтему модель, чтобы делать Instantiate?

Ну так пропиши public GameObject model; внутри айтема и инстацируй его сколько душе угодно.

NatanDreik писал(а):Автор вырезал комментарии и эту функцию, просит 1.5к рублей за помощь.

Вот же сволочь, код написал, да еще и деньги за него требует.
Аватара пользователя
IDoNotExist
Адепт
 
Сообщения: 1432
Зарегистрирован: 23 мар 2011, 09:18
Skype: iamnoexist

Re: Переключение и подбор оружия одинаковой логикой

Сообщение Bill Gates 11 сен 2018, 10:56

Ну охренеть, т.е. сначала эта сумма «Не вопрос», а теперь в «...в пределах разумного». И я не вырезал эту функцию. Я просто счел нужным ее туда не добавлять, потому что это лишь пример частичной реализации — база, а не готовый проект со всем функционалом.
Bill Gates
UNIт
 
Сообщения: 127
Зарегистрирован: 16 июл 2015, 11:27

Re: Переключение и подбор оружия одинаковой логикой

Сообщение NatanDreik 14 сен 2018, 04:41

IDoNotExist писал(а):Ну так пропиши public GameObject model; внутри айтема и инстацируй его сколько душе угодно.

Ну, нужно же ещё как-то передавать в айтем этот обжект из BaseWeapon, а в BaseWeapon из скрипта, который висит на оружие на сцене, и неизвестно как инстацировать при такой запутанности.

IDoNotExist писал(а):Вот же сволочь, код написал, да еще и деньги за него требует.

За 30$ можно купить ассет со всеми скриптами и моделями, буквально готовую игру и с полной поддержкой.
NatanDreik
UNец
 
Сообщения: 20
Зарегистрирован: 17 авг 2018, 17:53

След.

Вернуться в Почемучка

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 21