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

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

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

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

Слёт домов при бане.

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

Ge0Ximik

Ученик
Здравствуйте ув.форумчане P-I. Хочу сделать такую тему, чтобы при бане, у игрока слетал (авто-продажа) дом, и возвращение процент от суммы дома, почти сделал, но есть 2 проблемы:
1. Деньги даются администратору.
2. Дом не слетает.
Code:
PHP:
CMD:ban(playerid, params[])
{
	if(PlayerInfo[playerid][Admin] >= 1)
	{
		new prichina[128],str[750],hour,minute,year,month,day,pl,file[HOUSEFILE_LENGTH], h = SetPVarInt(pl, "LastHouseCP", 0);
		if(sscanf(params,"ds[128]",pl,prichina)) return SendClientMessage(playerid,COLOR_MSG,""WARN_MSG"Поправка: /ban ID Причина (Забанить аккаунт игрока)");
		else if(pl == playerid) return SendClientMessage(playerid,COLOR_MSG,""WARN_MSG"Вы не можете забанить себя.");
		else if(!IsPlayerConnected(pl)) return SendClientMessage(playerid,COLOR_MSG,""WARN_MSG"Игрока с таким ID нету на сервере.");
		else if(PlayerInfo[pl][Admin] == 5 && PlayerInfo[playerid][Admin] < 5) return SendClientMessage(playerid,COLOR_MSG,""ERROR_MSG"Вы не можете забанить администратора старше Вас!");
		format(string,128,""WARN_MSG"%s [ID: %d] забанил аккаунт игрока %s [ID: %d] [Причина: %s]", pNick(playerid), playerid, pNick(pl), pl, prichina);
		format(string,128,"{FF0000}Внимание!{FFFFFF} Слетел дом игрока: %s[ID:%d] [Причина: Забанен(Навсегда)]", pNick(pl), pl);
		printf("[BAN] %s >> %s; Причина: %s.", pNick(playerid), pNick(pl), prichina);
		SendClientMessageToAllEx(COLOR_MSG, string);

		gettime(hour,minute);
		getdate(year,month,day);

		format(string,sizeof(string),"{FF0000}_________________________________________\n\nВаш аккаунт забанен!\n{FFFFFF}Ваш ник: %s\nЗабанил админ: %s\nПричина: %s\nВремя и дата: %02d:%02d MSK, %02d.%02d.%d\n",pNick(pl),pNick(playerid),prichina,hour,minute,day,month,year);

		strcat(string,"Чтобы вас разбанили, обязательно сделайте\n");
		strcat(string,"скриншот нажав {FF5555}F8{FFFFFF} и напишите заявку в\n");
		strcat(string,"группе вконтакте "VK_GROUP_NAME" в специальной теме\n");
		strcat(string,"для заявок на разбан.\n\n");
		strcat(string,"{FF0000}Без скриншота этого окошка заявки не принимаются!\n");
		strcat(string,"{FFFFFF}(Чтобы найти скриншот, зайдите в 'Мои Документы',\n");
		strcat(string,"затем в папку 'GTA San Andreas User Files', затем\n");
		strcat(string,"в 'SAMP', и наконец в папке 'screens' будут\n");
		strcat(string,"ваши скриншоты. Делаются скришноты по клавише F8)");

	 	ShowPlayerDialog(pl,NOMENU,DIALOG_STYLE_MSGBOX,"{FF0000}YOU BANNED",string,FORUM_NAME,"");

		format(prichina, sizeof(string), "%s, Дата: %d/%d/%d Время: %d:%d, Администратор: %s",prichina,day,month,year,hour,minute,pNick(playerid));
		format(str,500,"UPDATE USERS SET BANNED = '%s' WHERE NAME = '%s'", prichina,pNick(pl));
		db_free_result(db_query(ServerBase, str));

		if(GetOwnedHouses(pl) == 0) return SendClientMessage(playerid,COLOR_MSG,"");
		else
		{
			Loop(h2, MAX_HOUSES)
		    {
			    format(file, sizeof(file), FILEPATH, h != h2);
			    if(dini_Exists(file) && strcmp(GetHouseOwner(h2), INVALID_HOWNER_NAME, false))
			    {
				    if(dini_Int(file, "HouseStorage") >= 1 && IsPlayerConnected(GetHouseOwnerEx(h2)))
				    {
				    	GivePlayerMoneyEx(playerid, (dini_Int(file, "HouseStorage") + ReturnProcent(GetHouseValue(h2), HOUSE_SELLING_PROCENT)));
				    }
				    dini_Set(file, "HouseOwner", INVALID_HOWNER_NAME);
				    dini_Set(file, "HousePassword", "INVALID_HOUSE_PASSWORD");
				    dini_Set(file, "HouseName", DEFAULT_HOUSE_NAME);
				    dini_IntSet(file, "HouseStorage", INVALID_PLAYER_ID);
			        #if defined GH_USE_MAPICONS
				    DestroyDynamicMapIcon(HouseMIcon[h]);
				    HouseMIcon[h] = CreateDynamicMapIcon(dini_Float(file, "CPOutX"), dini_Float(file, "CPOutY"), dini_Float(file, "CPOutZ"), 31, -1, dini_Int(file, "SpawnWorld"), dini_Int(file, "SpawnInterior"), -1, MICON_VD);
				    #endif
				    UpdateHouseText(h);
			    }
	        }
		}
		PlayerPlaySound(pl,1057,0.0,0.0,0.0);
		KickEx(pl);
	}
	else SendClientMessage(playerid,COLOR_MSG,STR[playerid,6]);
	return 1;
}
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху Снизу