Добро пожаловать на Pro Pawn - Портал о PAWN-скриптинге.
Показано с 1 по 3 из 3

Тема: Кости

  1. #1
    Аватар для Pawn.Dima
    Пользователь

    Статус
    Оффлайн
    Регистрация
    05.04.2020
    Сообщений
    37
    Репутация:
    0 ±

    Кости

    Здравствуйте подскажите исправить ошибку
    чтобы было понятно покажу вот так
    вот у меня есть поле
    PHP код:
    -- --
    -- --
    -- --
    -- --
    -- -- 
    как сделать так чтобы было
    PHP код:
    Pawn.Dima --
    -- --
    -- --
    -- --
    -- -- 
    и когда заходил 2 игрок было вот так
    PHP код:
    Pawn.Dima --
    Pro-Pawn --
    -- --
    -- --
    -- -- 
    а у меня когда я первый захожу у меня изменяется в таблице вот так
    PHP код:
    Pawn.Dima --
    тут пустата
    тут пустата
    тут пустата
    тут пустата 
    черточки изчезают вот мне это нужно исправить но я незнаю как :(
    PHP код:
    PlayerBone[playerid][1] = CreatePlayerTextDraw(playerid527.309020163.916000"--~n~--~n~--~n~--~n~--");//Таблица с игроками (MAX 5 игроков)
        
    PlayerTextDrawLetterSize(playeridPlayerBone[playerid][1], 0.1751881.010665);
        
    PlayerTextDrawAlignment(playeridPlayerBone[playerid][1], 1);
        
    PlayerTextDrawColor(playeridPlayerBone[playerid][1], -1347440641);
        
    PlayerTextDrawUseBox(playeridPlayerBone[playerid][1], true);
        
    PlayerTextDrawBoxColor(playeridPlayerBone[playerid][1], 0);
        
    PlayerTextDrawSetShadow(playeridPlayerBone[playerid][1], 0);
        
    PlayerTextDrawSetOutline(playeridPlayerBone[playerid][1], 1);
        
    PlayerTextDrawBackgroundColor(playeridPlayerBone[playerid][1], 51);
        
    PlayerTextDrawFont(playeridPlayerBone[playerid][1], 1);
        
    PlayerTextDrawSetProportional(playeridPlayerBone[playerid][1], 1);

        
    PlayerBone[playerid][2] = CreatePlayerTextDraw(playerid585.057067165.082687"--~n~--~n~--~n~--~n~--");//Таблица с числом сколько выпало от 1 до 12
        
    PlayerTextDrawLetterSize(playeridPlayerBone[playerid][2], 0.1751881.010665);
        
    PlayerTextDrawAlignment(playeridPlayerBone[playerid][2], 2);
        
    PlayerTextDrawColor(playeridPlayerBone[playerid][2], -1347440641);
        
    PlayerTextDrawUseBox(playeridPlayerBone[playerid][2], true);
        
    PlayerTextDrawBoxColor(playeridPlayerBone[playerid][2], 0);
        
    PlayerTextDrawSetShadow(playeridPlayerBone[playerid][2], 0);
        
    PlayerTextDrawSetOutline(playeridPlayerBone[playerid][2], 1);
        
    PlayerTextDrawBackgroundColor(playeridPlayerBone[playerid][2], 51);
        
    PlayerTextDrawFont(playeridPlayerBone[playerid][2], 1);
        
    PlayerTextDrawSetProportional(playeridPlayerBone[playerid][2], 1); 
    PHP код:
        if(newkeys 16)
        {
            if(!
    GameStolID(playerid)) return false;
            new 
    playerids = -1;
            for(new 
    0!= 5i++)
            {
                if(
    BoneInfo[GameStolID(playerid)][bName][i] == INVALID_PLAYER_IDplayerids i;
            }
            if(
    GetPVarInt(playerid"CasinoRank") && BoneInfo[GameStolID(playerid)][bCrupie] != INVALID_PLAYER_ID)
                return 
    SendClientMessage(playeridCOLOR_WHITE"[Ошибка]: Тут уже работает крупье!");
            if(
    playerids && !GetPVarInt(playerid"CasinoRank"))
                return 
    SendClientMessage(playeridCOLOR_WHITE"[Ошибка]: За этим столом нет свободных мест!");
            if(!
    GetPVarInt(playerid"CasinoRank")) BoneInfo[GameStolID(playerid)][bName][playerids] = playerid;
            else 
    BoneInfo[GameStolID(playerid)][bCrupie] = playerid;
            for(new 
    i!= 4i++)
             {
                 
    TextDrawShowForPlayer(playeridBone[i]);
                
    PlayerTextDrawShow(playeridPlayerBone[playerid][i]);
            }
            
    SetPVarInt(playerid"GameStol"GameStolID(playerid));
            
    SelectTextDraw(playerid0x33AAFFFF);//Даем возможность управлять мышью и подсвечиваем TextDraw
            
    UpdateStol(GameStolID(playerid));
            return 
    1;
        } 
    PHP код:
    stock UpdateStol(stol_id)
    {
        new 
    string[100], string1[100];
        for(new 
    0GetPlayerPoolSize(); <= ji++)
        {
            if(
    GetPVarInt(i"GameStol") == stol_id)
            {
                
    format(stringsizeof(string), "Table %d"stol_id);
                
    PlayerTextDrawSetString(iPlayerBone[i][0], string);
                
    format(stringsizeof(string), "Bet: %i~n~Bank: %i~n~Money: %i"BoneInfo[stol_id][bBet], BoneInfo[stol_id][bBank], PlayerInfo[i][pMoney]);
                
    PlayerTextDrawSetString(iPlayerBone[i][3], string);
                for(new 
    ii 0ii 5ii++)
                {
                    if(
    BoneInfo[stol_id][bName][ii] != INVALID_PLAYER_ID)
                    {
                        
    format(stringsizeof(string), "%s~n~"PlayerInfo[BoneInfo[stol_id][bName][ii]][pName]);
                        
    PlayerTextDrawSetString(iPlayerBone[i][1], string);
                        
    strcat(string1string);
                    }
                    else
                    {
                        
    format(stringsizeof(string), "--~n~"GetPVarInt(i"GameStavka") == 0);
                        
    PlayerTextDrawSetString(iPlayerBone[i][1], string);
                        
    strcat(string1string);
                    }
                }
                for(new 
    iii 0iii 5iii++)
                {
                    if(
    BoneInfo[stol_id][bName][iii] != INVALID_PLAYER_ID && GetPVarInt(BoneInfo[stol_id][bName][iii], "GameStol"))
                    {
                        if(
    GetPVarInt(BoneInfo[stol_id][bName][iii], "GameStavka") == 1format(stringsizeof(string), "++~n~");
                        else 
    format(stringsizeof(string), "--~n~");
                        
    PlayerTextDrawSetString(iPlayerBone[i][2], string);
                        
    strcat(string1string);
                    }
                    else
                    {
                        
    format(stringsizeof(string), "--~n~");
                        
    PlayerTextDrawSetString(iPlayerBone[i][2], string);
                        
    strcat(string1string);
                    }
                }
            }
        }
        return 
    1;

    - - - Добавлено - - -

    Последний раз редактировалось Pawn.Dima; 07.06.2020 в 21:30.

  2. #2
    Аватар для punkochel
    Пользователь

    Статус
    Оффлайн
    Регистрация
    08.12.2018
    Адрес
    Россия
    Сообщений
    146
    Репутация:
    25 ±
    Изучи функцию strcat, или можно добавить под каждого игрока TextDraw, так будет более правильнее, будет возможность изменять данные конкретного игрока (или места), нежели пересобирать всю строку.
    Последний раз редактировалось punkochel; 09.06.2020 в 12:55.

  3. #3
    Аватар для Pawn.Dima
    Пользователь

    Статус
    Оффлайн
    Регистрация
    05.04.2020
    Сообщений
    37
    Репутация:
    0 ±
    спасибо я исправил но появилась еще одна проблема когда таймер завершается и время подходит к 0 то победил определяется то нет фиг его знает как будто stock то работает то нет и когда например за столом стоят 2 игрока
    1 кинул кости а другой нет то stock вообще не срабатывает помогите исправить не рабочий код до рабочего
    PHP код:
    forward CasinoTime();
    public 
    CasinoTime()
    {
        for(new 
    0MAX_BONESi++)
        {
            if(
    BoneInfo[i][bGameStart] > 1)
            {
                
    BoneInfo[i][bGameStart] --;
                new 
    texts[64];
                for(new 
    AGetMaxPlayers(); != BA++)
                {
                    if(
    GetPVarInt(A"BoneStol") == && (GetPVarInt(A"BoneStol_") || BoneInfo[i][bCrupie] == A))
                    {
                        if(
    BoneInfo[i][bGameStart] == && GetPVarInt(A"BoneStol_") == 1)
                        {
                            
    SetPVarInt(A"BoneStol_"random(12));
                            
    UpdateStol(i);
                        }
                        
    format(textssizeof(texts), "~g~%i"BoneInfo[i][bGameStart]);
                        
    GameTextForPlayer(Atexts10006);
                    }
                }
                if(
    BoneInfo[i][bGameStart] == 0ShowItog(i);
            }
        }
        return 
    1;

    PHP код:
    stock ShowItog(stol_id)
    {
        new 
    itog[3] = 0string[128];
        for(new 
    0GetPlayerPoolSize(); <= ji++)
        {
            if(
    GetPVarInt(i"BoneStol") == stol_id && GetPVarInt(i"BoneStol_") > && GetPVarInt(i"BoneStol_") > itog[0])
            {
                
    itog[0] = GetPVarInt(i"BoneStol_");
                
    itog[1] = i;
            }
            else if(
    GetPVarInt(i"BoneStol") == stol_id && GetPVarInt(i"BoneStol_") > && != itog[1] && GetPVarInt(i"BoneStol_") == itog[0])
            {
                
    itog[2] = i;
            }
        }
        if(
    itog[2] > itog[1])
        {
            for(new 
    0GetPlayerPoolSize(); <= ji++)
            {
                if(
    GetPVarInt(i"BoneStol") == stol_id && GetPVarInt(i"BoneStol_") > && GetPVarInt(i"BoneStol_") == itog[0])
                {
                    
    SetPVarInt(i"BoneStol_"1);
                    
    BoneInfo[stol_id][bGameStart] = 30;
                    
    SendClientMessage(i0x4B00B0AA"Вы попали в следующий раунд. У вас есть 30 секунд, чтобы бросить кости");
                }
                else if(
    GetPVarInt(i"BoneStol") == stol_idDeletePVar(i"BoneStol_");
            }
            
    UpdateStol(stol_id);
            return 
    1;
        }
        else if(
    itog[1] > itog[2])
        {
            for(new 
    0GetPlayerPoolSize(); <= ji++)
            {
                if(
    GetPVarInt(i"BoneStol") == stol_id)
                {
                    
    format(stringsizeof(string), "%s побеждает. Количество очков: %i"PlayerInfo[itog[1]][pName], itog[0]);
                    
    SendClientMessage(i0x4B00B0AAstring);
                    
    DeletePVar(i"BoneStol_");
                }
            }
            if(
    BoneInfo[stol_id][bCrupie] != INVALID_PLAYER_IDPlayerInfo[BoneInfo[stol_id][bCrupie]][pMoney] += 500;
            
    PlayerInfo[itog[1]][pMoney] += BoneInfo[stol_id][bBank]-(BoneInfo[stol_id][bBank]/10);
            
    BoneInfo[stol_id][bGameStart] = 0;
            
    BoneInfo[stol_id][bBet] = 0;
            
    BoneInfo[stol_id][bBank] = 0;
            
    UpdateStol(stol_id);
        }
        return 
    1;

    Последний раз редактировалось Pawn.Dima; 09.06.2020 в 19:42.

 

 

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •