Как связать переменную на спрайте

Есть спрайт, я хочу связать его с вар. Из документа я что-то понимаю, используйте
функция «setUserData» и «getUserData». Но тут что-то не так.

float nums = 2.3f;
pSprite->setUserData((void*)nums); // wrong??

// how to get the var from pSprite.  float some_float = *(pSprite->getUserData());??

0

Решение

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

float* nums = new float(2.3f);
pSprite->setUserData((void*)nums);

...

float* data = (float*)pSprite->getUserData();
printf("%f", *data);
delete data;

Обычно вы создаете структуру, которая содержит все данные, которые вы хотите сохранить в спрайте. Если вы просто хотите сохранить один номер, это сработает. В любом случае обязательно удалите память!

0

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector