Server IP: iEnemY.ru


Форум Главная Файлы Состав Карта Правила
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
Страница 1 из 11
Модератор форума: iEnemY 
Форум » Pawno » Скрипты , фильтр скрипты , гейм моды » Команда кражи денег (Очень красивый пример)
Команда кражи денег
iEnemYДата: Суббота, 04.09.2010, 00:47 | Сообщение # 1
^666^
Группа: ADMIN
Сообщений: 222
Репутация: 30
Статус: Offline
134942 iEnemY1
Code
if(strcmp(cmd, "/stealcash", true) == 0) // пример команды - /stealcash 3 200 (я краду 200 баксов, у игрока с ID 3 (его имя - Nick), у него 300 баксов.
{
    tmp = strtok(cmdtext, idx); // не спрашивай что ето - сам не знаю...
    if(!strlen(tmp)) // если ты нечего неввел вместо id игрока...
    {
        SendClientMessage(playerid, 0xFF0000CC, "ЮЗАЙ: Вы неввели ID игрока!"); // отправляем соопщение
     SendClientMessage(playerid, 0xFF0000CC, "ЮЗАЙ: /stealcash [ID игрока] [сколько]"); // отправляем соопщение
     return 1; // прекращаем выполнение команды
    }
    new giveplayerid;  // переменная, равна нулю
    new cash;           // тож самое
    new string[256];    // текстовая переменная
    giveplayerid = strval(tmp); // назначаем значение ID "жертвы" значение после ПРОБЕЛА (/stealcash(ПРОБЕЛ)3), тоесть giveplayerid = 3;
    tmp = strtok(cmdtext, idx); // тож самое, разделитель
    if(!strlen(tmp)) // если неввели сумму...
    {
        SendClientMessage(playerid, 0xFF0000CC, "ЮЗАЙ: Вы неввели сумму!"); // отправляем соопщение
     SendClientMessage(playerid, 0xFF0000CC, "ЮЗАЙ: /stealcash [ID игрока] [сколько]"); // отправляем соопщение
     return 1; // прекращаем выполнение команды
    }
    cash = strval(tmp); // присваиваем сумме значение 200, как и в случае с ID
    new hismoney = GetPlayerMoney(giveplayerid); // переменная, её значение - определяет значение денег игрока ID 3 (получаем 300)
    if(hismoney < cash) // если у него МЕНЬШЕ денег, чем мы краден, то пишем следующее...
    {
        format(string,256,"У него нету стоко. У него всеголиш %d%", hismoney); // задаем переменной string значение "У него нету стоко. У него всеголиш 300"
     SendClientMessage(playerid, 0xFF0000CC, string); // отсылаем соопщение "У него нету стоко. У него всеголиш 300" красным цветом
     return 1; // прекращаем выполнение команды
    }
       if(IsPlayerConnected(giveplayerid)) // если игрок с ID 3 есть на сервере
       {
           if(giveplayerid != INVALID_PLAYER_ID) // если ты ввел ккойто левый ID)))
           {
               new myname[MAX_PLAYER_NAME]; // текстовая переменная, размер 64. вместо 64 пишу MAX_PLAYER_NAME. почему? нелюблю быдлокод   
               new hisname[MAX_PLAYER_NAME]; // текстовая переменная, тож самое что и первое...

               GetPlayerName(playerid,myname,sizeof(myname)); // сохраняем в эту (myname) переменную myname твой ник. после етого myname = kenwoodiii
               GetPlayerName(giveplayerid,hisname,sizeof(hisname)); // сохраняем в эту (hisname) переменную hisname его ник (Nick). после етого hisname = Nick

               GivePlayerMoney(playerid, cash); // даем тебе сумму, кторую ты указал (200$)
               GivePlayerMoney(giveplayerd, -cash); // отнимаем у него 200$

               hismoney = GetPlayerMoney(giveplayerid); // обновляем значение hismoney (теперь оно равно новой сумме)
               new mymoney = GetPlayerMoney(playerid); // создаем переменную, её значение - твои деньги. было 100, украли 200, стало 300

               format(string,256,"Вы украли у %s деньги (%d$). У него осталось - %d$, у вас теперь - %d$", hisname, cash, hismoney, mymoney);
               /* форматируем переменную string. после етого она равна "Вы украли у Nick деньги (200$). У него осталось - 100$, у вас теперь - 300$", */
      SendClientMessage(playerid, 0x00FF00CC, string); // отсылаем зеленым цветом переменнуб string (то что выше ^ ^ ^)

      format(string,256,"У вас украл %s деньги (%d$). У вас осталось - %d$", myname, cash, hismoney);
      /* форматируем переменную string (угу, снова) после етого она равна "У вас украл kenwoodiii деньги (200$). У вас осталось - 100$", */
      SendClientMessage(giveplayerid, 0x00FF00CC, string); // отсылаем...
     }
     else
     {
         SendClientMessage(playerid,0xFF0000CC,"Вы ввели неверный ID!"); // ну если неверный айди, говорим об этом
     }
    }
    else
    {
     SendClientMessage(playerid, COLOR_GRAD1, "Игрока с этим ID нету на сервере!"); // если этот игрок не на сервере...
    }
    return 1; // ну на этом все. команда на 95% рабочая. изучай! все до*** понятно.
}


 
Форум » Pawno » Скрипты , фильтр скрипты , гейм моды » Команда кражи денег (Очень красивый пример)
Страница 1 из 11
Поиск: