Error 017 undefined symbol sendername

Не могу сделать /fixcar M:GameS????? ABS RP 1.0.1gamemodesnew.pwn(10475) : error 017: undefined symbol "COLOR_GREY" M...


#1

Пользователь офлайн
 

Отправлено 31 января 2017 — 11:38

  • Прохожий

Не могу сделать /fixcar
M:GameS????? ABS RP 1.0.1gamemodesnew.pwn(10475) : error 017: undefined symbol «COLOR_GREY»
M:GameS????? ABS RP 1.0.1gamemodesnew.pwn(10480) : error 017: undefined symbol «sendername»
M:GameS????? ABS RP 1.0.1gamemodesnew.pwn(10480) : error 017: undefined symbol «sendername»
M:GameS????? ABS RP 1.0.1gamemodesnew.pwn(10480) : error 029: invalid expression, assumed zero
M:GameS????? ABS RP 1.0.1gamemodesnew.pwn(10480) : fatal error 107: too many error messages on one line

    if(strcmp(cmd, "/fixcar", true) == 0)
        {
            if(IsPlayerConnected(playerid))
            {
                if(GetPlayerMoney(playerid) < 1000)//?????? ?? ????
                {
                    SendClientMessage(playerid,COLOR_GREY,"???? ????? 5000 ??? ?????");
                    return 1;
                }
                new carnum = 0;
                        new maxcar;
                        GetPlayerName(playerid,sendername,sizeof(sendername));
                        tmp = strtok(cmdtext, idx);
                        if(!strlen(tmp))
                        {
                                SendClientMessage(playerid, COLOR_GRAD2, "?????????: /fixcar [ID]");
                                for(new cars = 1; cars < MAX_VEHICLES; cars ++)
                                {
                                    if(IsAOwnableVehicle(cars))
                                        {
                                            if(!strcmp(CarInfo[cars-1-SIMPLECARS][cOwner],sendername,true))
                                            {
                                                carnum ++;
                                                format(string,sizeof(string),"????? %d, ??????: %d",carnum,CarInfo[cars-1-SIMPLECARS][cId]);
                                                SendClientMessage(playerid,COLOR_WHITE,string);
                                                maxcar = carnum;
                                            }
                                        }
                                }
                                if(carnum == 0)
                                {
                                    SendClientMessage(playerid,COLOR_GREY,"? ???? ??? ?????");
                                    return 1;
                                }
                                return 1;
                        }
                        for(new cars = 1; cars < MAX_VEHICLES; cars ++)
                        {
                            if(IsAOwnableVehicle(cars))
                                {
                                    if(!strcmp(CarInfo[cars-1-SIMPLECARS][cOwner],sendername,true))
                                    {
                                        carnum ++;
                                        maxcar = carnum;
                                    }
                                }
                        }
                        carnum = 0;
                        new car = strval(tmp);
                        if(car < 1 || car > maxcar)
                        {
                            format(string,sizeof(string)," ?? ?????? 1 ?? ?? ?????? %d!",maxcar);
                            SendClientMessage(playerid,COLOR_GREY,string);
                            return 1;
                        }
                        GetPlayerName(playerid,sendername,sizeof(sendername));
                        for(new cars = 1; cars < MAX_VEHICLES; cars ++)
                        {
                            if(IsAOwnableVehicle(cars))
                            {
                                    if(!strcmp(CarInfo[cars-1-SIMPLECARS][cOwner],sendername,true))
                                    {
                                        carnum ++;
                                        if(carnum == car)
                                        {
                                                        SetVehicleToRespawn(cars);
                                                        ServerGivePlayerMoney(playerid,-5000);
                                                        SendClientMessage(playerid,COLOR_GREY,"?????????? ????????? ?? ????? ????????");
                                                        return 1;
                                        }
                                    }
                                }
                        }
                }
                return 1;
        }

0



#2

Отправлено 31 января 2017 — 11:51

  • Banned

не сделать а вырезать…
ко всем цветам

#define COLOR_GREY 0xAFAFAFAA

ну и в начало команды

new sendername[MAX_PLAYER_NAME];



#3

Отправлено 31 января 2017 — 12:08

  • Прохожий

Куда именно вставлять

new sendername[MAX_PLAYER_NAME];

?? Спасибо.

0



#4

Отправлено 31 января 2017 — 12:21

  • Прохожий

Вставил

#define COLOR_GREY 0xAFAFAFAA

ко всем цветам
Вставил

new sendername[MAX_PLAYER_NAME];

перед

 GetPlayerName(playerid,sendername,sizeof(sendername));

(потому что это строчка где выдавало ошибку)
Теперь выдает вообще море ошибок:

M:GameS????? ABS RP 1.0.1gamemodesnew.pwn(10487) : error 017: undefined symbol "tmp"
M:GameS????? ABS RP 1.0.1gamemodesnew.pwn(10487) : error 017: undefined symbol "strtok"
M:GameS????? ABS RP 1.0.1gamemodesnew.pwn(10488) : error 017: undefined symbol "tmp"
M:GameS????? ABS RP 1.0.1gamemodesnew.pwn(10490) : error 017: undefined symbol "COLOR_GRAD2"
M:GameS????? ABS RP 1.0.1gamemodesnew.pwn(10493) : error 017: undefined symbol "IsAOwnableVehicle"
M:GameS????? ABS RP 1.0.1gamemodesnew.pwn(10495) : error 028: invalid subscript (not an array or too many subscripts): "CarInfo"
M:GameS????? ABS RP 1.0.1gamemodesnew.pwn(10495) : error 017: undefined symbol "SIMPLECARS"
M:GameS????? ABS RP 1.0.1gamemodesnew.pwn(10495) : error 029: invalid expression, assumed zero
M:GameS????? ABS RP 1.0.1gamemodesnew.pwn(10495) : fatal error 107: too many error messages on one line

0



#5

Отправлено 01 февраля 2017 — 03:33

  • Banned

проше уже не вырезай эту команду если не умееш, могут быть ещё ошибки…

#define COLOR_GRAD2 0xBFC0C2FF

ко всем include

#include <../include/gl_common>

в начало паблика где у тебя команды

new tmp[512];

а дальше вырезай до конца эту команду с того мода где её взял
функцию вырежи от туда IsAOwnableVehicle и SIMPLECARS
и масив CarInfo

Сообщение отредактировал Island: 01 февраля 2017 — 03:36


  • ← Предыдущая тема
  • Проблемы с компилированием
  • Следующая тема →

  • Вы не можете создать новую тему
  • Тема закрыта


1 человек читают эту тему
0 пользователей, 1 гостей, 0 скрытых пользователей

SL4M морж))

Регистрация
13 Май 2012
Сообщения
924
Лучшие ответы
0
Репутация
119

  • #1

Помогите error 017: undefined symbol «sendername»

Строчка

PHP:

C:UsersАлександрDesktopМ13gamemodesRolePlay.pwn(22076) : warning 215: expression has no effect
C:UsersАлександрDesktopМ13gamemodesRolePlay.pwn(28985) : error 017: undefined symbol "sendername"
C:UsersАлександрDesktopМ13gamemodesRolePlay.pwn(28985) : error 017: undefined symbol "sendername"
C:UsersАлександрDesktopМ13gamemodesRolePlay.pwn(28985) : error 029: invalid expression, assumed zero
C:UsersАлександрDesktopМ13gamemodesRolePlay.pwn(28985) : fatal error 107: too many error messages on one line

Compilation aborted.Pawn compiler 3.2.3664	 	 	Copyright (c) 1997-2006, ITB CompuPhase


4 Errors.

Crizzi


  • #3

Код:

C:UsersArcadyiDesktopArizona RolePlaygamemodesnew.pwn(253) : error 021: symbol already defined: "GetPlayerName"
C:UsersArcadyiDesktopArizona RolePlaygamemodesnew.pwn(4663) : error 017: undefined symbol "string"
C:UsersArcadyiDesktopArizona RolePlaygamemodesnew.pwn(4663) : error 017: undefined symbol "string"
C:UsersArcadyiDesktopArizona RolePlaygamemodesnew.pwn(4663) : error 029: invalid expression, assumed zero
C:UsersArcadyiDesktopArizona RolePlaygamemodesnew.pwn(4663) : fatal error 107: too many error messages on one line

Последнее редактирование модератором: 11.02.2017

       if(strcmp(cmd, «/dban»,true) == 0)
{
    if(IsPlayerConnected(playerid))
    {
        if(PlayerInfo[playerid][pAdmin] < 10)
        {
            SendClientMessage(playerid, COLOR_GREY, »   Вы не уполномочены использовать эту команду !»);
            return 1;
        }
        tmp = strtok(cmdtext, idx);
                if(!strlen(tmp))
                {
                        SendClientMessage(playerid, COLOR_GRAD2, «Используйте: /dban [playerid/PartOfName]»);
                        return 1;
                }
                giveplayerid = ReturnUser(tmp);
            if(IsPlayerConnected(giveplayerid))
            {
                if(giveplayerid != INVALID_PLAYER_ID)
                {
                    GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
                                GetPlayerName(playerid, sendername, sizeof(sendername));
                                format(string, sizeof(string), «* Вы поместили %s в Деморган.», giveplayer);
                                SendClientMessage(playerid, COLOR_LIGHTRED, string);
                                format(string, sizeof(string), «* Вы были размещены в Деморгане Админом %s.», sendername);
                                SendClientMessage(giveplayerid, COLOR_LIGHTRED, string);
                                GameTextForPlayer(giveplayerid, «~w~Welcome to ~n~~r~Fort DeMorgan», 5000, 3);
                                WantedPoints[giveplayerid] = 0;
                                WantedLevel[giveplayerid] = 0;
                                PlayerInfo[giveplayerid][pJailed] = 2;
                                PlayerInfo[giveplayerid][pJailTime] = 3600;
                    SetPlayerPos(giveplayerid, 2311.1616,-1808.9144,7.0640);
                                SetPlayerWorldBounds(giveplayerid, 2311.1616,-1808.9144,7.0640,309.6129); //285.3481,96.9720,1940.9755,1799.0811
                }
                }
                else
                {
                    SendClientMessage(playerid, COLOR_GREY, »   Этот игрок является Офлайновым !»);
                    return 1;
                }
    }
    return 1;
}

    if(strcmp(cmd, «/undban»,true) == 0)
{
    if(IsPlayerConnected(playerid))
    {
        if(PlayerInfo[playerid][pAdmin] < 10)
        {
            SendClientMessage(playerid, COLOR_GREY, «Вы не уполномочены использовать эту команду!»);
            return 1;
        }
        tmp = strtok(cmdtext, idx);
                if(!strlen(tmp))
                {
                        SendClientMessage(playerid, COLOR_GRAD2, «Используйте: /undban [playerid/PartOfName]»);
                        return 1;
                }
                giveplayerid = ReturnUser(tmp);
            if(IsPlayerConnected(giveplayerid))
            {
                if(giveplayerid != INVALID_PLAYER_ID)
                {
                                WantedPoints[giveplayerid] = 1;
                                WantedLevel[giveplayerid] = 1;
                                PlayerInfo[giveplayerid][pJailed] = 1;
                                PlayerInfo[giveplayerid][pJailTime] = 1;
                                SetPlayerWorldBounds(playerid,2579.9849,-2416.2771,21.9946,255.7424); //Reset world to player
                            SetPlayerInterior(playerid, 1);
                            SetPlayerPos(playerid, 2579.9849,-2416.2771,21.9946);
                                SendClientMessage(giveplayerid,COLOR_RED,»Вы были выпущены из Деморгана!»);
                }
                }
                else
                {
                    SendClientMessage(playerid, COLOR_GREY, «* Этот игрок является Офлайновым!»);
                    return 1;
                }
    }
    return 1;
}

Posts: 647
Threads: 34
Joined: Apr 2009

Reputation:

0

Hello readers,

Most of the time GetPlayerId would work..but then suddenly when i dont expect it this will happen;

Код:

C:UsersBenutzerDesktopD-Fs.pwn(133) : warning 217: loose indentation
C:UsersBenutzerDesktopD-Fs.pwn(138) : warning 217: loose indentation
C:UsersBenutzerDesktopD-Fs.pwn(145) : error 017: undefined symbol "GetPlayerId"
C:UsersBenutzerDesktopD-Fs.pwn(152) : warning 217: loose indentation
Pawn compiler 3.2.3664	 	 	Copyright © 1997-2006, ITB CompuPhase

i got this;

Код:

if(strcmp(cmd, "/Taxi", true) == 0)
{
		new tmp[128];
		tmp = strtok(cmdtext, idx);
		new currentplayer1;
		new sendername[MAX_PLAYER_NAME];
		GetPlayerName(playerid,sendername, sizeof(sendername));
		currentplayer1 = GetPlayerId(sendername);

		if(strlen(tmp) == 0) return SendClientMessage(playerid, 0xFFFFFFFF, "USAGE: /Taxi [playerid]");
		SetPlayerMarkerForPlayer(currentplayer1,strval(tmp),0xFF0000FF );

		TogglePlayerControllable(strval(tmp),0);
 }

You know why this happen ? please post here thanks

Posts: 651
Threads: 15
Joined: Nov 2007

Reputation:

0

GetPlayerId ,
GetPlayerid,
GetPlayerID,
getplayerid,
getplayerID,
getPlayerID,
or getPlayerid?

Posts: 647
Threads: 34
Joined: Apr 2009

Reputation:

0

Quote:


GetPlayerId ,
GetPlayerid,
GetPlayerID,
getplayerid,
getplayerID,
getPlayerID,
or getPlayerid?

doesnt work i tried all

Posts: 857
Threads: 23
Joined: Mar 2009

Reputation:

0

There’s no such thing as GetPlayerID… It’s some custom function and you must define it/include it/use it properly

Posts: 185
Threads: 3
Joined: Nov 2007

Reputation:

0

Add this to your GM/FS

pawn Код:

stock GetPlayerID(const Name[])
{
    for(new i; i<MAX_PLAYERS; i++)
    {
      if(IsPlayerConnected(i))
      {
        new pName[MAX_PLAYER_NAME];
        GetPlayerName(i, pName, sizeof(pName));
        if(strcmp(Name, pName, true)==0)
        {
          return i;
        }
      }
    }
    return -1;
}

Posts: 250
Threads: 14
Joined: Sep 2008

Reputation:

0

Quote:

Originally Posted by DiDok

There’s no such thing as GetPlayerID…

Yeah that is what I was thinking. Unless you use a for i loop like the script above

Posts: 250
Threads: 14
Joined: Sep 2008

Reputation:

0

Sorry for DP but isn’t sendername the same as playerid in this case

pawn Код:

GetPlayerName(playerid,sendername, sizeof(sendername));
currentplayer1 = GetPlayerId(sendername)

You get the name of Playerid then get the ID of the name…

Posts: 1,028
Threads: 45
Joined: May 2009

Reputation:

0

Yes because he needs the ID to complete the command, theres no other way in my opinion!

Posts: 250
Threads: 14
Joined: Sep 2008

Reputation:

0

Quote:

Originally Posted by DeathOnaStick

Yes because he needs the ID to complete the command, theres no other way in my opinion!

he already has the ID, playerid
he renames playerid to sendername

Posts: 1,028
Threads: 45
Joined: May 2009

Reputation:

0

Содержание

  1. Error 017 undefined symbol giveplayerid
  2. Маппинг для сервера
  3. Моды для сервера
  4. Программы для скриптера
  5. Санечек
  6. Статистика форума
  7. Форум Pawn.Wiki — Воплоти мечту в реальность!: ошибки при компиляции. — Форум Pawn.Wiki — Воплоти мечту в реальность!
  8. Форум Pawn.Wiki — Воплоти мечту в реальность!: error 017:,warning 215:,error 001:,error 029: — Форум Pawn.Wiki — Воплоти мечту в реальность!
  9. Форум Pawn.Wiki — Воплоти мечту в реальность!: Помогите исправить — Форум Pawn.Wiki — Воплоти мечту в реальность!
  10. Форум Pawn.Wiki — Воплоти мечту в реальность!: Помогите с ошибками — Форум Pawn.Wiki — Воплоти мечту в реальность!

Error 017 undefined symbol giveplayerid

Быстрый переход в группу «Пользователи», без надобности написания постов и ожидания.

Покупка дает возможность:

Маппинг для сервера

Если вы хотите обновить Ваш сервер новыми доработками — то зайдите в наш раздел. Большой выбор готовых решений от наших пользователей

Моды для сервера

Огромный выбор различных модификаций для Вашего сервера. Пролистайте эти темы! Возможно именно там Вы найдете то, что искали уже давно.

Программы для скриптера

Подборка удобных программ для скриптера

Санечек

Изучающий

После как вписал команду в мод при компиляции выскочило это
Код команды ниже.

Статистика форума

Created by Giness

Уважаемый Гость.
Пожалуйста — воздержитесь от любых комментариев на форуме относительно ситуации в мире.
В личных сообщениях, в темах и где бы то не было.
Помните — это закончится в любом случае, а слова, сказанные (или написанные) Вами — не забудутся никогда.
МЫ ЗА МИР.
(Любые сообщения относительно ситуации в мире(не важно с каким смыслом) буду удаляться. А пользователи — блокироваться безвозвратно. )

Источник

Форум Pawn.Wiki — Воплоти мечту в реальность!: ошибки при компиляции. — Форум Pawn.Wiki — Воплоти мечту в реальность!

  • Pawn скриптинг
  • Первая помощь
  • Проблемы с компилированием
  • Правила форума
  • Просмотр новых публикаций

  • Группа: Пользователи
  • Сообщений: 12
  • Регистрация: 19 августа 16

Помогите исправить эти ошибки.(( После того как я добавлю new sendername , появляется новая ошибка , и так далее.))

  • Группа: Vip
  • Сообщений: 5 581
  • Регистрация: 09 января 13

  • Группа: Пользователи
  • Сообщений: 12
  • Регистрация: 19 августа 16

Появляются новые ошибки:

  • Группа: Пользователи
  • Сообщений: 12
  • Регистрация: 19 августа 16

m1n1vv (19 августа 2016 — 19:59) писал:

Возникают новые ошибки.

Сообщение отредактировал nimffy: 20 августа 2016 — 03:21

  • Группа: Vip
  • Сообщений: 5 581
  • Регистрация: 09 января 13

Скорей всего ты это добавил в глобальные переменные. Поставь это в начало команд, где не хватает этой переменной.

  • Группа: Пользователи
  • Сообщений: 12
  • Регистрация: 19 августа 16

m1n1vv (20 августа 2016 — 03:23) писал:

Скорей всего ты это добавил в глобальные переменные. Поставь это в начало команд, где не хватает этой переменной.

Если правда я только начал учить pawno. То есть посчитать?Куда добавить)))сори

Кстати когда добавляю new string[128]; появляются такие предуприждения

около 9 штук.
и ошибки

  • Группа: Активные пользователи
  • Сообщений: 44
  • Регистрация: 31 июля 16

nimffy (20 августа 2016 — 03:33) писал:

Если правда я только начал учить pawno. То есть посчитать?Куда добавить)))сори

Кстати когда добавляю new string[128]; появляются такие предуприждения

Источник

Форум Pawn.Wiki — Воплоти мечту в реальность!: error 017:,warning 215:,error 001:,error 029: — Форум Pawn.Wiki — Воплоти мечту в реальность!

  • Pawn скриптинг
  • Первая помощь
  • Проблемы с компилированием
  • Правила форума
  • Просмотр новых публикаций
  • (3 Страниц)
  • 1
  • 2
  • 3
  • >
  • Вы не можете создать новую тему
  • Тема закрыта

  • Группа: Активные пользователи
  • Сообщений: 834
  • Регистрация: 28 января 16

Ошибки и Варининги

  • Группа: Активные пользователи
  • Сообщений: 461
  • Регистрация: 25 ноября 16

  • Группа: Активные пользователи
  • Сообщений: 834
  • Регистрация: 28 января 16

  • Группа: Активные пользователи
  • Сообщений: 176
  • Регистрация: 28 июня 14

  • Группа: Vip
  • Сообщений: 1 957
  • Регистрация: 03 ноября 16

Сообщение отредактировал SooBad: 17 декабря 2016 — 13:45

  • Группа: Активные пользователи
  • Сообщений: 834
  • Регистрация: 28 января 16

Сообщение отредактировал NazarKuleba: 17 декабря 2016 — 13:45

  • Группа: Активные пользователи
  • Сообщений: 834
  • Регистрация: 28 января 16

  • Группа: Активные пользователи
  • Сообщений: 461
  • Регистрация: 25 ноября 16

Переменную эту надо объявлять глобально и на всех игроков.
Ко всем переменным вначале мода:

Можешь через char конечно объявить массив, твоё дело.

  • Группа: Активные пользователи
  • Сообщений: 834
  • Регистрация: 28 января 16

Сообщение отредактировал NazarKuleba: 17 декабря 2016 — 15:52

Источник

Форум Pawn.Wiki — Воплоти мечту в реальность!: Помогите исправить — Форум Pawn.Wiki — Воплоти мечту в реальность!

  • Pawn скриптинг
  • Первая помощь
  • Проблемы с компилированием
  • Правила форума
  • Просмотр новых публикаций

  • Группа: Пользователи
  • Сообщений: 21
  • Регистрация: 20 апреля 12

Помогите иправить ошибки

  • Группа: Пользователи
  • Сообщений: 21
  • Регистрация: 20 апреля 12

  • Группа: Пользователи
  • Сообщений: 17
  • Регистрация: 28 марта 12

Ты бы хоть строки скинул

Ну а если это в команде
В начало паблика вставь

И в начало мода вставь строчку #include

Источник

Форум Pawn.Wiki — Воплоти мечту в реальность!: Помогите с ошибками — Форум Pawn.Wiki — Воплоти мечту в реальность!

  • Pawn скриптинг
  • Первая помощь
  • Вопросы по скриптингу
  • Правила форума
  • Просмотр новых публикаций
  • (2 Страниц)
  • 1
  • 2
  • >
  • Вы не можете создать новую тему
  • Тема закрыта

  • Группа: Активные пользователи
  • Сообщений: 67
  • Регистрация: 04 июня 16

  • Группа: Vip
  • Сообщений: 920
  • Регистрация: 27 мая 15

Сообщение отредактировал Skiffi: 07 июля 2017 — 11:23

  • Группа: Активные пользователи
  • Сообщений: 67
  • Регистрация: 04 июня 16

Skiffi (07 июля 2017 — 11:22) писал:

Ну вот теперь ошибка

  • Группа: Vip
  • Сообщений: 920
  • Регистрация: 27 мая 15

  • Группа: Активные пользователи
  • Сообщений: 67
  • Регистрация: 04 июня 16

Skiffi (07 июля 2017 — 12:23) писал:

  • Группа: Активные пользователи
  • Сообщений: 67
  • Регистрация: 04 июня 16

Skiffi (07 июля 2017 — 12:23) писал:

  • Группа: Активные пользователи
  • Сообщений: 1 116
  • Регистрация: 22 февраля 17

  • Группа: Активные пользователи
  • Сообщений: 1 116
  • Регистрация: 22 февраля 17

Для чего тебе это? Я никак понять не могу.

  • Группа: Активные пользователи
  • Сообщений: 67
  • Регистрация: 04 июня 16

Abramoff.A (07 июля 2017 — 16:25) писал:

  • Группа: Активные пользователи
  • Сообщений: 1 116
  • Регистрация: 22 февраля 17

DonMiller (07 июля 2017 — 12:10) писал:

Ну вот теперь ошибка
[code]C:UsersMaxDesktopMilford RP v6.4 — . gamemodesvirginiarp.pwn(10497) : error 017: undefined symbol «cmdtext»
C:UsersMaxDesktopMilford RP v6.4 — . gamemodesvirginiarp.pwn(10497) : error 033: array must be indexed (variable «-unknown-«)
C:UsersMaxDesktopMilford RP v6.4 — . gamemodesvirginiarp.pwn(10498) : error 035: argument type mismatch (argument 1)
C:UsersMaxDesktopMilford RP v6.4 — . gamemodesvirginiarp.pwn(10499) : error 035: argument type mismatch (argument 1)
C:UsersMaxDesktopMilford RP v6.4 — . gamemodesvirginiarp.pwn(10506) : error 017: undefined symbol «giveplayer»
C:UsersMaxDesktopMilford RP v6.4 — . gamemodesvirginiarp.pwn(10506) : error 017: undefined symbol «giveplayer»
C:UsersMaxDesktopMilford RP v6.4 — . gamemodesvirginiarp.pwn(10506) : error 029: invalid expression, assumed zero
C:UsersMaxDesktopMilford RP v6.4 — . gamemodesvirginiarp.pwn(10506) : fatal error 107: too many error messages on one line

Compilation aborted.Pawn compiler 3.2.3664 Copyright © 1997-2006, ITB CompuPhase

На счет этих ошибок. Изначально у тебя переменная giveplayer обозначена как id игрока.
А ты на эту переменную определяешь ник игрока, а т.е. ник записывается в массив, ибо имеет символы, а не значение.
Далее sendername[124] — что это? оО 124 символа в нике? НЕТ! 24 или MAX_PLAYER_NAME

Источник

Автор: minimiller
Перевод и редактирование: DJ_WEST

Список ошибок:

Код: Выделить всё

/*001*/  "expected token: "%s", but found "%s"n",
/*002*/  "only a single statement (or expression) can follow each "case"n",
/*003*/  "declaration of a local variable must appear in a compound blockn",
/*004*/  "function "%s" is not implementedn",
/*005*/  "function may not have argumentsn",
/*006*/  "must be assigned to an arrayn",
/*007*/  "operator cannot be redefinedn",
/*008*/  "must be a constant expression; assumed zeron",
/*009*/  "invalid array size (negative or zero)n",
/*010*/  "invalid function or declarationn",
/*011*/  "invalid outside functionsn",
/*012*/  "invalid function call, not a valid addressn",
/*013*/  "no entry point (no public functions)n",
/*014*/  "invalid statement; not in switchn",
/*015*/  ""default" case must be the last case in switch statementn",
/*016*/  "multiple defaults in "switch"n",
/*017*/  "undefined symbol "%s"n",
/*018*/  "initialization data exceeds declared sizen",
/*019*/  "not a label: "%s"n",
/*020*/  "invalid symbol name "%s"n",
/*021*/  "symbol already defined: "%s"n",
/*022*/  "must be lvalue (non-constant)n",
/*023*/  "array assignment must be simple assignmentn",
/*024*/  ""break" or "continue" is out of contextn",
/*025*/  "function heading differs from prototypen",
/*026*/  "no matching "#if..."n",
/*027*/  "invalid character constantn",
/*028*/  "invalid subscript (not an array or too many subscripts): "%s"n",
/*029*/  "invalid expression, assumed zeron",
/*030*/  "compound statement not closed at the end of filen",
/*031*/  "unknown directiven",
/*032*/  "array index out of bounds (variable "%s")n",
/*033*/  "array must be indexed (variable "%s")n",
/*034*/  "argument does not have a default value (argument %d)n",
/*035*/  "argument type mismatch (argument %d)n",
/*036*/  "empty statementn",
/*037*/  "invalid string (possibly non-terminated string)n",
/*038*/  "extra characters on linen",
/*039*/  "constant symbol has no sizen",
/*040*/  "duplicate "case" label (value %d)n",
/*041*/  "invalid ellipsis, array size is not knownn",
/*042*/  "invalid combination of class specifiersn",
/*043*/  "character constant exceeds range for packed stringn",
/*044*/  "positional parameters must precede all named parametersn",
/*045*/  "too many function argumentsn",
/*046*/  "unknown array size (variable "%s")n",
/*047*/  "array sizes do not match, or destination array is too smalln",
/*048*/  "array dimensions do not matchn",
/*049*/  "invalid line continuationn",
/*050*/  "invalid rangen",
/*051*/  "invalid subscript, use "[ ]" operators on major dimensionsn",
/*052*/  "multi-dimensional arrays must be fully initializedn",
/*053*/  "exceeding maximum number of dimensionsn",
/*054*/  "unmatched closing bracen",
/*055*/  "start of function body without function headern",
/*056*/  "arrays, local variables and function arguments cannot be public (variable "%s")n",
/*057*/  "unfinished expression before compiler directiven",
/*058*/  "duplicate argument; same argument is passed twicen",
/*059*/  "function argument may not have a default value (variable "%s")n",
/*060*/  "multiple "#else" directives between "#if ... #endif"n",
/*061*/  ""#elseif" directive follows an "#else" directiven",
/*062*/  "number of operands does not fit the operatorn",
/*063*/  "function result tag of operator "%s" must be "%s"n",
/*064*/  "cannot change predefined operatorsn",
/*065*/  "function argument may only have a single tag (argument %d)n",
/*066*/  "function argument may not be a reference argument or an array (argument "%s")n",
/*067*/  "variable cannot be both a reference and an array (variable "%s")n",
/*068*/  "invalid rational number precision in #pragman",
/*069*/  "rational number format already definedn",
/*070*/  "rational number support was not enabledn",
/*071*/  "user-defined operator must be declared before use (function "%s")n",
/*072*/  ""sizeof" operator is invalid on "function" symbolsn",
/*073*/  "function argument must be an array (argument "%s")n",
/*074*/  "#define pattern must start with an alphabetic charactern",
/*075*/  "input line too long (after substitutions)n",
/*076*/  "syntax error in the expression, or invalid function calln",
/*077*/  "malformed UTF-8 encoding, or corrupted file: %sn",
/*078*/  "function uses both "return" and "return <value>"n",
/*079*/  "inconsistent return types (array & non-array)n",
/*080*/  "unknown symbol, or not a constant symbol (symbol "%s")n",
/*081*/  "cannot take a tag as a default value for an indexed array parameter (symbol "%s")n",
/*082*/  "user-defined operators and native functions may not have statesn",
/*083*/  "a function may only belong to a single automaton (symbol "%s")n",
/*084*/  "state conflict: one of the states is already assigned to another implementation (symbol "%s")n",
/*085*/  "no states are defined for function "%s"n",
/*086*/  "unknown automaton "%s"n",
/*087*/  "unknown state "%s" for automaton "%s"n",
/*088*/  "number of arguments does not match definitionn"

Разбор ошибок
Рассмотрим пример нахождения и самостоятельного решения ошибок при компиляции.
Допустим у нас есть ошибка:

C:AMXXexample.sma(107) : error 035: argument type mismatch (argument 2)

Теперь давайте попытаемся разобрать эту ошибку по частям:
1) C:AMXXexample.sma — это директория, где находится исходник (.sma) нашего плагина.
2) (107) — это номер строки, в которой есть ошибка. Большинство современных редакторов текста имеют панель с пронумерованными строками (Notepad++, AMXX-Studio и другие).
3) error 035 — это код ошибки (список ошибок указан выше).
4) argument type mismatch — это описание ошибки с кодом, указанным до этого. В данном случае нам говорится, что «аргумент имеет неверный тип».
5) (argument 2) — это более подробное описание ошибки. В данном случае нам указывается, что ошибка во 2 аргументе.

Итого, получаем: в файле example.sma, который находится в директории C:AMXX, в строке под номером 107 есть ошибка с кодом 035, которая означает, что аргумент 2 имеет неверный тип данных.

Решение ошибок
Теперь попытаемся исправить нашу ошибку. Идем в строку под номером 107 и видим следующий код:

Код: Выделить всё

client_print
(0, "Welcome to the server!")
 

Идем на Вы должны зарегистрироваться, чтобы видеть ссылки.

и читаем описание функции:

client_print — Sends a message to a player.

Syntax:
client_print ( index, type, const message[], … )

id is a player index from 1 to 32. If 0, the message will be sent to all players.

The type is one of three types:
print_chat — chat text
print_console — console message
print_notify — console in dev mode
print_center — center say

Смотрим синтаксис команды client_print и видим, что первый аргумент index — это номер игрока (id), который может быть от 1 до 32, если же он 0, то сообщение будет отсылаться всем игрокам на сервере. Второй аргумент type — это тип сообщения, который может быть:

print_chat — текст в чат
print_console — текст в консоль
print_notify — текст в консоль в режиме разработчика
print_center — текст по центру

Третий аргумент message — это и есть текст нашего сообщения. Теперь вернемся, к нашему, коду. Мы видим, что у нас нет второго аргумента (тип сообщения), а сразу идет текст сообщения, исправляем на:

client_print(0, print_center, «Welcome to the server!»)

Теперь компиляция прошла успешно.

Описание ошибок:
error 001: expected token: «X», but found «Y»
Ошибка означает, что не найден X, когда найден Y. Наиболее часто возникает, когда забывают поставить недостающие знаки ; { } ( ).
Пример ошибки:

Код: Выделить всё

public Function
(id)
{
    if (is_user_bot(id)
    return PLUGIN_HANDLED// код
    
    return PLUGIN_CONTINUE
}
 

error 017: undefined symbol «X»
Ошибка означает, что X — неизвестный сивол/команда/переменная/функция. Поэтому такую функцию или переменную нужно объявить перед использованием. Например, функция is_user_hacker не существует.
Пример ошибки:

Код: Выделить всё

public Function
(id)
{
    if (is_user_hacker(id))
    return PLUGIN_HANDLED// код
    
    return PLUGIN_CONTINUE
}
 

error 032: array index out of bounds (variable X)
Ошибка означает, что в мы вышли за предел размера массива X.
Пример ошибки:

Код: Выделить всё

new s_Name
[32]
s_Name[33] = "*"
 

error 033: array must be indexed (variable X)
Ошибка означает, что массив должен быть проиндексирован. Например, мы не указали размер массива при его объявлении.
Пример ошибки:

Код: Выделить всё

new s_String 
= "My string"
 

error 035: argument type mismatch (argument X)
Ошибка означает, что аргумент X имеет неверный тип данных. Например, когда вместо целочисленного аргумента передаем строку.
Пример ошибки:

Код: Выделить всё

public Function1
(id)
{
    Function2(id, "10")
}
public Function2(id, count)
{
    // код
}
 

error 040: duplicate «case» label (value X)
Ошибка означает, что имеется дубль оператора case со значением X.
Пример ошибки:

Код: Выделить всё

public Function
(id)
{
    switch(count)
    {
        case 1: count += 1
    case 2
: count += 2
    case 2
: count += 3
    
}
}
 

error 075: input line too long (after substitutions)
Ошибка означает, что указанная строка слишком длинная. Например, около 500 символов.
Пример ошибки:

Код: Выделить всё

public Function
(id)
{
    server_print("AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA")
}
 

error 078: function uses both «return» and «return <value>»
Ошибка означает, что функция использует, как return, так и return <значение>.
Пример ошибки:

Код: Выделить всё

public Function
(id)
{
    if (is_user_alive(id))    
        return

        return PLUGIN_HANDLED

}
 

error 088: number of arguments does not match definition
Ошибка означает, что количество переданных аргументов не соответсвует количеству объявленных аргументов.
Пример ошибки:

Код: Выделить всё

public Function1
(id)
{
    Function2(id)
}
public Function2(id, count)
{
    // код
}
 

Не пишите мне в ЛС: если вам нужна помощь на бесплатной основе. Любые вопросы на форум.

#1

azik215

    Новичок

  • Пользователь
  • Pip

  • 32 сообщений

Отправлено 12 Сентябрь 2014 — 18:29

Помогите , что за ошибка??

Упс. Компилирование

  • Наверх


#2


The

Отправлено 12 Сентябрь 2014 — 18:56

  • Помогите , что за ошибка??

    Упс. Компилирование

    error 017: undefined symbol «%s» — неизвестный символ «%s»;
    warning 217: loose indentation — не выровненная строка

Сообщение отредактировал The: 12 Сентябрь 2014 — 18:56

  • Наверх


#3


azik215

azik215

    Новичок

  • Пользователь
  • Pip

  • 32 сообщений

Отправлено 20 Сентябрь 2014 — 18:46

  • error 017: undefined symbol «%s» — неизвестный символ «%s»;
    с ним то , что делать с 2 я разобрался

  • Наверх


#4


FasT of boni

Отправлено 20 Сентябрь 2014 — 18:58

warning 217: loose indentation 
Проблема с отступами. Внутри функции отступы должны быть сделаны или с помощью TAB, или с помощью пробелов — нельзя их смешивать, выберите что-то одно. 

  • Наверх


#5


azik215

azik215

    Новичок

  • Пользователь
  • Pip

  • 32 сообщений

Отправлено 20 Сентябрь 2014 — 19:03

warning 217: loose indentation 
Проблема с отступами. Внутри функции отступы должны быть сделаны или с помощью TAB, или с помощью пробелов — нельзя их смешивать, выберите что-то одно

Я с этим разобрался мне нужно 

error 017: undefined symbol «%s» — неизвестный символ «%s»;

Что с ним делать?

Вот 93 строчка

LogMgr_Print(g_moduleCore, LogType_Debug, «PurchaseUpgrade», «Client %d tried to buy interlocked upgrade %s», client, name);

  • Наверх


#6


FasT of boni

Отправлено 20 Сентябрь 2014 — 19:08

Я с этим разобрался мне нужно 

error 017: undefined symbol «%s» — неизвестный символ «%s»;

Что с ним делать?

Вот 93 строчка

LogMgr_Print(g_moduleCore, LogType_Debug, «PurchaseUpgrade», «Client %d tried to buy interlocked upgrade %s», client, name);

error 017: undefined symbol «x» 
Используемый символ не найден. Или забыли переменную объявить, или не подключили модуль. Если это какая-то SourceMod команда, например, CS_RespawnPlayer, то зайдите в API и введите её в поле «Search:». Выше над командой жирным шрифтом будет указано имя модуля, например, «cstrike», и чтобы его подключить, добавьте в самый верх кода #include <cstrike> 

  • Наверх


#7


azik215

azik215

    Новичок

  • Пользователь
  • Pip

  • 32 сообщений

Отправлено 20 Сентябрь 2014 — 19:24

Я с этим разобрался мне нужно 

error 017: undefined symbol «%s» — неизвестный символ «%s»;

Что с ним делать?

Вот 93 строчка

LogMgr_Print(g_moduleCore, LogType_Debug, «PurchaseUpgrade», «Client %d tried to buy interlocked upgrade %s», client, name);

error 017: undefined symbol «x» 
Используемый символ не найден. Или забыли переменную объявить, или не подключили модуль. Если это какая-то SourceMod команда, например, CS_RespawnPlayer, то зайдите в API и введите её в поле «Search:». Выше над командой жирным шрифтом будет указано имя модуля, например, «cstrike», и чтобы его подключить, добавьте в самый верх кода #include <cstrike> 

Можно я в лс файл кину. Ты сделаешь??

  • Наверх


#8


FasT of boni

Отправлено 20 Сентябрь 2014 — 19:25

Можно я в лс файл кину. Ты сделаешь??

попробуй

  • Наверх


#9


azik215

azik215

    Новичок

  • Пользователь
  • Pip

  • 32 сообщений

Отправлено 20 Сентябрь 2014 — 19:28

  • Наверх


#10


FasT of boni

Отправлено 20 Сентябрь 2014 — 20:26

Это инклюд.

Кидай все инклюды и исходник.

  • Наверх


#11


Mattko

Отправлено 21 Сентябрь 2014 — 13:29

Нету переменной «name», объявите о ней в начале кода.
Используя вот-так: new name;
 

warning 217: loose indentation 
Проблема с отступами. Внутри функции отступы должны быть сделаны или с помощью TAB, или с помощью пробелов — нельзя их смешивать, выберите что-то одно. 

Не отступами, а с табуляции… Можно объявить #table, но проще соблюдать табуляцию, чтобы работа плагина была стабильна.

PS: Автору темы, кидай исходник мне в ЛС, или тут. Исправлю.

  • Mr.Credo это нравится
  • Наверх


Понравилась статья? Поделить с друзьями:

Читайте также:

  • Error 017 undefined symbol playertopoint
  • Error 017 undefined symbol playerinfo как исправить
  • Error 017 undefined symbol playerid pawno
  • Error 017 undefined symbol player info
  • Error 017 undefined symbol pinfo

  • 0 0 голоса
    Рейтинг статьи
    Подписаться
    Уведомить о
    guest

    0 комментариев
    Старые
    Новые Популярные
    Межтекстовые Отзывы
    Посмотреть все комментарии