• Как переформулировать код?

    @rPman
    если идти строго по поставленной в вопросе задачи, то можно взять список ключей объекта, взять нужный по номеру и использовать
    $items[$key][array_keys($items[$key])[1]]
    но так делать однозначно не нужно, никто не гарантирует что порядок элементов в массиве ключей останется прежним, придется все перепроверять.
    Ответ написан
    Комментировать
  • Как переформулировать код?

    v3shin
    @v3shin
    Веб-шаман
    Class Item {
        public string $name = '';
        public float $qual = 0;
        public function __construct(array $attributes = [])
        {
            foreach ($attributes as $key => $value) {
                $this->$key = $value;
            }
        }
    
        public function __toString()
        {
            return "$this->qual"; // семантическая х-ня
        }
    }
    
    // ...
    
    $items = array_map(function (array $item) {
        return new Item($item);
    }, $items);
    var_dump("$items[0]" + 100);

    Но так лучше не делать.

    class Items {
        public array $items = [];
        public function __construct(array $items = [])
        {
            $this->items = $items;
        }
        public function __invoke(int $key)
        {
            return $this->items[$key]['qual'] ?? null;
        }
    }
    
    // ...
    
    $items = new Items($items);
    var_dump($items(0));

    Но так тоже лучше не делать.

    Лучше не выпендриваться и использовать встроенные средства php для доступа к переменным.
    Ответ написан
    Комментировать
  • Как обратиться к классу из другого скрипта?

    freeExec
    @freeExec
    Участник OpenStreetMap
    Не верно
    fightCharacter char11 = new fightCharacter();
    Верно
    fightCharacter char11 = GetComponent<fightCharacter>();
    Ответ написан
    2 комментария
  • Как можно наиболее лучше реализовать передвижение персонажа в Unity?

    @Lesh48
    Если в move используется физика - то FixedUpdate, если нет - то просто Update.
    Ответ написан
    Комментировать
  • Индивидуальное значение для каждого объекта при наследовании?

    Как-то так
    class A
    {
      public virtual int C
      {
        get => 12;    
      }
    }
    
    class B :  A
    {
      public override int C 
      {
         get => 11;    
      }
    }
    Ответ написан
    Комментировать
  • Проблемы с отображением на разных экранах?

    MrMureno
    @MrMureno Куратор тега Unity
    VR for all
    давайте так - как совет - было бы не плохо показать скрины инспектора и иерархии, чтобы понимать как у вас там канвас /UI организован.

    а по поводу проблемы - не очень понятно, вам нужно на всю высоту чтоб всегда было??

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

    ну и всегда можно в LayoutGroup пихнуть, чтоб за вас считало. какая-то вертикальная группа, в ней сколл и кнопка.
    кнопка - фиксированного размера.
    Скролл - его размер меняется в зависимости от размера контента/текста внутри, через Content Size Filter.

    Варианты в общем есть - но они врядли будут прозрачными и так с ходу понятными))
    но вдруг поковыряете описанное мной - и придет просветление))
    Ответ написан
    3 комментария
  • Как скомпилировать проект unity?

    Algoritm18
    @Algoritm18
    Программист - самоучка
    Это случилось со мной, когда я установил флажок «Пользовательский шаблон Gradle» в настройках публикации, когда Ui собирает пакет приложений - это я про первую Ошибку.

    Ещё как говорят на иностранных форумах - "это возникает из-за устаревшей анимации", правда смысла их слов я увы не понял.

    Вообще было бы не плохо перенести проект на более новую версию, хотя бы на 5.6f, я конечно не знаю (ты не уточнил но там вроде как более старая у тебя)

    Бывает и такое я строил на местности 4096x4096px и получил ту же ошибку. Я даже не мог открыть свой проект. Оказалось, что освещение и тень требуют слишком много памяти. Решение: Изменить (слева вверх) -> Настройки -> Кэш GI -> Очистить кэш.
    Но потом мне пришлось продолжать работать на меньшей местности.
    Ответ написан
    Комментировать