Вопросы

erg rfbfdh
Новичок

не могу понять где ошибка

//
#include <a_samp>
#include <a_mysql>

#define     MYSQL_HOST  "localhost"
#define     MYSQL_USER  "root"
#define     MYSQL_PASS  ""
#define     MYSQL_BASE  "newsamp"

#define     SCM     SendClientMessage
#define     SPD     ShowPlayerDialog

#define COLOR_WHITE             0xFFFFFFFF

new MySQL: dbHandle;
new query[256];

enum
{
 DLG_NOME,
 DLG_REG,
};

enum PLAYER_INFO
{
   id,
   name,
   pass
};
new player_info[MAX_PLAYERS] [PLAYER_INFO];
//
main()
{
    print("\n----------------------------------");
    print(" Blank Gamemode by your name here");
    print("----------------------------------\n");
}

public OnGameModeInit()
{
    dbHandle = mysql_connect(MYSQL_HOST, MYSQL_USER, MYSQL_PASS, MYSQL_BASE);
    if(mysql_errno()!= 0)
    {
         print("[MySQL R41-4]: Ïîäêëþ÷åíèå ê áàçå äàííûõ: íåóñïåøíî");
         return SendRconCommand("exit");
    }
    else
    {
          print("[MySQL R41-4]: Ïîäêëþ÷åíèå ê áàçå äàííûõ: óñïåøíî");
    }
    SetGameModeText("Parallel");
    AddPlayerClass(0, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0);
    return 1;
}

public OnGameModeExit()
{
    mysql_close(dbHandle);
    return 1;
}

public OnPlayerRequestClass(playerid, classid)
{
    SetPlayerPos(playerid, 2534.7480,2427.5808,54.9348);
    InterpolateCameraPos(playerid, 2552.605224, 2426.749267, 22.178434, 2552.605224, 2426.749267, 22.178434, 1000);
    InterpolateCameraLookAt(playerid, 2555.998535, 2423.079589, 22.311231, 2555.998535, 2423.079589, 22.311231, 1000);
    return 1;
}

public OnPlayerConnect(playerid)
{
    GetPlayerName(playerid, player_info[playerid][name], MAX_PLAYER_NAME);
    SetTimerEx("CheckAccountFromMysql", 1000, false, "i",playerid);
    return 1;
}

public OnPlayerDisconnect(playerid, reason)
{
    return 1;
}

public OnPlayerSpawn(playerid)
{

    switch(random(3))
    {
      case 0:
      {
          SetPlayerPos(playerid,1758.4210,-1893.0044,13.5560);
          SetPlayerFacingAngle(playerid, 265.3591);
          SetCameraBehindPlayer(playerid);
      }
      case 1:
      {
          SetPlayerPos(playerid,1155.0690,-1771.6304,16.5992);
          SetPlayerFacingAngle(playerid, 355.5767);
          SetCameraBehindPlayer(playerid);
      }
      case 2:
      {
          SetPlayerPos(playerid,2223.0942,-1175.4476,25.7266);
          SetPlayerFacingAngle(playerid, 359.4460);
          SetCameraBehindPlayer(playerid);
      }
    }
    return 1;
}

public OnPlayerDeath(playerid, killerid, reason)
{
    return 1;
}

public OnVehicleSpawn(vehicleid)
{
    return 1;
}

public OnVehicleDeath(vehicleid, killerid)
{
    return 1;
}

public OnPlayerText(playerid, text[])
{
    return 1;
}

public OnPlayerCommandText(playerid, cmdtext[])
{

    return 1;
}

public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
{
    return 1;
}

public OnPlayerExitVehicle(playerid, vehicleid)
{
    return 1;
}

public OnPlayerStateChange(playerid, newstate, oldstate)
{
    return 1;
}

public OnPlayerEnterCheckpoint(playerid)
{
    return 1;
}

public OnPlayerLeaveCheckpoint(playerid)
{
    return 1;
}

public OnPlayerEnterRaceCheckpoint(playerid)
{
    return 1;
}

public OnPlayerLeaveRaceCheckpoint(playerid)
{
    return 1;
}

public OnRconCommand(cmd[])
{
    return 1;
}

public OnPlayerRequestSpawn(playerid)
{
    return 1;
}

public OnObjectMoved(objectid)
{
    return 1;
}

public OnPlayerObjectMoved(playerid, objectid)
{
    return 1;
}

public OnPlayerPickUpPickup(playerid, pickupid)
{
    return 1;
}

public OnVehicleMod(playerid, vehicleid, componentid)
{
    return 1;
}

public OnVehiclePaintjob(playerid, vehicleid, paintjobid)
{
    return 1;
}

public OnVehicleRespray(playerid, vehicleid, color1, color2)
{
    return 1;
}

public OnPlayerSelectedMenuRow(playerid, row)
{
    return 1;
}

public OnPlayerExitedMenu(playerid)
{
    return 1;
}

public OnPlayerInteriorChange(playerid, newinteriorid, oldinteriorid)
{
    return 1;
}

public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
{
    return 1;
}

public OnRconLoginAttempt(ip[], password[], success)
{
    return 1;
}

public OnPlayerUpdate(playerid)
{
    return 1;
}

public OnPlayerStreamIn(playerid, forplayerid)
{
    return 1;
}

public OnPlayerStreamOut(playerid, forplayerid)
{
    return 1;
}

public OnVehicleStreamIn(vehicleid, forplayerid)
{
    return 1;
}

public OnVehicleStreamOut(vehicleid, forplayerid)
{
    return 1;
}

public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
    new str[256];
    switch(dialogid)
    {
        case DLG_REG:
        {
            if(!response) return Kick(playerid);
            if(!(strlen(inputtext) >= 8 && strlen(inputtext)<= 22))
            {
                 SCM(playerid, COLOR_WHITE, "Äëèíà ïàðîëÿ áûòü íå ìåíåå 8 è íå áîëåå 22 ñèìâîëîâ." );
                 format(str, sizeof(str), "{FFFFFF}Äîáðî ïîæàëîâàòü íà íàø ñåðâåð, âàø íèê: %s[%i]\nÄàííûé àêêàóíò íå çàðåãèñòðèðîâàí, äëÿ ðåãèñòðàöèè ââåäèòå ïàðîëü\nâ ïîëå íèæå:\n", player_info[playerid][name], playerid);
                 return SPD(playerid, DLG_REG, DIALOG_STYLE_INPUT, "Ðåãèñòðàöèÿ", str, "Äàëåå", "Îòìåíà");
                 }
            }
            for(new i = 0; i < strlen(inputtext); i++)
            {
                switch(inputtext[i])
                {
                    case `a`..`z`, `A`..`Z`, `0`..`9`: continue;
                    default:
                    {
                        SCM(playerid, COLOR_WHITE, "Ïàðîëü ìîæåò òîëüêî ñîñòîÿòü èç ëàòèíñêèõ ñèìâîëîâ è öèôîð ." );
                        format(str, sizeof(str), "{FFFFFF}Äîáðî ïîæàëîâàòü íà íàø ñåðâåð, âàø íèê: %s[%i]\nÄàííûé àêêàóíò íå çàðåãèñòðèðîâàí, äëÿ ðåãèñòðàöèè ââåäèòå ïàðîëü\nâ ïîëå íèæå:\n", player_info[playerid][name], playerid);
                        return SPD(playerid, DLG_REG, DIALOG_STYLE_INPUT, "Ðåãèñòðàöèÿ", str, "Äàëåå", "Îòìåíà");
                    }
                    
                }
            }
            player_info[playerid][pass] = EOS;
            strins(player_info[playerid][pass], inputtext, 0);
        }
    }
    return 1;
}

public OnPlayerClickPlayer(playerid, clickedplayerid, source)
{
    return 1;
}

public OnPlayerClickMap(playerid, Float:fX, Float:fY, Float:fZ)
{
    SetPlayerPos(playerid, fX, fY, fZ);
    return 1;
}

forward GetAccountFromMysql(playerid);
public GetAccountFromMysql(playerid)
{
   format(query, sizeof(query),"SELECT * FROM `accounts` WHERE `name` = `%s", player_info[playerid][name]);
   mysql_tquery(dbHandle, query,"CheckAccountFromMysql","i",playerid);
}

forward CheckAccountFromMysql(playerid);
public CheckAccountFromMysql(playerid)
{
  new str[256];
  if(cache_num_rows() == 0)
  {
     format(str, sizeof(str), "{FFFFFF}Äîáðî ïîæàëîâàòü íà íàø ñåðâåð, âàø íèê: %s[%i]\nÄàííûé àêêàóíò íå çàðåãèñòðèðîâàí, äëÿ ðåãèñòðàöèè ââåäèòå ïàðîëü\nâ ïîëå íèæå:\n", player_info[playerid][name], playerid);
     SPD(playerid, DLG_REG, DIALOG_STYLE_INPUT, "Ðåãèñòðàöèÿ", str, "Äàëåå", "Îòìåíà");
  }
  else
  {
  SendClientMessage(playerid, COLOR_WHITE, "Äàííûé àêêàóíò  çàðåãèñòðèðîâàí íà ñåðâåðå.");
  }
}

 

65756.PNG

Поделиться сообщением


Ссылка на сообщение

3 ответа на этот вопрос

  • 0
Cawfee
Великий Гуру
11 часов назад, erg rfbfdh сказал:

case `a`..`z`, `A`..`Z`, `0`..`9`: continue;

Похоже на эту строку. Здесь должны быть вертикальные апострофы ('):

case 'a' .. 'z''A' .. 'Z''0' .. '9'continue;

 

Поделиться сообщением


Ссылка на сообщение
Гость
Эта тема закрыта для публикации ответов.
  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

  • Похожий контент

    • Дебилойд
      От Дебилойд
      Здравствуйте!
      Мы ищем талантливого 3D-моделлера в команду нашего CRMP-проекта!
      Что нужно будет делать:
      Моделировать и адаптировать автомобили.
      Создавать и настраивать скины (модели персонажей).
      Большим плюсом будет:
      Умение создавать качественные и оптимизированные интерьеры.
      Если вы хотите стать частью нашей команды и развивать проект вместе с нами, пишите в ЛС. Ждем ваши портфолио!
    • LORDIKUS
      От LORDIKUS
      Уважаемые участники форума - всех приветствую, кто перешел в беседу моей темы обсуждения. В настоящее время у меня зарождается огромное желание и мысль создать собственный CR:MP проект, но столкнулся с единственной проблемой - с отсутствием команды людей, у которых будет искреннее желание ежедневно вкладывать свой труд на разработку проекта. Особого опыта в скриптинге, маппинге, дизайне или в моделировании у меня не имеется, поэтому такой критерий как опыт в определенной сфере для желающих вступить в команду я не рассматриваю. Так как проект не открыт и находится на начальной стадии создания, мое сотрудничество выстраивается на некоммерческой основе (без выплаты за проделанную работу и труд), однако я не собираюсь отрицать высокую ценность вложенного командой труд — труд, особенно на первой стадии разработки я рассматриваю превыше всего. После открытия проекта в зависимости от коммерции и чистой прибыли каждый участник будет получать настоящую выплату, однако это также может убить еще значительное время. Мне нужна команда, которая проявит искренний интерес в создании общего между командой CR:MP проекта, пожертвует свое время, а также вложит собственный труд благодаря заработанным навыкам. Если вас заинтересовала данная тема обсуждения, пожалуйста, свяжитесь со мной по любым возможным и удобным для вас контактам связи ниже. Спасибо всем, кто зашел в мою беседу!

      🔗 Спец. Связь:
      — DISCORD: https://discord.com/users/1452715348196589691 (перейти по ссылке и добавить в друзья) ИЛИ _shin833_ (ввести никнейм и отправить запрос дружбы)
      — VK: https://vk.com/shin833
      — TG: https://t.me/s_hin833
    • Korochansky
      От Korochansky
      Настало время объявить о скором выпуске первого релиза среды разработки под названием Spawn.

      В настоящее время программа находится на заключительных этапах доработки кода и локализации интерфейса.
      Таким образом, в течение следующей недели будет выпущена быстрая и современная среда разработки, обладающая следующими возможностями (о которых я расскажу сейчас, а о других — позже):
       
      Полнофункциональный локальный Git: 
      Индексирование, фиксации, индикаторы состояния и мягкий/жесткий сброс до любой точки сохранения одним щелчком мыши. Разрабатывайте свой игровой сервер, не боясь его сломать.
      Новички могут рассматривать это как историю кодовой базы вашего сервера (что и есть на самом деле).
       
      Чистый UTF-8 (без BOM): 
      Полный отказ от устаревшей кодировки Windows-1251 (CP1251) для абсолютной стабильности и идеальной совместимости с Git.
      Реализация поддержки CP1251 привела бы к нестабильному поведению программы и ухудшила бы пользовательский опыт.
       
      История изменений строк: Редактор выделяет измененные строки в реальном времени в полях рядом с номерами строк. Это позволяет мгновенно видеть границы изменений, внесенных с момента открытия файла.
       
      Сопоставление и выделение фигурных скобок: мгновенное выделение открывающих и закрывающих фигурных скобок для быстрой навигации по структуре кода и защиты от ошибок компиляции.
       
      Интеграция с SAMPCTL: готовая к использованию автоматизация процессов. Сборка, запуск сервера и менеджер зависимостей (управление библиотеками и плагинами) работают напрямую из интерфейса редактора.
       
      И многое другое...
       
      И самое главное: проект будет с открытым исходным кодом под лицензией GPLv3!
      Следите за новостями о выпуске в репозитории: https://github.com/daniilkorochansky/spawn
    • KodBi
      От KodBi
      шапка
      по одиночке работают
      нужны оба