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

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

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

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

Сохранение оружия

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

Denis_Johnson

Умник
Здравствуйте!
У меня два вопроса:

1. Подскажите пожалуйста, как сделать сохранение оружие после смерти, желательно на PVar'ax, хочу уже разобраться в PVar'ax.
Выбор зоны и выбор оружия у меня на диалогах.

PHP:
if(strcmp("/dm", cmdtext, true, 10) == 0)
	{
	    if(dmzone[playerid] == 1) //Читается как: если переменная dmzone ровна 1
    	{ // то
              SendClientMessage(playerid,COLOR_GREY,"Вы уже на DM, чтобы выйти используйте </exit>"); // выводим сообщение игроку
    	}
        else // но если переменная dmzone ровна 0
    	{ //то
                dmzone[playerid] = 1; // выставляем переменной значение 1
				ShowPlayerDialog(playerid, 6, DIALOG_STYLE_LIST, "Выбор DM зоны", "1. Фонтан\n2. Пустыня", "Выбрать", "Отмена");
   		 }
    	return 1;
      }
	if(strcmp("/exit", cmdtext, true, 10) == 0)
 	  {
   		if(dmzone[playerid] == 0) //Читается как: если переменная dmzone ровна 0
    	{ // то
              SendClientMessage(playerid, COLOR_GREY, "Вы не на DM зоне."); // выводим сообщение игроку
    	}
        else // но если переменная dmzone ровна 1
   		{ // то
              dmzone[playerid] = 0; // аннулируем переменную
              SetPlayerPos(playerid, 1535.8478,-1349.9742,329.4561); // телепортируем игрока на спавн (x, y, z поменять на свои координаты)
              ResetPlayerWeapons(playerid);
              SendClientMessage(playerid,COLOR_GREY,"Вы вышли из DeathMatch зоны."); // выводим сообщение игроку
    	}
     	
      }
    return 1;
	}

PHP:
case 6:
	{
		if(!response)
		{
		    //отмена
			return 1;
		}
		switch(listitem)
		{
		    case 0:
		    {
				switch(random(4))
				{
		        	case 0: SetPlayerPos(playerid, -300.6371,1871.8344,42.2891); // телепортируем игрока на DM зону (x, y, z поменять на свои координаты)
		        	case 1: SetPlayerPos(playerid, -339.4299,1893.6915,42.2891); // телепортируем игрока на DM зону (x, y, z поменять на свои координаты)
		        	case 2: SetPlayerPos(playerid, -350.7780,1873.1146,42.2891); // телепортируем игрока на DM зону (x, y, z поменять на свои координаты)
		        	case 3: SetPlayerPos(playerid, -298.6446,1818.0483,42.2891); // телепортируем игрока на DM зону (x, y, z поменять на свои координаты)
		        	case 4: SetPlayerPos(playerid, -334.1737,1800.0576,42.7497); // телепортируем игрока на DM зону (x, y, z поменять на свои координаты)
		        	
				}
				SetPlayerVirtualWorld(playerid,0);
			}
			case 1:
			{
				switch(random(4))
				{
				    case 0: SetPlayerPos(playerid, -369.4562,2267.6106,42.3247); // телепортируем игрока на DM зону (x, y, z поменять на свои координаты)
		        	case 1: SetPlayerPos(playerid, -347.3269,2221.7703,42.4902); // телепортируем игрока на DM зону (x, y, z поменять на свои координаты)
		        	case 2: SetPlayerPos(playerid, -458.5428,2220.9341,43.3000); // телепортируем игрока на DM зону (x, y, z поменять на свои координаты)
		        	case 3: SetPlayerPos(playerid, -421.3752,2223.8157,42.4297); // телепортируем игрока на DM зону (x, y, z поменять на свои координаты)
				}
				SetPlayerVirtualWorld(playerid,0);
			}
		}

PHP:
if(dmzone[playerid] == 1) // но если переменная dmzone ровна 1
	{ //то
		switch(random(5))
		{
	    	case 0: SetPlayerPos(playerid, -300.6371,1871.8344,42.2891); // телепортируем игрока на DM зону (x, y, z поменять на свои координаты)
	    	case 1: SetPlayerPos(playerid, -339.4299,1893.6915,42.2891); // телепортируем игрока на DM зону (x, y, z поменять на свои координаты)
	    	case 2: SetPlayerPos(playerid, -350.7780,1873.1146,42.2891); // телепортируем игрока на DM зону (x, y, z поменять на свои координаты)
	    	case 3: SetPlayerPos(playerid, -298.6446,1818.0483,42.2891); // телепортируем игрока на DM зону (x, y, z поменять на свои координаты)
	    	case 4: SetPlayerPos(playerid, -334.1737,1800.0576,42.7497); // телепортируем игрока на DM зону (x, y, z поменять на свои координаты)
	    	
        }
        SetPlayerVirtualWorld(playerid,0);
	}
	switch(random(4))
	{
 		case 0: SetPlayerPos(playerid, -369.4562,2267.6106,42.3247); // телепортируем игрока на DM зону (x, y, z поменять на свои координаты)
		case 1: SetPlayerPos(playerid, -347.3269,2221.7703,42.4902); // телепортируем игрока на DM зону (x, y, z поменять на свои координаты)
		case 2: SetPlayerPos(playerid, -458.5428,2220.9341,43.3000); // телепортируем игрока на DM зону (x, y, z поменять на свои координаты)
		case 3: SetPlayerPos(playerid, -421.3752,2223.8157,42.4297); // телепортируем игрока на DM зону (x, y, z поменять на свои координаты)
	}
	SetPlayerVirtualWorld(playerid,0);
	return 1;
}

Выбор оружия тоже на диалоге..

Суть вопроса в том, как сделать сохранение оружия, т.е тебя убивают, ты спавнишся на той же зоне с ранее выбраным набором оружия.

Вопрос №2: На первой зоне, когда меня убивают, я появляюсь на той же зоне и в то же время не на той зоне т.е, я так понял всё дело в вирт. мире, он меняется после каждого спавна, под спойлером выше, перед return 1, я поставил "SetPlayerVirtualWorld(playerid,0);", не проверял, сработает или нет, может вы подскажите как это всё правильней организовать?

---------- Post added at 23:17 ---------- Previous post was at 22:20 ----------

Как - то же наверное можно:
создать переменную в начале мода, например:
new dmgun1[MAX_PLAYERS][2] - (которые будет хранить, дигл и м4)
new dmgun2[MAX_PLAYERS][2] - (которые будет хранить, дигл и шотган)
new dmgun3[MAX_PLAYERS][2] - (которые будет хранить, дигл и снапу)

при выборе оружия из диалога, в функции выбора оружия, у меня сделано так, что выбираешь либо "дигл и м4" либо "дигл и шотган", "дигл и снапа". Как - то сделать, чтобы выбранное оружие сохранялось в переменную и нужно как - то вставить функциюс использованием этой переменной в спавн игрока после смерти. Вот как это всё реализовать, я не знаю :(
 
Последнее редактирование:
Статус
В этой теме нельзя размещать новые ответы.
Сверху Снизу