28.04.2012, 21:44
%{чем заполнить}{до какого порядка заполнять}d
format(string,64,"Рас два {%h}три",GetPlayerColor(p));
SendClientMessage(playerid, GetPlayerColor(p), "Welcome to my server!");
|
Никто не сталкивался с проблемой, связанной с Set/GetPlayerScore? Судя по отзывам, есть некоторый софт, который позволяет установить себе определенное кол-во фрагов и они еще сохраняться в аккаунт...
У меня используется Set/GetPlayerScore только в паблике отображения фрагов в ТАБ, все остальное через PlayerInfo[playerid][Kills] += 1; Однако "нехорошие люди" могут контролировать и изменять свою и чужие статистики аккаунтов по своему желанию... Есть ли способы как с этим бороться? |
|
Подскажите, как можно использовать GetPlayerColor() для изменения цвета текста, в примере ниже:
Code:
format(string,64,"Рас два {%h}три",GetPlayerColor(p));
|
format(string,64,"Рас два {%s}три",hexstr(GetPlayerColor(playerid)));
/**********/
stock hexstr(hex){
new str[8]={48,48,48,48,48,48,0,0},tmp[8],idx;
if(!hex)return str;
format(tmp,sizeof(tmp),"%x",((hex>>8)|0xFF000000)-0xFF000000);
idx=strlen(tmp);
for(new i;i<idx;i++)str[5-i]=tmp[idx-1-i];
return str;}
new tmp[256], Index;
tmp = strtok(params, Index),
new string[128];
format(string, sizeof(string), "{%06x}%s", GetPlayerColor(playerid) >>> 8, text);
SendClientMessageToAll(-1, string);
error 047: array sizes do not match, or destination array is too small
dcmd_carcolour(playerid, params[]){
//#pragma unused params
new tmp[256], tmp2[256], Index;
tmp = strtok(params, Index), tmp2 = strtok(params, Index);
if (IsPlayerInAnyVehicle(playerid) && GetPlayerState(playerid) != PLAYER_STATE_DRIVER) return SendClientMessage(playerid, COLOUR_PURPLE, "Только с водительского места.");
if (!strlen(tmp)){
SendClientMessage(playerid, COLOUR_PURPLE, "/carcolor (id 1) (id 2).");}
else if (!strlen(tmp2)){
ChangeVehicleColor(GetPlayerVehicleID(playerid), strval(tmp), strval(tmp));}
else if (!IsPlayerInAnyVehicle(playerid)){
SendClientMessage(playerid, COLOUR_PURPLE, "Только с водительского места.");}
else{
ChangeVehicleColor(GetPlayerVehicleID(playerid), strval(tmp), strval(tmp2));}
return 1;}
|
Что-то на 7 байт не тянет, компилирует исключительно с 256 или выше, иначе выскакивает ошибка:
PHP Code:
PHP Code:
|
|
7 байт - 7 символов(если будем считать цвета машин от 0 до 126), по 3 на два цвета, один на пробел между. Хотя по моему проще использовать sscanf, и задействовать всего 2 байта.
|

if(sscanf(params, "ri", id, reason)) return SendClientMessage(playerid, COLOR_DRED,"Usage: /Ban [playerid] [reason]");