Значение прыжка не добавляется. оно сохраняет то же значение ⇐ C#
-
Гость
Значение прыжка не добавляется. оно сохраняет то же значение
Хорошо, я пишу игру, и мне нужен двойной прыжок вправо. Проблема: значение не меняется
(дополнительная информация о коде приведена в конце сообщения.
вот код
с использованием Годо; использование системы; общедоступный частичный класс CharacterBody2D: Godot.CharacterBody2D { public const float Скорость = 300.0f; public const float JumpVelocity = -400.0f; интервал прыжкамакс = 0; // Получаем гравитацию из настроек проекта для синхронизации с узлами RigidBody. общедоступная гравитация с плавающей запятой = ProjectSettings.GetSetting("физика/2d/default_gradity").AsSingle(); публичное переопределение void _PhysicsProcess (двойная дельта) { Скорость Vector2 = Скорость; // Добавляем гравитацию. если (!IsOnFloor()) { скорость.Y += сила тяжести * (float)delta; прыжокмакс = 0; } // Обработка перехода. if (Input.IsActionJustPressed("ui_accept") & jumpmax < 2 ) { прыжокмакс = прыжокмакс + 1; скорость.Y = Скорость перехода; GD.Print(джампмакс); } // Получаем входное направление и обрабатываем движение/замедление. // Рекомендуется заменять действия пользовательского интерфейса пользовательскими действиями игрового процесса. Направление Vector2 = Input.GetVector("ui_left", "ui_right", "ui_up", "ui_down"); если (направление != Vector2.Zero) { скорость.X = направление.X * Скорость; } еще { скорость.X = Mathf.MoveToward(Скорость.X, 0, Скорость); } Скорость = скорость; ДвигатьИСлайд(); } }` Я ожидал, что значение максимального прыжка увеличится, но в командной строке оно продолжает получать значение 1. к сожалению, даже после бесчисленных попыток и изменений в коде я так и не добился прогресса в коде двойного прыжка. прямо сейчас код заставляет его прыгать сколько угодно, и я хочу, чтобы он имел ограничение в 2 прыжка, если это возможно.
введите описание изображения здесь`ваш текст
Хорошо, я пишу игру, и мне нужен двойной прыжок вправо. Проблема: значение не меняется
(дополнительная информация о коде приведена в конце сообщения.
вот код
с использованием Годо; использование системы; общедоступный частичный класс CharacterBody2D: Godot.CharacterBody2D { public const float Скорость = 300.0f; public const float JumpVelocity = -400.0f; интервал прыжкамакс = 0; // Получаем гравитацию из настроек проекта для синхронизации с узлами RigidBody. общедоступная гравитация с плавающей запятой = ProjectSettings.GetSetting("физика/2d/default_gradity").AsSingle(); публичное переопределение void _PhysicsProcess (двойная дельта) { Скорость Vector2 = Скорость; // Добавляем гравитацию. если (!IsOnFloor()) { скорость.Y += сила тяжести * (float)delta; прыжокмакс = 0; } // Обработка перехода. if (Input.IsActionJustPressed("ui_accept") & jumpmax < 2 ) { прыжокмакс = прыжокмакс + 1; скорость.Y = Скорость перехода; GD.Print(джампмакс); } // Получаем входное направление и обрабатываем движение/замедление. // Рекомендуется заменять действия пользовательского интерфейса пользовательскими действиями игрового процесса. Направление Vector2 = Input.GetVector("ui_left", "ui_right", "ui_up", "ui_down"); если (направление != Vector2.Zero) { скорость.X = направление.X * Скорость; } еще { скорость.X = Mathf.MoveToward(Скорость.X, 0, Скорость); } Скорость = скорость; ДвигатьИСлайд(); } }` Я ожидал, что значение максимального прыжка увеличится, но в командной строке оно продолжает получать значение 1. к сожалению, даже после бесчисленных попыток и изменений в коде я так и не добился прогресса в коде двойного прыжка. прямо сейчас код заставляет его прыгать сколько угодно, и я хочу, чтобы он имел ограничение в 2 прыжка, если это возможно.
введите описание изображения здесь`ваш текст
Мобильная версия