Система кейсов, данная система отлично подойдёт для сервера с жанром drift + dm
Начнём же.
Ко всем переменным new
new Text:SystemCase[13];
Теперь текстдравы
OnGameModeInit текстдравы [Показать]
SystemCase[0] = TextDrawCreate(201.5000, 141.4665, "Box"); // nope TextDrawLetterSize(SystemCase[0], 0.0000, 12.6000); TextDrawTextSize(SystemCase[0], 433.0000, 0.0000); TextDrawAlignment(SystemCase[0], 1); TextDrawColor(SystemCase[0], -1); TextDrawUseBox(SystemCase[0], 1); TextDrawBoxColor(SystemCase[0], -1); TextDrawSetOutline(SystemCase[0], 0); TextDrawBackgroundColor(SystemCase[0], -1); TextDrawFont(SystemCase[0], 1); TextDrawSetProportional(SystemCase[0], 1); TextDrawSetShadow(SystemCase[0], 0); SystemCase[1] = TextDrawCreate(201.0000, 141.4665, "Box"); // nope TextDrawLetterSize(SystemCase[1], 0.0000, -1.2999); TextDrawTextSize(SystemCase[1], 433.0000, 0.0000); TextDrawAlignment(SystemCase[1], 1); TextDrawColor(SystemCase[1], -1); TextDrawUseBox(SystemCase[1], 1); TextDrawBoxColor(SystemCase[1], -5963521); TextDrawSetOutline(SystemCase[1], 0); TextDrawBackgroundColor(SystemCase[1], 255); TextDrawFont(SystemCase[1], 1); TextDrawSetProportional(SystemCase[1], 1); TextDrawSetShadow(SystemCase[1], 0); SystemCase[2] = TextDrawCreate(201.5000, 264.6665, "Box"); // nope TextDrawLetterSize(SystemCase[2], 0.0000, -1.2999); TextDrawTextSize(SystemCase[2], 433.0000, 0.0000); TextDrawAlignment(SystemCase[2], 1); TextDrawColor(SystemCase[2], -1); TextDrawUseBox(SystemCase[2], 1); TextDrawBoxColor(SystemCase[2], -5963521); TextDrawSetOutline(SystemCase[2], 0); TextDrawBackgroundColor(SystemCase[2], 255); TextDrawFont(SystemCase[2], 1); TextDrawSetProportional(SystemCase[2], 1); TextDrawSetShadow(SystemCase[2], 0); SystemCase[3] = TextDrawCreate(200.0000, 135.2442, "Box"); // nope TextDrawLetterSize(SystemCase[3], 0.0000, 13.8500); TextDrawTextSize(SystemCase[3], 202.0000, 0.0000); TextDrawAlignment(SystemCase[3], 1); TextDrawColor(SystemCase[3], -1); TextDrawUseBox(SystemCase[3], 1); TextDrawBoxColor(SystemCase[3], -5963521); TextDrawSetOutline(SystemCase[3], 0); TextDrawBackgroundColor(SystemCase[3], 255); TextDrawFont(SystemCase[3], 1); TextDrawSetProportional(SystemCase[3], 1); TextDrawSetShadow(SystemCase[3], 0); SystemCase[4] = TextDrawCreate(434.0000, 135.2442, "Box"); // nope TextDrawLetterSize(SystemCase[4], 0.0000, 13.8500); TextDrawTextSize(SystemCase[4], 436.0000, 0.0000); TextDrawAlignment(SystemCase[4], 1); TextDrawColor(SystemCase[4], -1); TextDrawUseBox(SystemCase[4], 1); TextDrawBoxColor(SystemCase[4], -5963521); TextDrawSetOutline(SystemCase[4], 0); TextDrawBackgroundColor(SystemCase[4], 255); TextDrawFont(SystemCase[4], 1); TextDrawSetProportional(SystemCase[4], 1); TextDrawSetShadow(SystemCase[4], 0); SystemCase[5] = TextDrawCreate(348.0000, 142.5554, ""); // nope TextDrawLetterSize(SystemCase[5], 0.0000, 0.0000); TextDrawTextSize(SystemCase[5], 93.0000, 107.0000); TextDrawAlignment(SystemCase[5], 1); TextDrawColor(SystemCase[5], -1); TextDrawSetOutline(SystemCase[5], 0); TextDrawBackgroundColor(SystemCase[5], 0); TextDrawFont(SystemCase[5], 5); TextDrawSetProportional(SystemCase[5], 0); TextDrawSetShadow(SystemCase[5], 0); TextDrawSetSelectable(SystemCase[5], true); TextDrawSetPreviewModel(SystemCase[5], 19058); TextDrawSetPreviewRot(SystemCase[5], 330.0000, 360.0000, 313.0000, 0.9624); SystemCase[6] = TextDrawCreate(274.0000, 143.1776, ""); // nope TextDrawLetterSize(SystemCase[6], 0.0000, 0.0000); TextDrawTextSize(SystemCase[6], 93.0000, 107.0000); TextDrawAlignment(SystemCase[6], 1); TextDrawColor(SystemCase[6], -1); TextDrawSetOutline(SystemCase[6], 0); TextDrawBackgroundColor(SystemCase[6], 0); TextDrawFont(SystemCase[6], 5); TextDrawSetProportional(SystemCase[6], 0); TextDrawSetShadow(SystemCase[6], 0); TextDrawSetSelectable(SystemCase[6], true); TextDrawSetPreviewModel(SystemCase[6], 19055); TextDrawSetPreviewRot(SystemCase[6], 330.0000, 360.0000, 313.0000, 0.9624); SystemCase[7] = TextDrawCreate(198.1666, 141.3110, ""); // nope TextDrawLetterSize(SystemCase[7], 0.0000, 0.0000); TextDrawTextSize(SystemCase[7], 93.0000, 107.0000); TextDrawAlignment(SystemCase[7], 1); TextDrawColor(SystemCase[7], -1); TextDrawSetOutline(SystemCase[7], 0); TextDrawBackgroundColor(SystemCase[7], 0); TextDrawFont(SystemCase[7], 5); TextDrawSetProportional(SystemCase[7], 0); TextDrawSetShadow(SystemCase[7], 0); TextDrawSetSelectable(SystemCase[7], true); TextDrawSetPreviewModel(SystemCase[7], 19054); TextDrawSetPreviewRot(SystemCase[7], 330.0000, 360.0000, 313.0000, 0.9624); SystemCase[8] = TextDrawCreate(367.0000, 242.2667, "Vip Case"); // nope TextDrawLetterSize(SystemCase[8], 0.4135, 1.4567); TextDrawAlignment(SystemCase[8], 1); TextDrawColor(SystemCase[8], 11206570); TextDrawSetOutline(SystemCase[8], 0); TextDrawBackgroundColor(SystemCase[8], 255); TextDrawFont(SystemCase[8], 1); TextDrawSetProportional(SystemCase[8], 1); TextDrawSetShadow(SystemCase[8], 0); SystemCase[9] = TextDrawCreate(280.5000, 241.6444, "Money Case"); // nope TextDrawLetterSize(SystemCase[9], 0.4135, 1.4567); TextDrawAlignment(SystemCase[9], 1); TextDrawColor(SystemCase[9], 11206570); TextDrawSetOutline(SystemCase[9], 0); TextDrawBackgroundColor(SystemCase[9], 255); TextDrawFont(SystemCase[9], 1); TextDrawSetProportional(SystemCase[9], 1); TextDrawSetShadow(SystemCase[9], 0); SystemCase[10] = TextDrawCreate(208.8332, 241.8519, "Kills Case"); // nope TextDrawLetterSize(SystemCase[10], 0.4135, 1.4567); TextDrawAlignment(SystemCase[10], 1); TextDrawColor(SystemCase[10], 11206570); TextDrawSetOutline(SystemCase[10], 0); TextDrawBackgroundColor(SystemCase[10], 255); TextDrawFont(SystemCase[10], 1); TextDrawSetProportional(SystemCase[10], 1); TextDrawSetShadow(SystemCase[10], 0); SystemCase[11] = TextDrawCreate(401.5000, 264.6666, "Box"); // nope TextDrawLetterSize(SystemCase[11], 0.0000, 1.0499); TextDrawTextSize(SystemCase[11], 435.0000, 0.0000); TextDrawAlignment(SystemCase[11], 1); TextDrawColor(SystemCase[11], -1); TextDrawUseBox(SystemCase[11], 1); TextDrawBoxColor(SystemCase[11], -1); TextDrawSetOutline(SystemCase[11], 0); TextDrawBackgroundColor(SystemCase[11], 255); TextDrawFont(SystemCase[11], 1); TextDrawSetProportional(SystemCase[11], 1); TextDrawSetShadow(SystemCase[11], 0); SystemCase[12] = TextDrawCreate(408.0000, 260.3111, "Exit"); // nope TextDrawLetterSize(SystemCase[12], 0.4000, 1.6000); TextDrawAlignment(SystemCase[12], 1); TextDrawColor(SystemCase[12], -5963521); TextDrawSetOutline(SystemCase[12], 0); TextDrawBackgroundColor(SystemCase[12], 255); TextDrawFont(SystemCase[12], 1); TextDrawSetProportional(SystemCase[12], 1); TextDrawSetShadow(SystemCase[12], 0); TextDrawSetSelectable(SystemCase[12], true);
Добавляем команду
Команда [Показать]
if(strcmp(cmd, "/case", true) == 0)
{
SendClientMessage(playerid, 0x00FFAAFF, "Цена Vip кейса - состовляет 15.000.000$\nЦена Money кейса - состовляет 10.000.000$\nЦена Kills кейса - состовляет 5.000.000$");
TextDrawShowForPlayer(playerid, SystemCase[0]);
TextDrawShowForPlayer(playerid, SystemCase[1]);
TextDrawShowForPlayer(playerid, SystemCase[2]);
TextDrawShowForPlayer(playerid, SystemCase[3]);
TextDrawShowForPlayer(playerid, SystemCase[4]);
TextDrawShowForPlayer(playerid, SystemCase[5]);
TextDrawShowForPlayer(playerid, SystemCase[6]);
TextDrawShowForPlayer(playerid, SystemCase[7]);
TextDrawShowForPlayer(playerid, SystemCase[8]);
TextDrawShowForPlayer(playerid, SystemCase[9]);
TextDrawShowForPlayer(playerid, SystemCase[10]);
TextDrawShowForPlayer(playerid, SystemCase[11]);
TextDrawShowForPlayer(playerid, SystemCase[12]);
SelectTextDraw(playerid, 0xFF4040AA);
return 1;
}
Нажатие на подарочки.
public OnPlayerClickTextDraw(playerid, Text:clickedid) [Показать]
if(clickedid == SystemCase[5])
{
new string[256];
new PlayerName[MAX_PLAYER_NAME];
GetPlayerName(playerid,PlayerName,MAX_PLAYER_NAME);
if(GetPVarInt(playerid, "PlMon") < 15000000)//проверка на деньги у каждого своя
{
SendClientMessage(playerid, COLOR_RED, "У Вас недостаточно денег.");
}
else
{
SetPVarInt(playerid, "PlMon", GetPVarInt(playerid, "PlMon") - 15000000);//переменная денег у каждого своя
format(string,sizeof(string),"[Система Кейсов]{FF0000} Игрок %s[%d] открыл VIP CASE {7BFFFF}(/case)",PlayerName,playerid);
SendClientMessageToAll(COLOR_WHITE,string);
new g = random(4);
switch(g)
{
case 0:{SendClientMessage(playerid, 0x9E7BFFFF, "Ты открыл кейс и тебе выпала {FFFF00}(VIP-1)"); PlayerInfo[playerid][pVIP] = 1;}//переменная VIP у каждого своя
case 1:{SendClientMessage(playerid, 0x9E7BFFFF, "Ты открыл кейс и тебе выпала {FFFF00}(VIP-2)"); PlayerInfo[playerid][pVIP] = 2;}
case 2:{SendClientMessage(playerid, 0x9E7BFFFF, "Ты открыл кейс и тебе выпала {FFFF00}(VIP-3)"); PlayerInfo[playerid][pVIP] = 3;}
case 3:{SendClientMessage(playerid, 0x9E7BFFFF, "Тебе не чего не выпало :(");}
}
TextDrawHideForPlayer(playerid, SystemCase[0]);
TextDrawHideForPlayer(playerid, SystemCase[1]);
TextDrawHideForPlayer(playerid, SystemCase[2]);
TextDrawHideForPlayer(playerid, SystemCase[3]);
TextDrawHideForPlayer(playerid, SystemCase[4]);
TextDrawHideForPlayer(playerid, SystemCase[5]);
TextDrawHideForPlayer(playerid, SystemCase[6]);
TextDrawHideForPlayer(playerid, SystemCase[7]);
TextDrawHideForPlayer(playerid, SystemCase[8]);
TextDrawHideForPlayer(playerid, SystemCase[9]);
TextDrawHideForPlayer(playerid, SystemCase[10]);
TextDrawHideForPlayer(playerid, SystemCase[11]);
TextDrawHideForPlayer(playerid, SystemCase[12]);
CancelSelectTextDraw(playerid);
}
}
if(clickedid == SystemCase[6])
{
new string[256];
new PlayerName[MAX_PLAYER_NAME];
GetPlayerName(playerid,PlayerName,MAX_PLAYER_NAME);
if(GetPVarInt(playerid, "PlMon") < 10000000)//проверка на деньги у каждого своя
{
SendClientMessage(playerid, COLOR_RED, "У Вас недостаточно денег.");
}
else
{
SetPVarInt(playerid, "PlMon", GetPVarInt(playerid, "PlMon") - 10000000);//переменная денег у каждого своя
format(string,sizeof(string),"[Система Кейсов]{FF0000} Игрок %s[%d] открыл Money CASE {7BFFFF}(/case)",PlayerName,playerid);
SendClientMessageToAll(COLOR_WHITE,string);
new g = random(9);
switch(g)
{
case 0:{SendClientMessage(playerid, 0x9E7BFFFF, "Ты открыл кейс и тебе выпало (3.000.000$)"); SetPVarInt(playerid, "PlMon", GetPVarInt(playerid, "PlMon") + 3000000);}//переменная денег у каждого своя
case 1:{SendClientMessage(playerid, 0x9E7BFFFF, "Ты открыл кейс и тебе выпало (5.000.000$)"); SetPVarInt(playerid, "PlMon", GetPVarInt(playerid, "PlMon") + 5000000);}
case 2:{SendClientMessage(playerid, 0x9E7BFFFF, "Ты открыл кейс и тебе выпало (7.000.000$)"); SetPVarInt(playerid, "PlMon", GetPVarInt(playerid, "PlMon") + 7000000);}
case 3:{SendClientMessage(playerid, 0x9E7BFFFF, "Ты открыл кейс и тебе выпало (10.000.000$)"); SetPVarInt(playerid, "PlMon", GetPVarInt(playerid, "PlMon") + 10000000);}
case 4:{SendClientMessage(playerid, 0x9E7BFFFF, "Ты открыл кейс и тебе выпало (12.000.000$)"); SetPVarInt(playerid, "PlMon", GetPVarInt(playerid, "PlMon") + 12000000);}
case 5:{SendClientMessage(playerid, 0x9E7BFFFF, "Ты открыл кейс и тебе выпало (14.000.000$)"); SetPVarInt(playerid, "PlMon", GetPVarInt(playerid, "PlMon") + 14000000);}
case 6:{SendClientMessage(playerid, 0x9E7BFFFF, "Ты открыл кейс и тебе выпало (15.000.000$)"); SetPVarInt(playerid, "PlMon", GetPVarInt(playerid, "PlMon") + 15000000);}
case 7:{SendClientMessage(playerid, 0x9E7BFFFF, "Ты открыл кейс и тебе выпало (20.000.000$)"); SetPVarInt(playerid, "PlMon", GetPVarInt(playerid, "PlMon") + 20000000);}
case 8:{SendClientMessage(playerid, 0x9E7BFFFF, "Тебе не чего не выпало :(");}
}
TextDrawHideForPlayer(playerid, SystemCase[0]);
TextDrawHideForPlayer(playerid, SystemCase[1]);
TextDrawHideForPlayer(playerid, SystemCase[2]);
TextDrawHideForPlayer(playerid, SystemCase[3]);
TextDrawHideForPlayer(playerid, SystemCase[4]);
TextDrawHideForPlayer(playerid, SystemCase[5]);
TextDrawHideForPlayer(playerid, SystemCase[6]);
TextDrawHideForPlayer(playerid, SystemCase[7]);
TextDrawHideForPlayer(playerid, SystemCase[8]);
TextDrawHideForPlayer(playerid, SystemCase[9]);
TextDrawHideForPlayer(playerid, SystemCase[10]);
TextDrawHideForPlayer(playerid, SystemCase[11]);
TextDrawHideForPlayer(playerid, SystemCase[12]);
CancelSelectTextDraw(playerid);
}
}
if(clickedid == SystemCase[7])
{
new string[256];
new PlayerName[MAX_PLAYER_NAME];
GetPlayerName(playerid,PlayerName,MAX_PLAYER_NAME);
if(GetPVarInt(playerid, "PlMon") < 5000000)//проверка на деньги у каждого своя
{
SendClientMessage(playerid, COLOR_RED, "У Вас недостаточно денег.");
}
else
{
SetPVarInt(playerid, "PlMon", GetPVarInt(playerid, "PlMon") - 5000000);//переменная денег у каждого своя
format(string,sizeof(string),"[Система Кейсов]{FF0000} Игрок %s[%d] открыл Kills CASE {7BFFFF}(/case)",PlayerName,playerid);
SendClientMessageToAll(COLOR_WHITE,string);
new g = random(8);
switch(g)
{
case 1:{SendClientMessage(playerid, 0x9E7BFFFF, "Ты открыл кейс и тебе выпало (40) киллов"); PlayerInfo[playerid][pKills] += 40;}//переменные Kills
case 2:{SendClientMessage(playerid, 0x9E7BFFFF, "Ты открыл кейс и тебе выпало (60) киллов"); PlayerInfo[playerid][pKills] += 60;}
case 3:{SendClientMessage(playerid, 0x9E7BFFFF, "Ты открыл кейс и тебе выпало (100) киллов"); PlayerInfo[playerid][pKills] += 100;}
case 4:{SendClientMessage(playerid, 0x9E7BFFFF, "Ты открыл кейс и тебе выпало (150) киллов"); PlayerInfo[playerid][pKills] += 150;}
case 5:{SendClientMessage(playerid, 0x9E7BFFFF, "Ты открыл кейс и тебе выпало (200) киллов"); PlayerInfo[playerid][pKills] += 200;}
case 6:{SendClientMessage(playerid, 0x9E7BFFFF, "Ты открыл кейс и тебе выпало (250) киллов"); PlayerInfo[playerid][pKills] += 250;}
case 7:{SendClientMessage(playerid, 0x9E7BFFFF, "Тебе не чего не выпало :(");}
}
TextDrawHideForPlayer(playerid, SystemCase[0]);
TextDrawHideForPlayer(playerid, SystemCase[1]);
TextDrawHideForPlayer(playerid, SystemCase[2]);
TextDrawHideForPlayer(playerid, SystemCase[3]);
TextDrawHideForPlayer(playerid, SystemCase[4]);
TextDrawHideForPlayer(playerid, SystemCase[5]);
TextDrawHideForPlayer(playerid, SystemCase[6]);
TextDrawHideForPlayer(playerid, SystemCase[7]);
TextDrawHideForPlayer(playerid, SystemCase[8]);
TextDrawHideForPlayer(playerid, SystemCase[9]);
TextDrawHideForPlayer(playerid, SystemCase[10]);
TextDrawHideForPlayer(playerid, SystemCase[11]);
TextDrawHideForPlayer(playerid, SystemCase[12]);
CancelSelectTextDraw(playerid);
}
}
if(clickedid == SystemCase[12])//Кнопка Exit
{
TextDrawHideForPlayer(playerid, SystemCase[0]);
TextDrawHideForPlayer(playerid, SystemCase[1]);
TextDrawHideForPlayer(playerid, SystemCase[2]);
TextDrawHideForPlayer(playerid, SystemCase[3]);
TextDrawHideForPlayer(playerid, SystemCase[4]);
TextDrawHideForPlayer(playerid, SystemCase[5]);
TextDrawHideForPlayer(playerid, SystemCase[6]);
TextDrawHideForPlayer(playerid, SystemCase[7]);
TextDrawHideForPlayer(playerid, SystemCase[8]);
TextDrawHideForPlayer(playerid, SystemCase[9]);
TextDrawHideForPlayer(playerid, SystemCase[10]);
TextDrawHideForPlayer(playerid, SystemCase[11]);
TextDrawHideForPlayer(playerid, SystemCase[12]);
CancelSelectTextDraw(playerid);
}
Скриншоты: https://imgur.com/a/hfViX
Если вам понравилось моё готовое решение поставьте "+сик"
Автор: Rodger_Camillo
Сообщение отредактировал Rodger_Camillo: 05 ноября 2017 - 20:21
Вход
Регистрация
Помощь













