kirillkot123
Дебютант
Помогите, кто может... Буду благодарен :3
Проблема заключается в том, что при покупке скина он устанавливается на игрока, но деньги не отнимаются... Я так полагаю, что проблема в case dBuySkin, а именно в new price. Пробовал всё, что мог... В общем-то всё работает, кроме денег. Они не списываются за скин(
Проблема заключается в том, что при покупке скина он устанавливается на игрока, но деньги не отнимаются... Я так полагаю, что проблема в case dBuySkin, а именно в new price. Пробовал всё, что мог... В общем-то всё работает, кроме денег. Они не списываются за скин(
Код:
enum
{
dBuySkin,
dBuySkin2,
}
Код:
enum SKIN_DATA {
skinID,
skinPrice,
skinClass,
skinSex,
skinColor
}
Код:
#define SKIN_CLASS_ECONOM 1
#define SKIN_SEX_MALE 1
#define SKIN_SEX_FEMALE 2
#define SKIN_COLOR_WHITE 0
#define SKIN_COLOR_BLACK 1
new gSkins[115][SKIN_DATA] = {
{31, 2000, SKIN_CLASS_ECONOM, SKIN_SEX_FEMALE, SKIN_COLOR_WHITE},
{3, 2000, SKIN_CLASS_ECONOM, SKIN_SEX_MALE, SKIN_COLOR_WHITE},
{1, 2500, SKIN_CLASS_ECONOM, SKIN_SEX_MALE, SKIN_COLOR_WHITE},
{198, 2000, SKIN_CLASS_ECONOM, SKIN_SEX_FEMALE, SKIN_COLOR_WHITE},
{201, 2500, SKIN_CLASS_ECONOM, SKIN_SEX_FEMALE, SKIN_COLOR_WHITE},
{38, 2500, SKIN_CLASS_ECONOM, SKIN_SEX_FEMALE, SKIN_COLOR_WHITE},
{39, 6000, SKIN_CLASS_ECONOM, SKIN_SEX_FEMALE, SKIN_COLOR_WHITE},
{8, 8000, SKIN_CLASS_ECONOM, SKIN_SEX_MALE, SKIN_COLOR_WHITE},
{207, 10000, SKIN_CLASS_ECONOM, SKIN_SEX_FEMALE, SKIN_COLOR_WHITE},
{131, 15000, SKIN_CLASS_ECONOM, SKIN_SEX_FEMALE, SKIN_COLOR_WHITE},
{32, 15000, SKIN_CLASS_ECONOM, SKIN_SEX_MALE, SKIN_COLOR_WHITE},
{96, 20000, SKIN_CLASS_ECONOM, SKIN_SEX_MALE, SKIN_COLOR_WHITE},
{161, 20000, SKIN_CLASS_ECONOM, SKIN_SEX_MALE, SKIN_COLOR_WHITE},
{72, 20000, SKIN_CLASS_ECONOM, SKIN_SEX_MALE, SKIN_COLOR_WHITE},
{202, 40000, SKIN_CLASS_ECONOM, SKIN_SEX_MALE, SKIN_COLOR_WHITE},
{206, 40000, SKIN_CLASS_ECONOM, SKIN_SEX_MALE, SKIN_COLOR_WHITE},
{2, 40000, SKIN_CLASS_ECONOM, SKIN_SEX_MALE, SKIN_COLOR_WHITE},
{94, 50000, SKIN_CLASS_ECONOM, SKIN_SEX_MALE, SKIN_COLOR_WHITE},
{128, 50000, SKIN_CLASS_ECONOM, SKIN_SEX_MALE, SKIN_COLOR_WHITE},
{112, 50000, SKIN_CLASS_ECONOM, SKIN_SEX_MALE, SKIN_COLOR_WHITE},
{34, 50000, SKIN_CLASS_ECONOM, SKIN_SEX_MALE, SKIN_COLOR_WHITE},
{133, 50000, SKIN_CLASS_ECONOM, SKIN_SEX_MALE, SKIN_COLOR_WHITE},
{151, 50000, SKIN_CLASS_ECONOM, SKIN_SEX_FEMALE, SKIN_COLOR_WHITE},
{241, 50000, SKIN_CLASS_ECONOM, SKIN_SEX_MALE, SKIN_COLOR_WHITE},
{242, 55000, SKIN_CLASS_ECONOM, SKIN_SEX_MALE, SKIN_COLOR_WHITE},
{152, 90000, SKIN_CLASS_ECONOM, SKIN_SEX_FEMALE, SKIN_COLOR_WHITE},
{33, 100000, SKIN_CLASS_ECONOM, SKIN_SEX_MALE, SKIN_COLOR_WHITE},
{48, 100000, SKIN_CLASS_ECONOM, SKIN_SEX_MALE, SKIN_COLOR_WHITE},
{73, 100000, SKIN_CLASS_ECONOM, SKIN_SEX_MALE, SKIN_COLOR_WHITE},
{192, 100000, SKIN_CLASS_ECONOM, SKIN_SEX_FEMALE, SKIN_COLOR_WHITE},
{247, 100000, SKIN_CLASS_ECONOM, SKIN_SEX_MALE, SKIN_COLOR_WHITE},
{254, 100000, SKIN_CLASS_ECONOM, SKIN_SEX_MALE, SKIN_COLOR_WHITE},
{237, 140000, SKIN_CLASS_ECONOM, SKIN_SEX_FEMALE, SKIN_COLOR_WHITE},
{208, 150000, SKIN_CLASS_ECONOM, SKIN_SEX_MALE, SKIN_COLOR_WHITE},
{193, 150000, SKIN_CLASS_ECONOM, SKIN_SEX_FEMALE, SKIN_COLOR_WHITE},
{100, 150000, SKIN_CLASS_ECONOM, SKIN_SEX_MALE, SKIN_COLOR_WHITE},
{181, 150000, SKIN_CLASS_ECONOM, SKIN_SEX_MALE, SKIN_COLOR_WHITE},
{226, 180000, SKIN_CLASS_ECONOM, SKIN_SEX_FEMALE, SKIN_COLOR_WHITE},
{57, 200000, SKIN_CLASS_ECONOM, SKIN_SEX_MALE, SKIN_COLOR_WHITE},
{170, 200000, SKIN_CLASS_ECONOM, SKIN_SEX_MALE, SKIN_COLOR_WHITE},
{23, 200000, SKIN_CLASS_ECONOM, SKIN_SEX_MALE, SKIN_COLOR_WHITE},
{169, 250000, SKIN_CLASS_ECONOM, SKIN_SEX_FEMALE, SKIN_COLOR_WHITE},
{228, 250000, SKIN_CLASS_ECONOM, SKIN_SEX_MALE, SKIN_COLOR_WHITE},
{185, 250000, SKIN_CLASS_ECONOM, SKIN_SEX_MALE, SKIN_COLOR_WHITE},
{117, 250000, SKIN_CLASS_ECONOM, SKIN_SEX_MALE, SKIN_COLOR_WHITE},
{59, 250000, SKIN_CLASS_ECONOM, SKIN_SEX_MALE, SKIN_COLOR_WHITE},
{90, 280000, SKIN_CLASS_ECONOM, SKIN_SEX_FEMALE, SKIN_COLOR_WHITE},
{111, 300000, SKIN_CLASS_ECONOM, SKIN_SEX_MALE, SKIN_COLOR_WHITE},
{55, 300000, SKIN_CLASS_ECONOM, SKIN_SEX_FEMALE, SKIN_COLOR_WHITE},
{56, 300000, SKIN_CLASS_ECONOM, SKIN_SEX_FEMALE, SKIN_COLOR_WHITE},
{187, 300000, SKIN_CLASS_ECONOM, SKIN_SEX_MALE, SKIN_COLOR_WHITE},
{214, 300000, SKIN_CLASS_ECONOM, SKIN_SEX_FEMALE, SKIN_COLOR_WHITE},
{250, 300000, SKIN_CLASS_ECONOM, SKIN_SEX_MALE, SKIN_COLOR_WHITE},
{141, 300000, SKIN_CLASS_ECONOM, SKIN_SEX_FEMALE, SKIN_COLOR_WHITE},
{211, 300000, SKIN_CLASS_ECONOM, SKIN_SEX_FEMALE, SKIN_COLOR_WHITE},
{290, 300000, SKIN_CLASS_ECONOM, SKIN_SEX_MALE, SKIN_COLOR_WHITE},
{150, 350000, SKIN_CLASS_ECONOM, SKIN_SEX_FEMALE, SKIN_COLOR_WHITE},
{263, 350000, SKIN_CLASS_ECONOM, SKIN_SEX_FEMALE, SKIN_COLOR_WHITE},
{188, 350000, SKIN_CLASS_ECONOM, SKIN_SEX_MALE, SKIN_COLOR_WHITE},
{249, 350000, SKIN_CLASS_ECONOM, SKIN_SEX_MALE, SKIN_COLOR_WHITE},
{171, 350000, SKIN_CLASS_ECONOM, SKIN_SEX_MALE, SKIN_COLOR_WHITE},
{98, 350000, SKIN_CLASS_ECONOM, SKIN_SEX_MALE, SKIN_COLOR_WHITE},
{189, 400000, SKIN_CLASS_ECONOM, SKIN_SEX_MALE, SKIN_COLOR_WHITE},
{223, 400000, SKIN_CLASS_ECONOM, SKIN_SEX_MALE, SKIN_COLOR_WHITE},
{147, 400000, SKIN_CLASS_ECONOM, SKIN_SEX_MALE, SKIN_COLOR_WHITE},
{126, 400000, SKIN_CLASS_ECONOM, SKIN_SEX_MALE, SKIN_COLOR_WHITE},
{240, 400000, SKIN_CLASS_ECONOM, SKIN_SEX_MALE, SKIN_COLOR_WHITE},
{172, 400000, SKIN_CLASS_ECONOM, SKIN_SEX_FEMALE, SKIN_COLOR_WHITE},
{194, 400000, SKIN_CLASS_ECONOM, SKIN_SEX_FEMALE, SKIN_COLOR_WHITE},
{91, 450000, SKIN_CLASS_ECONOM, SKIN_SEX_FEMALE, SKIN_COLOR_WHITE},
{216, 450000 , SKIN_CLASS_ECONOM, SKIN_SEX_FEMALE, SKIN_COLOR_WHITE},
{93, 500000, SKIN_CLASS_ECONOM, SKIN_SEX_FEMALE, SKIN_COLOR_WHITE},
{46, 500000, SKIN_CLASS_ECONOM, SKIN_SEX_MALE, SKIN_COLOR_WHITE},
{186, 500000, SKIN_CLASS_ECONOM, SKIN_SEX_MALE, SKIN_COLOR_WHITE},
{294, 500000, SKIN_CLASS_ECONOM, SKIN_SEX_MALE, SKIN_COLOR_WHITE},
{233, 550000, SKIN_CLASS_ECONOM, SKIN_SEX_FEMALE, SKIN_COLOR_WHITE},
{299, 650000, SKIN_CLASS_ECONOM, SKIN_SEX_MALE, SKIN_COLOR_WHITE},
{79, 2000, SKIN_CLASS_ECONOM, SKIN_SEX_MALE, SKIN_COLOR_BLACK},
{13, 2000, SKIN_CLASS_ECONOM, SKIN_SEX_FEMALE, SKIN_COLOR_BLACK},
{15, 10000, SKIN_CLASS_ECONOM, SKIN_SEX_MALE, SKIN_COLOR_BLACK},
{195, 15000, SKIN_CLASS_ECONOM, SKIN_SEX_FEMALE, SKIN_COLOR_BLACK},
{9, 20000, SKIN_CLASS_ECONOM, SKIN_SEX_FEMALE, SKIN_COLOR_BLACK},
{10, 20000, SKIN_CLASS_ECONOM, SKIN_SEX_FEMALE, SKIN_COLOR_BLACK},
{21, 20000, SKIN_CLASS_ECONOM, SKIN_SEX_MALE, SKIN_COLOR_BLACK},
{6, 20000, SKIN_CLASS_ECONOM, SKIN_SEX_MALE, SKIN_COLOR_BLACK},
{238, 25000, SKIN_CLASS_ECONOM, SKIN_SEX_FEMALE, SKIN_COLOR_BLACK},
{222, 30000, SKIN_CLASS_ECONOM, SKIN_SEX_MALE, SKIN_COLOR_BLACK},
{66, 30000, SKIN_CLASS_ECONOM, SKIN_SEX_MALE, SKIN_COLOR_BLACK},
{24, 30000, SKIN_CLASS_ECONOM, SKIN_SEX_MALE, SKIN_COLOR_BLACK},
{25, 30000, SKIN_CLASS_ECONOM, SKIN_SEX_MALE, SKIN_COLOR_BLACK},//50
{176, 30000, SKIN_CLASS_ECONOM, SKIN_SEX_MALE, SKIN_COLOR_BLACK},
{67, 35000, SKIN_CLASS_ECONOM, SKIN_SEX_MALE, SKIN_COLOR_BLACK},
{7, 40000, SKIN_CLASS_ECONOM, SKIN_SEX_MALE, SKIN_COLOR_BLACK},//40
{180, 40000, SKIN_CLASS_ECONOM, SKIN_SEX_MALE, SKIN_COLOR_BLACK},
{14, 50000, SKIN_CLASS_ECONOM, SKIN_SEX_MALE, SKIN_COLOR_BLACK},
{4, 80000, SKIN_CLASS_ECONOM, SKIN_SEX_MALE, SKIN_COLOR_BLACK},
{5, 80000, SKIN_CLASS_ECONOM, SKIN_SEX_MALE, SKIN_COLOR_BLACK},
{35, 80000, SKIN_CLASS_ECONOM, SKIN_SEX_MALE, SKIN_COLOR_BLACK},
{36, 80000, SKIN_CLASS_ECONOM, SKIN_SEX_MALE, SKIN_COLOR_BLACK},
{183, 90000, SKIN_CLASS_ECONOM, SKIN_SEX_MALE, SKIN_COLOR_BLACK},
{69, 90000, SKIN_CLASS_ECONOM, SKIN_SEX_FEMALE, SKIN_COLOR_BLACK},
{297, 100000, SKIN_CLASS_ECONOM, SKIN_SEX_MALE, SKIN_COLOR_BLACK},
{190, 160000, SKIN_CLASS_ECONOM, SKIN_SEX_FEMALE, SKIN_COLOR_BLACK},
{28, 180000, SKIN_CLASS_ECONOM, SKIN_SEX_MALE, SKIN_COLOR_BLACK},//60
{156, 200000, SKIN_CLASS_ECONOM, SKIN_SEX_MALE, SKIN_COLOR_BLACK},
{22, 200000, SKIN_CLASS_ECONOM, SKIN_SEX_MALE, SKIN_COLOR_BLACK},
{17, 250000, SKIN_CLASS_ECONOM, SKIN_SEX_MALE, SKIN_COLOR_BLACK},
{11, 300000, SKIN_CLASS_ECONOM, SKIN_SEX_FEMALE, SKIN_COLOR_BLACK},
{269, 300000, SKIN_CLASS_ECONOM, SKIN_SEX_MALE, SKIN_COLOR_BLACK},
{12, 350000, SKIN_CLASS_ECONOM, SKIN_SEX_FEMALE, SKIN_COLOR_BLACK},
{20, 350000, SKIN_CLASS_ECONOM, SKIN_SEX_MALE, SKIN_COLOR_BLACK},
{19, 400000, SKIN_CLASS_ECONOM, SKIN_SEX_MALE, SKIN_COLOR_BLACK},
{219, 450000, SKIN_CLASS_ECONOM, SKIN_SEX_FEMALE, SKIN_COLOR_BLACK},
{296, 450000, SKIN_CLASS_ECONOM, SKIN_SEX_MALE, SKIN_COLOR_BLACK},
{293, 500000, SKIN_CLASS_ECONOM, SKIN_SEX_MALE, SKIN_COLOR_BLACK}
};
Код:
else if(clickedid == gSkinShopDraw[3])
{
new b_skin = GetPlayerSkin(playerid), b_index = -15;
for(new x; x < sizeof(gSkins); x ++)
{
if(gSkins[x][skinID] != b_skin) continue;
b_index = x;
break;
}
SetPVarInt(playerid, "clothes_select", b_index);
SPFD(playerid,dBuySkin,0,"Покупка одеды","Да","Нет","{"#cW"}Вы хотите купить эту одежду за {"#cRED"}$%i{"#cW"}?",GetSkinPrice(b_index));
}
Код:
case dBuySkin:
{
if(!response) return 1;
new houseid = pData[playerid][pHouse]-1;
if(!pData[playerid][pHouse] || !gHouses[houseid][houseImprove][3] || ((houseid+1) > 0 && pData[playerid][pMysqlID] != gHouses[houseid][houseOwnerID])) ShowPlayerDialog(playerid,dBuySkin2,0,"Покупка одежды","{"#cRED"}Внимание! {"#cW"}У Вас нет шкафа для одежды.\nЕсли Вы купите эту одежду, то она заменит вашу текущую\nВы все равно хотите купить Выбранную одежду?","Да","Нет");
else
{
new skinVib = GetPVarInt(playerid,"clothes_select");
new skin = gSkins[skinVib][skinID];
new price = gSkins[skin][skinPrice];
new id = pTemp[playerid][pSelectedBusinessID];
new slot = -1;
for(new i;i<3;i++)
{
if(skin == gHouses[houseid][houseSkin][i]) return SendClientMessage(playerid,CGRAY,"У Вас уже есть эта одежда в шкафу");
if(!gHouses[houseid][houseSkin][i]) {slot = i; break;}
}
if(slot == -1) return ShowPlayerDialog(playerid,dBuySkin2,0,"Покупка одежды","{"#cRED"}Внимание! {"#cW"}У Вас недостаточно места в шкафу.\nЕсли Вы купите эту одежду, то она заменит вашу текущую\nВы все равно хотите купить Выбранную одежду?","Да","Нет");
if(GetPlayerMoneyEx(playerid) < price) return SendClientMessage(playerid,CGRAY,"Недостаточно денег");
if(gBusiness[id][busiOwnerID])
{
if(gBusiness[id][busiProduct] - floatround((price / 150) * 5) / 10 <= 0) return SendClientMessage(playerid, CGRAY, "Ошибка: В бизнесе недостаточно продуктов.");
}
gBusiness[id][busiBank] += floatround((price / 150) * 12);
gBusiness[id][busiDay10] += floatround((price / 150) * 12);
UpdateBusinessData(id+1,"day10",gBusiness[id][busiDay10]);
gBusiness[id][busiProduct] -= floatround((price / 150) * 5) / 20;
UpdateBusinessText(id);
UpdateBusinessDataEx(id+1,"product",gBusiness[id][busiProduct],"bank",gBusiness[id][busiBank]);
gHouses[houseid][houseSkin][slot] = skin;
UpdateHouseDress(houseid);
pData[playerid][pMoney] -= price;
SendClientMessage(playerid,CGREEN,"Одежда была доставлена в ваш шкаф");
pTemp[playerid][pChangingSkin] = false;
if(GetPVarInt(playerid, "curskin") == pData[playerid][pFractionSkin] || (!(houseid+1) || ((houseid+1) > 0 && gHouses[houseid][houseOwnerID] != pData[playerid][pMysqlID])) && pData[playerid][pFraction]) SetPlayerSkinEx(playerid, GetPVarInt(playerid, "curskin"));
else pData[playerid][pSkin] = skin, SetPlayerSkinEx(playerid,skin);
pData[playerid][pMoney] -= price;
HidePlayerClothesTD(playerid);
pTemp[playerid][pJustTP] = true;
SetPlayerPos(playerid, GetPVarFloat(playerid, "posx"), GetPVarFloat(playerid, "posy"), GetPVarFloat(playerid, "posz"));
SetPlayerInterior(playerid, GetPVarInt(playerid, "interior"));
SetPlayerVirtualWorld(playerid, GetPVarInt(playerid, "vw"));
SetPlayerFacingAngle(playerid, GetPVarInt(playerid, "posa"));
TogglePlayerControllable(playerid, 1);
SetCameraBehindPlayer(playerid);
DeletePVar(playerid, "posx");
DeletePVar(playerid, "posy");
DeletePVar(playerid, "posz");
DeletePVar(playerid, "posa");
DeletePVar(playerid, "interior");
DeletePVar(playerid, "vw");
DeletePVar(playerid, "clothes_sel");
DeletePVar(playerid, "clothes_class");
pTemp[playerid][pChangingSkin] = false;
}
}
case dBuySkin2:
{
if(!response) return 1;
new skinNn = GetPVarInt(playerid,"clothes_select");
new skin = gSkins[skinNn][skinID];
new houseid = pData[playerid][pHouse]-1;
new price = gSkins[skin][skinPrice];
new id = pTemp[playerid][pSelectedBusinessID];
if(GetPlayerMoneyEx(playerid) < price) return SendClientMessage(playerid,CGRAY,"Недостаточно денег");
if(gBusiness[id][busiOwnerID])
{
if(gBusiness[id][busiProduct] - floatround((price / 150) * 5) / 10 <= 0) return SendClientMessage(playerid, CGRAY, "Ошибка: В бизнесе недостаточно продуктов.");
}
gBusiness[id][busiBank] += floatround((price / 150) * 5);
gBusiness[id][busiDay10] += floatround((price / 150) * 5);
UpdateBusinessData(id+1,"day10",gBusiness[id][busiDay10]);
gBusiness[id][busiProduct] -= floatround((price / 150) * 5) / 10;
UpdateBusinessText(id);
UpdateBusinessDataEx(id+1,"product",gBusiness[id][busiProduct],"bank",gBusiness[id][busiBank]);
if((houseid+1) && pData[playerid][pMysqlID] == gHouses[houseid][houseOwnerID])
{
new slot=-1, cnt;
for(new i;i<3;i++)
{
if(gHouses[houseid][houseSkin][i]) cnt++;
if(gHouses[houseid][houseSkin][i] == pData[playerid][pSkin]) slot = i;
}
if(cnt >= 3)
{
if(slot == -1) return SendClientMessage(playerid,CRED,"Ошибка при нахождении заменямого скина в шкафу");
gHouses[houseid][houseSkin][slot] = skin;
UpdateHouseDress(houseid);
}
}
UpdatePlayerData(playerid,"skin",skin);
pData[playerid][pMoney] -= price;
pData[playerid][pSkin] = skin;
pTemp[playerid][pChangingSkin] = false;
if(GetPVarInt(playerid, "curskin") == pData[playerid][pFractionSkin] || (!(houseid+1) || ((houseid+1) > 0 && gHouses[houseid][houseOwnerID] != pData[playerid][pMysqlID])) && pData[playerid][pFraction]) SetPlayerSkinEx(playerid, GetPVarInt(playerid, "curskin"));
else SetPlayerSkinEx(playerid,pData[playerid][pSkin]);
pData[playerid][pMoney] -= price;
HidePlayerClothesTD(playerid);
pTemp[playerid][pJustTP] = true;
SetPlayerPos(playerid, GetPVarFloat(playerid, "posx"), GetPVarFloat(playerid, "posy"), GetPVarFloat(playerid, "posz"));
SetPlayerInterior(playerid, GetPVarInt(playerid, "interior"));
SetPlayerVirtualWorld(playerid, GetPVarInt(playerid, "vw"));
SetPlayerFacingAngle(playerid, GetPVarInt(playerid, "posa"));
TogglePlayerControllable(playerid, 1);
SetCameraBehindPlayer(playerid);
DeletePVar(playerid, "posx");
DeletePVar(playerid, "posy");
DeletePVar(playerid, "posz");
DeletePVar(playerid, "posa");
DeletePVar(playerid, "interior");
DeletePVar(playerid, "vw");
DeletePVar(playerid, "clothes_sel");
DeletePVar(playerid, "clothes_class");
pTemp[playerid][pChangingSkin] = false;
if(pData[playerid][pFraction] == 0) { SetPlayerSkinEx(playerid,pData[playerid][pSkin]); }
}
