PDA

Просмотр полной версии : [Вопрос] Квартплата



19GameR98
23.01.2017, 23:10
Ребят не могу понять почему не снимает деньги с домашнего счета, помогите пожалуйста, вот код

stock GetHomeOplata(idx)
{
switch(HouseInfo[idx][hDiscript][0])
{
case 'D': return 90;
case 'C': return 140;
case 'B': return 190;
case 'A': return 230;
}
return 0;
}


if(GetPlayerHouse(i))
{
new pay = GetHomeOplata(GetPVarInt(i, "PlayerHouse"));
format(string, sizeof(string), "- Квартплата: {46CA00}%d$", pay);
SendClientMessage(i, COLOR_WHITE, string);
HouseInfo[i][hOplata] -= pay;
MysqlUpdateHouseInt(i, "hOplata", HouseInfo[i][hOplata]);
}

Long-
23.01.2017, 23:32
Ребят не могу понять почему не снимает деньги с домашнего счета, помогите пожалуйста, вот код

stock GetHomeOplata(idx)
{
switch(HouseInfo[idx][hDiscript][0])
{
case 'D': return 90;
case 'C': return 140;
case 'B': return 190;
case 'A': return 230;
}
return 0;
}


if(GetPlayerHouse(i))
{
new pay = GetHomeOplata(GetPVarInt(i, "PlayerHouse"));
format(string, sizeof(string), "- Квартплата: {46CA00}%d$", pay);
SendClientMessage(i, COLOR_WHITE, string);
HouseInfo[i][hOplata] -= pay;
MysqlUpdateHouseInt(i, "hOplata", HouseInfo[i][hOplata]);
}

скинь СВОЙ код до наработок с другого портала.

$continue$
23.01.2017, 23:42
У Вас когда какие то баги и вы бежите с других порталов, хоть дебажьте код. Нам ещё это за Вас делать?

Выводи значение переменных и что возвращает функция.

Long-
24.01.2017, 00:01
У Вас когда какие то баги и вы бежите с других порталов, хоть дебажьте код. Нам ещё это за Вас делать?

Выводи значение переменных и что возвращает функция.

Ну не мог сдержаться, не сделать тебе репу 228 :D, соре за оффтоп :D

19GameR98
24.01.2017, 00:24
Мне стыдно там спрашивать дальше, так как там мне помогли как могли, я такой человек, что не могу наглеть, и по этому решил на этом портале поинтересоваться

Long-
24.01.2017, 01:20
Мне стыдно там спрашивать дальше, так как там мне помогли как могли, я такой человек, что не могу наглеть, и по этому решил на этом портале поинтересоваться

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

Дай нам старый код, до обновления юзеров.

19GameR98
24.01.2017, 01:34
if(GetPlayerHouse(i))
{
format(string, sizeof(string), "- Квартплата: {46CA00}%d$", GetHomeOplata(GetPVarInt(i, "PlayerHouse")));
SendClientMessage(i, COLOR_WHITE, string);
}


stock GetHomeOplata(idx)
{
new htax;
if(!strcmp("D",HouseInfo[idx][hDiscript],true)) htax = 90;
if(!strcmp("C",HouseInfo[idx][hDiscript],true)) htax = 140;
if(!strcmp("B",HouseInfo[idx][hDiscript],true)) htax = 190;
if(!strcmp("A",HouseInfo[idx][hDiscript],true)) htax = 230;
return htax;
}

может это тоже нужно, находиться в стоке payday

for(new houseid = 1; houseid <= TOTALHOUSE; houseid++)
{
if(!strcmp("None", HouseInfo[houseid][hOwner], true)) continue;
if(HouseInfo[houseid][hOplata] < GetHomeOplata(houseid))
{
new targetid = GetPlayerID(HouseInfo[houseid][hOwner]);
if(targetid != INVALID_PLAYER_ID)
{
PI[targetid][pBank] += HouseInfo[houseid][hBuyPrice];
PI[targetid][pSpawnChange] = 0;
SendClientMessage(targetid, COLOR_YELLOW, "[Квитанция] Вы не оплатили электричество, ваш дом был передан гос-ву");
SendClientMessage(targetid, COLOR_YELLOW, "[Квитанция] На ваш банковский счет возвращена стоимость дома по гос-ву");
if(PI[targetid][PlayerCarID] != INVALID_VEHICLE_ID)
{
DestroyVehicle(PI[targetid][PlayerCarID]);
PI[targetid][PlayerCarID] = INVALID_VEHICLE_ID;
}
}
else
{
format(query, sizeof(query), "SELECT * FROM "T_ACCOUNTS" WHERE name = '%s'", HouseInfo[houseid][hOwner]);
mysql_tquery(dbHandle, query, "OfflineClearHouse", "i", houseid);
}
MysqlUpdatePlayerInt(targetid, "spawnchange", 0);
strmid(HouseInfo[houseid][hOwner], "None", 0, strlen("None"), MAX_PLAYER_NAME);
HouseInfo[houseid][hBuyPrice] = HouseInfo[houseid][hOplata] = HouseInfo[houseid][hGarage] = HouseInfo[houseid][hAutoDoors] = 0;
HouseInfo[houseid][hLock] = 1;
format(query, sizeof(query), "UPDATE "T_HOUSE" SET hOwner='%s',hOplata=%d,buyprice=%d,hGarage=%d,hAutoDoors=%d,hLock=%d WHERE id=%d",
HouseInfo[houseid][hOwner],HouseInfo[houseid][hOplata],HouseInfo[houseid][hBuyPrice],HouseInfo[houseid][hGarage],HouseInfo[houseid][hAutoDoors],HouseInfo[houseid][hLock],houseid);
mysql_tquery(dbHandle, query, "", "");
UpdateHouse(houseid);
}
else
{
HouseInfo[houseid][hOplata] -= GetHomeOplata(houseid);
MysqlUpdateHouseInt(houseid, "hOplata", HouseInfo[houseid][hOplata]);
}
HouseInfo[houseid][hRob] = false;
}

qwezert
24.01.2017, 12:09
Как же я люблю паблик гавномоды)
Зачем столько лишнего кода - непонятно.
Зачем классы домов делать сразу строкой в массиве - непонятно.
По твоей проблеме - с первого взгляда вроде бы в коде все нормально, задебагай значения денег которые ты пытаешься отнимать и кол-во на домашнем счете.

Long-
24.01.2017, 14:44
Как же я люблю паблик гавномоды)
Зачем столько лишнего кода - непонятно.
Зачем классы домов делать сразу строкой в массиве - непонятно.
По твоей проблеме - с первого взгляда вроде бы в коде все нормально, задебагай значения денег которые ты пытаешься отнимать и кол-во на домашнем счете.

Ну, типичный RLS)