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

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

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

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

Ивент ДМ.

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

Kala4ik

Компетентный
Всем добрый день, сделал ивент ДМ. но столкнулся с тем что когда я убиваю игрока участник не отбавляется и из за этого не заканчивается ивент с победителем.

new DMJoinPeople = 0;

PHP:
public OnPlayerDisconnect
PHP:
if(GetPVarInt(playerid,"DMJoin") == 1)DMJoinPeople --;
PHP:
public OnPlayerDeath
PHP:
if(GetPVarInt(playerid,"DMJoin") == 1)DMJoinPeople --;
PHP:
				if(DMJoinPeople == 1 && Zona[zOpened] == 0)
		{
		    if(GetPVarInt(i,"DMJoin") == 1)
		    {
		        new str[124];
		        format(str,sizeof(str),"%s стал победителем ''DeathMatch''.",sendername(i));
		        sendToAll(0x9519F2AA,str);
		        TextDrawHideForPlayer(i,jointime[i]),TextDrawHideForPlayer(i,joinmember[i]);
		        OnPlayerReSpawn(i);
			}
			SetPVarInt(i,"DMJoin",0);
			DMJoinPeople = 0;
		}
PHP:
	if(dmtimes > 0)
	{
		dmtimes --;
		foreach(new i: Player)
		{
			f(string,FixText("Участники: ~r~%d"),DMJoinPeople);
			TextDrawSetString(joinmember[i],string);
			f(string,FixText("До старта: %d"),dmtimes);
			TextDrawSetString(jointime[i],string);
		}
	}
PHP:
StartJoinDM()
{
	foreach(Player,i)
	{
	    if(GetPVarInt(i,"DMJoin") == 1)
		{
			TogglePlayerControllable(i,1);
			GivePlayerWeaponAC(i,24,999);
			GivePlayerWeaponAC(i,25,999);
			GivePlayerWeaponAC(i,31,999);
			SetPlayerColor(i,0xFF6347AA);
			TextDrawHideForPlayer(i,jointime[i]);
		}
	}
	sendToAll(0x9519F2AA,"Регистрация на ивент закончена | Все участники подключились.");
	Zona[zOpened] = 0;
}
publics ZoneEnd() if(Zona[zOpened] == 1) StartJoinDM();
publics NotStartDM()
{
	if(DMJoinPeople < 2 && DMJoinPeople != 0)
	{
		foreach(Player,i)
		{
			if(GetPVarInt(i,"DMJoin") == 1)
			{
			    send(i,0x9519F2AA,"Ивент не состоялся, потому что вы были единственным участником.");
				OnPlayerReSpawn(i);
				TogglePlayerControllable(i,1);
				TextDrawHideForPlayer(i,jointime[i]),TextDrawHideForPlayer(i,joinmember[i]);
			}
			SetPVarInt(i,"DMJoin",0);
		}
	}
	DMJoinPeople = 0;
	return 1;
}
PHP:
CMD:join(playerid, params[])
{
	if(Zona[zOpened] == 0)return send(playerid,0xFF0000AA,"[ОШИБКА] {FFFFFF}В данный момент нет открытых ивентов.");
	if(IsPlayerInAnyVehicle(playerid))return send(playerid,0xFF0000AA,"[ОШИБКА] {FFFFFF}Для подключения к ивенту выйдите из транспорта.");
	if(Player[playerid][pJailed] == true)return send(playerid, COLOR_RED, ""vError"Вы находитесь в тюрьме!");
	new Float:fX,Float:y,Float:z,Float:hp,Float:armour,string[40];
	GetPlayerPos(playerid,fX,y,z);
	GetPlayerArmour(playerid,armour);
	GetPlayerHealth(playerid,hp);
	SetPVarFloat(playerid,"PosXJoin",fX);
	SetPVarFloat(playerid,"PosYJoin",y);
	SetPVarFloat(playerid,"PosZJoin",z);
	SetPVarInt(playerid,"JoinInt",GetPlayerInterior(playerid));
	SetPVarInt(playerid,"JoinVW",GetPlayerVirtualWorld(playerid));
	for(new a = 1; a<13; a++)
	{
		format(string,40,"JoinGun%i",a);
		SetPVarInt(playerid,string,Player[playerid][pGun][a]);
		format(string,40,"JoinAmmo%i",a);
		SetPVarInt(playerid,string,Player[playerid][pAmmo][a]);
	}
	SetPVarFloat(playerid,"JoinArmour",armour);
	SetPVarFloat(playerid,"JoinHeal",hp);
	switch(Zona[zOpened])
	{
 	case 1:
		{
		    new rad = random(sizeof(DMSpawn));
			ServerSetPlayerPos(playerid,DMSpawn[rad][0],DMSpawn[rad][1],DMSpawn[rad][2]);
			ServerResetPlayerWeapons(playerid);
			SetPlayerInterior(playerid,10),SetPlayerVirtualWorld(playerid,0);
			ServerGivePlayerArmour(playerid,100),ServerGivePlayerHealth(playerid,100);
			TextDrawShowForPlayer(playerid, jointime[playerid]); TextDrawShowForPlayer(playerid,joinmember[playerid]);
			SetPVarInt(playerid,"DMJoin",1);
			Freeze(playerid);
			DMJoinPeople ++;
			if(DMJoinPeople >= 20) StartJoinDM();
		}
	}
	return 1;
}
PHP:
CMD:zone(playerid)
{
	dmtimes = 30;
	Zona[zOpened] = 1;
	DMJoinPeople = 0;
	sendToAll(0x9519F2AA,"Открыта регистрация на DeathMatch | Карта: BattleField | Макс.Участников: 20 | Присоединиться: ''/join''.");
	SetTimer("NotStartDM",30001,0),SetTimer("ZoneEnd",30000,0);
	return 1;
}
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху Снизу