• Страница 1 из 1
  • 1
Модератор форума: drifter-dron, admin, TweIk  
Ещё раз прошу помошь
h656Дата: Среда, 03.08.2011, 11:57:23 | Сообщение # 1

Группа: Пользователи
Сообщений: 23
Сделал регистрацию, не сохраняет: Member, ну назначаю себя лидером, в файле пишит Leader = 1 а Member не пишит, и Rank тоже не пишит, и ещё хочу спросить я прописал инфо спавна (паблик spawn)почему-то не появляется перс...хелп
Code
public OnPlayerConnect(playerid)
{
   new string[128];
   PlayerInfo[playerid][pMoney] = 0;
   PlayerInfo[playerid][pLevel] = 1;
   PlayerInfo[playerid][pChar] = 0;
   PlayerInfo[playerid][pMember] = 0;
   PlayerInfo[playerid][pAdmin] = 0;
   PlayerInfo[playerid][pLeader] = 0;
   PlayerInfo[playerid][pRank] = 0;
      format(string,sizeof(string),AccauntBD,PlayerName(playerid));
      if(fexist(string)) // ищем файл игрока
   {
          ShowPlayerLoginDialog(playerid); // если он есть открываем диолог логина
      }
   else
   {
     ShowPlayerRegisterDialog(playerid); // если его нет открываем диолог регистрации
    }
   return 1;
}
public OnPlayerDisconnect(playerid, reason)
{
   OnPlayerSave(playerid); // сохраняет акк игрока при выходе с сервера
   return 1;
}

public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
      if(dialogid == DIALOG_LOGIN) // диалог логина
      {
          if(!response) Kick(playerid);
          if(strlen(inputtext) == 0) return ShowPlayerLoginDialog(playerid);
          OnPlayerLogged(playerid, inputtext);
          return 1;
          }
   if(dialogid == DIALOG_REGISTER) // диалог регистрации
      {
          if(!response) Kick(playerid);
          if(strlen(inputtext) == 0) return ShowPlayerRegisterDialog(playerid);
          ShowPlayerDialog(playerid,10,DIALOG_STYLE_MSGBOX,"Регистрация","Какого пола будет ваш персонаж:","Мужского","Женского");
      PlayerPlaySound(playerid, 1185, 0.0, 0.0, 0.0);
          OnPlayerRegistered(playerid, inputtext);
          return 1;
      }
      if(dialogid == 10)
      {
      switch(listitem)
      {
      case 0:
      {
      SendClientMessage(playerid,COLOR_GREY, "Вы выбрали Мужской пол");
      SetPlayerSkin(playerid,26);
      }
      case 1:
      {
      SendClientMessage(playerid,COLOR_GREY, "Вы выбрали Женский пол");
      SetPlayerSkin(playerid,12);
      }
   }
   }
      return 1;
      }
      public OnPlayerRegistered(playerid, password[])
{
      new IP[24],strdate[24],string[128];
      new year,month,day;
   getdate(year, month, day);
      GetPlayerIp(playerid, IP, sizeof(IP));

      format(string,sizeof(string),AccauntBD,PlayerName(playerid));
      new iniFile = ini_createFile(string);
      if(iniFile < 0)
      iniFile = ini_openFile(string);
      ini_setString(iniFile, "Password",password);
   format(strdate, sizeof(strdate), "%d/%d/%d",day,month,year);
   ini_setString(iniFile, "RegDate", strdate);
   ini_setString(iniFile, "IP",IP);
    ini_setInteger(iniFile,"Money",0);
   ini_setInteger(iniFile,"Level",1);
   ini_setInteger(iniFile,"Skin",0);
   ini_setInteger(iniFile,"Member",0);
   ini_setInteger(iniFile,"AdminLevel",0);
   ini_setInteger(iniFile,"Leader",0);
   ini_setInteger(iniFile,"Rank",0);
      ini_closeFile(iniFile);
      OnPlayerLogged(playerid,password);
      format(string,sizeof(string), "Вы зарегистрировались и автоматически залогинились. Ваш пароль: %s .",password);
      SendClientMessage(playerid,COLOR_ORANGE,string);
      SpawnPlayer(playerid);
      return 1;
      }
public OnPlayerLogged(playerid, password[])
{
   new string[128];
      format(string,sizeof(string),AccauntBD,PlayerName(playerid));
      new iniFile = ini_openFile(string);
      ini_getString(iniFile, "Password",string);
      if(strcmp(string,password, true, 10) == 0)
   {
          ini_getInteger(iniFile,"Money",PlayerInfo[playerid][pMoney]);
          ini_getInteger(iniFile,"Level",PlayerInfo[playerid][pLevel]);
    ini_getInteger(iniFile,"Skin",PlayerInfo[playerid][pChar]);
    ini_getInteger(iniFile,"Member",PlayerInfo[playerid][pMember]);
    ini_getInteger(iniFile,"AdminLevel",PlayerInfo[playerid][pAdmin]);
    ini_getInteger(iniFile,"Leader",PlayerInfo[playerid][pLeader]);
    ini_getInteger(iniFile,"Rank",PlayerInfo[playerid][pRank]);
          ini_closeFile(iniFile);
          GivePlayerMoney(playerid,PlayerInfo[playerid][pMoney]);
          SetPlayerScore(playerid,PlayerInfo[playerid][pLevel]);
      }
   else
   {
          ShowPlayerLoginDialog(playerid);
          SendClientMessage(playerid,COLOR_RED,"Неверный пароль. Попробуйте еще раз");
          ini_closeFile(iniFile);
      }
      return 1;
}

public OnPlayerSave(playerid)
{
   new string[128];
      format(string,sizeof(string),AccauntBD,PlayerName(playerid));
      new iniFile = ini_openFile (string);
          ini_setInteger(iniFile,"Money",PlayerInfo[playerid][pMoney]);
          ini_setInteger(iniFile,"Level",PlayerInfo[playerid][pLevel]);
    ini_setInteger(iniFile,"Skin",PlayerInfo[playerid][pChar]);
    ini_setInteger(iniFile,"Member",PlayerInfo[playerid][pMember]);
    ini_setInteger(iniFile,"AdminLevel",PlayerInfo[playerid][pAdmin]);
    ini_setInteger(iniFile,"Leader",PlayerInfo[playerid][pLeader]);
    ini_setInteger(iniFile,"Rank",PlayerInfo[playerid][pRank]);
      ini_closeFile(iniFile);
      return 1;
}

public ShowPlayerRegisterDialog(playerid) // тут изменять то что  пишет игроку если он первый раз на сервере
{
   new string[256];
   format(string,sizeof(string), "Добро пожаловать на сервер!\nПожалуйста зарегистрируйтесь ваш ник '%s'\nвведите пароль и нажмите 'Ок'",PlayerName(playerid));
      ShowPlayerDialog(playerid, DIALOG_REGISTER, DIALOG_STYLE_INPUT, "Регистрация:", string, "Ок", "Выход");
   return 1;
}

public ShowPlayerLoginDialog(playerid) // тут изменять то что пишет игроку если он уже зареган
{
    new string[256];
   format(string,sizeof(string), "Здраствуйте %s вы здесь уже зарегистрированы\nпожалуйтса введите свой пароль\nуказанный при регистрации в окошко ниже",PlayerName(playerid));
      ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_INPUT, "Авторизация:", string, "Ок", "Выход");
   return 1;
}

stock PlayerName(playerid) // функция узнающая име игрока (автора не знаю)
{
   new name[MAX_PLAYER_NAME];
   GetPlayerName(playerid,name,sizeof(name));
   return name;
}
public OnPlayerSpawn(playerid)
{
      if (PlayerInfo[playerid][pMember] == 0)
      {
          SetPlayerPos(playerid, 1958.3783, 1343.1572, 15.3746);
    SetPlayerFacingAngle(playerid, 0);
    SetPlayerInterior(playerid, 0);
    SetPlayerVirtualWorld(playerid, 0);
    return 1;
   }
   }


Сообщение отредактировал h656 - Среда, 03.08.2011, 11:57:53
 
СообщениеСделал регистрацию, не сохраняет: Member, ну назначаю себя лидером, в файле пишит Leader = 1 а Member не пишит, и Rank тоже не пишит, и ещё хочу спросить я прописал инфо спавна (паблик spawn)почему-то не появляется перс...хелп
Code
public OnPlayerConnect(playerid)
{
   new string[128];
   PlayerInfo[playerid][pMoney] = 0;
   PlayerInfo[playerid][pLevel] = 1;
   PlayerInfo[playerid][pChar] = 0;
   PlayerInfo[playerid][pMember] = 0;
   PlayerInfo[playerid][pAdmin] = 0;
   PlayerInfo[playerid][pLeader] = 0;
   PlayerInfo[playerid][pRank] = 0;
      format(string,sizeof(string),AccauntBD,PlayerName(playerid));
      if(fexist(string)) // ищем файл игрока
   {
          ShowPlayerLoginDialog(playerid); // если он есть открываем диолог логина
      }
   else
   {
     ShowPlayerRegisterDialog(playerid); // если его нет открываем диолог регистрации
    }
   return 1;
}
public OnPlayerDisconnect(playerid, reason)
{
   OnPlayerSave(playerid); // сохраняет акк игрока при выходе с сервера
   return 1;
}

public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
      if(dialogid == DIALOG_LOGIN) // диалог логина
      {
          if(!response) Kick(playerid);
          if(strlen(inputtext) == 0) return ShowPlayerLoginDialog(playerid);
          OnPlayerLogged(playerid, inputtext);
          return 1;
          }
   if(dialogid == DIALOG_REGISTER) // диалог регистрации
      {
          if(!response) Kick(playerid);
          if(strlen(inputtext) == 0) return ShowPlayerRegisterDialog(playerid);
          ShowPlayerDialog(playerid,10,DIALOG_STYLE_MSGBOX,"Регистрация","Какого пола будет ваш персонаж:","Мужского","Женского");
      PlayerPlaySound(playerid, 1185, 0.0, 0.0, 0.0);
          OnPlayerRegistered(playerid, inputtext);
          return 1;
      }
      if(dialogid == 10)
      {
      switch(listitem)
      {
      case 0:
      {
      SendClientMessage(playerid,COLOR_GREY, "Вы выбрали Мужской пол");
      SetPlayerSkin(playerid,26);
      }
      case 1:
      {
      SendClientMessage(playerid,COLOR_GREY, "Вы выбрали Женский пол");
      SetPlayerSkin(playerid,12);
      }
   }
   }
      return 1;
      }
      public OnPlayerRegistered(playerid, password[])
{
      new IP[24],strdate[24],string[128];
      new year,month,day;
   getdate(year, month, day);
      GetPlayerIp(playerid, IP, sizeof(IP));

      format(string,sizeof(string),AccauntBD,PlayerName(playerid));
      new iniFile = ini_createFile(string);
      if(iniFile < 0)
      iniFile = ini_openFile(string);
      ini_setString(iniFile, "Password",password);
   format(strdate, sizeof(strdate), "%d/%d/%d",day,month,year);
   ini_setString(iniFile, "RegDate", strdate);
   ini_setString(iniFile, "IP",IP);
    ini_setInteger(iniFile,"Money",0);
   ini_setInteger(iniFile,"Level",1);
   ini_setInteger(iniFile,"Skin",0);
   ini_setInteger(iniFile,"Member",0);
   ini_setInteger(iniFile,"AdminLevel",0);
   ini_setInteger(iniFile,"Leader",0);
   ini_setInteger(iniFile,"Rank",0);
      ini_closeFile(iniFile);
      OnPlayerLogged(playerid,password);
      format(string,sizeof(string), "Вы зарегистрировались и автоматически залогинились. Ваш пароль: %s .",password);
      SendClientMessage(playerid,COLOR_ORANGE,string);
      SpawnPlayer(playerid);
      return 1;
      }
public OnPlayerLogged(playerid, password[])
{
   new string[128];
      format(string,sizeof(string),AccauntBD,PlayerName(playerid));
      new iniFile = ini_openFile(string);
      ini_getString(iniFile, "Password",string);
      if(strcmp(string,password, true, 10) == 0)
   {
          ini_getInteger(iniFile,"Money",PlayerInfo[playerid][pMoney]);
          ini_getInteger(iniFile,"Level",PlayerInfo[playerid][pLevel]);
    ini_getInteger(iniFile,"Skin",PlayerInfo[playerid][pChar]);
    ini_getInteger(iniFile,"Member",PlayerInfo[playerid][pMember]);
    ini_getInteger(iniFile,"AdminLevel",PlayerInfo[playerid][pAdmin]);
    ini_getInteger(iniFile,"Leader",PlayerInfo[playerid][pLeader]);
    ini_getInteger(iniFile,"Rank",PlayerInfo[playerid][pRank]);
          ini_closeFile(iniFile);
          GivePlayerMoney(playerid,PlayerInfo[playerid][pMoney]);
          SetPlayerScore(playerid,PlayerInfo[playerid][pLevel]);
      }
   else
   {
          ShowPlayerLoginDialog(playerid);
          SendClientMessage(playerid,COLOR_RED,"Неверный пароль. Попробуйте еще раз");
          ini_closeFile(iniFile);
      }
      return 1;
}

public OnPlayerSave(playerid)
{
   new string[128];
      format(string,sizeof(string),AccauntBD,PlayerName(playerid));
      new iniFile = ini_openFile (string);
          ini_setInteger(iniFile,"Money",PlayerInfo[playerid][pMoney]);
          ini_setInteger(iniFile,"Level",PlayerInfo[playerid][pLevel]);
    ini_setInteger(iniFile,"Skin",PlayerInfo[playerid][pChar]);
    ini_setInteger(iniFile,"Member",PlayerInfo[playerid][pMember]);
    ini_setInteger(iniFile,"AdminLevel",PlayerInfo[playerid][pAdmin]);
    ini_setInteger(iniFile,"Leader",PlayerInfo[playerid][pLeader]);
    ini_setInteger(iniFile,"Rank",PlayerInfo[playerid][pRank]);
      ini_closeFile(iniFile);
      return 1;
}

public ShowPlayerRegisterDialog(playerid) // тут изменять то что  пишет игроку если он первый раз на сервере
{
   new string[256];
   format(string,sizeof(string), "Добро пожаловать на сервер!\nПожалуйста зарегистрируйтесь ваш ник '%s'\nвведите пароль и нажмите 'Ок'",PlayerName(playerid));
      ShowPlayerDialog(playerid, DIALOG_REGISTER, DIALOG_STYLE_INPUT, "Регистрация:", string, "Ок", "Выход");
   return 1;
}

public ShowPlayerLoginDialog(playerid) // тут изменять то что пишет игроку если он уже зареган
{
    new string[256];
   format(string,sizeof(string), "Здраствуйте %s вы здесь уже зарегистрированы\nпожалуйтса введите свой пароль\nуказанный при регистрации в окошко ниже",PlayerName(playerid));
      ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_INPUT, "Авторизация:", string, "Ок", "Выход");
   return 1;
}

stock PlayerName(playerid) // функция узнающая име игрока (автора не знаю)
{
   new name[MAX_PLAYER_NAME];
   GetPlayerName(playerid,name,sizeof(name));
   return name;
}
public OnPlayerSpawn(playerid)
{
      if (PlayerInfo[playerid][pMember] == 0)
      {
          SetPlayerPos(playerid, 1958.3783, 1343.1572, 15.3746);
    SetPlayerFacingAngle(playerid, 0);
    SetPlayerInterior(playerid, 0);
    SetPlayerVirtualWorld(playerid, 0);
    return 1;
   }
   }

Автор - h656
Дата добавления - 03.08.2011 в 11:57:23
drifter-dronДата: Среда, 03.08.2011, 15:45:43 | Сообщение # 2

Группа: Пользователи
Сообщений: 477
Тема закрыта!!
Читай правила.


Пишу любые несложные скрипты))
Обращайтесь..
Цена: от 10 рублей))
 
СообщениеТема закрыта!!
Читай правила.

Автор - drifter-dron
Дата добавления - 03.08.2011 в 15:45:43
  • Страница 1 из 1
  • 1
Поиск:
Загрузка страницы, займет меньше минуты...
Загрузка...

Статистика Форума
Последнии темы Читаемые темы Лучшие пользователи Новые пользователи
Система телефонов поломалась
Не в себе
фильм скалайн
Трансформеры 3
форсаж 6
Ищу [FS]Для админок на сервер
нужны координаты карты для отметки зон...
Помогите найти мод
pawno урок автоматические ворота
обращение к скриптерам.
Вопросы по скриптингу
Ваши ошибки при компиляции GM/FS

Вопросы по скриптингу

(1081)

Считаем до 1000

(274)

Ваши ошибки при компиляция gm

(260)

Набор в команду

(80)

Ваши ошибки при компиляции GM/FS

(71)

вопроосы по скриптингу от 22.04.2013

(64)

Баннеробмен

(64)

несколько команд на samp 0.3 c

(64)

Оценки сайта samp-pawno.ru

(55)

Заказ хостинга

(51)

Набор в команду(форум)

(45)

Урок №61 по созданию системы авто для GodFather

(45)

admin

(3869)

[east_side]_trane

(443)

TWiX

(316)

valych

(501)

drifter-dron

(477)

danik_rok

(317)

Dimka_71rus

(360)

Drifter96

(300)

MaNb9K

(220)

[MTA]MaPeR5518

(181)

Dima_Tkach

(107)

Nik_Ull

(184)

ps798829

(Среда 08:23:47)

system32xzxz

(Четверг 09:25:24)

torbin169

(Суббота 23:09:29)

kuchuk_00

(Суббота 17:10:14)

artem_boyko_3

(Суббота 15:57:37)

greggelbak

(Среда 18:29:37)

vladisvlavs

(Среда 13:51:57)

add02102002

(Понедельник 22:37:15)

Диман221

(Понедельник 18:12:45)

almas051004

(Воскресенье 11:05:32)

megasuccessms

(Суббота 14:15:36)

nawe

(Пятница 22:25:23)

Вверх
12:19:57
ОбновитьСмайлыУправление мини-чатом
ЧАТ-PAWNO
2010-2026

vkontakte :samp-pawno.ru: