Суббота, 24 Июля 2021, 14:58

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

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 1 из 3
  • 1
  • 2
  • 3
  • »
Форум игроделов » Записи участника » labinzevv [57]
Результаты поиска
labinzevvДата: Четверг, 22 Июля 2021, 14:06 | Сообщение # 1 | Тема: Взять элементы из List
частый гость
Сейчас нет на сайте
Всем привет. Такой вопрос: есть List<int> intList. В нем содержатся элементы "1", "2", "3", "4", "5""1", "2", "3", "4","1", "2", "3""1", "2","1".
Каким образом можно взять из массива кол-во элементов "1" и записать это кол-во в переменную int number1? (Так-же и с остальными элементами массива)
Тот же вопрос по int[] intMassive;
Заранее благодарен за ответы:)


3d modeling, unfolding, and texturing. My works: https://vk.com/labinzevv

Сообщение отредактировал labinzevv - Четверг, 22 Июля 2021, 14:08
labinzevvДата: Четверг, 22 Июля 2021, 14:05 | Сообщение # 2 | Тема: Удаление содержимого массива из другого скрипта
частый гость
Сейчас нет на сайте
Цитата Spring ()
Можно приравнять объект из массиве к null, но таким способом остаётся пустота в массиве.

Тоже вариант, благодарю за подсказку:)


3d modeling, unfolding, and texturing. My works: https://vk.com/labinzevv
labinzevvДата: Пятница, 16 Июля 2021, 21:56 | Сообщение # 3 | Тема: Удаление содержимого массива из другого скрипта
частый гость
Сейчас нет на сайте
Цитата masb8ly-GC ()
labinzevv, дык ты и ссылайся на массив из первого скрипта)
Не objMassive, а calcul.objMassive

Так я ж так и делаю и нифига не работает...


3d modeling, unfolding, and texturing. My works: https://vk.com/labinzevv
labinzevvДата: Пятница, 16 Июля 2021, 14:55 | Сообщение # 4 | Тема: Удаление содержимого массива из другого скрипта
частый гость
Сейчас нет на сайте
Всем привет. Такой вопрос: Есть два скрипта, в одном есть массив public GameObject[] objMassive; во втором метод в котором нужно удалить элемент из массива GameObject[] objMassive; В нем создаю публичную переменную, которая ссылается на первый скрипт public calculate calcul; и в методе пишу calcul.Destroy(objMassive[1]); и нифига не работает... подчёркивает именно objMassive и пишет "не существует в данном контексте". Кто нибудь, объясните в чём дело или как надо правильно плиииз...

3d modeling, unfolding, and texturing. My works: https://vk.com/labinzevv
labinzevvДата: Среда, 16 Июня 2021, 15:57 | Сообщение # 5 | Тема: События при увеличении и уменьшении значения переменной
частый гость
Сейчас нет на сайте
Цитата TLT ()
Т.е. для воспроизведения анимации прыжка (вверх) и приземления (вниз)? Думаю, в этом случае нужно просто добавить переменную, которой будет присваиваться значение действия спрайта. Например, при нажатии на кнопку прыжка BodyAction=1 при включении падения присвоить 2. И уже анимацию разделить по этому значению. При контакте с землей = 0. Что-то типа.

Хорошая идея! Благодарю) Сейчас буду пробовать.


3d modeling, unfolding, and texturing. My works: https://vk.com/labinzevv
labinzevvДата: Вторник, 15 Июня 2021, 22:57 | Сообщение # 6 | Тема: События при увеличении и уменьшении значения переменной
частый гость
Сейчас нет на сайте
Всем привет!
Есть переменная yTransform
Нужно выполнить событие "А" при её увеличении (если yTransform увеличивается, то происходит событие "А")
и событие "В" при её уменьшении (если yTransform уменьшается, то происходит событие "В")
Для примера: есть две анимации прыжка, когда персонаж двигается вверх по оси Y (т.е. yTransform увеличивается) то работает одна анимация. Если же
персонаж двигается вниз по оси Y (т.е. yTransform уменьшается) то срабатывает вторая анимация.
Вопрос в следующем: Как всё это дело записать в if. Или-же каким-то другим способом?


3d modeling, unfolding, and texturing. My works: https://vk.com/labinzevv
labinzevvДата: Четверг, 27 Мая 2021, 14:12 | Сообщение # 7 | Тема: Сохранение в PlayerPrefs
частый гость
Сейчас нет на сайте
Цитата drcrack ()
Ни на что не влияет, забей

Благодарю:)


3d modeling, unfolding, and texturing. My works: https://vk.com/labinzevv
labinzevvДата: Четверг, 27 Мая 2021, 13:23 | Сообщение # 8 | Тема: Сохранение в PlayerPrefs
частый гость
Сейчас нет на сайте
Всем привет! такой вопрос: При сохранении переменной float в PlayerPrefs, в реестре, по пути Компьютер\HKEY_CURRENT_USER\SOFTWARE\Unity\UnityEditor\DefaultCompany\game появляется такой ключ: MaxTime_h1313681284. В его значении: (недопустимый параметр DWORD (32 бита)). При этом в самом приложении, при запуске сохранение в PlayerPrefs работает нормально. На сколько я понял, нужно сохранять переменную int в PlayerPrefs, тогда
ключ в реестре создаётся корректный. Но как быть, если нужно сохранить именно float?
Влияет значение (недопустимый параметр DWORD (32 бита)) на что-нибудь критично, или можно не заморачиваться и оставить как есть?


3d modeling, unfolding, and texturing. My works: https://vk.com/labinzevv
labinzevvДата: Понедельник, 24 Мая 2021, 23:09 | Сообщение # 9 | Тема: Вопрос по AudioMixerGroup
частый гость
Сейчас нет на сайте
Цитата drcrack ()
Цитата
Пример: Типа, чтобы получилось "если mixer.audioMixer "громкость" равна 0, то выполняется определённое действие".

Цитата
Как раз про volume = PlayerPrefs.GetFloat("musicVolume"); и был вопрос.

Чет по-моему вопрос был совсем не про это

Я просто не знал как вытащить эту самую "громкость"("musicVolume" которая сохраняется со значением 0) и вставить её в условие If. Теперь разобрался: приравниваем её к float volume, а уже float volume можно вставить в if:)


3d modeling, unfolding, and texturing. My works: https://vk.com/labinzevv

Сообщение отредактировал labinzevv - Понедельник, 24 Мая 2021, 23:10
labinzevvДата: Понедельник, 24 Мая 2021, 20:49 | Сообщение # 10 | Тема: Вопрос по AudioMixerGroup
частый гость
Сейчас нет на сайте
Цитата djwirtuoz ()
попробуйте так
Код

public AudioMixer masterMixer;
private float _volume;

public float Volume
    {
        get
        {
            masterMixer.GetFloat("musicVal", out _volume);

            return _volume;
        }
    }

код взял из интернета, нет сейчас возможности проверить.
но по логике при вызове Volume, будет возвращаться флоатовое значение громкости

Спасибо, Вы задали направление!

Покурил эту тему и разобрался.
Значение volume нужно сохранить: PlayerPrefs.SetFloat("musicVolume", volume); PlayerPrefs.Save();
После подгружать: if (PlayerPrefs.HasKey("musicVolume")) {volume = PlayerPrefs.GetFloat("musicVolume");}
Как раз про volume = PlayerPrefs.GetFloat("musicVolume"); и был вопрос.


3d modeling, unfolding, and texturing. My works: https://vk.com/labinzevv
labinzevvДата: Понедельник, 24 Мая 2021, 08:57 | Сообщение # 11 | Тема: Вопрос по AudioMixerGroup
частый гость
Сейчас нет на сайте
Всем привет! Такой вопрос: Как получить значение уровня громкости для переменной AudioMixerGroup, чтобы использовать его для условия if().?
Как изменять уровень громкости, известно: mixer.audioMixer.SetFloat("musicVolume", -80); //громкость 0%,
mixer.audioMixer.SetFloat("effectVolume", 0); //громкость 100%. А вот как эту громкость вставить в условие if(), не могу найти.
Пример: Типа, чтобы получилось "если mixer.audioMixer "громкость" равна 0, то выполняется определённое действие".
Может кто-нибудь сталкивался? Заранее благодарен:)


3d modeling, unfolding, and texturing. My works: https://vk.com/labinzevv
labinzevvДата: Суббота, 22 Мая 2021, 23:48 | Сообщение # 12 | Тема: Random для AudioClip[]
частый гость
Сейчас нет на сайте
Цитата drcrack ()
Это не нужно, как и вообще сам List
Код

int lastIndex;
AudioClip GetRandomClip() {
  lastIndex = (lastIndex + Random.Range(1, musicMassive.Length - 1)) % musicMassive.Length;
  return musicMassive[lastIndex];
}

Во! Спасибо, то что нужно! А то уже голову себе сломал об этот рандом...


3d modeling, unfolding, and texturing. My works: https://vk.com/labinzevv
labinzevvДата: Суббота, 22 Мая 2021, 23:20 | Сообщение # 13 | Тема: Random для AudioClip[]
частый гость
Сейчас нет на сайте
Цитата drcrack ()
Что ты вообще пытаешься сделать? Рандом без повторов?

Да. Не догоню как AudioClip[] приравнять к public List<int>


3d modeling, unfolding, and texturing. My works: https://vk.com/labinzevv
labinzevvДата: Суббота, 22 Мая 2021, 22:03 | Сообщение # 14 | Тема: Random для AudioClip[]
частый гость
Сейчас нет на сайте
Привет народ! Нужна Ваша помощь.
Есть скрипт:
Код

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class soundsMusic : MonoBehaviour
{
    public AudioSource myMusic;
    public AudioClip[] musicMassive;
    public List<int> intList = new List<int>();
    int randomNumber;

    private AudioClip GetRandomClip()
    {
        intList = new List<int>(new int[musicMassive.Length]);

        for (int i = 0; i < musicMassive.Length; i++)
        {
            randomNumber = Random.Range(0, (musicMassive.Length) + 1);
            while (intList.Contains(randomNumber))
            {
                randomNumber = Random.Range(0, (musicMassive.Length) + 1);
            }
            intList[i] = randomNumber;
            musicMassive[i] = musicMassive[(intList[i]) - 1];
        }

        return musicMassive[Random.Range(0, (intList.Count))];
    }

    void Update()
    {
        if (!myMusic.isPlaying)
        {
            myMusic.clip = GetRandomClip();
            myMusic.Play();
        }
    }
}

в public List<int> intList = new List<int>(); генерируются рандомные числа (здесь всё работает). Вопрос в следующем: Как приравнять public AudioClip[] musicMassive к public List<int> intList = new List<int>();? Чтобы public AudioClip[] musicMassive приравнивал аудиотреки к рандомным числам и воспроизводил в том же порядке? Уже все варианты перепробовал. Не работает вот эта строка: musicMassive[i] = musicMassive[(intList[i]) - 1];
Все поля musicMassive[i] заполняются одним и тем же треком, хотя в public List<int> intList числа продолжают рандомно меняться.
Заранее благодарю за помощь:)


3d modeling, unfolding, and texturing. My works: https://vk.com/labinzevv
labinzevvДата: Суббота, 15 Мая 2021, 14:46 | Сообщение # 15 | Тема: Смена цвета Image
частый гость
Сейчас нет на сайте
Всем привет.
Есть код, для плавной смены цвета Image
Код

using UnityEngine;
using UnityEngine.UI;

public class changeColorGeometryMainMenu : MonoBehaviour
{
    Image deadLineRenderer;
    [SerializeField] [Range(0f, 1f)] float lerpTime;
    [SerializeField] Color[] newDeadLineColor;
    int colorIndex = 0;
    float t = 0f;
    int len;

    private void Start()
    {
        deadLineRenderer = GetComponent<Image>();
        len = newDeadLineColor.Length;
    }

    private void Update()
    {
        deadLineRenderer.color = Color.Lerp(deadLineRenderer.color, newDeadLineColor[colorIndex], lerpTime * 2 * Time.deltaTime);

        t = Mathf.Lerp(t, 1f, lerpTime * 2 * Time.deltaTime);
        if (t > 0.9f)
        {
            t = 0f;
            colorIndex++;
            colorIndex = (colorIndex >= len) ? 0 : colorIndex;
        }
    }
}

Всё вроде бы работает, цвета меняются, но почему-то с течением времени, уменьшается альфаканал и Image становится прозрачным. Подскажите, как зафиксировать альфаканал, чтобы он всегда оставался 255. Заранее спасибо)


3d modeling, unfolding, and texturing. My works: https://vk.com/labinzevv

Сообщение отредактировал labinzevv - Суббота, 15 Мая 2021, 14:50
labinzevvДата: Воскресенье, 25 Апреля 2021, 10:39 | Сообщение # 16 | Тема: условие клика по public Button
частый гость
Сейчас нет на сайте
Всем привет! Такой вопрос:
есть public Button A. Как осуществить условие клика по public Button A?
Пример:
Код

public Button A
public Text B;

void Update()
{
if("Button A нажата")
{
B.enabled = true;
}
}


Как это написать, вместо "Button A нажата"?


3d modeling, unfolding, and texturing. My works: https://vk.com/labinzevv
labinzevvДата: Воскресенье, 25 Апреля 2021, 10:29 | Сообщение # 17 | Тема: Размер массива и добавление в него элементов
частый гость
Сейчас нет на сайте
Цитата drcrack ()
list.Add(s)

Спасибо! то что нужно!


3d modeling, unfolding, and texturing. My works: https://vk.com/labinzevv
labinzevvДата: Суббота, 24 Апреля 2021, 19:56 | Сообщение # 18 | Тема: Размер массива и добавление в него элементов
частый гость
Сейчас нет на сайте
Цитата drcrack ()
Используй List<string> вместо массива

Подскажи плиз как в List<string> добавлять строки? не могу разобраться..


3d modeling, unfolding, and texturing. My works: https://vk.com/labinzevv
labinzevvДата: Суббота, 24 Апреля 2021, 19:18 | Сообщение # 19 | Тема: Размер массива и добавление в него элементов
частый гость
Сейчас нет на сайте
Привет! Такой вопрос: есть скрипт
Код

public string wordDownStr //сюда вводится текст и подтверждается UI Button
public string[] arrayInputWords;

void Update()
    {
         arrayInputWords = new string[1];
        for (int i = 0; i < arrayInputWords.Length; i++)
        {
            arrayInputWords[i] = wordDownStr;
        }
    }
}

в public string вводится текст и подтверждается UI Button и так n- кол-во раз
нужно введённый в public string текст, каждый раз после подтверждения UI Button добавлять в массив public string[] arrayInputWords.
Смог добиться только чтобы в массив заносился первый подтверждённый текст, после второго подтверждения текст заменяется.
Подскажите как сделать чтобы размер массива увеличивался автоматически после подтверждения ввода текста и каждый новый ввод текста вносился в новую ячейку массива?


3d modeling, unfolding, and texturing. My works: https://vk.com/labinzevv
labinzevvДата: Пятница, 23 Апреля 2021, 03:33 | Сообщение # 20 | Тема: Внесение изменений в скрипт
частый гость
Сейчас нет на сайте
Всем привет. Такой вопрос: Возможно ли из игрового процесса вносить изменения в скрипт или в файл? Допустим вводишь слово, а в файле словаря такого слова нет, и типа жмёшь на UI кнопку "добавить новое слово" и введённое слово добавляется в файл словаря. Или только в редакторе открывать файл и добавлять в ручную? Если такая возможность всё-таки есть, подскажите плиз)

В этой теме разобрался:
есть скрипт:
Код


using UnityEngine;
using UnityEngine.UI;
using System.IO;
using UnityEngine.EventSystems;

public class addWord : MonoBehaviour, IPointerDownHandler, IPointerUpHandler
{
    string pathToFile = "C:/rus.txt";
    string[] slovar = File.ReadAllLines("C:/rus.txt");
    public Text wordDown;
    public string wordDownStr;
    bool pressed = false;

    public void OnPointerDown(PointerEventData eventData)
    {
        pressed = true;
    }

    public void OnPointerUp(PointerEventData eventData)
    {
        pressed = false;
    }

    void Update()
    {
        wordDownStr = wordDown.text;
        if (pressed)
        {
            File.AppendAllText(pathToFile, Environment.NewLine);
            File.AppendAllText(pathToFile, wordDownStr);
        }
    }
}


но работает не корректно

строка File.AppendAllText(pathToFile, Environment.NewLine); - в ней "имя Environment не существует в данном контексте" (не могу добавить новую строку в файл)

строка File.AppendAllText(pathToFile, wordDownStr); - работает но записывает в файл одно и то же слово несколько раз подряд при одном нажатии ui кнопки (хотя должно записать однократно)

Народ, помогите разобраться в чём дело...

Добавлено (23 Апреля 2021, 09:49)
---------------------------------------------
переделал скрипт, теперь с записью нового слова всё ОК (записывает новое слово единожды, как нужно)
Код

using UnityEngine;
using UnityEngine.UI;
using System.IO;

public class addWord : MonoBehaviour
{
    string pathToFile = "C:/rus.txt";
    public Text wordDown;
    public string wordDownStr;

    public void rec()
    {
        wordDownStr = wordDown.text;
        File.AppendAllText(pathToFile, wordDownStr);
        File.AppendAllText(pathToFile, Environment.NewLine);
    }
}

Но со строкой File.AppendAllText(pathToFile, Environment.NewLine); так и осталась проблема: не работает Environment (не могу создать в файле новую строку) Может быть есть какой то другой способ?

Можно закрывать тему.
нашёл добавление новой строки в файл:
File.AppendAllText(pathToFile, "\r\n");


3d modeling, unfolding, and texturing. My works: https://vk.com/labinzevv

Сообщение отредактировал labinzevv - Пятница, 23 Апреля 2021, 11:20
Форум игроделов » Записи участника » labinzevv [57]
  • Страница 1 из 3
  • 1
  • 2
  • 3
  • »
Поиск:

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