Артём246
Дебютант
Привет!! делаю сервре и тут баг с костями для казино, короче когда 3 человека делают ставки и крупье начинает игру, то 1 человек бросил кубики и выиграет, а другие не могут брость даже если дойдут до 0, там где автоматом бросает... Может найдёте баг и исправите? Если надо ещё что-то напишите в ВК:
Чтобы видеть скрытое содержание Зарегистрируйтесь на форуме!
PHP:
if(GetPVarInt(playerid, "Casino") == 0)
{
if(KostiPlayerStatus[playerid])
{
if(!KostiStolStart[KostiPlayerType[playerid]]) givePlayerMoney(playerid, KostiStolCost[KostiPlayerType[playerid]]);
KostiStolBank[KostiPlayerType[playerid]] -= KostiStolCost[KostiPlayerType[playerid]];
KostiStolPlayers[KostiPlayerType[playerid]] -= 1;
KostiPlayerStatus[playerid] = false;
}
for(new i = 0; i <= 5; i ++) PlayerTextDrawHide(playerid, DiceBox_TD[playerid][i]);
for(new i = 0; i <= 3; i ++) PlayerTextDrawHide(playerid, DiceText_TD[playerid][i]);
CancelSelectTextDraw(playerid);
TogglePlayerControllable(playerid, true);
} else {
KostiPlayerStatus[playerid] = false;
for(new i = 0; i <= 5; i ++) PlayerTextDrawHide(playerid, DiceBox_TD[playerid][i]);
for(new i = 0; i <= 3; i ++) PlayerTextDrawHide(playerid, DiceText_TD[playerid][i]);
CancelSelectTextDraw(playerid);
TogglePlayerControllable(playerid, true);
}
}
if(playertextid == DiceBox_TD[playerid][4])
{
if(GetPVarInt(playerid, "Casino") == 0)
{
if(!KostiPlayerStatus[playerid]) return SendClientMessage(playerid, COLOR_SYSTEM, "Ты не сделал ставку");
if(!KostiStolStart[KostiPlayerType[playerid]]) return SendClientMessage(playerid, COLOR_GREY, "Игра еще не началась");
if(KostiOchki[playerid] > 0) return true;
new kubik1 = random(6)+1;
new kubik2 = random(6)+1;
KostiOchki[playerid] = kubik1 + kubik2;
format(glstr, sizeof(glstr), "В сумме у %s на двух кубиках выпало - %d", Name(playerid), KostiOchki[playerid]);
foreach(Player, i)
{
if(!InGame(i)) continue;
if(KostiPlayerType[i] == KostiPlayerType[playerid])
{
SendClientMessage(i, 0xFFCC00, glstr);
}
}
} else {
if(KostiStolStart[KostiPlayerType[playerid]]) return SendClientMessage(playerid, COLOR_SYSTEM, "Игра уже началась");
if(KostiStolPlayers[KostiPlayerType[playerid]] < 2) return SendClientMessage(playerid, COLOR_SYSTEM, "Не хватает игроков для старта!");
if(KostiStolCost[KostiPlayerType[playerid]] == 0) return SendClientMessage(playerid, COLOR_SYSTEM, "Ты не сделал ставку");
KostiStolStart[KostiPlayerType[playerid]] = true;
KostiStolTime[KostiPlayerType[playerid]] = 15;
KostiStolID = KostiPlayerType[playerid];
}
}
if(playertextid == DiceBox_TD[playerid][3])
{
if(GetPVarInt(playerid, "Casino") == 0)
{
if(PI[playerid][Money] < KostiStolCost[KostiPlayerType[playerid]]) return SendClientMessage(playerid, COLOR_SYSTEM, "У тебя не хватает денег");
if(KostiStolCost[KostiPlayerType[playerid]] == 0) return SendClientMessage(playerid, COLOR_SYSTEM, "Крупье не установил ставку");
if(KostiPlayerStatus[playerid]) return SendClientMessage(playerid, COLOR_SYSTEM, "Ты уже играешь здесь!");
if(KostiStolStart[KostiPlayerType[playerid]]) return SendClientMessage(playerid, COLOR_SYSTEM, "Игра уже началась");
removePlayerMoney(playerid, KostiStolCost[KostiPlayerType[playerid]]);
KostiStolBank[KostiPlayerType[playerid]] += KostiStolCost[KostiPlayerType[playerid]];
KostiStolPlayers[KostiPlayerType[playerid]] += 1;
KostiPlayerStatus[playerid] = true;
DiceBank(KostiPlayerType[playerid]);
DicePlayer(KostiPlayerType[playerid]);
SendClientMessage(playerid, 0x00BFFFFF, "Ты сделал ставку");
} else {
if(KostiStolStart[KostiPlayerType[playerid]]) return SendClientMessage(playerid, COLOR_SYSTEM, "Игра уже началась");
if(KostiStolPlayers[KostiPlayerType[playerid]] > 0) return SendClientMessage(playerid, COLOR_SYSTEM, "Ставка уже выставлена! Изменять можно только при отсутствии игроков у стала!");
ShowPlayerDialog(playerid, D_Casino_Dice, DIALOG_STYLE_INPUT, "{FFFFFF}Кости", "{FFFFFF}Установить ставку для стола\nМинимальная ставка: $1000\nМаксимальная ставка: $5000000", "Выбрать", "Назад");
}
}
Последнее редактирование модератором:
