Риктик
Ученик
Здравсвуйте.
Я написал систему АЗС, недавно она работала. Но я что-то напартачил.
Имя того кто купил АЗС не записалось в бд.
Покупка АЗС:
CMD:
CASE:
Я написал систему АЗС, недавно она работала. Но я что-то напартачил.
Имя того кто купил АЗС не записалось в бд.
Покупка АЗС:
CMD:
C:
CMD:buyazs(playerid)
{
if(IsPlayerInAnyVehicle(playerid)) return 1;
for(new i = 0; i < totalfuelid; i++)
{
if(IsPlayerInRangeOfPoint(playerid, 3.0, fuels_info[i][enterx], fuels_info[i][entery], fuels_info[i][enterz]))
{
new tempstring[256];
if(strcmp(fuels_info[i][fuelholder], "None") != 0) return 1;
if(player_info[playerid][fuelholderid] > 0) return SCM(playerid, COLOR_GREY, "У вас уже есть бизнес.");
if(player_info[playerid][money] < 200000) return SCM(playerid, COLOR_GREY, "У вас не хватает денег.");
temp_info[playerid][checkcaptcha] = random(10) + 1020;
for(new b = -1; ++b < 10;)
{
switch(b)
{
case 0 ,1 , 7 , 8, 9: temp_info[playerid][checkcaptcha][b] = random(26) + 'A';
case 2, 3, 4, 5, 6: temp_info[playerid][checkcaptcha][b] = random(10) + '0';
}
}
format(tempstring, sizeof(tempstring), "[КАПТЧА] Ваша каптча: %s", temp_info[playerid][checkcaptcha]);
SCM(playerid, COLOR_GREEN, tempstring);
temp_info[playerid][temp] = i;
SPD(playerid, DLG_BUY_AZS, DIALOG_STYLE_INPUT, "Проверка на робота", "{ffffff}Введите каптчу, указанную в сообщении, в поле ниже: ", "Принять", "Отмена");
break;
}
}
return 1;
}
C++:
case DLG_BUY_AZS:
{
if(response)
{
//SCM(playerid, COLOR_VALIK, "[Èíôîðìàöèÿ] {FFFFFF}Поздравляю! Теперь этот бизнес ваш");
new tempstring[356];
if(strcmp(fuels_info[temp_info[playerid][temp]][fuelholder], "None") != 0) return 1;
if(strcmp(inputtext, temp_info[playerid][checkcaptcha]) != 0) return SCM(playerid, COLOR_GREY, "Неверная каптча");
set_money(playerid, -200000);
player_info[playerid][fuelholderid] = temp_info[playerid][temp] + 1;
fuels_info[temp_info[playerid][temp]][fuelholder][0] = EOS;
strins(fuels_info[temp_info[playerid][temp]][fuelholder], player_info[playerid][name], 0);
format(tempstring, sizeof(tempstring), "[WARNING] Игрок %s[%d] приобрел АЗС по гос. цене за 200.000$. ID бизнеса: %d.",
player_info[playerid][name], playerid, temp_info[playerid][temp]);
SaveAccount(playerid);
return SendAdminMessage(COLOR_GREY, tempstring);
}
}
C#:
forward LoadFuels();
public LoadFuels()
{
new rows , tempstring[256];
cache_get_row_count(rows);
for(new i = 0; i < rows; i++)
{
cache_get_value_name_int(i, "id", fuels_info[i][fuelid]);
cache_get_value_name_float(i, "enterx", fuels_info[i][enterx]);
cache_get_value_name_float(i, "entery", fuels_info[i][entery]);
cache_get_value_name_float(i, "enterz", fuels_info[i][enterz]);
cache_get_value_name_float(i, "vfx", fuels_info[i][exitx]);
cache_get_value_name_float(i, "vfy", fuels_info[i][exity]);
cache_get_value_name_float(i, "vfz", fuels_info[i][exitz]);
cache_get_value_name_float(i, "vfa", fuels_info[i][fexitf]);
cache_get_value_name_float(i, "fuelx", fuels_info[i][fuelx]);
cache_get_value_name_float(i, "fuely", fuels_info[i][fuely]);
cache_get_value_name_float(i, "fuelz", fuels_info[i][fuelz]);
cache_get_value_name_int(i, "fuelcount", fuels_info[i][fuelcount]);
cache_get_value_name_int(i, "fuelcost", fuels_info[i][fuelcost]);
cache_get_value_name(i, "fuelholder", fuels_info[i][fuelholder], MAX_PLAYER_NAME);
cache_get_value_name(i, "fuelholdertwo", fuels_info[i][fuelholdertwo], MAX_PLAYER_NAME);
cache_get_value_name_int(i, "fuelbank", fuels_info[i][fuelbank]);
fuels_info[i][fueldaybank] = 0;
cache_get_value_name_int(i, "fueldoor", fuels_info[i][fueldoor]);
cache_get_value_name_int(i, "fuelup", fuels_info[i][fuelup]);
CreateDynamicMapIcon(fuels_info[i][fuelx], fuels_info[i][fuely], fuels_info[i][fuelz], 47, 0, -1, -1, -1, 400.0);
format(tempstring, sizeof(tempstring), "Заправка\n\n{FFFFFF}Стоимость 1-го литра: %d$\Чтобы заправить автомобиль, введите {FFCC00}\"/fill\"",
fuels_info[i][fuelcost]);
fuelhud[i] = CreateDynamic3DTextLabel(tempstring, COLOR_GREEN, fuels_info[i][fuelx], fuels_info[i][fuely], fuels_info[i][fuelz], 20.0, INVALID_PLAYER_ID, INVALID_VEHICLE_ID, 1, -1, -1);
if(fuels_info[i][fueldoor] == 1)
{
if(strcmp(fuels_info[i][fuelholder], "None") != 0)
{
format(tempstring, sizeof(tempstring), "Магазин АЗС\n{FFFFFF}Чтобы войти используйте{FFCC00}\"ALT\"");
}
else
{
format(tempstring, sizeof(tempstring), "Магазин АЗС\n{FFFFFF}Чтобы войти используйте{FFCC00}\"ALT\"\nДля покупки введите /buyazs");
}
}
else if(fuels_info[i][fueldoor] == 0)
{
if(strcmp(fuels_info[i][fuelholder], "None") != 0)
{
format(tempstring, sizeof(tempstring), "Магазин АЗС\n{FFFFFF}Статус: {FFCC00}Закрыт");
}
else
{
format(tempstring, sizeof(tempstring), "Магазин АЗС\n{FFFFFF}Статус: {FFCC00}Закрыт\n{FFFFFF}Для покупки введите /buyazs");
}
}
fuelenter[i] = CreateDynamic3DTextLabel(tempstring, COLOR_GREEN, fuels_info[i][enterx], fuels_info[i][entery], fuels_info[i][enterz], 20.0, INVALID_PLAYER_ID, INVALID_VEHICLE_ID, 1, -1, -1);
CreatePickup(19132, 1, fuels_info[i][enterx], fuels_info[i][entery], fuels_info[i][enterz], 0);
CreateDynamic3DTextLabel("Выход на улицу\n{FFFFFF}Чтобы выйти на улицу используйте {FFCC00}\"ALT\"", COLOR_GREEN, 1921.4149,-1795.6163,-13.5981, 7.0,
INVALID_PLAYER_ID, INVALID_VEHICLE_ID, 1, -1, -1);
totalfuelid++;
}
}
C++:
forward SaveFuel(fuelsid);
public SaveFuel(fuelsid)
{
new tempstring[256];
query[0] = EOS;
mysql_format(dbHandle, query, sizeof(query),
"UPDATE `fuels` SET `fuelcount` = '%d', `fuelcost` = '%d', `fuelbank` = '%d', `fuelholder` = '%e', `fuelholdertwo` = '%e', `fueldaybank` = '%d', `fuelup` = '%d', `fueldoor` = '%d' WHERE `id` = '%i'",
fuels_info[fuelsid][fuelcount], fuels_info[fuelsid][fuelcost], fuels_info[fuelsid][fuelbank], fuels_info[fuelsid][fuelholder], fuels_info[fuelsid][fuelholdertwo], fuels_info[fuelsid][fueldaybank], fuels_info[fuelsid][fuelup], fuels_info[fuelsid][fueldoor], fuelsid+1);
mysql_tquery(dbHandle, query);
format(tempstring, sizeof(tempstring), "Заправка\n\n{FFFFFF}Стоимость 1-го литра: %d$\nЧтобы заправить автомобиль, введите {FFCC00}\"/fill\"",
fuels_info[fuelsid][fuelcost]);
UpdateDynamic3DTextLabelText(fuelhud[fuelsid], COLOR_GREEN, tempstring);
if(fuels_info[fuelsid][fueldoor] == 1)
{
if(strcmp(fuels_info[fuelsid][fuelholder], "None") != 0)
{
format(tempstring, sizeof(tempstring), "Магазин АЗС\n{FFFFFF}Чтобы войти используйте{FFCC00}\"ALT\"");
}
else
{
format(tempstring, sizeof(tempstring), "Магазин АЗС\n{FFFFFF}Чтобы войти используйте{FFCC00}\"ALT\"\nДля покупки введите /buyazs");
}
}
else if(fuels_info[fuelsid][fueldoor] == 0)
{
if(strcmp(fuels_info[fuelsid][fuelholder], "None") != 0)
{
format(tempstring, sizeof(tempstring), "Магазин АЗС\n{FFFFFF}Статус: {FFCC00}Закрыт");
}
else
{
format(tempstring, sizeof(tempstring), "Магазин АЗС\n{FFFFFF}Статус: {FFCC00}Закрыт\n{FFFFFF}Для покупки введите /buyazs");
}
}
UpdateDynamic3DTextLabelText(fuelenter[fuelsid], COLOR_GREEN, tempstring);
}
C++:
forward SaveFuels();
public SaveFuels()
{
for(new i = 0; i < totalfuelid; i++)
{
query[0] = EOS;
mysql_format(dbHandle, query, sizeof(query), "UPDATE `fuels` SET `fuelcount` = '%d', `fuelcost` = '%d', `fuelbank` = '%d', `fuelholder` = '%e', `fuelholdertwo` = '%e', `fueldaybank` = '%d', `fuelup` = '%d', `fueldoor` = '%d' WHERE `id` = '%i'",
fuels_info[i][fuelcount], fuels_info[i][fuelcost], fuels_info[i][fuelbank], fuels_info[i][fuelholder], fuels_info[i][fuelholdertwo], fuels_info[i][fueldaybank], fuels_info[i][fuelup], fuels_info[i][fueldoor], i+1);
mysql_tquery(dbHandle, query);
}
}
