x330122
Участник
- Сообщения
- 357
- Реакции
- 152
Привет народ, можете помочь пофиксить ошибку с кодом ?
Проблема со строками :
Если поставить credits(i), то переведется рандомное количество кредитов, а не столько сколько указано в аргументе. :(
P.S ^ Круглые скобки потому-что если поставить квадратые то форум не видит их
Сам код:
Проблема со строками :
C-подобный:
Store_SetClientCredits(client, Store_GetClientCredits(client)-credits);
Store_SetClientCredits(target_list[i], Store_GetClientCredits(target_list[i])+credits);
P.S ^ Круглые скобки потому-что если поставить квадратые то форум не видит их
Сам код:
C-подобный:
public Action Command_ShowCredits(client,args)
{
decl String:target[65];
decl String:credits[65];
decl String:target_name[MAX_TARGET_LENGTH];
decl target_list[MAXPLAYERS];
decl target_count;
decl bool:tn_is_ml;
if (args < 2)
{
ReplyToCommand(client, "[SM] Используй !crtransfer <ник игрока или ID>, <кол-во кредитов>.");
return Plugin_Handled;
}
GetCmdArg(1, target, sizeof(target));
GetCmdArg(2, credits, sizeof(credits));
if((target_count = ProcessTargetString(
target,
client,
target_list,
MAXPLAYERS,
0,
target_name,
sizeof(target_name),
tn_is_ml)) <= 0)
{
ReplyToTargetError(client, target_count);
return Plugin_Handled;
}
for(new i = 0; i < target_count; i++)
{
if(GetClientUserId(target_list[i]) == GetClientUserId(client))
{
CPrintToChat(client, "{cyan}Вы не можете переводить кредиты самому себе.");
}
if(Store_GetClientCredits(client) <= 0)
{
CPrintToChat(client, "{cyan}У вас недостаточно кредитов.");
return Plugin_Handled;
}
new String:ransfer[225];
GetClientName(target_list[i], ransfer, sizeof(ransfer));
CPrintToChat(client, "{cyan}Вы перевели {lime}%s{cyan} игроку {snow}%s", credits, ransfer);
Store_SetClientCredits(client, Store_GetClientCredits(client)-credits);
Store_SetClientCredits(target_list[i], Store_GetClientCredits(target_list[i])+credits);
}
return Plugin_Handled;
}