/hbject - Выдача объектов - Форум Cheat-Master.ru
  • Страница 1 из 1
  • 1
Модератор форума: [CM]OlegEhtler, Getbackthere, Phoenixxx_Czar  
/hbject - Выдача объектов
olegfake Дата: Воскресенье, 28.07.2013, 23:45 | Сообщение # 1
Боец
Сообщений: 177
Статус: Offline
Вот примерный код команды выдачи объекта Samp-Rp написанный для мода RLS, кривой и без оптимизации ( на момент написания только учился Pawno так что извеняйте biggrin ):

Код
else if(strcmp(cmd, "/hbject", true) == 0)
     {
           if (PlayerInfo[playerid][pAdmin] >= 5)
        {
     tmp = strtok(cmdtext, idx);
     if(!strlen(tmp)) return SendClientMessage(playerid, COLOR_WHITE, "Введите: /hbject [ID игрока] [слот] [объект] [кость] [X] [Y] [Z] [aX] [aY] [aZ]  [bX] [bY] [bZ]");
     new playa = ReturnUser(tmp);
     tmp = strtok(cmdtext,idx);
     if(!strlen(tmp)) return SendClientMessage(playerid,COLOR_WHITE,"Используйте: /hbject [ID игрока] [слот] [объект] [кость] [X] [Y] [Z] [aX] [aY] [aZ]  [bX] [bY] [bZ]");
     new index = strval(tmp);
     tmp = strtok(cmdtext,idx);
     if(!strlen(tmp)) return SendClientMessage(playerid,COLOR_WHITE,"Используйте: /hbject [ID игрока] [слот] [объект] [кость] [X] [Y] [Z] [aX] [aY] [aZ]  [bX] [bY] [bZ]");
     new modelid = strval(tmp);
     tmp = strtok(cmdtext,idx);
     if(!strlen(tmp)) return SendClientMessage(playerid,COLOR_WHITE,"Используйте: /hbject [ID игрока] [слот] [объект] [кость] [X] [Y] [Z] [aX] [aY] [aZ]  [bX] [bY] [bZ]");
     new bone = strval(tmp);
     tmp = strtok(cmdtext,idx);
     if(bone <1||bone > 18){SendClientMessage(playerid,COLOR_GRAD1,"Параметр кость можно использовать только от 1 до 18"); return 1; }
     new Float: fOffsetX = floatstr(tmp);
           tmp = strtok(cmdtext,idx);
           if(!strlen(tmp)) return SendClientMessage(playerid,COLOR_WHITE,"Используйте: /hbject [ID игрока] [слот] [объект] [кость] [X] [Y] [Z] [aX] [aY] [aZ]  [bX] [bY] [bZ]");
           new Float: fOffsetY = floatstr(tmp);
           tmp = strtok(cmdtext,idx);
           if(!strlen(tmp)) return SendClientMessage(playerid,COLOR_WHITE,"Используйте: /hbject [ID игрока] [слот] [объект] [кость] [X] [Y] [Z] [aX] [aY] [aZ]  [bX] [bY] [bZ]");
           new Float: fOffsetZ = floatstr(tmp);
           tmp = strtok(cmdtext,idx);
           if(!strlen(tmp)) return SendClientMessage(playerid,COLOR_WHITE,"Используйте: /hbject [ID игрока] [слот] [объект] [кость] [X] [Y] [Z] [aX] [aY] [aZ]  [bX] [bY] [bZ]");
     new Float: fRotX = floatstr(tmp);
     tmp = strtok(cmdtext,idx);
     if(!strlen(tmp)) return SendClientMessage(playerid,COLOR_WHITE,"Используйте: /hbject [ID игрока] [слот] [объект] [кость] [X] [Y] [Z] [aX] [aY] [aZ]  [bX] [bY] [bZ]");
     new Float: fRotY = floatstr(tmp);
     tmp = strtok(cmdtext,idx);
     if(!strlen(tmp)) return SendClientMessage(playerid,COLOR_WHITE,"Используйте: /hbject [ID игрока] [слот] [объект] [кость] [X] [Y] [Z] [aX] [aY] [aZ]  [bX] [bY] [bZ]");
     new Float: fRotZ = floatstr(tmp);
     tmp = strtok(cmdtext,idx);
     if(!strlen(tmp)) return SendClientMessage(playerid,COLOR_WHITE,"Используйте: /hbject [ID игрока] [слот] [объект] [кость] [X] [Y] [Z] [aX] [aY] [aZ]  [bX] [bY] [bZ]");
     new Float: fScaleX = floatstr(tmp);
     tmp = strtok(cmdtext,idx);
        if(!strlen(tmp)) return SendClientMessage(playerid,COLOR_WHITE,"Используйте: /hbject [ID игрока] [слот] [объект] [кость] [X] [Y] [Z] [aX] [aY] [aZ]  [bX] [bY] [bZ]");
     new Float: fScaleY = floatstr(tmp);
     tmp = strtok(cmdtext,idx);
        if(!strlen(tmp)) return SendClientMessage(playerid,COLOR_WHITE,"Используйте: /hbject [ID игрока] [слот] [объект] [кость] [X] [Y] [Z] [aX] [aY] [aZ]  [bX] [bY] [bZ]");
     new Float: fScaleZ = floatstr(tmp);
     {
          if(IsPlayerConnected(playa))
        {
          if(playa != INVALID_PLAYER_ID)
            {
          SetPlayerAttachedObject(playa, index, modelid, bone, fOffsetX, fOffsetY, fOffsetZ, fRotX, fRotY, fRotZ ,fScaleX, fScaleY, fScaleZ);
          GetPlayerName(playa,giveplayer,sizeof(giveplayer));
        format(string, sizeof(string),"Вы прикрепили объект №%d игроку %s на слот №%d",modelid,giveplayer,index);
     SendClientMessage(playerid,COLOR_WHITE,string);
     }
        }
         else
        {
           SendClientMessage(playerid,COLOR_GREY,"Игрок оффлайн");
           return 1;
        }
     }
     }
      return 1;
     }


Так же имеется команду удаления объектов:

Код
else if(strcmp(cmd, "/unhbject", true) == 0)
     {
            if (PlayerInfo[playerid][pAdmin] >= 5)
            {
     tmp = strtok(cmdtext, idx);
     if(!strlen(tmp)) return SendClientMessage(playerid,COLOR_WHITE,"Используйте: /unhbject [id игрока] [слот объекта]");
        new playa = ReturnUser(tmp);
     tmp = strtok(cmdtext,idx);
     if(!strlen(tmp)) return SendClientMessage(playerid,COLOR_WHITE,"Используйте: /unhbject [id игрока] [слот объекта]");
     new index = strval(tmp);
     {
        if(IsPlayerConnected(playa))
        {
          if(playa != INVALID_PLAYER_ID)
            {
     RemovePlayerAttachedObject(playa, index);
     GetPlayerName(playa,giveplayer,sizeof(giveplayer));
        format(string, sizeof(string),"Вы удалили прикреплённый объект игроку %s на слоте №%d",giveplayer,index);
     SendClientMessage(playerid, COLOR_WHITE, string);
     }
        }
          else
          {
           SendClientMessage(playerid,COLOR_GREY,"Игрок оффлайн");
      }
     }
     }
              return 1;
     }


Автором данного кода являюсь я...


Всем добра =))
Голубь Дата: Среда, 31.07.2013, 10:28 | Сообщение # 2
Авторитет
Сообщений: 2137
Статус: Offline
/unhbject - на самп рп такого нет
Цитата (olegfake)
format(string, sizeof(string),"Вы прикрепили объект №%d игроку %s на слот №%d",modelid,giveplayer,index);
     SendClientMessage(playerid,COLOR_WHITE,string);

- на самп рп такого нет


двач
https://vk.com/povargek
  • Страница 1 из 1
  • 1
Поиск: