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

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

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

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

Воры-карманники

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

Jonny_Edsel

Дебютант
Здравствуйте уважаемые посетители сайта.:do:

Эта команда дает возможность одному игроку своровать деньги у другого,но это не всегда получается и шанс удачного воровства зависит от рандома, и навыка преступника. В случае удачи,вор незаметно вытаскивает кошелек у своей жертвы,в котором может оказаться любая сумма от нуля,до тысячи долларов и соответственно умения вора повышаются.Но если же преступника постигла неудача,жертва замечает его попытку и в праве вызывать полицию.

Для начала в

PHP:
enum pInfo

PHP:
pVorSkill
далее в

PHP:
public OnPlayerRegister(playerid, password[])

PHP:
format(var, 32, "pVorSkill=%d\n",PlayerInfo[playerid][pVorSkill]);fwrite(hFile, var);

в

PHP:
public OnPlayerUpdateSG(playerid)
PHP:
format(var, 32, "pVorSkill=%d\n",PlayerInfo[playerid][pVorSkill]);fwrite(hFile, var);

в

PHP:
public OnPlayerLogin(playerid,password[])

PHP:
if( strcmp( key , "VorSkill" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pVorSkill] = strval( val ); }



сама команда


PHP:
if(strcmp(cmd,"/vor",true) == 0)
	{
		if(IsPlayerConnected(playerid))
		{
		   	 	tmp = strtok(cmdtext, idx);
		   	if(!strlen(tmp))
		   	{
			   	SendClientMessage(playerid, COLOR_WHITE, "Введите: /vor [id]");
			   	return 1;
		   	}
      giveplayerid = ReturnUser(tmp);
		   	new shans[MAX_PLAYERS];
		   	new summa[MAX_PLAYERS];
		   	new para1;
	   		
			tmp = strtok(cmdtext, idx);
		   	shans[playerid] = random(10);//Шанс на удачу
		   	summa[playerid] = random(1000);//Приобретаемая сумма денег в случае удачной махинации
		   	GetPlayerName(playerid, sendername, sizeof(sendername));
		   	GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
		   	if(IsPlayerConnected(giveplayerid))
		   	{
		   		if(giveplayerid != INVALID_PLAYER_ID)
   				{
			   		if (ProxDetectorS(1.0, playerid, giveplayerid))
			   		{
                    if(PlayerInfo[playerid][pVorSkill] >= 0 && shans[playerid] == 1 || PlayerInfo[playerid][pVorSkill] >= 10 && shans[playerid] <= 2 || PlayerInfo[playerid][pVorSkill] >= 25 && shans[playerid] <= 3 ||
					  PlayerInfo[playerid][pVorSkill] >= 45 && shans[playerid] <= 4 || PlayerInfo[playerid][pVorSkill] >= 70 && shans[playerid] <= 5 || PlayerInfo[playerid][pVorSkill] == 100 && shans[playerid] <= 6)//Чем больше скилл,тем больше вероятность удачи.На первом уровне 1 из 10,на втором 2 из 10 и т.д. всего 6 уровней скилла
				    	{
                         PlayerInfo[giveplayerid][pCash] -= summa[playerid];
						 PlayerInfo[playerid][pCash] += summa[playerid];
				       		format(string, sizeof(string), "Вы успешно обворовали %s на сумму %d $.", giveplayer,summa[playerid]);
							SendClientMessage(playerid, 0x6AB1FFFF, string);
						if(PlayerInfo[playerid][pVorSkill] < 100)
	                       {
	                       
						   PlayerInfo[playerid][pVorSkill] += 1;
					if(PlayerInfo[playerid][pVorSkill] == 10)
					{ SendClientMessage(playerid, COLOR_YELLOW, "* Ваш воровской навык теперь 2 уровня.Шанс удачной кражи - 20 процентов"); }
					else if(PlayerInfo[playerid][pVorSkill] == 25)
					{ SendClientMessage(playerid, COLOR_YELLOW, "* Ваш воровской навык теперь 3 уровня.Шанс удачной кражи - 30 процентов"); }
					else if(PlayerInfo[playerid][pVorSkill] == 45)
					{ SendClientMessage(playerid, COLOR_YELLOW, "* Ваш воровской навык теперь 4 уровня.Шанс удачной кражи - 40 процентов"); }
					else if(PlayerInfo[playerid][pVorSkill] == 70)
					{ SendClientMessage(playerid, COLOR_YELLOW, "* Ваш воровской навык теперь 5 уровня.Шанс удачной кражи - 50 процентов"); }
					else if(PlayerInfo[playerid][pVorSkill] == 100)
					{ SendClientMessage(playerid, COLOR_YELLOW, "* Ваш воровской навык теперь 6 уровня.Шанс удачной кражи - 60 процентов"); }
		   				    return 1;
						   }
				    	}
					else
					    {

					
						format(string, sizeof(string), "%s попытался обворовать вас", sendername);
						SendClientMessage(para1, COLOR_RED, string);
						SendClientMessage(playerid, COLOR_RED, "Воровство неудачно,вас обнаружили!");
		   				return 1;
					    }
                    
 					}
  					else
   					{
		   				SendClientMessage(playerid, COLOR_GREY, "Вы слишком далеко!");
		   				return 1;
	   				}
 	   			}
	   		}
	   		else
	   		{
				SendClientMessage(playerid, COLOR_GREY, "Игрок не найден!");
  				return 1;
	   		}
     	}
     	return 1;
   	}
скорее всего там много лишних буков и неловких строк,но главное все работает)

Автор: Jonny_Edsel

Если понравилось,отблагодари плюсиком
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху Снизу