Доступ к архиву

Переход в группу "Пользователь"

300.00 ₽
Одноразовый платёж
Быстрый переход в группу "Пользователи", без надобности написания постов и ожидания.

Покупка дает возможность:
Быть полноправным участником форума
Нормальное копирование кода
Создавать темы
Скачивать файлы
Доступ к архиву Pawno-Info

[Мануал] Делаем /gmenu и /mmenu

Статус
В этой теме нельзя размещать новые ответы.

Smoke...

Умник
Здравствуйте, ув. пользователи Pawno-Info.
Вот выкладую для вас /gmenu and /mmenu, которые правильно работают.

В модах: Life Samp | Fortune-Rp | Rezone-Rp есть баг, 1 ранг может брать деньги с банка банды/мафии. 1 ранг может брать материалы со склада банды/мафии. 1 ранг может продавать материалы мафиям. # А в данном < Мануале > это исправленно. Только лидер может брать деньги с банка, 5 ранг может брать материалы со склада, 9-10 ранг может продавать материалы мафиям (В вагос 10-11).

Автор команд: "Crazy_Str"
Create: "Smoke..."

Начнём...


В public OnPlayerCommandText(playerid, cmdtext[]) дописуем 2 команды:

PHP:
//=======================================================================
	if(strcmp(cmd,"/gmenu", true)== 0)
	    {
	        if(IsPlayerConnected(playerid))
	        {
	            if(PlayerInfo[playerid][pMember] == 12 || PlayerInfo[playerid][pMember] == 13 || PlayerInfo[playerid][pMember] == 15 || PlayerInfo[playerid][pMember] == 17 || PlayerInfo[playerid][pMember] == 18)
	            SPD(playerid,9595,2," ","[1] - Положить материалы на склад банды\n[2] - Взять материалы со склада банды\n[3] - Проверить склад материалов\n[4] - Положить деньги в банк банды\n[5] - Снять деньги с банка банды\n[6] - Проверить банк банды\n[7] - Продажа материалов", "Выбрать", "Отмена");
	            return true;
			}
		}
//=======================================================================
	if(strcmp(cmd,"/mmenu", true)== 0)
		{
		    if(IsPlayerConnected(playerid))
		    {
		        if(PlayerInfo[playerid][pMember] == 6 || PlayerInfo[playerid][pMember] == 14 || PlayerInfo[playerid][pMember] == 5)
		        SPD(playerid,9596,2," ","1. Проверить банк мафии\n2. Пополнить банк мафии \n3. Снять деньги с банка мафии\n4. Проверить склад мафии\n5. Захваченные бизнесы", "»", "X");
		        return true;
			}
  		}
//=======================================================================
В public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[]) дописуем:

PHP:
//=====================[ /gmenu /mmenu ]========================================
		case 9596:
				{
				    if(response)
				    {
						switch(listitem)
						{
						    case 0:
							{
			   					switch(PlayerInfo[playerid][pMember])
								{
									case 6: SendMes(playerid,0x6495EDFF, "В банке Yakuza: %d вирт", MafiaBank[0][nYakuza]);
			  		 				case 14: SendMes(playerid,0x6495EDFF, "В банке Russian Mafia: %d вирт", MafiaBank[0][nRm]);
									case 5: SendMes(playerid,0x6495EDFF, "В банке мафии La Cosa Nostra: %d вирт", MafiaBank[0][nLcn]);
								}
							}
							case 1: SPD(playerid,22255,1,"Введите сумму которую вы хотите положить","Пополнение счета банка мафии","Oк","X");
							case 2: SPD(playerid,22256,1,"Введите сумму которую вы хотите снять","Снятие денег с банка мафии","Oк","X");
							case 3:
							{
								switch(PlayerInfo[playerid][pMember])
								{
									case 6: SendMes(playerid,0x6495EDFF, "На складе мафии: %d материалов", yakuzamats);
									case 5: SendMes(playerid,0x6495EDFF, "На складе мафии: %d материаловов", lcnmats);
									case 14: SendMes(playerid,0x6495EDFF, "На складе мафии: %d материалов", rmmats);
								}
							}
							case 4:
							{
								for(new h = 0; h < sizeof(BizzInfo); h++)
								{
									switch(PlayerInfo[playerid][pMember])
									{
										case 6:
										{
				                    		format(string, sizeof(string), "");
				                    		if (BizzInfo[h][bMafia] == 6)format(string, sizeof(string), "- %s",BizzInfo[h][bMessage]);
				                    		if (strlen(string) > 1)SendClientMessage(playerid, COLOR_YELLOW2, string);
				    					}
				    					case 5:
										{
				                    		format(string, sizeof(string), "");
				                    		if (BizzInfo[h][bMafia] == 5) format(string, sizeof(string), "- %s",BizzInfo[h][bMessage]);
				                    		if (strlen(string) > 1) SendClientMessage(playerid, COLOR_YELLOW2, string);
				    					}
				    					case 14:
										{
				                    		format(string, sizeof(string), "");
				                    		if (BizzInfo[h][bMafia] == 14) format(string, sizeof(string), "- %s",BizzInfo[h][bMessage]);
				                   			if (strlen(string) > 1) SendClientMessage(playerid, COLOR_YELLOW2, string);
										}
									}
				    			}
							}
						}
					}
					return true;
				}
				case 9595:
			    {
			        if(response)
			        {
			            switch(listitem)
			            {
			                case 0: SPD(playerid,22249,1,"Введите кол-во материалов","Положить материалы на склад","Oк","X");
			                case 1: SPD(playerid,22248,1,"Введите кол-во материалов","Взять материалы со склада","Oк","X");
							case 2:
							{
								switch(PlayerInfo[playerid][pMember])
								{
									case 12: SendMes(playerid,0x6495EDFF, "На складе вашей банды: %d материалов", ballasmatbi);
									case 13: SendMes(playerid,0x6495EDFF, "На складе вашей банды: %d материалов", vagosmatbi);
			            			case 15: SendMes(playerid,0x6495EDFF, "На складе вашей банды: %d материалов", groovmatbi);
				    				case 17: SendMes(playerid,0x6495EDFF, "На складе вашей банды: %d материалов", aztekmatbi);
									case 18: SendMes(playerid,0x6495EDFF, "На складе вашей банды: %d материалов", rifamatbi);
								}
							}
							case 3: SPD(playerid,22250,1,"Введите сумму которую вы хотите положить","Пополнение счета банка банды","Oк","X");
							case 4: SPD(playerid,22251,1,"Введите сумму которую вы хотите снять","Снятие денег с банка банды","Oк","X");
							case 5:
							{
								switch(PlayerInfo[playerid][pMember])
								{
									case 15: SendMes(playerid,0x6495EDFF, "В банке Grove: %d вирт", FracBank[0][fGrove]);
					 				case 12: SendMes(playerid,0x6495EDFF, "В банке Ballas: %d вирт", FracBank[0][fBallas]);
									case 13: SendMes(playerid,0x6495EDFF, "В банке Vagos: %d вирт", FracBank[0][fVagos]);
									case 17: SendMes(playerid,0x6495EDFF, "В банке Aztec: %d вирт", FracBank[0][fAztek]);
									case 18: SendMes(playerid,0x6495EDFF, "В банке Rifa: %d вирт", FracBank[0][fRifa]);
								}
							}
							case 6: SPD(playerid,30004,2,"Продажа материалов","[1] - Russian Mafia\n[2] - Yakuza\n[3] - La Cosa Nostra","»","X");
						}
					}
					else
					{
					    return true;
					}
				}
				case 22250:
				{
				    if(response)
				    {
						switch(PlayerInfo[playerid][pMember])
						{
				        	case 15:
				        	{
				        		if(!strlen(inputtext)) return SPD(playerid,22250,1,"Введите сумму которую вы хотите положить","Пополнение счета банка банды","Oк","X");
								new dengi;
								dengi = strval(inputtext);
								if(dengi < 1 || dengi > 1000000) return SPD(playerid,22250,1,"Введите сумму которую вы хотите положить","Пополнение счета банка банды","Oк","X"), SendClientMessage(playerid,COLOR_GRAD1,"Нельзя пополнить счет меньше чем 1 и больше 1000000 вирт");
								if(PlayerInfo[playerid][pCash] < dengi) return SendClientMessage(playerid,COLOR_GRAD1,"[Ошибка]: Вы не имеете столько денег!");
								FracBank[0][fGrove] += dengi;
								PlayerInfo[playerid][pCash] -= dengi;
								SendMes(playerid,0x6495EDFF, "Вы положили в банк {228B22}Grove Street Gang: %d вирт", dengi);
								SaveBankFrac();
							}
							case 12:
							{
				        		if(!strlen(inputtext)) return SPD(playerid,22250,1,"Введите сумму которую вы хотите положить","Пополнение счета банка банды","Oк","X");
								new dengi;
								dengi = strval(inputtext);
								if(dengi < 1 || dengi > 1000000) return SPD(playerid,22250,1,"Введите сумму которую вы хотите положить","Пополнение счета банка банды","Oк","X"), SendClientMessage(playerid,COLOR_GRAD1,"Нельзя пополнить счет меньше чем 1 и больше 1000000 вирт");
								if(PlayerInfo[playerid][pCash] < dengi) return SendClientMessage(playerid,COLOR_GRAD1,"[Ошибка]: Вы не имеете столько денег!");
								FracBank[0][fBallas] += dengi;
								PlayerInfo[playerid][pCash] -= dengi;
								SendMes(playerid,0x6495EDFF, "Вы положили в банк {9932CC}Ballas Gang: %d вирт", dengi);
								SaveBankFrac();
							}
							case 18:
							{
				        		if(!strlen(inputtext)) return SPD(playerid,22250,1,"Введите сумму которую вы хотите положить","Пополнение счета банка банды","Oк","X");
								new dengi;
								dengi = strval(inputtext);
								if(dengi < 1 || dengi > 1000000) return SPD(playerid,22250,1,"Введите сумму которую вы хотите положить","Пополнение счета банка банды","Oк","X"), SendClientMessage(playerid,COLOR_GRAD1,"Нельзя пополнить счет меньше чем 1 и больше 1000000 вирт");
								if(PlayerInfo[playerid][pCash] < dengi) return SendClientMessage(playerid,COLOR_GRAD1,"[Ошибка]: Вы не имеете столько денег!");
								FracBank[0][fRifa] += dengi;
								PlayerInfo[playerid][pCash] -= dengi;
								SendMes(playerid,0x6495EDFF, "Вы положили в банк {4682B4}Rifa Gang: %d вирт", dengi);
								SaveBankFrac();
							}
							case 13:
							{
				        		if(!strlen(inputtext)) return SPD(playerid,22250,1,"Введите сумму которую вы хотите положить","Пополнение счета банка банды","Oк","X");
								new dengi;
								dengi = strval(inputtext);
								if(dengi < 1 || dengi > 1000000) return SPD(playerid,22250,1,"Введите сумму которую вы хотите положить","Пополнение счета банка банды","Oк","X"), SendClientMessage(playerid,COLOR_GRAD1,"Нельзя пополнить счет меньше чем 1 и больше 1000000 вирт");
								if(PlayerInfo[playerid][pCash] < dengi) return SendClientMessage(playerid,COLOR_GRAD1,"[Ошибка]: Вы не имеете столько денег!");
								FracBank[0][fVagos] += dengi; // Деньги добавятся в банк
								PlayerInfo[playerid][pCash] -= dengi; // Снятие денег с налички
								SendMes(playerid,0x6495EDFF, "Вы положили в банк {FFD700}Los Santos Vagos Gang: %d вирт", dengi); // SendMes - это оптимизация by Artur. Выводим в чат игроку.
								SaveBankFrac(); // Сохранение
							}
							case 17:
							{
				        		if(!strlen(inputtext)) return SPD(playerid,22250,1,"Введите сумму которую вы хотите положить","Пополнение счета банка банды","Oк","X");
								new dengi;
								dengi = strval(inputtext);
								if(dengi < 1 || dengi > 1000000) return SPD(playerid,22250,1,"Введите сумму которую вы хотите положить","Пополнение счета банка банды","Oк","X"), SendClientMessage(playerid,COLOR_GRAD1,"Нельзя пополнить счет меньше чем 1 и больше 1000000 вирт");
								if(PlayerInfo[playerid][pCash] < dengi) return SendClientMessage(playerid,COLOR_GRAD1,"[Ошибка]: Вы не имеете столько денег!");
								FracBank[0][fAztek] += dengi;
								PlayerInfo[playerid][pCash] -= dengi;
								SendMes(playerid,0x6495EDFF, "Вы положили в банк {40E0D0}Varios Los Aztecas Gang: %d вирт", dengi);
								SaveBankFrac();
							}
						}
					}
					return true;
				}
				case 22255:
				{
				    new name [24];
				    GetPlayerName(playerid, name, sizeof(name));
				    if(response)
				    {
				        switch(PlayerInfo[playerid][pMember])
				        {
			        		case 6:
				        	{
				        		if(!strlen(inputtext)) return SPD(playerid,22255,1,"Введите сумму которую вы хотите положить","Пополнение счета банка мафии","Oк","X");
								new dengi;
								dengi = strval(inputtext);
								if(dengi < 1 || dengi > 1000000) return SPD(playerid,22255,1,"Введите сумму которую вы хотите положить","Пополнение счета банка мафии","Oк","X"), SendClientMessage(playerid,COLOR_GRAD1,"Нельзя пополнить счет меньше чем 1 и больше 1000000 вирт");
								if(PlayerInfo[playerid][pCash] < dengi) return SendClientMessage(playerid,COLOR_GRAD1,"[Ошибка]: Вы не имеете столько денег!");
								PlayerInfo[playerid][pCash] -= dengi;
								MafiaBank[0][nYakuza] += dengi;
								SendMes(playerid, 0x6495EDFF, "Вы положили в банк мафии {FF0000}Yakuza: %d вирт", dengi);
								SaveBankMafia();
								return true;
							}
							case 14:
							{
							    if(!strlen(inputtext)) return SPD(playerid,22255,1,"Введите сумму которую вы хотите положить","Пополнение счета банка мафии","Oк","X");
								new dengi;
								dengi = strval(inputtext);
								if(dengi < 1 || dengi > 1000000) return SPD(playerid,22255,1,"Введите сумму которую вы хотите положить","Пополнение счета банка мафии","Oк","X"), SendClientMessage(playerid,COLOR_GRAD1,"Нельзя пополнить счет меньше чем 1 и больше 1000000 вирт");
								if(PlayerInfo[playerid][pCash] < dengi) return SendClientMessage(playerid,COLOR_GRAD1,"[Ошибка]: Вы не имеете столько денег!");
								PlayerInfo[playerid][pCash] -= dengi;
								MafiaBank[0][nRm] += dengi;
								SendMes(playerid, 0x6495EDFF, "Вы положили в банк {DCDCDC}Russian Mafia: %d вирт", dengi);
								SaveBankMafia();
								return true;
							}
							case 5:
							{
							    if(!strlen(inputtext)) return SPD(playerid,22255,1,"Введите сумму которую вы хотите положить","Пополнение счета банка мафии","Oк","X");
								new dengi;
								dengi = strval(inputtext);
								if(dengi < 1 || dengi > 1000000) return SPD(playerid,22255,1,"Введите сумму которую вы хотите положить","Пополнение счета банка мафии","Oк","X"), SendClientMessage(playerid,COLOR_GRAD1,"Нельзя пополнить счет меньше чем 1 и больше 1000000 вирт");
								if(PlayerInfo[playerid][pCash] < dengi) return SendClientMessage(playerid,COLOR_GRAD1,"[Ошибка]: Вы не имеете столько денег!");
								PlayerInfo[playerid][pCash] -= dengi;
			  					MafiaBank[0][nLcn] += dengi;
			  					SendMes(playerid, 0x6495EDFF, "Вы положили в банк мафии {FFD700}La Cosa Nostra: %d вирт", dengi);
								SaveBankMafia();
								return true;
							}
						}
					}
					return true;
				}
				case 22256:
				{
    				new name [24];
				    GetPlayerName(playerid, name, sizeof(name));
				    if(response)
				    {
				        switch(PlayerInfo[playerid][pMember])
				        {
			        		case 6:
				        	{
        	    				switch (PlayerInfo [playerid][pRank])
				        	    {
				        	    	case 10:
				        	    	{
						        		if(!strlen(inputtext)) return SPD(playerid,22256,1,"Введите сумму которую вы хотите снять","Снятие денег с банка мафии","Oк","X");
										new dengi;
										dengi = strval(inputtext);
										if(dengi < 1 || dengi > 1000000) return SPD(playerid,22256,1,"Введите сумму которую вы хотите снять","Снятие денег с банка мафии","Oк","X"), SendClientMessage(playerid,COLOR_GRAD1,"Нельзя снять меньше чем 1 и больше 1000000 вирт");
										if(MafiaBank[0][nYakuza] < dengi) return SendClientMessage(playerid,COLOR_GRAD1,"[Ошибка]: В банке нет столько денег!");
										PlayerInfo[playerid][pCash] += dengi;
										MafiaBank[0][nYakuza] -= dengi;
										SendMes(playerid, 0x6495EDFF, "Вы сняли с банка {FF0000}Yakuza: %d вирт", dengi);
										SaveBankMafia();
										return true;
									}
								}
							}
							case 14:
							{
  	    						switch (PlayerInfo [playerid][pRank])
				        	    {
				        	    	case 8:
				        	    	{
						        		if(!strlen(inputtext)) return SPD(playerid,22256,1,"Введите сумму которую вы хотите снять","Снятие денег с банка мафии","Oк","X");
										new dengi;
										dengi = strval(inputtext);
										if(dengi < 1 || dengi > 1000000) return SPD(playerid,22256,1,"Введите сумму которую вы хотите снять","Снятие денег с банка мафии","Oк","X"), SendClientMessage(playerid,COLOR_GRAD1,"Нельзя снять меньше чем 1 и больше 1000000 вирт");
										if(MafiaBank[0][nRm] < dengi) return SendClientMessage(playerid,COLOR_GRAD1,"[Ошибка]: В банке нет столько денег!");
										PlayerInfo[playerid][pCash] += dengi;
										MafiaBank[0][nRm] -= dengi;
										SendMes(playerid, 0x6495EDFF, "Вы сняли с банка {DCDCDC}Russian Mafia: %d вирт", dengi);
										SaveBankMafia();
										return true;
									}
								}
							}
							case 5:
							{
  	    						switch (PlayerInfo [playerid][pRank])
				        	    {
				        	    	case 10:
				        	    	{
						        		if(!strlen(inputtext)) return SPD(playerid,22256,1,"Введите сумму которую вы хотите снять","Снятие денег с банка мафии","Oк","X");
										new dengi;
										dengi = strval(inputtext);
										if(dengi < 1 || dengi > 1000000) return SPD(playerid,22256,1,"Введите сумму которую вы хотите снять","Снятие денег с банка мафии","Oк","X"), SendClientMessage(playerid,COLOR_GRAD1,"Нельзя снять меньше чем 1 и больше 1000000 вирт");
										if(MafiaBank[0][nLcn] < dengi) return SendClientMessage(playerid,COLOR_GRAD1,"[Ошибка]: В банке нет столько денег!");
										PlayerInfo[playerid][pCash] += dengi;
										MafiaBank[0][nLcn] -= dengi;
										SendMes(playerid, 0x6495EDFF, "Вы сняли с банка {FFD700}La Cosa Nostra: %d вирт", dengi);
										SaveBankMafia();
										return true;
									}
								}
							}
						}
					}
					return true;
				}
				case 22251:
				{
				    if(response)
				    {
				        switch(PlayerInfo[playerid][pMember])
				        {
			        		case 15:
				        	{
				        	    switch (PlayerInfo [playerid][pRank])
				        	    {
				        	    	case 10:
				        	    	{
						        		if(!strlen(inputtext)) return SPD(playerid,22251,1,"Введите сумму которую вы хотите снять","Снятие денег с банка банды","Oк","X");
										new dengi;
										dengi = strval(inputtext);
										if(dengi < 1 || dengi > 1000000) return SPD(playerid,22251,1,"Введите сумму которую вы хотите снять","Снятие денег с банка банды","Oк","X"), SendClientMessage(playerid,COLOR_GRAD1,"Нельзя снять меньше чем 1 и больше 1000000 вирт");
										if(FracBank[0][fGrove] < dengi) return SendClientMessage(playerid,COLOR_GRAD1,"[Ошибка]: В банке нет столько денег!");
										PlayerInfo[playerid][pCash] += dengi;
										FracBank[0][fGrove] -= dengi;
										SendMes(playerid, 0x6495EDFF, "Вы сняли с банка {228B22}Grove Street Gang: %d вирт", dengi);
										SaveBankFrac();
										return true;
									}
								}
							}
			        		case 12:
				        	{
        	    				switch (PlayerInfo [playerid][pRank])
				        	    {
				        	    	case 10:
			        	    		 {
						        		if(!strlen(inputtext)) return SPD(playerid,22251,1,"Введите сумму которую вы хотите снять","Снятие денег с банка банды","Oк","X");
										new dengi;
										dengi = strval(inputtext);
										if(dengi < 1 || dengi > 1000000) return SPD(playerid,22251,1,"Введите сумму которую вы хотите снять","Снятие денег с банка банды","Oк","X"), SendClientMessage(playerid,COLOR_GRAD1,"Нельзя снять меньше чем 1 и больше 1000000 вирт");
										if(FracBank[0][fBallas] < dengi) return SendClientMessage(playerid,COLOR_GRAD1,"[Ошибка]: В банке нет столько денег!");
										PlayerInfo[playerid][pCash] += dengi;
										FracBank[0][fBallas] -= dengi;
										SendMes(playerid, 0x6495EDFF, "Вы сняли с банка {9932CC}Ballas Gang: %d вирт", dengi);
										SaveBankFrac();
										return true;
									}
								}
							}
			        		case 13:
				        	{
        	    				switch (PlayerInfo [playerid][pRank])
				        	    {
				        	    	case 11:
				        	    	{
						        		if(!strlen(inputtext)) return SPD(playerid,22251,1,"Введите сумму которую вы хотите снять","Снятие денег с банка банды","Oк","X");
										new dengi;
										dengi = strval(inputtext);
										if(dengi < 1 || dengi > 1000000) return SPD(playerid,22251,1,"Введите сумму которую вы хотите снять","Снятие денег с банка банды","Oк","X"), SendClientMessage(playerid,COLOR_GRAD1,"Нельзя снять меньше чем 1 и больше 1000000 вирт");
										if(FracBank[0][fVagos] < dengi) return SendClientMessage(playerid,COLOR_GRAD1,"[Ошибка]: В банке нет столько денег!");
										FracBank[0][fVagos] -= dengi;
										PlayerInfo[playerid][pCash] += dengi;
										SendMes(playerid, 0x6495EDFF, "Вы сняли с банка {FFD700}Los Santos Vagos Gang: %d вирт", dengi);
										SaveBankFrac();
										return true;
  									}
								}
							}
			        		case 17:
				        	{
        	    				switch (PlayerInfo [playerid][pRank])
				        	    {
				        	    	case 10:
				        	    	{
						        		if(!strlen(inputtext)) return SPD(playerid,22251,1,"Введите сумму которую вы хотите снять","Снятие денег с банка банды","Oк","X");
										new dengi;
										dengi = strval(inputtext);
										if(dengi < 1 || dengi > 1000000) return SPD(playerid,22251,1,"Введите сумму которую вы хотите снять","Снятие денег с банка банды","Oк","X"), SendClientMessage(playerid,COLOR_GRAD1,"Нельзя снять меньше чем 1 и больше 1000000 вирт");
										if(FracBank[0][fAztek] < dengi) return SendClientMessage(playerid,COLOR_GRAD1,"[Ошибка]: В банке нет столько денег!");
										FracBank[0][fAztek] -= dengi;
										PlayerInfo[playerid][pCash] += dengi;
										SendMes(playerid, 0x6495EDFF, "Вы сняли с банка {40E0D0}Varios Los Aztecas Gang: %d вирт", dengi);
										SaveBankFrac();
										return true;
									}
								}
							}
			        		case 18:
				        	{
        	    				switch (PlayerInfo [playerid][pRank])
				        	    {
				        	    	case 10:
				        	    	{
						        		if(!strlen(inputtext)) return SPD(playerid,22251,1,"Введите сумму которую вы хотите снять","Снятие денег с банка банды","Oк","X");
										new dengi;
										dengi = strval(inputtext);
										if(dengi < 1 || dengi > 1000000) return SPD(playerid,22251,1,"Введите сумму которую вы хотите снять","Снятие денег с банка банды","Oк","X"), SendClientMessage(playerid,COLOR_GRAD1,"Нельзя снять меньше чем 1 и больше 1000000 вирт");
										if(FracBank[0][fRifa] < dengi) return SendClientMessage(playerid,COLOR_GRAD1,"[Ошибка]: В банке нет столько денег!");
										FracBank[0][fRifa] -= dengi;
										PlayerInfo[playerid][pCash] += dengi;
										SendMes(playerid, 0x6495EDFF, "Вы сняли с банка {4682B4}Rifa Gang: %d вирт", dengi);
										SaveBankFrac();
										return true;
									}
								}
							}
						}
					}
					else
					{
						return true;
					}
				}
				case 22249:
				{
				    if(response)
				    {
				        new name[24];
				        GetPlayerName(playerid, name, sizeof(name));
				        new mati;
			  			switch(PlayerInfo[playerid][pMember])
						{
							case 15:
							{
							    if(!IsATerra (playerid)) return	SendClientMessage(playerid, COLOR_GRAD1, "Вы не на своей базе");
							    if(!strlen(inputtext)) return SPD(playerid,22249,1,"Введите Колл-во материалов","Положить материалы на склад","Oк","X");
								mati = strval(inputtext);
								if(mati < 1 || mati > 1000) return SPD(playerid,22249,1,"Введите Колл-во материалов","Положить материалы на склад","Oк","X"), SendClientMessage(playerid,COLOR_GRAD1,"Нельзя положить меньше 1 и больше 1000");
								if(PlayerInfo[playerid][pMats] < mati) return SendClientMessage(playerid,COLOR_GRAD1,"У Вас нет столько матов!");
								if(groovmatbi  >= 50000) return SendClientMessage(playerid,COLOR_GRAD1,"Склад полон!");
								groovmatbi  += mati;
								PlayerInfo[playerid][pMats] -= mati;
					   			SendMes(playerid, 0x6495EDFF, "Вы положили на склад банды Grove %d матов",mati);
								format(string, sizeof(string), "%s положил на склад банды %d материалов",name, mati), SendFamilyMessage(15, COLOR_YELLOW, string);
								return true;
							}
							case 12:
							{
							    if(!strlen(inputtext)) return SPD(playerid,22249,1,"Введите Колл-во материалов","Положить материалы на склад","Oк","X");
								mati = strval(inputtext);
								if(mati < 1 || mati > 1000) return SPD(playerid,22249,1,"Введите Колл-во материалов","Положить материалы на склад","Oк","X"), SendClientMessage(playerid,COLOR_GRAD1,"Нельзя положить меньше 1 и больше 1000");
								if(PlayerInfo[playerid][pMats] < mati) return SendClientMessage(playerid,COLOR_GRAD1,"У Вас не достаточно матов!");
								if(ballasmatbi  >= 50000) return SendClientMessage(playerid,COLOR_GRAD1,"Склад полон!");
								ballasmatbi  += mati;
								PlayerInfo[playerid][pMats] -= mati;
					   			SendMes(playerid, 0x6495EDFF, "Вы положили на склад банды Ballas %d матов",mati);
								format(string, sizeof(string), "%s положил на склад банды %d материалов",name, mati), SendFamilyMessage(12, COLOR_YELLOW, string);
								return true;
							}
							case 13:
							{
							    if(!strlen(inputtext)) return SPD(playerid,22249,1,"Введите Колл-во материалов","Положить материалы на склад","Oк","X");
								mati = strval(inputtext);
								if(mati < 1 || mati > 1000) return SPD(playerid,22249,1,"Введите Колл-во материалов","Положить материалы на склад","Oк","X"), SendClientMessage(playerid,COLOR_GRAD1,"Нельзя положить меньше 1 и больше 1000");
								if(PlayerInfo[playerid][pMats] < mati) return SendClientMessage(playerid,COLOR_GRAD1,"У Вас не достаточно матов!");
								if(vagosmatbi  >= 50000) return SendClientMessage(playerid,COLOR_GRAD1,"Склад полон!");
								vagosmatbi  += mati;
								PlayerInfo[playerid][pMats] -= mati;
					   			SendMes(playerid, 0x6495EDFF, "Вы положили на склад банды Vagos %d матов",mati);
								format(string, sizeof(string), "%s положил на склад банды %d материалов",name, mati), SendFamilyMessage(13, COLOR_YELLOW, string);
								return true;
							}
							case 17:
							{
							    if(!strlen(inputtext)) return SPD(playerid,22249,1,"Введите Колл-во материалов","Положить материалы на склад","Oк","X");
								mati = strval(inputtext);
								if(mati < 1 || mati > 1000) return SPD(playerid,22249,1,"Введите Колл-во материалов","Положить материалы на склад","Oк","X"), SendClientMessage(playerid,COLOR_GRAD1,"Нельзя положить меньше 1 и больше 1000");
								if(PlayerInfo[playerid][pMats] < mati) return SendClientMessage(playerid,COLOR_GRAD1,"У Вас не достаточно матов!");
								if(aztekmatbi  >= 50000) return SendClientMessage(playerid,COLOR_GRAD1,"Склад полон!");
								aztekmatbi  += mati;
								PlayerInfo[playerid][pMats] -= mati;
					   			SendMes(playerid, 0x6495EDFF, "Вы положили на склад банды Aztec %d матов",mati);
								format(string, sizeof(string), "%s положил на склад банды %d материалов", name, mati), SendFamilyMessage(17, COLOR_YELLOW, string);
								return true;
							}
							case 18:
							{
							    if(!strlen(inputtext)) return SPD(playerid,22249,1,"Введите Колл-во материалов","Положить материалы на склад","Oк","X");
								mati = strval(inputtext);
								if(mati < 1 || mati > 1000) return SPD(playerid,22249,1,"Введите Колл-во материалов","Положить материалы на склад","Oк","X"), SendClientMessage(playerid,COLOR_GRAD1,"Нельзя положить меньше 1 и больше 1000");
								if(PlayerInfo[playerid][pMats] < mati) return SendClientMessage(playerid,COLOR_GRAD1,"У Вас не достаточно матов!");
								if(rifamatbi  >= 50000) return SendClientMessage(playerid,COLOR_GRAD1,"Склад полон!");
								rifamatbi  += mati;
								PlayerInfo[playerid][pMats] -= mati;
					   			SendMes(playerid, 0x6495EDFF, "Вы положили на склад банды Rifa %d матов",mati);
								format(string, sizeof(string), "%s положил на склад банды %d материалов",name, mati), SendFamilyMessage(18, COLOR_YELLOW, string);
								return true;
							}
						}
					}
					return true;
				}
    				case 22248:
				{
				    if(response)
				    {
			  			if(!IsATerra (playerid)) return	SendClientMessage(playerid, COLOR_GRAD1, "Вы не на своей базе");
			  			switch(PlayerInfo[playerid][pMember])
			  			{
			  			    case 12:
			  			    {
       	    					switch (PlayerInfo [playerid][pRank])
				        	    {
				        	    	case 5..10:
				        	    	{
										if(ballasmatbi <= 0)return SendClientMessage(playerid, COLOR_GREY, "На складе нет материалов");
										if(!strlen(inputtext)) return SPD(playerid,22248,1,"Введите Колл-во материалов","Взять материалы со склада","Oк","X");
										new mati;
										new sendername[24];
										mati = strval(inputtext);
										if(PlayerInfo[playerid][pMats] > 1000) return SendClientMessage(playerid,COLOR_YELLOW,"У вас уже имеются материалы");
										if(mati < 1 || mati > 1000) return SPD(playerid,22248,1,"Введите Колл-во материалов","Взять материалы со склада","Oк","X"), SendClientMessage(playerid, COLOR_GREY, "Нельзя взять меньше 1 и больше 1000");
										ballasmatbi -= mati;
										PlayerInfo[playerid][pMats] += mati;
									   	SendMes(playerid, 0x6495EDFF, "Вы взяли %d матов со склада банды",mati);
							   			GetPlayerName(playerid, sendername, sizeof(sendername));
										format(string, sizeof(string), "%s взял со склада банды %d материалов", sendername,mati), SendFamilyMessage(12, COLOR_YELLOW2, string);
										return true;
									}
								}
							}
							case 15:
							{
  								switch (PlayerInfo [playerid][pRank])
				        	    {
				        	    	case 5..10:
				        	    	{
										if(groovmatbi <= 0)return SendClientMessage(playerid, COLOR_GREY, "На складе нет материалов");
										if(!strlen(inputtext)) return SPD(playerid,22248,1,"Введите Колл-во материалов","Взять материалы со склада","Oк","X");
										new mati;
										new sendername[24];
										mati = strval(inputtext);
										if(PlayerInfo[playerid][pMats] > 1000) return SendClientMessage(playerid,COLOR_YELLOW,"У вас уже имеются материалы");
										if(mati < 1 || mati > 1000) return SPD(playerid,22248,1,"Введите Колл-во материалов","Взять материалы со склада","Oк","X"), SendClientMessage(playerid, COLOR_GREY, "Нельзя взять меньше 1 и больше 1000");
										groovmatbi -= mati;
										PlayerInfo[playerid][pMats] += mati;
				   						SendMes(playerid, 0x6495EDFF, "Вы взяли %d матов со склада банды",mati);
							   			GetPlayerName(playerid, sendername, sizeof(sendername));
										format(string, sizeof(string), "%s взял со склада банды %d материалов", sendername,mati), SendFamilyMessage(15, COLOR_YELLOW2, string);
										return true;
									}
								}
							}
							case 13:
							{
  								switch (PlayerInfo [playerid][pRank])
				        	    {
				        	    	case 5..11:
				        	    	{
										if(vagosmatbi <= 0)return SendClientMessage(playerid, COLOR_GREY, "На складе нет материалов");
										if(!strlen(inputtext)) return SPD(playerid,22248,1,"Введите Колл-во материалов","Взять материалы со склада","Oк","X");
										new mati;
										new sendername[24];
										mati = strval(inputtext);
										if(PlayerInfo[playerid][pMats] > 1000) return SendClientMessage(playerid,COLOR_YELLOW,"У вас уже имеются материалы");
										if(mati < 1 || mati > 1000) return SPD(playerid,22248,1,"Введите Колл-во материалов","Взять материалы со склада","Oк","X"), SendClientMessage(playerid, COLOR_GREY, "Нельзя взять меньше 1 и больше 1000");
										vagosmatbi -= mati;
										PlayerInfo[playerid][pMats] += mati;
							   			SendMes(playerid, 0x6495EDFF, "Вы взяли %d матов со склада банды",mati);
							   			GetPlayerName(playerid, sendername, sizeof(sendername));
										format(string, sizeof(string), "%s взял со склада банды %d материалов", sendername,mati), SendFamilyMessage(13, COLOR_YELLOW2, string);
										return true;
									}
								}
							}
							case 17:
							{
  								switch (PlayerInfo [playerid][pRank])
				        	    {
				        	    	case 5..10:
				        	    	{
										if(aztekmatbi <= 0)return SendClientMessage(playerid, COLOR_GREY, "На складе нет материалов");
										if(!strlen(inputtext)) return SPD(playerid,22248,1,"Введите Колл-во материалов","Взять материалы со склада","Oк","X");
										new mati;
										new sendername[24];
										mati = strval(inputtext);
										if(PlayerInfo[playerid][pMats] > 1000) return SendClientMessage(playerid,COLOR_YELLOW,"У вас уже имеются материалы");
										if(mati < 1 || mati > 1000) return SPD(playerid,22248,1,"Введите Колл-во материалов","Взять материалы со склада","Oк","X"), SendClientMessage(playerid, COLOR_GREY, "Нельзя взять меньше 1 и больше 1000");
										aztekmatbi -= mati;
										PlayerInfo[playerid][pMats] += mati;
							   			SendMes(playerid, 0x6495EDFF, "Вы взяли %d матов со склада банды",mati);
							   			GetPlayerName(playerid, sendername, sizeof(sendername));
										format(string, sizeof(string), "%s взял со склада банды %d материалов", sendername,mati), SendFamilyMessage(17, COLOR_YELLOW2, string);
										return true;
									}
								}
							}
							case 18:
							{
								switch (PlayerInfo [playerid][pRank])
				        	    {
				        	    	case 5..10:
				        	    	{
										if(rifamatbi <= 0)return SendClientMessage(playerid, COLOR_GREY, "На складе нет материалов");
										if(!strlen(inputtext)) return SPD(playerid,22248,1,"Введите Колл-во материалов","Взять материалы со склада","Oк","X");
										new mati;
										new sendername[24];
										mati = strval(inputtext);
										if(PlayerInfo[playerid][pMats] > 1000) return SendClientMessage(playerid,COLOR_YELLOW,"У вас уже имеются материалы");
										if(mati < 1 || mati > 1000) return SPD(playerid,22248,1,"Введите Колл-во материалов","Взять материалы со склада","Oк","X"), SendClientMessage(playerid, COLOR_GREY, "Нельзя взять меньше 1 и больше 1000");
										rifamatbi -= mati;
										PlayerInfo[playerid][pMats] += mati;
							   			SendMes(playerid, 0x6495EDFF, "Вы взяли %d матов со склада банды",mati);
							   			GetPlayerName(playerid, sendername, sizeof(sendername));
										format(string, sizeof(string), "%s взял со склада банды %d материалов", sendername,mati), SendFamilyMessage(18, COLOR_YELLOW2, string);
										return true;
									}
								}
							}
						}
					}
					return true;
				}
//==============================================================================
			case 30004:
    			{
        			if(response)
        			{
        			    switch(listitem)
        			    {
        			        case 0: SPD(playerid, 30001, 1, "Передача материалов", "Введите кол-во материалов\nкоторые будут переданы Russian Mafia", "Выбрать", "Отмена");
					        case 1: SPD(playerid, 30002, 1, "Передача материалов", "Введите кол-во патронов\nкоторые будут переданы Yakuza", "Выбрать", "Отмена");
					        case 2: SPD(playerid, 30003, 1, "Передача материалов", "Введите вол-во патронов\nкоторые будут переданы La Cosa Nostra", "Выбрать", "Отмена");
						}
					}
					else
					{
					    return true;
					}
				}
				case 30001:
    			{
 					if(response)
 					{
 					    switch(PlayerInfo[playerid][pMember])
 					    {
	    					case 15:
	    					{
  								switch (PlayerInfo [playerid][pRank])
				        	    {
				        	    	case 9,10:
				        	    	{
			    						if(groovmatbi < strval(inputtext) || strval(inputtext) < 0) return SendClientMessage(playerid,COLOR_GREEN,"{FF0000}[Ошибка]: На складе банды нет столько материалов!");
			    						rmmats += strval(inputtext);
			    						groovmatbi -= strval(inputtext);
									}
								}
	    					}
	    					case 17:
	    					{
  								switch (PlayerInfo [playerid][pRank])
				        	    {
				        	    	case 9,10:
				        	    	{
			    						if(aztekmatbi < strval(inputtext) || strval(inputtext) < 0)return SendClientMessage(playerid,COLOR_GREEN,"{FF0000}[Ошибка]: На складе банды нет столько материалов!");
			    						rmmats += strval(inputtext);
			    						aztekmatbi -= strval(inputtext);
									}
								}
	    					}
	    					case 12:
	     					{
   								switch (PlayerInfo [playerid][pRank])
				        	    {
				        	    	case 9,10:
				        	    	{
			    						if(ballasmatbi < strval(inputtext) || strval(inputtext) < 0)return SendClientMessage(playerid,COLOR_GREEN,"{FF0000}[Ошибка]: На складе банды нет столько материалов!");
			    						rmmats += strval(inputtext);
			    						ballasmatbi -= strval(inputtext);
									}
								}
	 						}
	    					case 18:
	    					{
  								switch (PlayerInfo [playerid][pRank])
				        	    {
				        	    	case 9,10:
				        	    	{
			    						if(rifamatbi < strval(inputtext) || strval(inputtext) < 0) return SendClientMessage(playerid,COLOR_GREEN,"{FF0000}[Ошибка]: На складе банды нет столько материалов!");
									    rmmats += strval(inputtext);
									    rifamatbi -= strval(inputtext);
									}
								}
						    }
						    case 13:
						    {
  								switch (PlayerInfo [playerid][pRank])
				        	    {
				        	    	case 10,11:
				        	    	{
									    if(vagosmatbi < strval(inputtext) || strval(inputtext) < 0) return SendClientMessage(playerid,COLOR_GREEN,"{FF0000}[Ошибка]: На складе банды нет столько материалов!");
									    rmmats += strval(inputtext);
									    vagosmatbi -= strval(inputtext);
									}
								}
						    }
						}
					}
					return true;
				}
				case 30002:
    			{
				 	if(response)
				 	{
				 	    switch(PlayerInfo[playerid][pMember])
				 	    {
					    	case 15:
					    	{
  								switch (PlayerInfo [playerid][pRank])
				        	    {
				        	    	case 9,10:
				        	    	{
							    		if(groovmatbi < strval(inputtext) || strval(inputtext) < 0)return SendClientMessage(playerid,COLOR_GREEN,"{FF0000}[Ошибка]: На складе банды нет столько материалов!");
							    		yakuzamats += strval(inputtext);
							    		groovmatbi -= strval(inputtext);
									}
								}
					    	}
					    	case 17:
					    	{
  								switch (PlayerInfo [playerid][pRank])
				        	    {
				        	    	case 9,10:
				        	    	{
							    		if(aztekmatbi < strval(inputtext) || strval(inputtext) < 0)return SendClientMessage(playerid,COLOR_GREEN,"{FF0000}[Ошибка]: На складе банды нет столько материалов!");
						    			yakuzamats += strval(inputtext);
							    		aztekmatbi -= strval(inputtext);
									}
								}
					    	}
					    	case 12:
					     	{
   								switch (PlayerInfo [playerid][pRank])
				        	    {
				        	    	case 9,10:
				        	    	{
							    		if(ballasmatbi < strval(inputtext) || strval(inputtext) < 0)return SendClientMessage(playerid,COLOR_GREEN,"{FF0000}[Ошибка]: На складе банды нет столько материалов!");
							    		yakuzamats += strval(inputtext);
							    		ballasmatbi -= strval(inputtext);
									}
								}
					 		}
					    	case 18:
					    	{
  								switch (PlayerInfo [playerid][pRank])
				        	    {
				        	    	case 9,10:
				        	    	{
							    		if(rifamatbi < strval(inputtext) || strval(inputtext) < 0)return SendClientMessage(playerid,COLOR_GREEN,"{FF0000}[Ошибка]: На складе банды нет столько материалов!");
							    		yakuzamats += strval(inputtext);
							    		rifamatbi -= strval(inputtext);
									}
								}
					    	}
					    	case 13:
					    	{
  								switch (PlayerInfo [playerid][pRank])
				        	    {
				        	    	case 10,11:
				        	    	{
							    		if(vagosmatbi < strval(inputtext) || strval(inputtext) < 0)return SendClientMessage(playerid,COLOR_GREEN,"{FF0000}[Ошибка]: На складе банды нет столько материалов!");
							    		yakuzamats += strval(inputtext);
							    		vagosmatbi -= strval(inputtext);
									}
								}
					    	}
						}
					}
					return true;
				}
				case 30003:
    			{
				 	if(response)
				 	{
				 	    switch(PlayerInfo[playerid][pMember])
				 	    {
					    	case 15:
					    	{
  								switch (PlayerInfo [playerid][pRank])
				        	    {
				        	    	case 9,10:
				        	    	{
							    		if(groovmatbi < strval(inputtext) || strval(inputtext) < 0)return SendClientMessage(playerid,COLOR_GREEN,"{FF0000}[Ошибка]: На складе банды нет столько материалов!");
							    		lcnmats += strval(inputtext);
							    		groovmatbi -= strval(inputtext);
									}
								}
					    	}
					    	case 17:
					    	{
  								switch (PlayerInfo [playerid][pRank])
				        	    {
				        	    	case 9,10:
				        	    	{
							    		if(aztekmatbi < strval(inputtext) || strval(inputtext) < 0)return SendClientMessage(playerid,COLOR_GREEN,"{FF0000}[Ошибка]: На складе банды нет столько материалов!");
							    		lcnmats += strval(inputtext);
							    		aztekmatbi -= strval(inputtext);
									}
								}
				   		 	}
					    	case 12:
					     	{
  								switch (PlayerInfo [playerid][pRank])
				        	    {
				        	    	case 9,10:
				        	    	{
							    		if(ballasmatbi < strval(inputtext) || strval(inputtext) < 0)return SendClientMessage(playerid,COLOR_GREEN,"{FF0000}[Ошибка]: На складе банды нет столько материалов!");
							    		lcnmats += strval(inputtext);
							    		ballasmatbi -= strval(inputtext);
									}
								}
					 		}
					   		case 18:
					    	{
  								switch (PlayerInfo [playerid][pRank])
				        	    {
				        	    	case 9,10:
				        	    	{
							    		if(rifamatbi < strval(inputtext) || strval(inputtext) < 0)return SendClientMessage(playerid,COLOR_GREEN,"{FF0000}[Ошибка]: На складе банды нет столько материалов!");
							    		lcnmats += strval(inputtext);
							    		rifamatbi -= strval(inputtext);
									}
								}
				    		}
					    	case 13:
					    	{
  								switch (PlayerInfo [playerid][pRank])
				        	    {
				        	    	case 10,11:
				        	    	{
							    		if(vagosmatbi < strval(inputtext) || strval(inputtext) < 0) return SendClientMessage(playerid,COLOR_GREEN,"{FF0000}[Ошибка]: На складе банды нет столько материалов!");
							    		lcnmats += strval(inputtext);
							    		vagosmatbi -= strval(inputtext);
									}
								}
					    	}
						}
					}
					return true;
				}
В самый конец дописуем:

PHP:
stock SendMes(playerid, color, fstring[], {Float, _}:...)
{
    static const
        STATIC_ARGS = 3;
    new
        n = (numargs() - STATIC_ARGS) * BYTES_PER_CELL;
    if (n)
    {
        new
            message[144],
            arg_start,
            arg_end;
        #emit CONST.alt        fstring
        #emit LCTRL          5
        #emit ADD
        #emit STOR.S.pri        arg_start

        #emit LOAD.S.alt        n
        #emit ADD
        #emit STOR.S.pri        arg_end
        do
        {
            #emit LOAD.I
            #emit PUSH.pri
            arg_end -= BYTES_PER_CELL;
            #emit LOAD.S.pri      arg_end
        }
        while (arg_end > arg_start);

        // Push the static format parameters.
        #emit PUSH.S          fstring
        #emit PUSH.C          128
        #emit PUSH.ADR         message

        n += BYTES_PER_CELL * 3;
        #emit PUSH.S          n
        #emit SYSREQ.C         format

        n += BYTES_PER_CELL;
        #emit LCTRL          4
        #emit LOAD.S.alt        n
        #emit ADD
        #emit SCTRL          4

        return SendClientMessage(playerid, color, message);
    }
    else
    {
        return SendClientMessage(playerid, color, fstring);
    }
}
Ко всем #define, дописуем:

PHP:
#define BYTES_PER_CELL (cellbits / 8)
 
Последнее редактирование:
Статус
В этой теме нельзя размещать новые ответы.
Сверху Снизу