Обнуление дома /removehouse

Добро пожаловать!

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

Зарегистрироваться!
  • Если Вы желаете помогать развитию проекта, готовы заполнять раздел(-ы) и подсказывать другим пользователям на портале, есть возможность попасть в команду редакторов. Для этого следует обратиться в техническую поддержку
Пользователь
Регистрация
3 Окт 2024
Сообщения
34
Всем привет!
Держите прикольную команду которая обнулит все вещи в доме
Pawn:
cmd:removehouse(playerid, params[])
{
    if(!IsOsnovatel(playerid))
        return false;

    new id;
    if(sscanf(params, "d", id)) return
        SCM(playerid, COLOR_OLDRED, !"Используй: /removehouse [id]");

    if(id > OWNABLEHOUSES) return false;

    for new i; i < 90; i++ do
        HouseInfo[id][hItem][i] = 0,
        HouseInfo[id][hItemCount][i] = 0;

    SCMF(playerid, COLOR_VALIK, "Вы обнулили %d дом", id);
    SaveItemHouse(id);
    return false;

}
 
Заблокированный
Регистрация
17 Мар 2024
Сообщения
12
exctract params -> new id; else ...; использовать, не?
 
Заблокированный
Регистрация
17 Мар 2024
Сообщения
12
Не пишите мне, я злой.
Активный
Регистрация
21 Мар 2022
Сообщения
75
В целом не плохо, но вот с корректировками.
  • Проверка ID дома: Теперь проверка на корректность ID происходит в одном условии, что делает код более компактным.
  • Имена переменных: Переименовал id в houseId для большей ясности.
  • Возврат значения: Теперь функция возвращает true, если команда выполнена успешно, что может быть полезно для дальнейшей обработки.
Pawn:
cmd:removehouse(playerid, params[])
{
    // Проверяем, является ли игрок основателем
    if (!IsOsnovatel(playerid))
        return false;

    new houseId;
   
    // Проверяем, правильно ли введен ID дома
    if (sscanf(params, "d", houseId) || houseId <= 0 || houseId > OWNABLEHOUSES) {
        SCM(playerid, COLOR_OLDRED, "Используй: /removehouse [id]");
        return false;
    }

    // Обнуляем информацию о доме
    for (new i = 0; i < 90; i++) {
        HouseInfo[houseId][hItem][i] = 0;
        HouseInfo[houseId][hItemCount][i] = 0;
    }

    // Уведомляем игрока об успешном удалении
    SCMF(playerid, COLOR_VALIK, "Вы обнулили дом с ID: %d", houseId);
   
    // Сохраняем изменения
    SaveItemHouse(houseId);
   
    return true; // Возвращаем true, если команда выполнена успешно
}
 
A

apptest

В целом не плохо, но вот с корректировками.
  • Проверка ID дома: Теперь проверка на корректность ID происходит в одном условии, что делает код более компактным.
  • Имена переменных: Переименовал id в houseId для большей ясности.
  • Возврат значения: Теперь функция возвращает true, если команда выполнена успешно, что может быть полезно для дальнейшей обработки.
Pawn:
cmd:removehouse(playerid, params[])
{
    // Проверяем, является ли игрок основателем
    if (!IsOsnovatel(playerid))
        return false;

    new houseId;
  
    // Проверяем, правильно ли введен ID дома
    if (sscanf(params, "d", houseId) || houseId <= 0 || houseId > OWNABLEHOUSES) {
        SCM(playerid, COLOR_OLDRED, "Используй: /removehouse [id]");
        return false;
    }

    // Обнуляем информацию о доме
    for (new i = 0; i < 90; i++) {
        HouseInfo[houseId][hItem][i] = 0;
        HouseInfo[houseId][hItemCount][i] = 0;
    }

    // Уведомляем игрока об успешном удалении
    SCMF(playerid, COLOR_VALIK, "Вы обнулили дом с ID: %d", houseId);
  
    // Сохраняем изменения
    SaveItemHouse(houseId);
  
    return true; // Возвращаем true, если команда выполнена успешно
}
это чатгпт кодинг что ли?


Имена переменных: Переименовал id в houseId для большей ясности.
нахуя? какое значение может иметь слово ID в команде блять по удалению дома? сразу понятно что ид дома

Возврат значения: Теперь функция возвращает true, если команда выполнена успешно, что может быть полезно для дальнейшей обработки.
нахуя если можно сделать return 1; если значение тоже самое будет?
 
Не пишите мне, я злой.
Активный
Регистрация
21 Мар 2022
Сообщения
75
это чатгпт кодинг что ли?



нахуя? какое значение может иметь слово ID в команде блять по удалению дома? сразу понятно что ид дома


нахуя если можно сделать return 1; если значение тоже самое будет?
Для быстрого поиска по коду, например? Если есть команда вроде createhouse или edithouse.
 
Последнее редактирование:
Заблокированный
Регистрация
17 Мар 2024
Сообщения
12
Pawn:
cmd:removehouse(playerid, params[])
{
    if(!IsOsnovatel(playerid))
        return false;
    
    extract params -> new Id; else
        SCM(playerid, COLOR_OLDRED, !"Используй: /removehouse [id]");
    
    if(Id > OWNABLEHOUSES)

    for new i; i < 90; i++ do
        HouseInfo[Id][hItem][i] = 0,
        HouseInfo[Id][hItemCount][i] = 0;

    return SCMF(playerid, COLOR_VALIK, "Вы обнулили %d дом", Id), SaveItemHouse(Id);
}
Хватит уже доебываться до этой команды, вот нормальный результат, ВСЁ!
 
Сверху