PDA

Просмотр полной версии : [Вопрос] warning 202, 213, 215; error 001, 017



Mike_World
29.12.2016, 15:10
Привет всем ребята!
Вот ошибки

(11628) : warning 213: tag mismatch
(11636) : error 017: undefined symbol "rpmoney"
(11638) : error 001: expected token: ";", but found "-identifier-"
(11638) : warning 215: expression has no effect
(11640) : error 017: undefined symbol "formamt"
(11640) : warning 202: number of arguments does not match definition
(11640) : warning 202: number of arguments does not match definition
(11640) : error 017: undefined symbol "pName"
(11641) : error 017: undefined symbol "rpmoney"
(11642) : warning 215: expression has no effect
Вот сам код

if(dialogid == rpITEM)
{
if(response)
{
switch(listitem)
{
case 0:
{
new rpidplayer = SetPVarInt(playerid, "rpitem", playerid) & rpmoney = SetPVarInt(playerid, "rpmoney", strval(inputtext));
SPD(playerid, 228228, DIALOG_STYLE_INPUT, "РП ресурсы", "Введите id, кол-во.\nНапример: 20, 10000", "Далее", "Выход")
GetPVarInt(playerid, "rpidplayer") & GetPVarInt(playerid, "rpmoney");
new string[128];
formamt(string, sizeof(string), "Вы выдали %s, %d $",PlayerInfo[pName], rpmoney);
GivePlayerMoney(rpidplayer, rpmoney);
DeletePVar(playerid, "rpidplayer") & DeletePVar(playerid, "rpmoney");
return 1;
}
}
}
SPD(playerid, rpITEM, DIALOG_STYLE_LIST, "РП ресурсы", "[1]Деньги", "Далее", "Выход");
}
И команда для которой я делаю

CMD:RP(playerid, params[])
{
if(sscanf(params, "d", params[0])) return 1;
SPD(playerid, rpITEM, DIALOG_STYLE_LIST, "РП ресурсы", "[1]Деньги", "Далее", "Выход");
return 1;
}

qwezert
29.12.2016, 15:20
GetPVarInt(playerid, "rpidplayer") & GetPVarInt(playerid, "rpmoney");
new string[128];
formamt(string, sizeof(string), "Вы выдали %s, %d $",PlayerInfo[pName], rpmoney);
GivePlayerMoney(rpidplayer, rpmoney);
DeletePVar(playerid, "rpidplayer") & DeletePVar(playerid, "rpmoney");

Это за конструкции такие интересные?

Во первых - когда получаешь pVar - ты должен его получать либо в переменную


new rpidplayer = GetPVarInt(playerid,"rpidplayer");
new money = GetPVarInt(playerid,"rpmoney");
Либо уже использовать в форматировани строку GetPVarInt(playerid,"rpmoney")

Во вторых - что это у тебя за обращение к ячейке массива - PlayerInfo[pName] может ты хотел - PlayerInfo[playerid][pName]?

В третьих - почему бы вместо вот этого
new rpidplayer = SetPVarInt(playerid, "rpitem", playerid) & rpmoney = SetPVarInt(playerid, "rpmoney", strval(inputtext));
Не использовать такую форму записи -

new rpidplayer = SetPVarInt(playerid, "rpitem", playerid),
rpmoney = SetPVarInt(playerid, "rpmoney", strval(inputtext));

Раз уже увидел конструкцию с использованием & - не пихай где попало это.

Mike_World
29.12.2016, 15:21
GetPVarInt(playerid, "rpidplayer") & GetPVarInt(playerid, "rpmoney");
new string[128];
formamt(string, sizeof(string), "Вы выдали %s, %d $",PlayerInfo[pName], rpmoney);
GivePlayerMoney(rpidplayer, rpmoney);
DeletePVar(playerid, "rpidplayer") & DeletePVar(playerid, "rpmoney");

Это за конструкции такие интересные?

Во первых - когда получаешь pVar - ты должен его получать либо в переменную


new rpidplayer = GetPVarInt(playerid,"rpidplayer");
new money = GetPVarInt(playerid,"rpmoney");
Либо уже использовать в форматировани строку GetPVarInt(playerid,"rpmoney")

Во вторых - что это у тебя за обращение к ячейке массива - PlayerInfo[pName] может ты хотел - PlayerInfo[playerid][pName]?

В третьих - почему бы вместо вот этого
new rpidplayer = SetPVarInt(playerid, "rpitem", playerid) & rpmoney = SetPVarInt(playerid, "rpmoney", strval(inputtext));
Не использовать такую форму записи -

new rpidplayer = SetPVarInt(playerid, "rpitem", playerid),
rpmoney = SetPVarInt(playerid, "rpmoney", strval(inputtext));

Раз уже увидел конструкцию с использованием & не пихай где попало это.

Спасибо.

DeimoS
29.12.2016, 15:25
Кто тебя научил записывать код через "&"?
У тебя одна ошибка связана с тем, что ты опечатался в названии функции, а остальные из-за твоего "&"

- - - Добавлено - - -

И прочти правила форума. В следующий раз за подобные названия тем буду предупреждения выдавать.
Закрыто