• Как сделать, чтобы код работал после условия if?

    mamadaliev
    @mamadaliev
    Intern Java Developer
    Используйте функцию isset() для проверки.

    session_start(); // начать новое или возобновить существующий сеанс
    $_SESSION['abc'] = null; // допустим, сессия изначально пуста
    
    echo "Before: " . $_SESSION['abc'] . "<br>";  // до
    
    if (!isset($_SESSION['abc'])) {
      $_SESSION['abc'] = 'abc';
    }
    
    echo "After: " . $_SESSION['abc'] . "<br>";  // после


    Результат:
    Before:
    After: abc
    Ответ написан
    Комментировать
  • Когда начать работу над сохранением прогресса в игре?

    GavriKos
    @GavriKos Куратор тега Разработка игр
    Пилю свой холодильник, когда лучше начать заботится о дверной ручке? После того как доделаю внутреннее освещение, но его же тогда с ручкой придется синхронизировать? Хотя как делать освещение, не открывая холодильник за ручку...
    Ответ написан
    Комментировать
  • Unity rpg инвентарь, реализация?

    GavriKos
    @GavriKos Куратор тега Разработка игр
    Приветствую! Нужно съесть манную кашу. Пробовал сначала сам есть - вышла какая то дичь - хотя формально я ее съел, но измазался в ней весь.
    Пересмотрел кучу туториалов как есть манную кашу - у всех принцип одинаков, но каждый есть по разному - кто то ложку боком заносит, кто то вообще левой рукой ест. А мне нужно есть через трубочку - я не нашел такого функционала.
    Надеюсь у кого то есть годные статьи\видео\примеры, либо кто то может объяснить как есть кашу через трубочку, в идеале на польском.

    Нормальный вариант ответа: никто вам не напишет ничего, потому что у вас своя архитектура, свои допустимые либы и все свое, и лезть в чужую архитектуру - это дорого.
    Ответ написан
    1 комментарий
  • Как создать игровой мир?

    GavriKos
    @GavriKos Куратор тега Разработка игр
    Если у вас вопросы на таком уровне (что делать если в массиве нельзя удалять и как это оптимизировать) - то делать свой мир и свою игру еще ОЧЕНЬ рано.
    Ответ написан
    Комментировать
  • Как создать игровой мир?

    saboteur_kiev
    @saboteur_kiev Куратор тега C++
    software engineer
    Чтобы создать игровой мир, следует освоить азы программирования, и научиться работать со структурами данных, написать несколько программ попроще для практики.

    Затем следует освоить программирование на среднем уровне, и только после этого написать несколько проектов или игр попроще. Для практики.

    Тогда не будут невнятных фраз типа "в массиве вроде как нельзя удалить", "процессор с ума сойдет", "как сделать чтобы много памяти игровой мир не кушал"
    Ответ написан
    2 комментария
  • Какие языки нужны для создания визуальной новеллы?

    GavriKos
    @GavriKos Куратор тега Разработка игр
    Русский и английский. Причем литературные- тексты надо писать ОЧЕНЬ хорошо.
    А из ЯП - реально любой - вот все что другие отвечающие написали - подойдут.
    Ответ написан
    Комментировать
  • Как изменить параметр cellSize элемента GridLayoutGroup из кода?

    BasmanovDaniil
    @BasmanovDaniil
    Геймдизайнер-телепат
    1. Открыть документацию к GridLayoutGroup.
    2. Увидеть, что буквально первое свойство на странице это cellSize:
    5b0d7a593487d043570054.png
    3. Написать скрипт:
    using UnityEngine;
    using UnityEngine.UI;
    
    public class Example : MonoBehaviour
    {
        public GridLayoutGroup gridLayoutGroup;
    
        private void Start()
        {
            gridLayoutGroup.cellSize = new Vector2(200, 200);
        }
    }
    Ответ написан
    1 комментарий
  • Монетизация игры HTML5 (web-browser и/или mobile native-wrapper) и анти-читинг. Реально?

    Tiendil
    @Tiendil
    Разработчик ПО.
    Единственная надёжная защита от читов — проведение расчётов на собственном сервере. Всё остальное — лишняя трата веремени и денег.

    Варианты монетизации, в первую очередь, зависят от жанра и ЦА. Абстрактная игра монетизируется тоже абстрактно. Но основных подходов три:

    - продажа контента: шапки, уровни, петомцы.
    - продажа экономии времени: разного рода энергия, бонусные жизни.
    - продажа преимущества перед другими игроками.
    Ответ написан
    Комментировать
  • Есть ли метод «this» у «while»?

    miraage
    @miraage
    Старый прогер
    Вы хотите написать что-то такое..

    var node;
    
    while((node = document.querySelector('article p')) !== null) {
      node.remove();
    }
    Ответ написан
    2 комментария
  • На чем написан toster.ru?

    fornit1917
    @fornit1917
    Смотрим заголовки ответа сервера в фаербаге и видим там *барабанная дробь* ...
    X-Powered-By PHP/5.5.5
    Так что на PHP.
    Ответ написан
    4 комментария
  • Разработка игр (Start)?

    Griboks
    @Griboks
    Ну конечно же C#. Но на всякий случай можете третий раз этот же вопрос задать. А мы все сделаем вид, что не заметили предыдущие.
    Ответ написан
  • Имеет ли смысл писать игры вроде terraria,crypt of the necrodancer и т.д. на python(pygame)?

    Tiendil
    @Tiendil
    Разработчик ПО.
    terraria,crypt of the necrodancer

    Это очень разные технически игры. Crypt of the necrodancer вполне можно полностью на питоне делать.

    С Террарией могут быть проблемы с производительностью из-за механик (сложная модель мира, много обсчитывать). Может потребоваться переписать логику на чём-то более производительном (на плюсах, например). Но рабочий прототип на чистом питоне можно будет сделать.

    Тут правильно советуют готовые движки, у Python с ними не очень хорошо. Можно попробовать Godot, он позволяет использовать Python для описания логики. Или Kivy - движок не игровой, но для некоторых игр сгодится.

    Обычно Python используют как язык высокоуровневой логики. А для графония, сети и прочего используют готовые движки на чём-нибудь более быстром.
    Ответ написан
    Комментировать
  • Как выполнить действие при столкновении игрока с объектом только один раз?

    tregor
    @tregor
    Senior PHP Backend developer
    Без варианта - используй переменную флажок!
    Грубый алгоритм:
    ЕСЛИ коллизия_есть ТО
        ЕСЛИ переменная == false ТО
            переменная = true
            и тут какие то действия
    ИНАЧЕ
        переменная = false
    Ответ написан
    Комментировать
  • Как получить 2й элемент из списка дивов с одинаковыми классами?

    Egorian
    @Egorian
    <div class="button">Button</div>
    <div class="class-main">
    <div class="class">1</div>
    <div class="class">2</div>
    <div class="class">3</div>
    </div>
    <script type="text/javascript">
        document.getElementsByClassName("button")[0].onclick=function(){
            console.log(document.getElementsByClassName("class")[1])
        }
        
        </script>
    Ответ написан
    Комментировать
  • Что написано в коде на JS?

    SerafimArts
    @SerafimArts
    Senior Notepad Reader
    Я просто дополню уже существующие ответы, заметив, что данный код полностью эквивалентен вот этому варианту:
    function sumTo(n) {
        return (n * (n + 1)) / 2;
    }
    Ответ написан
    Комментировать
  • Что написано в коде на JS?

    dimovich85
    @dimovich85 Куратор тега JavaScript
    https://u-academy.net/
    А где тут рекурсия? Здесь функция вызывает функцию и не более. Здесь есть цикл.
    Сначала объявляется функция с параметром n. Далее создается переменная sum, она локальная внутри функции. Сначала равна 0.
    Далее запускаем цикл, и задаем условия цикла, что пока переменная i, которая сначала равна 0, не станет меньше чем, или равен параметру n, надо выполнять действия, которые в фигурных скобках, а в конце каждого цикла переменную i увеличиваем на 1. В цикле берем переменную sum и к её текущему значению прибавляем значение i. После того, как цикл завершится функция возвращает sum. В итоге получаем в алерте сумму всех последовательных чисел от одного до 2, в данном примере, то есть 3.
    Ответ написан
    Комментировать
  • Как вырезать строку?

    0xD34F
    @0xD34F Куратор тега JavaScript
    Использовать регулярные выражения не обязательно:

    str.split('/').pop()
    //или
    str.slice(str.lastIndexOf('/') + 1)
    // или
    [...str].reduce((acc, n) => n === '/' ? '' : acc + n, '')

    Но, конечно, если очень хочется, то можно:

    str.match(/[^\/]*$/)[0]
    // или
    str.replace(/.*\//, '')
    Ответ написан
    Комментировать
  • Где ошибка в коде?

    0xD34F
    @0xD34F Куратор тега JavaScript
    А не кажется ли вам, что сначала надо определить функцию, и только потом привязывать её куда-то в качестве обработчика события - а не наоборот?
    Ответ написан
    Комментировать
  • Как перезапустить div?

    webinar
    @webinar
    Учим yii: https://youtu.be/-WRMlGHLgRg
    как перезапустить див

    для того что бы перезапустить див, вначале надо запустить див, а это невозможно
    Ответ написан
    4 комментария
  • Как лучше называть файл сохранения в игре?

    @t38c3j
    В папке для сохранений, имя в виде времени timestamp а расширение как тебе удобно, можно хоть без него.
    Ответ написан
    Комментировать