• Уважаемый Гость.
    - Прежде чем создать свою тему, пожалуйста, попробуй воспользоваться этим -> ПОИСКОМ !!!
    - После решения Вашего вопроса (проблемы) - нажмите "Лучший ответ", на сообщении, которое его решило. За игнорирование этого действия - Вы получите соответствующее предупреждение. Мы - стараемся Вам помочь. Уделите 10 секунд - чтобы нажать кнопку. (Если у Вас нет такой возможности - укажите в последнем своем сообщении какой ответ Вы считаете лучшим. Наши модераторы сделают это за Вас)
    ЗАПРЕЩЕНО:
    - Cоздавать темы с названиями "Помогите", "Плиз", "Ошибка", "Не могу найти", "Хелп" и тому подобное;
    - Cоздавать темы без детального описания того, что нужно исправить.
    - Cоздавать темы из одного скриншота.
    За игнор правил форума - Ваша тема будет удалена, а Вы получите системное предупреждение.

Как обнулить переменную для создания динамического объекта?

Статус
В этой теме нельзя размещать новые ответы.

lomakich

Начинающий
Пользователь
Регистрация
30 Мар 2019
Сообщения
18
Лучшие ответы
0
Репутация
2
Ниже код. Ситуация такая, я поочередно ввожу команды create и delete, объекты создаются, после удаляются.
Но спустя некоторое количество манипуляций, начинают пропадать разные созданные другие объекты на карте, либо вовсе не создается. Как повезет короче.
Но я все это делал без обнуления переменной в коде, просто дестроил и создавал новый объект. Я подумал возможно это из-за того что не было обнуления переменной.
Потому что перед созданием объекта переменная, если её выводить в printf как integer, то она равна 0. После создания объекта она равна 1. Но после DestroyDynamicObject она остается быть равна 1. Возможно, что эта проблема растет оттуда? Кто-то сталкивался с чем-то подобным?
Можете подсказать поподробнее как работает или, возможно, решить проблемку? Заранее спасибо.
PHP:
new testobj[3];

CMD:create(playerid)
{
 switch(random(3))
{
 case 0: testobj[0] = CreateDynamicObject(1000, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, -1, -1, -1);
 case 1: testobj[1] = CreateDynamicObject(2000, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, -1, -1, -1);
 case 2: testobj[2] = CreateDynamicObject(3000, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, -1, -1, -1);
}
return SCM(playerid, 0xFFFFFFFF, "Объект создан!");
}

CMD:delete(playerid)
{
 for(new i = 0; i < 3; i++)
 {
  if(IsValidDynamicObject(testobj[i]))
  {
    DestroyDynamicObject(testobj[i]);
    testobj[i] = 0; //ВОПРОС ТУТ. Нужно ли обнулять переменную? Просто перед созданием она 0, после создания 1, а после DestroyObject все равно остается 1
  }
 }
 return SCM(playerid, 0xFFFFFFFF, "Объекты удалены!");
}
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху Снизу