ru
Feedback
Переходник FILIP GAMES

Переходник FILIP GAMES

Открыть в Telegram

Переходник FILIP GAMES

Больше
Россия437 131Категория не указана
426
Подписчики
-224 часа
-37 дней
-3130 дней
Архив постов
заместителем!", targetname); SendClientMessage(playerid, COLOR_GREEN, msg); format(msg, sizeof(msg), "Вы назначены заместителем в семье %s!", GangData[PlayerGang[playerid][pGangID]][gName]); SendClientMessage(targetid, COLOR_GREEN, msg); return 1; } if(strcmp(cmdtext, "/gangkick", true, 9) == 0) { new targetname[MAX_PLAYER_NAME]; if(sscanf(cmdtext[9], "s[24]", targetname)) { SendClientMessage(playerid, COLOR_WHITE, "Использование: /gangkick [Имя игрока]"); return 1; } if(!PlayerGang[playerid][pInGang]) { SendClientMessage(playerid, COLOR_RED, "Вы не в семье!"); return 1; } if(strcmp(PlayerGang[playerid][pRole], "Leader") != 0 && strcmp(PlayerGang[playerid][pRole], "Vice") != 0) { SendClientMessage(playerid, COLOR_RED, "Нет прав!"); return 1; } new targetid = GetPlayerIDByName(targetname); if(targetid == INVALID_PLAYER_ID) { SendClientMessage(playerid, COLOR_RED, "Игрок не найден!"); return 1; } if(!PlayerGang[targetid][pInGang] || PlayerGang[targetid][pGangID] != PlayerGang[playerid][pGangID]) { SendClientMessage(playerid, COLOR_RED, "Этот игрок не в вашей семье!"); return 1; } if(strcmp(PlayerGang[targetid][pRole], "Leader") == 0) { SendClientMessage(playerid, COLOR_RED, "Нельзя кикнуть лидера!"); return 1; } new query[256]; format(query, sizeof(query), "DELETE FROM gang_members WHERE player_name = '%s' AND gang_id = %d", targetname, PlayerGang[playerid][pGangID]); mysql_query(g_SQL, query); PlayerGang[targetid][pInGang] = false; PlayerGang[targetid][pGangID] = -1; PlayerGang[targetid][pRole] = "None"; GangData[PlayerGang[playerid][pGangID]][gMemberCount]--; new msg[128]; format(msg, sizeof(msg), "%s исключен из семьи!", targetname); SendClientMessage(playerid, COLOR_RED, msg); format(msg, sizeof(msg), "Вас исключили из семьи %s!", GangData[PlayerGang[playerid][pGangID]][gName]); SendClientMessage(targetid, COLOR_RED, msg); return 1; } return 0; } forward ProcessCapture(zoneid); public ProcessCapture(zoneid) { if(zoneid < 0 || zoneid >= ZoneCount) return 1; if(!ZoneData[zoneid][zCapturing]) return 1; new gangID = ZoneData[zoneid][zCaptureGang]; new attackers = 0; new defenders = 0; for(new i = 0; i < MAX_PLAYERS; i++) { if(!IsPlayerConnected(i)) continue; new Float:x, Float:y, Float:z; GetPlayerPos(i, x, y, z); new Float:dist = GetDistanceBetweenPoints(x, y, z, ZoneData[zoneid][zX], ZoneData[zoneid][zY], ZoneData[zoneid][zZ]); if(dist <= ZoneData[zoneid][zRadius]) { if(PlayerGang[i][pInGang] && PlayerGang[i][pGangID] == gangID) { attackers++; } else if(PlayerGang[i][pInGang] && PlayerGang[i][pGangID] == ZoneData[zoneid][zOwner]) { defenders++; } } } if(attackers == 0) { ZoneData[zoneid][zCaptureProgress] = 0; SendClientMessageToAll(COLOR_RED, "[WAR] Захват прерван - нет атакующих в зоне!"); StopCapture(zoneid); return 1; } if(defenders > 0) { ZoneData[zoneid][zCaptureProgress] = max(0, ZoneData[zoneid][zCaptureProgress] - (defenders * 2)); new msg[128]; format(msg, sizeof(msg), "[WAR] Защитники мешают захвату! Прогресс: %d%%", ZoneData[zoneid][zCaptureProgress] / 3); SendClientMessageToAll(COLOR_RED, msg); } else { ZoneData[zoneid][zCaptureProgress] += (attackers * 3); } new

if(ZoneData[zoneid][zCapturing]) { SendClientMessage(playerid, COLOR_RED, "Эта зона уже захватывается!"); return 1; } new Float:x, Float:y, Float:z; GetPlayerPos(playerid, x, y, z); new Float:dist = GetDistanceBetweenPoints(x, y, z, ZoneData[zoneid][zX], ZoneData[zoneid][zY], ZoneData[zoneid][zZ]); if(dist > ZoneData[zoneid][zRadius]) { SendClientMessage(playerid, COLOR_RED, "Вы должны находиться внутри зоны для захвата!"); return 1; } ZoneData[zoneid][zCapturing] = true; ZoneData[zoneid][zCaptureProgress] = 0; ZoneData[zoneid][zCaptureGang] = PlayerGang[playerid][pGangID]; new msg[128]; format(msg, sizeof(msg), "[WAR] %s начал захват зоны %s!", GetPlayerNameEx(playerid), ZoneData[zoneid][zName]); SendClientMessageToAll(COLOR_YELLOW, msg); ZoneData[zoneid][zCaptureTimer] = SetTimerEx("ProcessCapture", 1000, 1, "i", zoneid); return 1; } if(strcmp(cmdtext, "/gangs", true, 6) == 0) { SendClientMessage(playerid, COLOR_WHITE, "=== Список семей ==="); for(new i = 0; i < GangCount; i++) { if(GangData[i][gLoaded]) { new msg[128]; format(msg, sizeof(msg), "%s [%s] | Участников: %d | Баланс: $%d", GangData[i][gName], GangData[i][gTag], GangData[i][gMemberCount], GangData[i][gMoney]); SendClientMessage(playerid, COLOR_WHITE, msg); } } return 1; } if(strcmp(cmdtext, "/ganginfo", true, 9) == 0) { if(!PlayerGang[playerid][pInGang]) { SendClientMessage(playerid, COLOR_RED, "Вы не в семье!"); return 1; } new gangID = PlayerGang[playerid][pGangID]; new msg[256]; format(msg, sizeof(msg), "=== %s [%s] ===", GangData[gangID][gName], GangData[gangID][gTag]); SendClientMessage(playerid, COLOR_BLUE, msg); format(msg, sizeof(msg), "Лидер: %s | Уровень: %d | Денег: $%d", GangData[gangID][gLeader], GangData[gangID][gLevel], GangData[gangID][gMoney]); SendClientMessage(playerid, COLOR_WHITE, msg); format(msg, sizeof(msg), "Территория: %s | Участников: %d", GangData[gangID][gTurf], GangData[gangID][gMemberCount]); SendClientMessage(playerid, COLOR_WHITE, msg); return 1; } if(strcmp(cmdtext, "/setvice", true, 8) == 0) { new targetname[MAX_PLAYER_NAME]; if(sscanf(cmdtext[8], "s[24]", targetname)) { SendClientMessage(playerid, COLOR_WHITE, "Использование: /setvice [Имя игрока]"); return 1; } if(!PlayerGang[playerid][pInGang]) { SendClientMessage(playerid, COLOR_RED, "Вы не в семье!"); return 1; } if(strcmp(PlayerGang[playerid][pRole], "Leader") != 0) { SendClientMessage(playerid, COLOR_RED, "Только лидер может назначать заместителя!"); return 1; } new targetid = GetPlayerIDByName(targetname); if(targetid == INVALID_PLAYER_ID) { SendClientMessage(playerid, COLOR_RED, "Игрок не найден!"); return 1; } if(!PlayerGang[targetid][pInGang] || PlayerGang[targetid][pGangID] != PlayerGang[playerid][pGangID]) { SendClientMessage(playerid, COLOR_RED, "Этот игрок не в вашей семье!"); return 1; } PlayerGang[targetid][pRole] = "Vice"; new query[256]; format(query, sizeof(query), "UPDATE gang_members SET role = 'Vice' WHERE player_name = '%s' AND gang_id = %d", targetname, PlayerGang[playerid][pGangID]); mysql_query(g_SQL, query); new msg[128]; format(msg, sizeof(msg), "%s назначен

GetPlayerIDByName(targetname); if(targetid == INVALID_PLAYER_ID) { SendClientMessage(playerid, COLOR_RED, "Игрок не найден!"); return 1; } if(targetid == playerid) { SendClientMessage(playerid, COLOR_RED, "Нельзя пригласить себя!"); return 1; } if(!PlayerGang[playerid][pInGang]) { SendClientMessage(playerid, COLOR_RED, "Вы не в семье!"); return 1; } if(strcmp(PlayerGang[playerid][pRole], "Leader") != 0 && strcmp(PlayerGang[playerid][pRole], "Vice") != 0) { SendClientMessage(playerid, COLOR_RED, "Нет прав! Нужен Лидер или Зам."); return 1; } if(PlayerGang[targetid][pInGang]) { SendClientMessage(playerid, COLOR_RED, "Этот игрок уже в семье!"); return 1; } g_InvitePending[targetid] = 1; g_InviteFrom[targetid] = playerid; g_InviteGang[targetid] = PlayerGang[playerid][pGangID]; new msg[128]; format(msg, sizeof(msg), "[Приглашение] %s пригласил вас в семью! Используйте /accept", GetPlayerNameEx(playerid)); SendClientMessage(targetid, COLOR_YELLOW, msg); format(msg, sizeof(msg), "Приглашение отправлено игроку %s", targetname); SendClientMessage(playerid, COLOR_GREEN, msg); return 1; } if(strcmp(cmdtext, "/accept", true, 7) == 0) { if(!g_InvitePending[playerid]) { SendClientMessage(playerid, COLOR_RED, "У вас нет приглашений!"); return 1; } new gangID = g_InviteGang[playerid]; if(gangID == -1 || !GangData[gangID][gLoaded]) { SendClientMessage(playerid, COLOR_RED, "Семья была расформирована!"); g_InvitePending[playerid] = 0; return 1; } new pName[MAX_PLAYER_NAME]; GetPlayerName(playerid, pName, sizeof(pName)); new query[256]; format(query, sizeof(query), "INSERT INTO gang_members (gang_id, player_name, role) VALUES (%d, '%s', 'Member')", gangID, pName); mysql_query(g_SQL, query); PlayerGang[playerid][pInGang] = true; PlayerGang[playerid][pGangID] = gangID; PlayerGang[playerid][pRole] = "Member"; GangData[gangID][gMemberCount]++; new msg[128]; format(msg, sizeof(msg), "Вы вступили в семью %s!", GangData[gangID][gName]); SendClientMessage(playerid, COLOR_GREEN, msg); format(msg, sizeof(msg), "%s вступил в вашу семью!", pName); SendClientMessage(g_InviteFrom[playerid], COLOR_GREEN, msg); g_InvitePending[playerid] = 0; return 1; } if(strcmp(cmdtext, "/capture", true, 8) == 0) { new zonename[32]; if(sscanf(cmdtext[8], "s[32]", zonename)) { SendClientMessage(playerid, COLOR_WHITE, "Использование: /capture [Название зоны]"); SendClientMessage(playerid, COLOR_WHITE, "Доступные зоны: Grove Street, Ballas Hood, Pier 69 и др."); return 1; } if(!PlayerGang[playerid][pInGang]) { SendClientMessage(playerid, COLOR_RED, "Вы не в семье!"); return 1; } if(strcmp(PlayerGang[playerid][pRole], "Leader") != 0 && strcmp(PlayerGang[playerid][pRole], "Vice") != 0) { SendClientMessage(playerid, COLOR_RED, "Нет прав! Нужен Лидер или Зам."); return 1; } new zoneid = GetZoneIDByName(zonename); if(zoneid == -1) { SendClientMessage(playerid, COLOR_RED, "Зона не найдена!"); return 1; } if(ZoneData[zoneid][zOwner] == PlayerGang[playerid][pGangID]) { SendClientMessage(playerid, COLOR_RED, "Это уже ваша территория!"); return 1; }

OnPlayerDeath(playerid, killerid, reason) { if(killerid != INVALID_PLAYER_ID && PlayerGang[playerid][pInGang] && PlayerGang[killerid][pInGang]) { if(PlayerGang[playerid][pGangID] != PlayerGang[killerid][pGangID]) { new gangID = PlayerGang[killerid][pGangID]; GangData[gangID][gMoney] += 500; new msg[128]; format(msg, sizeof(msg), "~g~+$500~w~ за убийство врага!"); GameTextForPlayer(killerid, msg, 3000, 3); UpdateGangMoney(gangID); } } return 1; } public OnPlayerEnterDynamicCP(playerid, checkpointid) { for(new i = 0; i < ZoneCount; i++) { if(ZoneData[i][zOwner] != -1 && PlayerGang[playerid][pInGang]) { if(ZoneData[i][zOwner] == PlayerGang[playerid][pGangID]) { new msg[128]; format(msg, sizeof(msg), "~g~%s~n~~w~Территория вашей семьи", ZoneData[i][zName]); GameTextForPlayer(playerid, msg, 3000, 3); } else { new msg[128]; format(msg, sizeof(msg), "~r~%s~n~~w~Территория врага!", ZoneData[i][zName]); GameTextForPlayer(playerid, msg, 3000, 3); } } } return 1; } public OnPlayerCommandText(playerid, cmdtext[]) { if(strcmp(cmdtext, "/createfam", true, 10) == 0) { new name[32], tag[16]; if(sscanf(cmdtext[10], "s[32]s[16]", name, tag)) { SendClientMessage(playerid, COLOR_WHITE, "Использование: /createfam [Название] [Тэг]"); return 1; } if(PlayerGang[playerid][pInGang]) { SendClientMessage(playerid, COLOR_RED, "Вы уже в семье!"); return 1; } if(strlen(name) < 3 || strlen(tag) < 2) { SendClientMessage(playerid, COLOR_RED, "Название или тэг слишком короткие!"); return 1; } new query[256]; format(query, sizeof(query), "SELECT id FROM gangs WHERE name = '%s' OR tag = '%s'", name, tag); mysql_query(g_SQL, query); new rows = mysql_num_rows(g_SQL); mysql_free_result(g_SQL); if(rows > 0) { SendClientMessage(playerid, COLOR_RED, "Такое название или тэг уже заняты!"); return 1; } new pName[MAX_PLAYER_NAME]; GetPlayerName(playerid, pName, sizeof(pName)); format(query, sizeof(query), "INSERT INTO gangs (name, tag, leader) VALUES ('%s', '%s', '%s')", name, tag, pName); mysql_query(g_SQL, query); new gangID = mysql_insert_id(g_SQL); GangData[gangID][gID] = gangID; format(GangData[gangID][gName], 32, "%s", name); format(GangData[gangID][gTag], 16, "%s", tag); format(GangData[gangID][gLeader], MAX_PLAYER_NAME, "%s", pName); GangData[gangID][gLevel] = 1; GangData[gangID][gMoney] = 0; GangData[gangID][gTurf] = "None"; GangData[gangID][gMemberCount] = 1; GangData[gangID][gLoaded] = true; PlayerGang[playerid][pInGang] = true; PlayerGang[playerid][pGangID] = gangID; PlayerGang[playerid][pRole] = "Leader"; GangCount++; format(query, sizeof(query), "INSERT INTO gang_members (gang_id, player_name, role) VALUES (%d, '%s', 'Leader')", gangID, pName); mysql_query(g_SQL, query); new msg[128]; format(msg, sizeof(msg), "[Семья] Семья '%s' успешно создана!", name); SendClientMessage(playerid, COLOR_GREEN, msg); return 1; } if(strcmp(cmdtext, "/invite", true, 7) == 0) { new targetname[MAX_PLAYER_NAME]; if(sscanf(cmdtext[7], "s[24]", targetname)) { SendClientMessage(playerid, COLOR_WHITE, "Использование: /invite [Имя игрока]"); return 1; } new targetid =

‘‘‘sql CREATE DATABASE IF NOT EXISTS gang_database; USE gang_database; CREATE TABLE IF NOT EXISTS gangs ( id int(11) NOT NULL AUTO_INCREMENT, name varchar(50) NOT NULL, tag varchar(10) NOT NULL, leader varchar(50) NOT NULL, level int(11) DEFAULT '1', money int(11) DEFAULT '0', turf varchar(50) DEFAULT 'None', PRIMARY KEY (`id`), UNIQUE KEY name (`name`), UNIQUE KEY tag (`tag`) ); CREATE TABLE IF NOT EXISTS gang_members ( id int(11) NOT NULL AUTO_INCREMENT, gang_id int(11) NOT NULL, player_name varchar(50) NOT NULL, role varchar(16) DEFAULT 'Member', PRIMARY KEY (`id`), KEY gang_id (`gang_id`) ); CREATE TABLE IF NOT EXISTS turfs ( id int(11) NOT NULL AUTO_INCREMENT, gang_id int(11) DEFAULT NULL, zone_name varchar(50) NOT NULL, captured_at timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, PRIMARY KEY (`id`), UNIQUE KEY zone_name (`zone_name`) ); ’’’ (☝️выше код для базы) ИНСТРУКЦИЯ ПО УСТАНОВКЕ ДЛЯ ЧАЙНИКА: 1) установка MYSQL *Если у тебя нет MySQL, скачай XAMPP или MySQL Server. *Запусти MySQL сервер. *Открой phpMyAdmin (обычно http://localhost/phpmyadmin).Создай новую базу данных: gang_database. *Перейди во вкладку SQL и вставь весь код выше, нажми "Выполнить". ‘‘‘pawn #include <a_samp> #include <a_mysql> #include <sscanf2> #include <foreach> #define MAX_GANGS 50 #define MAX_ZONES 20 #define MAX_PLAYER_GANGS 500 #define COLOR_GREEN 0x00FF00AA #define COLOR_RED 0xFF0000AA #define COLOR_YELLOW 0xFFFF00AA #define COLOR_WHITE 0xFFFFFFAA #define COLOR_BLUE 0x0088FFAA enum GANG_DATA { gID, gName[32], gTag[16], gLeader[MAX_PLAYER_NAME], gLevel, gMoney, gTurf[32], gMemberCount, bool:gLoaded } enum ZONE_DATA { zName[32], Float:zX, Float:zY, Float:zZ, Float:zRadius, zOwner, bool:zCapturing, zCaptureProgress, zCaptureTimer, zCaptureGang } enum PLAYER_GANG_DATA { pGangID, pRole[16], bool:pInGang } new GangData[MAX_GANGS][GANG_DATA]; new ZoneData[MAX_ZONES][ZONE_DATA]; new PlayerGang[MAX_PLAYERS][PLAYER_GANG_DATA]; new MySQL:g_SQL; new ZoneCount = 0; new GangCount = 0; new Float:g_CapturePositions[MAX_ZONES][3] = { {1406.0, -1524.0, 13.5}, {2495.0, -1680.0, 13.5}, {2300.0, -1200.0, 25.0}, {-1930.0, 850.0, 35.0}, {1223.0, -1800.0, 16.0}, {2100.0, -1400.0, 25.0}, {-1600.0, 700.0, 10.0}, {2800.0, -2000.0, 10.0} }; new Float:g_CaptureRadius[MAX_ZONES] = { 30.0, 40.0, 35.0, 25.0, 30.0, 35.0, 40.0, 30.0 }; new g_ZoneNames[MAX_ZONES][32] = { "Los Santos Bank", "Grove Street", "Ballas Hood", "Pier 69", "Jefferson Motel", "Ganton Gym", "Ocean Docks", "Verdant Bluffs" }; new g_InvitePending[MAX_PLAYERS]; new g_InviteFrom[MAX_PLAYERS]; new g_InviteGang[MAX_PLAYERS]; new Text3D:g_ZoneLabels[MAX_ZONES]; public OnFilterScriptInit() { print("Gang War System v1.0 Loaded"); print("Connecting to MySQL..."); g_SQL = mysql_connect("localhost", "root", "password", "gang_database"); if(mysql_errno(g_SQL) != 0) { print("MySQL connection failed!"); return 1; } print("MySQL connected successfully!"); LoadGangsFromDB(); LoadZonesFromDB(); CreateZoneLabels(); SetTimer("SaveAllGangs", 60000, 1); SetTimer("UpdateZoneMarkers", 5000, 1); return 1; } public OnFilterScriptExit() { SaveAllGangs(); mysql_close(g_SQL); return 1; } public OnPlayerConnect(playerid) { PlayerGang[playerid][pInGang] = false; PlayerGang[playerid][pGangID] = -1; PlayerGang[playerid][pRole] = "None"; g_InvitePending[playerid] = 0; g_InviteFrom[playerid] = INVALID_PLAYER_ID; g_InviteGang[playerid] = -1; LoadPlayerGang(playerid); return 1; } public OnPlayerDisconnect(playerid, reason) { if(PlayerGang[playerid][pInGang]) { SavePlayerGang(playerid); } return 1; } public OnPlayerSpawn(playerid) { SendGangInfo(playerid); return 1; } public

Привет друзья, я подготовил очень масштабную систему войны семей. В течении 10 минут слив. Извините вчера занят сильно был, поэтому сегодня будет весело в плане этого.

👍 сливаю для вас отличный фон для вашего CRMP проекта ⚡️ Автор слива = @FilipStudio Не менять авторство слива
👍 сливаю для вас отличный фон для вашего CRMP проекта ⚡️ Автор слива = @FilipStudio Не менять авторство слива

Всем привет, так что насчёт системы, делаем первый вариант из комментариев.

Repost from N/a
Файл для скачивания тем,кто по каким то причинам не может скачать из RuStore/с сайта

Как дела у ночных бабочек?

Ночной привет друзья

Тут если что scriptfiles нету,всё через пвн

blackrussia.zip16.46 MB

Сливаю для вас приватный мод Ельдара который он продаёт за 300 рублей 💸 Что есть в моде? 🧐 Регистрация GUI Технический Центр Стайлинг Центр Шиномонтажный Центр Радиалка Дома + квартиры Донат МЧС ТК Водолаз Электрик Шахта Завод Ка$ Кейсы Блек пасс Фулл Ворк Организации Помощник для новичков 🥳 Автор слива = @FilipStudio Скачать ниже 👇

на 30 лайков делаю слив на проект там есть обнова которая будет сегодня в блек раше этот проект как тест сервер!!!

Все тут?

Repost from N/a
Сайт обновлён! Скачать версию 1.1.0 с сайта — sites.google.com/view/guessthenumber-filipgames С RuStore — https://www.rustore.ru/catalog/app/com.guessthenumber.app

Repost from N/a
Версия 1.1.0 загружена в RuStore Скачать — https://www.rustore.ru/catalog/app/com.guessthenumber.app

Понял, нужна битва семей, будет, а что то для самп может вам написать друзья? Что то уникальное чего нет ни у кого может быть? На вашу фантазию

Имею ввиду может вам написать систему какую?