PDA

Просмотр полной версии : [CMD] /color - смена цвета никнейма



L0ndl3m
03.01.2014, 17:50
Для создания команды потребуются:


DC_CMD (http://pro-pawn.ru/showthread.php?1028)
sscanf (http://forum.sa-mp.com/showthread.php?t=120356)




CMD:color(playerid, params[])
{
if(strlen(params) != 6)
return SendClientMessage(playerid, -1, "Используйте: /color [hex-color из 6 символов]");

new
hex = cellmin;

sscanf(params, "x", hex);
SetPlayerColor(playerid, hex = hex << 8 | 0xFF);

static const
fmt_str[] = "Вы сменили ваш цвет никнейма на: %s";

new
str[sizeof(fmt_str) - 2 + 6];

format(str, sizeof(str), fmt_str, params);
return SendClientMessage(playerid, -1, str);
}


Вторая версия команды на стандартном командном процессоре.

Для создания команды понадобится:


ConvertHexToInt (http://pro-pawn.ru/showthread.php?6348)




if(strcmp(cmdtext, "/color", true, 6) == 0)
{
if(strlen(cmdtext) != 13)
return SendClientMessage(playerid, -1, "Используйте: /color [hex-color из 6 символов]");

static const
fmt_str[] = "Вы сменили ваш цвет никнейма на: %s";

new
str[sizeof(fmt_str) - 2 + 6];

format(str, sizeof(str), fmt_str, cmdtext[7]);
SendClientMessage(playerid, -1, str);
return SetPlayerColor(playerid, ConvertHexToInt(cmdtext[7]) << 8 | 0xFF);
}



Автор: L0ndl3m (http://pro-pawn.ru/member.php?2057-L0ndl3m)

Специально для: Pro-Pawn.Ru (http://pro-pawn.ru)

Копирование данной статьи без разрешения автора запрещено!

Salvacore
03.01.2014, 18:35
Отлично!

TWIX
03.01.2014, 19:36
Как всегда на вышке!

"Volk"
18.01.2014, 15:49
Сделай на CMD

L0ndl3m
18.01.2014, 16:20
Сделай на CMD

Вообще-то команда уже на CMD.

"Volk"
18.01.2014, 16:30
в простом сделай это уже zcmd

[ForD]
18.01.2014, 22:46
в простом сделай это уже zcmd

это уже "DC_CMD" ну в принципе разницы нет

L0ndl3m
19.01.2014, 00:18
Первый пост обновлён, добавлена версия команды на стандартном командном процессоре.

BaBuIIIkaDrifteR
13.02.2015, 03:40
а как сделать что по номеру цвета допусти 123

BaBuIIIkaDrifteR
24.02.2015, 00:15
Если кто не понял я имею ввиду как сделать вот по этим числам?
http://data.photo.sibnet.ru/upload/imgbig/123940633658.jpg

L0ndl3m
24.02.2015, 00:25
Если кто не понял я имею ввиду как сделать вот по этим числам?
http://data.photo.sibnet.ru/upload/imgbig/123940633658.jpg
Массив с цветами создавайте, далее обращайтесь к указанной игроком ячейке этого массива.

BaBuIIIkaDrifteR
05.03.2015, 08:38
Сделал но почему то не меняет цвет ника ?

if(!sscanf(inputtext, "p", inputtext[0]))
{
if((inputtext[0] < 0 || inputtext[0] > 255))
{
SendClientMessage(playerid, -1, "ID цветов мугут быть от 0 до 255");
ShowPlayerDialog(playerid,3002, DIALOG_STYLE_INPUT, "[БЕТО ТЕСТ]Цвет ника бета","Например: 126", "OK", "CANCLE");
}
else
{
SetPlayerColor(pNick(playerid), inputtext[0]);
SendClientMessage(playerid, -1, "Вы изменили цвет своей ника [БЕТО ТЕСТ]!");
}
}

Mazzilla
05.03.2015, 15:21
new player_colors[] = {
0x00000000, 0xFFFFFFFF, ...
};
new color = strval(inputtext);
if( !(0 <= color <= 255))
{
SendClientMessage(playerid, -1, "ID цветов мугут быть от 0 до 255");
ShowPlayerDialog(playerid,3002, DIALOG_STYLE_INPUT, "[БЕТО ТЕСТ]Цвет ника бета","Например: 126", "OK", "CANCLE");
return true;
}
else
{
SetPlayerColor(pNick(playerid), player_colors[color]);
SendClientMessage(playerid, -1, "Вы изменили цвет своей ника [БЕТО ТЕСТ]!");
}

BaBuIIIkaDrifteR
06.03.2015, 16:25
new player_colors[] = {
0x00000000, 0xFFFFFFFF, ...
};
new color = strval(inputtext);
if( !(0 <= color <= 255))
{
SendClientMessage(playerid, -1, "ID цветов мугут быть от 0 до 255");
ShowPlayerDialog(playerid,3002, DIALOG_STYLE_INPUT, "[БЕТО ТЕСТ]Цвет ника бета","Например: 126", "OK", "CANCLE");
return true;
}
else
{
SetPlayerColor(pNick(playerid), player_colors[color]);
SendClientMessage(playerid, -1, "Вы изменили цвет своей ника [БЕТО ТЕСТ]!");
}

Спасибо )