Добро пожаловать на Pro Pawn - Портал о PAWN-скриптинге.
Страница 29 из 31 ПерваяПервая ... 19 27 28 29 30 31 ПоследняяПоследняя
Показано с 281 по 290 из 308
  1. #281
    Аватар для DeimoS
    Модератор?

    Статус
    Оффлайн
    Регистрация
    27.01.2014
    Адрес
    Восточный Мордор
    Сообщений
    5,588
    Репутация:
    1984 ±
    Код RemovePlayerInfo покажи и все места, где используешь её
    Связаться со мной в VK можно через личные сообщения этой группы
    Заказы не принимаю

    Широко известно, что идеи стоят 0.8333 цента каждая (исходя из рыночной цены 10 центов за дюжину).
    Великих идей полно, на них нет спроса.
    Воплощение идеи в законченную игру требует долгой работы,
    таланта, терпения и креативности, не говоря уж о затратах денег, времени и ресурсов.
    Предложить идею просто, воплотить – вот в чём проблема

    Steve Pavlina

  2. #282
    Аватар для phpadmin
    Пользователь

    Статус
    Оффлайн
    Регистрация
    19.05.2017
    Сообщений
    103
    Репутация:
    1 ±
    PHP код:
    stock RemovePlayerInfo(playerid)
    {
        
    s_player[playerid][pID] = 0;
        
    s_player[playerid][pName][0] = EOS;
        
    s_player[playerid][pPassword][0] = EOS;
        
    s_player[playerid][pKills][0] = 0;
        
    s_player[playerid][pDollar][0] = 0;
        
    s_player[playerid][pDead][0] = 0;
        return 
    1;

    PHP код:
    enum e_PLAYER_INFO
    {
        
    pID,
        
    pName[MAX_PLAYER_NAME],
        
    pPassword[31],
        
    pKiller,
        
    pDollar,
        
    pDead
    }; 
    PHP код:
    public UploadPlayerAccount(playerid)
    {
        
    s_player[playerid][pID] = cache_get_field_content_int(0"id"mysql_connect_ID);
        
    s_player[playerid][pKiller] = cache_get_field_content_int(0"kills"mysql_connect_ID);
        
    s_player[playerid][pDollar] = cache_get_field_content_int(0"dollar"mysql_connect_ID);
        
    s_player[playerid][pDead] = cache_get_field_content_int(0"dead"mysql_connect_ID); //если что убирать надо
        
    GameTextForPlayer(playerid,"~g~GO ~y~SPAWN"50005);
        
    scm(playerid,-1,"Ваш аккаунт загружен");
        
    scm(playerid,-1,"Ручное сохранение аккаунта - {FF6200}/saveacc");
        
    player_no_connect{playerid} = 1;
        
    TogglePlayerSpectating(playeridfalse);
        
    SpawnPlayer(playerid);
        return 
    1;

    PHP код:
    stock CreateNewAccount(playeridpassword[])
    {
        new 
    query_string[66+MAX_PLAYER_NAME-4+30+(30+11)+(48+11)];
        
    format(query_stringsizeof(query_string), "INSERT INTO `accounts` (`player_name`, `password`, `kills`, `dollar`, `dead`) VALUES ('%s', '%s', '%d', '%d', '%d')",
        
    s_player[playerid][pName], passwords_player[pKiller], s_player[pDollar], s_player[playerid][pDead]);
        
    mysql_function_query(mysql_connect_IDquery_stringtrue"UploadPlayerAccountNumber""i"playerid);
        
        
    format(query_stringsizeof(query_string), "Вы зарегистрировали аккаунт."s_player[playerid][pName]);
        
    scm(playerid,-1,query_string);
        
    player_no_connect{playerid} = 0;
        
    format(query_stringsizeof(query_string),"\t{8D8D8D}Аккаунт успешно занесен в базу данных \n\n\t{FFFFFF}Имя аккаунта: {8CEB59}%s \n\t{FFFFFF}Пароль доступа: {8CEB59}%s\n\t{FFFFFF}Сделайте screenshot - {0EE68C}[F8] \n\n\t{8D8D8D}Просьба перезайти на сервер (в целях безопасности)"s_player[playerid][pName], s_player[playerid][pPassword]);
        
    spd(playeriddGuard,dsm,"{00FF0D}Guard HG"query_string,"Перезайти","");
        
    TogglePlayerSpectating(playeridfalse);
        
    SpawnPlayer(playerid);
        return 
    1;

    PHP код:
    stock SaveAccount(playerid)
    {
        new 
    query_string[(21)+(16+11)+(20+MAX_PLAYER_NAME)+(16+30)+(13+11)+(15+10)] = "UPDATE `accounts` SET";

        
    format(query_stringsizeof(query_string), "%s `player_name` = '%s',"query_strings_player[playerid][pName]);
        
    format(query_stringsizeof(query_string), "%s `password` = '%s',"query_strings_player[playerid][pPassword]);
        
    format(query_stringsizeof(query_string), "%s `kills` = '%d',"query_strings_player[playerid][pKiller]);
        
    format(query_stringsizeof(query_string), "%s `dollar` = '%d',"query_strings_player[playerid][pDollar]);
        
    format(query_stringsizeof(query_string), "%s `dead` = '%d'"query_strings_player[playerid][pDead]);

        
    format(query_stringsizeof(query_string), "%s WHERE `id` = '%d'"query_strings_player[playerid][pID]);
        
    mysql_function_query(mysql_connect_IDquery_stringfalse"""");
        return 
    1;


  3. #283
    Аватар для DeimoS
    Модератор?

    Статус
    Оффлайн
    Регистрация
    27.01.2014
    Адрес
    Восточный Мордор
    Сообщений
    5,588
    Репутация:
    1984 ±
    Так а где ты RemovePlayerInfo вызываешь?
    Связаться со мной в VK можно через личные сообщения этой группы
    Заказы не принимаю

    Широко известно, что идеи стоят 0.8333 цента каждая (исходя из рыночной цены 10 центов за дюжину).
    Великих идей полно, на них нет спроса.
    Воплощение идеи в законченную игру требует долгой работы,
    таланта, терпения и креативности, не говоря уж о затратах денег, времени и ресурсов.
    Предложить идею просто, воплотить – вот в чём проблема

    Steve Pavlina

  4. Пользователь сказал cпасибо:
    phpadmin (26.05.2017)
  5. #284
    Аватар для phpadmin
    Пользователь

    Статус
    Оффлайн
    Регистрация
    19.05.2017
    Сообщений
    103
    Репутация:
    1 ±
    В смысле, я нигде её при дисконекте ни в гамемоде эксит не прописал, а где вобще надо

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

    PHP код:
    public OnGameModeExit()
    {
        
    mysql_close(mysql_connect_ID);
        return 
    1;

    PHP код:
    public OnPlayerDisconnect(playeridreason)
    {
        
    player_no_connect{playerid} = 0;
        
    SaveAccount(playerid);
        return 
    1;

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

  6. #285
    Аватар для DeimoS
    Модератор?

    Статус
    Оффлайн
    Регистрация
    27.01.2014
    Адрес
    Восточный Мордор
    Сообщений
    5,588
    Репутация:
    1984 ±
    Я же писал уже

    Цитата Сообщение от DeimoS Посмотреть сообщение
    Пункт 9 перепроверь. Там удаление информации о игроке и прописывается
    Связаться со мной в VK можно через личные сообщения этой группы
    Заказы не принимаю

    Широко известно, что идеи стоят 0.8333 цента каждая (исходя из рыночной цены 10 центов за дюжину).
    Великих идей полно, на них нет спроса.
    Воплощение идеи в законченную игру требует долгой работы,
    таланта, терпения и креативности, не говоря уж о затратах денег, времени и ресурсов.
    Предложить идею просто, воплотить – вот в чём проблема

    Steve Pavlina

  7. Пользователь сказал cпасибо:
    phpadmin (26.05.2017)
  8. #286
    Аватар для phpadmin
    Пользователь

    Статус
    Оффлайн
    Регистрация
    19.05.2017
    Сообщений
    103
    Репутация:
    1 ±
    Цитата Сообщение от DeimoS Посмотреть сообщение
    Я же писал уже
    Я дебил, я незнаю как я мог такие важные дела пропустить. я Исправил да 0 при регистрации. Но мне так и не стало понятно кое что.
    Почему когда этого стока я не прописывал в дисконекте, тогда работало на деньгах и киллах тоже там при регистрации после занятия слота прежнего игрока, 0 было, лишь в dead копировалось.
    И это не всё я настолько криворукий что я ошибку в removeplayerinfo допустил, я к переменным добавил [0] = 0; крч.. мало ли что ещё появится. А так пока что спасибо всё заебок)

    И да я хотел спросить, можно ли там где new query где прописаны по типа 21+(MAX_PLAYERS)+(21+231)+(232) и т.д (это пример)
    Укоротить к примеру написав лишь new query[256] ну что бы не сложить всё это в длинную строчку


    PHP код:
    stock SaveAccount(playerid)
    {
        new 
    query_string[[COLOR="#FF0000"](21)+(16+11)+(20+MAX_PLAYER_NAME)+(16+30)+(13+11)+(15+10)[/COLOR]] = "UPDATE `accounts` SET"; (укоротить по типу [256])

        
    format(query_stringsizeof(query_string), "%s `player_name` = '%s',"query_strings_player[playerid][pName]);
        
    format(query_stringsizeof(query_string), "%s `password` = '%s',"query_strings_player[playerid][pPassword]);
        
    format(query_stringsizeof(query_string), "%s `kills` = '%d',"query_strings_player[playerid][pKiller]);
        
    format(query_stringsizeof(query_string), "%s `dollar` = '%d',"query_strings_player[playerid][pDollar]);
        
    format(query_stringsizeof(query_string), "%s `dead` = '%d'"query_strings_player[playerid][pDead]);

        
    format(query_stringsizeof(query_string), "%s WHERE `id` = '%d'"query_strings_player[playerid][pID]);
        
    mysql_function_query(mysql_connect_IDquery_stringfalse"""");
        return 
    1;

    Последний раз редактировалось phpadmin; 26.05.2017 в 18:59.

  9. #287
    Аватар для DeimoS
    Модератор?

    Статус
    Оффлайн
    Регистрация
    27.01.2014
    Адрес
    Восточный Мордор
    Сообщений
    5,588
    Репутация:
    1984 ±
    А чем тебе длинная строка мешает?
    Хочешь выделять лишнюю память или гадать почему не сохраняет запрос, если памяти станет мало - пожалуйста.

    Цитата Сообщение от Daniel_Cortez Посмотреть сообщение
    Стрельба себе в ногу - дело добровольное. Я никому этого не запрещаю.
    Связаться со мной в VK можно через личные сообщения этой группы
    Заказы не принимаю

    Широко известно, что идеи стоят 0.8333 цента каждая (исходя из рыночной цены 10 центов за дюжину).
    Великих идей полно, на них нет спроса.
    Воплощение идеи в законченную игру требует долгой работы,
    таланта, терпения и креативности, не говоря уж о затратах денег, времени и ресурсов.
    Предложить идею просто, воплотить – вот в чём проблема

    Steve Pavlina

  10. #288
    Аватар для phpadmin
    Пользователь

    Статус
    Оффлайн
    Регистрация
    19.05.2017
    Сообщений
    103
    Репутация:
    1 ±
    Цитата Сообщение от DeimoS Посмотреть сообщение
    А чем тебе длинная строка мешает?
    Хочешь выделять лишнюю память или гадать почему не сохраняет запрос, если памяти станет мало - пожалуйста.
    А в указанных строках, памяти хватает? или я не правильно расчитал? сверху

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

    Цитата Сообщение от DeimoS Посмотреть сообщение
    А чем тебе длинная строка мешает?
    Хочешь выделять лишнюю память или гадать почему не сохраняет запрос, если памяти станет мало - пожалуйста.
    PHP код:
    stock CreateNewAccount(playeridpassword[])
    {
        new 
    query_string[66+MAX_PLAYER_NAME-4+30+(30+11)+(48+11)];
        
    format(query_stringsizeof(query_string), "INSERT INTO `accounts` (`player_name`,`password`,`kills`,`dollar`,`dead`) VALUES ('%s','%s','%d','%d','%d')",
        
    s_player[playerid][pName], passwords_player[pKiller], s_player[pDollar], s_player[playerid][pDead]);
        
    mysql_function_query(mysql_connect_IDquery_stringtrue"UploadPlayerAccountNumber""i"playerid);
        
        
    format(query_stringsizeof(query_string), "Вы зарегистрировали аккаунт."s_player[playerid][pName]);
        
    scm(playerid,-1,query_string);
        
    player_no_connect{playerid} = 0;
        
    format(query_stringsizeof(query_string),"\t{8D8D8D}Аккаунт успешно занесен в базу данных \n\n\t{FFFFFF}Имя аккаунта: {8CEB59}%s \n\t{FFFFFF}Пароль доступа: {8CEB59}%s\n\t{FFFFFF}Сделайте screenshot - {0EE68C}[F8] \n\n\t{8D8D8D}Просьба перезайти на сервер (в целях безопасности)"s_player[playerid][pName], s_player[playerid][pPassword]);
        
    spd(playeriddGuard,dsm,"{00FF0D}Guard HG"query_string,"Перезайти","");
        
    TogglePlayerSpectating(playeridfalse);
        
    SpawnPlayer(playerid);
        return 
    1;

    тут надо выделять память? если надо, то как расчитать здесь

  11. #289
    Аватар для DeimoS
    Модератор?

    Статус
    Оффлайн
    Регистрация
    27.01.2014
    Адрес
    Восточный Мордор
    Сообщений
    5,588
    Репутация:
    1984 ±
    Я в статье объяснял как нужно рассчитывать и составлять формулу.
    Связаться со мной в VK можно через личные сообщения этой группы
    Заказы не принимаю

    Широко известно, что идеи стоят 0.8333 цента каждая (исходя из рыночной цены 10 центов за дюжину).
    Великих идей полно, на них нет спроса.
    Воплощение идеи в законченную игру требует долгой работы,
    таланта, терпения и креативности, не говоря уж о затратах денег, времени и ресурсов.
    Предложить идею просто, воплотить – вот в чём проблема

    Steve Pavlina

  12. #290
    Аватар для MefiS
    Пользователь

    Статус
    Оффлайн
    Регистрация
    07.11.2017
    Сообщений
    2
    Репутация:
    0 ±
    Здравствуйте, у меня есть несколько вопросов, как я уже сказал, вашей системе регистрации. Сразу предупреждаю, что я новичок в pawn и вообще программировании. Вообщем, я так и не понял почему не стоит делать сохранение имени и пароля при дисконнекте игрока. Потом, я хотел добавить свой массив в enum pInfo, в который будет содержать либо "да" либо "нет"(1/0 соответственно), выделил для него размер один символ и в итоге выдает ошибку(warning 215: expression has no effect), в коде, мне кажется, все в порядке, хотя может быть вот эти фунции pInfo[playerid][pNation][0] = EOS и strins(pInfo[playerid][pNation][0], "1", 0) виноваты. Я так и не понял, что означает [0] после [pNation], может быть проблема в нем? Когда выделяю побольше размер массивуработает все без проблем, но это же вроде как не правильно. И последний вопрос, я понапихал кучу массивов с данными в pIfnfo, стоит ли так делать? Может стоит как то оптимизировать все это?

 

 
Страница 29 из 31 ПерваяПервая ... 19 27 28 29 30 31 ПоследняяПоследняя

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •