C # Как сохранить число с плавающей точкой и прочитать его в функции - PullRequest
0 голосов
/ 22 ноября 2018

Я очень новичок в программировании, и я знаю, что это простой ответ, но я на всю жизнь не могу этого понять.

    public float getCurrentY()
    {
        float CurrentY = API.Extension.ReadFloat(Variables.CIT_PLAYER_Y_COORD);
        return CurrentY;
    }

Когда флажок I установлен, он получает текущийY

    private void CITFlightTestToggle_CheckedChanged(object sender, EventArgs e)
    {
        if (CITFlightTestToggle.Checked == true)
            {

            getCurrentY();
            }

            else if (CITFlightTestToggle.Checked == false)
            {

            }
    }

Я в основном хочу значение текущего, почему во время, когда игрок проверяет переключатель, а затем добавляет значение из трекбара в это сохраненное значение.Проблема в том, что он продолжает получать currentY, когда вы перемещаете трекбар, а текущий Y продолжает изменяться, так как я добавляю к нему.

        private void CITFlyingHeightTrackBar_Scroll_1(object sender, ScrollEventArgs e)
        {
        float diviedflyingheight = CITFlyingHeightTrackBar.Value / 10f;
        float current_num = getCurrentY();
        float flyingheightadded = current_num + diviedflyingheight;
        if (CITFlightTestToggle.Checked == true)


            if (levelchecktext == Variables.CIT_LVL_GREAT_CLOCK_A)
            {

                API.Extension.WriteFloat(Variables.CIT_GCA_Y_COORD, (flyingheightadded));
            }
            else
            {
            }
         }

заранее спасибо

1 Ответ

0 голосов
/ 22 ноября 2018

Добро пожаловать в переполнение стека

Вы видите это слово "void" в объявлении вашего метода?Это тип возврата.Вы изменяете это на строку, а затем используете ключевое слово return, чтобы выбрать возвращаемое значение.

public string getCurrentY()
{
    string CITCurrentYString = null;
    float CurrentY =  API.Extension.ReadFloat(Variables.CIT_PLAYER_Y_COORD);
    CITCurrentYString = (CurrentY.ToString());
    return CITCurrentYString;
}

Есть ли причина, по которой вы конвертируете в строку?Похоже, вам действительно нужен поплавок.Как это

public float getCurrentY()
{
    float CurrentY =  API.Extension.ReadFloat(Variables.CIT_PLAYER_Y_COORD);
    return CurrentY;
}

private void CITFlyingHeightTrackBar_Scroll_1(object sender, ScrollEventArgs e)
{
    float current_num = getCurrentY();
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...