shape1
shape2
shape3
shape4
shape7
shape8

Сдача с повинной MYSQL


1iJack

Новичок
Пользователь
25.12.2017
0
1
0
Всем привет, решил чисто для себя делать сборочку сервера, вдруг что-то годное выйдет, но не суть... Так вот, хотел я сделать себе такую вещь как сдача с повинной, расскажу суть:

1) Игрок с розыском приходит в отделение полиции

2) Встает на пикап

3) Ему показывается диалог с подтверждением

4) Он автоматически попадает в тюрьму

Эта моя первая работа которую я прям сам сделал, то есть по форумам никаким не лазил, а все делал сам. Прошу судить не строго, так как в этой теме недавно.

Не откажусь на указания ошибок и недочетов.

Сразу скажу, что возможно эта система подойдет не всем, но на сборку Grand Fiero RP точно пойдет.

[data_WANTED] , [data_NAME], [data_JAIL], [data_JAILTIME],PLAYER_DATA Меняете на свое!

Может пригодится кому...

И так приступим к созданию:

Ко всем define:

Код:
#define COLOR_WARNING  0xFF6600FF
#define COLOR_BLUE     0x33AAFFFF
Kо всем new:
Код:
new pickup_sdacha;
Ко всем названиям диалогов:
Код:
dialog_sdacha
В public ongamemodeinit:


Код:
pickup_sdacha = CreateDynamicPickup(1247, 23, 641.2232,1787.0801,-8.9141, 1); //координаты и виртуальный мир меняете на свой
Create3DTextLabel("{FF6633}Сдача с повинной", -1, 641.2232,1787.0801,-8.9141, 10.0, 1); //координаты и виртуальный мир меняете на свой
В public OnPlayerPickUpDynamicPickup:

Код:
if(pickupid == pickup_sdacha)
{
	if(PLAYER_DATA[playerid][data_WANTED] == 0) return SendClientMessage(playerid,COLOR_WARNING,"Вы не в розыске!");
	ShowPlayerDialogFix(playerid, dialog_sdacha, DIALOG_STYLE_MSGBOX, "{FFCC00}Сдача с повинной", "{FFFFFF}Вы действительно хотите сдаться полиции?", "Далее", "Отмена");
	return true;
}
В public OnDialogResponse:
Код:
		case dialog_sdacha:
		    {
  		    if(!response)
  		    {
  		        SendClientMessage(playerid,COLOR_BLUE,"Вы отказались сдаться!");
  			return true;
		    }
  		    if(response)
  		    {
        	          if(PLAYER_DATA[playerid][data_WANTED] >= 1)
		          {
			       PLAYER_DATA[playerid][data_JAIL] = 1;
			       PLAYER_DATA[playerid][data_JAILTIME] = 600*PLAYER_DATA[playerid][data_WANTED];
			       PLAYER_DATA[playerid][data_WANTED] = 0;
			       UnfreezePlayer(playerid);
			       SetPlayerWantedLevel(playerid,PLAYER_DATA[playerid][data_WANTED]);
			       SetPlayerSpawn(playerid);
			       SetPlayerSpecialAction(playerid, 0);
			       new text[145];
			       format(text,sizeof(text),"%s сдался полиции!",PLAYER_DATA[playerid][data_NAME]);
			       SendClientMessageToAll(COLOR_AC,text);
 		          }
		     }
		}
Автор: 1iJack (Я)
 
Последнее редактирование модератором:

1iJack

Новичок
Пользователь
25.12.2017
0
1
0
Прошу модераторов добавить 

ко всем define

#define COLOR_BLUE              0x33AAFFFF

и заменить 

 SendClientMessage(playerid,COLOR_BLUE,"Âû îòêàçàëèñü ñäàòüñÿ!");

на

SendClientMessage(playerid,COLOR_BLUE,"Вы отказались сдаться!");