Заказать Сервер Заказать Плагин Контакты Поиск

[ вход ]
[ последние сообщения ]

Страница 1 из 11
Форум » SourceMod - Counter Strike Source && CS GO » Обсуждение » Текст
Текст
BlooDrayneII Дата: Суббота, 05.12.2015, 17:39:20 | Сообщение # 1
Сообщений: 18
Репутация: 0 [ +/- ]
Здравствуйте еще раз, в общем сделал функцию, а она не работает, вот код:

Что я не так сделал?
 
dases2003 Дата: Суббота, 05.12.2015, 17:44:49 | Сообщение # 2
Сообщений: 108
Репутация: 1 [ +/- ]
Вот так должно работать

Func_GetGift( iClient, String: sGifts[ ] )
{
switch( GetRandomInt( 1,4 ) )
{
case 1:
{
strcopy( sGifts, sizeof( sGifts ), "Вы выиграли m4a1" );
}
case 2:
{
strcopy( sGifts, sizeof( sGifts ), "Вы выиграли ak-47" );
}
case 3:
{
strcopy( sGifts, sizeof( sGifts ), "Вы выиграли MP5" );
}
case 4:
{
strcopy( sGifts, sizeof( sGifts ), "Вы выиграли Desert Eagle" );
}
}
}


Сообщение отредактировал dases2003 - Суббота, 05.12.2015, 19:05:59
 
BarD Дата: Суббота, 05.12.2015, 18:09:04 | Сообщение # 3
Сообщений: 944
Репутация: 132 [ +/- ]
dases2003, забыл ;
 
_R1KO_ Дата: Суббота, 05.12.2015, 18:13:21 | Сообщение # 4
Сообщений: 181
Репутация: 25 [ +/- ]
FormatEx -> strcopy
 
dases2003 Дата: Суббота, 05.12.2015, 19:06:09 | Сообщение # 5
Сообщений: 108
Репутация: 1 [ +/- ]
Поправил пост
 
_R1KO_ Дата: Суббота, 05.12.2015, 19:36:41 | Сообщение # 6
Сообщений: 181
Репутация: 25 [ +/- ]
Сюда Func_GetGift( iClient, String: sGifts[ ] ) нужно еще передавать длину строки т.к. sizeof будет выдавать ошибки.
 
BlooDrayneII Дата: Суббота, 05.12.2015, 19:40:23 | Сообщение # 7
Сообщений: 18
Репутация: 0 [ +/- ]
Либо что-то я не так делаю, либо код не верный
мне нужно что бы было примерно так:
PrintToChat(client, "Вы получили %s.", GetGift(client));
то есть что бы через GetGift можно было узнать, то есть что бы она работала на пример как GetPlayerTeam или GetPlayerHealth, ну в общем что-то вроде этого.
 
dases2003 Дата: Суббота, 05.12.2015, 20:10:35 | Сообщение # 8
Сообщений: 108
Репутация: 1 [ +/- ]
Не понимаю цели, опиши конкретное ТЗ
 
BlooDrayneII Дата: Суббота, 05.12.2015, 20:59:07 | Сообщение # 9
Сообщений: 18
Репутация: 0 [ +/- ]
Цитата dases2003 ()
Не понимаю цели, опиши конкретное ТЗ

Смотри допустим есть команда:
if(strcmp(text[startidx], "gift", false) == 0)
{
PrintToClient(client, "Вы получили %s.", GetGift(client));
}


То есть что бы функция выводила что написано в GetGift.

Вот как пример:
if(strcmp(text[startidx], "team", false) == 0)
{
PrintToClient(client, "Ваша команда: %d.", GetPlayerTeam(client));
}


мне нужно что бы GetGift работал как GetPlayerTeam или похожие ему.

То есть мне нужно что бы при вводе команды gift выдало рандом с GetGift и дописало текст мой.
Пример:
PrintToClient(client, "Вы получили m4a1.", GetGift(client));
PrintToClient(client, "Вы получили ak-47.", GetGift(client));

что бы функция GetGift(client), дополнила текст мой Вы получили %s.


Сообщение отредактировал BlooDrayneII - Суббота, 05.12.2015, 21:12:28
 
_R1KO_ Дата: Суббота, 05.12.2015, 21:35:28 | Сообщение # 10
Сообщений: 181
Репутация: 25 [ +/- ]
BlooDrayneII,
Код
if(strcmp(text[startidx], "gift", false) == 0)
{
    decl String:sBuffer[32];
    Func_GetGift(client, sBuffer, 32);
    PrintToClient(client, "Вы получили %s.", sBuffer);
}

Func_GetGift( iClient, String: sBuffer[ ], len)
{
    switch( GetRandomInt( 1,4 ) )
    {
    case 1:
  {
   strcopy( sGifts, len, "m4a1" );
  }
    case 2:
  {
   strcopy( sGifts, len, "ak-47" );
  }
    case 3:
  {
   strcopy( sGifts, len, "MP5" );
  }
    case 4:
  {
   strcopy( sGifts, len, "Desert Eagle" );
  }
    }
}


Сообщение отредактировал _R1KO_ - Суббота, 05.12.2015, 23:58:03
 
BlooDrayneII Дата: Суббота, 05.12.2015, 22:02:04 | Сообщение # 11
Сообщений: 18
Репутация: 0 [ +/- ]
_R1KO_. спасибо, то что нужно.)
 
Форум » SourceMod - Counter Strike Source && CS GO » Обсуждение » Текст
Страница 1 из 11
Поиск: