PDA

Просмотр полной версии : [Вопрос] Странная проблема с присвоением Float



StevenH
07.07.2017, 18:04
Здравствуйте. Добавил в enum float и почему то ошибки:


(6042) : warning 213: tag mismatch
(15681) : warning 213: tag mismatch
(15682) : warning 213: tag mismatch


Собственно вот сроки:


gCars[playerid][carFuel][slot] = gTransport[carid][trTank]; // тоже Float но ОШИБКИ НЕТ!
gCars[playerid][carMileage][slot] = 0.0; // 6042
TransferMoney(playerid, -1, price, "buycar"); // это так, чтобы пустым не казалось



cache_get_value_name_int(i, "color2", gCars[playerid][carColor2][i]);
cache_get_value_name_float(i, "fuel", gCars[playerid][carFuel][i]); // 15681
cache_get_value_name_float(i, "mileage", gCars[playerid][carMileage][i]); // 15682


gCars для справки:


// Личные машины игроков
#define MAX_CAR_SLOT 3
enum CAR_DATA
{
carMysqlID,
carOwnerID,
carModelID,
carColor1,
carColor2,
Float:carFuel, // <<--
Float:carMileage, // <<--
}
new gCars[MAX_PLAYERS][CAR_DATA][MAX_CAR_SLOT];

DeimoS
07.07.2017, 19:16
Потому что считывается тэг с последней ячейки массива, а у тебя это MAX_CAR_SLOT.
То, что хочешь сделать ты, делается так:

#define MAX_CAR_SLOT 3
enum CAR_DATA
{
carMysqlID,
carOwnerID,
carModelID,
carColor1,
carColor2,
Float:carFuel, // <<--
Float:carMileage, // <<--
}
new gCars[MAX_PLAYERS][MAX_CAR_SLOT][CAR_DATA];

StevenH
07.07.2017, 20:10
Спасибо, закрой)