tryp
Умник
[Мануал] Cистема тренировок
Добрый день павно-инфо, играл на сервах(в бандах) там всегда лидеры собирали нас на трени но тренироваться приходилось на улице и нас всегда убивали. Чтоб такого небыло я сделал Тренировачную систему!
И так приступим 1.создаем переменую
Идем в public onplayerconnect и добовляем это
Идем в public onplayercommandtext
Далее идем в public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
Дальше идем в public OnPlayerDeath(playerid, killerid, reason) и добовляем убийства(пригодиться для лидеров!)
затем идем в public setplayerspawn и добовляем это если нас убили на пвп но мы не хотим ещё выходить
ну и добавим 3д текст идем в public ongamemodeinit
и ещё тренеровки находяться около винвуда( кто играл на обычных рп он находиться там где можно играть в /mission)
у кого errors заменяем
Добрый день павно-инфо, играл на сервах(в бандах) там всегда лидеры собирали нас на трени но тренироваться приходилось на улице и нас всегда убивали. Чтоб такого небыло я сделал Тренировачную систему!
И так приступим 1.создаем переменую
PHP:
new treni[MAX_PLAYERS];//для 1 тренировки
new treni2[MAX_PLAYERS];//для 2 тренировки
new treni3[MAX_PLAYERS];//для 3 тренировки
PHP:
treni[playerid] = 0;
treni2[playerid] = 0;
treni3[playerid] = 0;
PHP:
if(strcmp(cmd,"/ter",true)==0)
{
if(IsPlayerConnected(playerid))
{
if(!PlayerToPoint(3.0,playerid,1380.8158,-1088.7686,27.3844))return SMG(playerid, COLOR_GREY, "Вы не у тренеровок!");
SPD(playerid, 7182, DIALOG_STYLE_LIST, "коробки для тренеровок", "1 коробка\n2 коробка\n 3 коробка","Выбрать","Отмена");
}
return true;
}
if(strcmp(cmd,"/treni",true)==0)
{
if(IsPlayerConnected(playerid))
{
if (treni[playerid] == 0)return SMG(playerid, COLOR_GREY, "Вы не на тренировках!");
SPD(playerid, 7183, DIALOG_STYLE_LIST, "Команды пвп", "Дать хп\nДать броню\nДать ИГЛ\nДать снапу\nДать ак_47\nДать MP5\nЗабрать оружие\nВыйти из тренировки","Выбрать","Отмена");
}
return true;
}
if(strcmp(cmd,"/treni2",true)==0)
{
if(IsPlayerConnected(playerid))
{
if (treni2[playerid] == 0)return SMG(playerid, COLOR_GREY, "Вы не на тренировках!");
SPD(playerid, 7184, DIALOG_STYLE_LIST, "Команды пвп", "Дать хп\nДать броню\nДать ИГЛ\nДать снапу\nДать ак_47\nДать MP5\nЗабрать оружие\nВыйти из тренировки","Выбрать","Отмена");
}
return true;
}
if(strcmp(cmd,"/treni3",true)==0)
{
if(IsPlayerConnected(playerid))
{
if (treni3[playerid] == 0)return SMG(playerid, COLOR_GREY, "Вы не на тренировках!");
SPD(playerid, 7185, DIALOG_STYLE_LIST, "Команды пвп", "Дать хп\nДать броню\nДать ИГЛ\nДать снапу\nДать ак_47\nДать MP5\nЗабрать оружие\nВыйти из тренировки","Выбрать","Отмена");
}
return true;
}
PHP:
case 7185:
{
if(response)
{
new sPlayerName[MAX_PLAYER_NAME];
GetPlayerName(playerid, sPlayerName, sizeof(sPlayerName));
if(listitem == 0)
{
for(new i = 0; i < GetMaxPlayers(); i++)
if(treni3[i] == 1)
{
SetPlayerHealthAC(i, 100);
format(string,sizeof(string),"%s пополнил всем здоровье.",sPlayerName);
SMG(i, COLOR_RED,string);
}
}
if(listitem == 1)
{
for(new i = 0; i < GetMaxPlayers(); i++)
if(treni3[i] == 1)
{
SetPlayerArmourAC(i, 100);
format(string,sizeof(string),"%s пополнил всем броню.",sPlayerName);
SMG(i, COLOR_RED,string);
}
}
if(listitem == 2)
{
for(new i = 0; i < GetMaxPlayers(); i++)
if(treni3[i] == 1)
{
GetWeaponPla(i, 24 ,500);
format(string,sizeof(string),"%s дал оружие.",sPlayerName);
SMG(i, COLOR_RED,string);
}
}
if(listitem == 3)
{
for(new i = 0; i < GetMaxPlayers(); i++)
if(treni3[i] == 1)
{
GetWeaponPla(i, 34 ,500);
format(string,sizeof(string),"%s дал оружие.",sPlayerName);
SMG(i, COLOR_RED,string);
}
}
if(listitem == 4)
{
for(new i = 0; i < GetMaxPlayers(); i++)
if(treni3[i] == 1)
{
GetWeaponPla(i, 30 ,500);
format(string,sizeof(string),"%s дал оружие.",sPlayerName);
SMG(i, COLOR_RED,string);
}
}
if(listitem == 5)
{
for(new i = 0; i < GetMaxPlayers(); i++)
if(treni3[i] == 1)
{
GetWeaponPla(i, 29 ,500);
format(string,sizeof(string),"%s дал оружие.",sPlayerName);
SMG(i, COLOR_RED,string);
}
}
if(listitem == 6)
{
for(new i = 0; i < GetMaxPlayers(); i++)
if(treni3[i] == 1)
{
ResetPlayerWeapons(i);
format(string,sizeof(string),"%s Забрал оружие.",sPlayerName);
SMG(i, COLOR_RED,string);
}
}
if(listitem == 7)
{
if(treni3[playerid] == 1)
{
treni3[playerid] = 0;
format(string,sizeof(string),"%s Вышел из тренировки.",sPlayerName);
SetPlayerPos(playerid, 1380.8158,-1088.7686,27.3844);
SetPlayerInterior(playerid,0);
SMG(playerid, COLOR_RED,string);
ResetPlayerWeapons(playerid);
}
}
}
}
case 7184:
{
if(response)
{
new sPlayerName[MAX_PLAYER_NAME];
GetPlayerName(playerid, sPlayerName, sizeof(sPlayerName));
if(listitem == 0)
{
for(new i = 0; i < GetMaxPlayers(); i++)
if(treni2[i] == 1)
{
SetPlayerHealthAC(i, 100);
format(string,sizeof(string),"%s пополнил всем здоровье.",sPlayerName);
SMG(i, COLOR_RED,string);
}
}
if(listitem == 1)
{
for(new i = 0; i < GetMaxPlayers(); i++)
if(treni2[i] == 1)
{
SetPlayerArmourAC(i, 100);
format(string,sizeof(string),"%s пополнил всем броню.",sPlayerName);
SMG(i, COLOR_RED,string);
}
}
if(listitem == 2)
{
for(new i = 0; i < GetMaxPlayers(); i++)
if(treni2[i] == 1)
{
GetWeaponPla(i, 24 ,500);
format(string,sizeof(string),"%s дал оружие.",sPlayerName);
SMG(i, COLOR_RED,string);
}
}
if(listitem == 3)
{
for(new i = 0; i < GetMaxPlayers(); i++)
if(treni2[i] == 1)
{
GetWeaponPla(i, 34 ,500);
format(string,sizeof(string),"%s дал оружие.",sPlayerName);
SMG(i, COLOR_RED,string);
}
}
if(listitem == 4)
{
for(new i = 0; i < GetMaxPlayers(); i++)
if(treni2[i] == 1)
{
GetWeaponPla(i, 30 ,500);
format(string,sizeof(string),"%s дал оружие.",sPlayerName);
SMG(i, COLOR_RED,string);
}
}
if(listitem == 5)
{
for(new i = 0; i < GetMaxPlayers(); i++)
if(treni2[i] == 1)
{
GetWeaponPla(i, 29 ,500);
format(string,sizeof(string),"%s дал оружие.",sPlayerName);
SMG(i, COLOR_RED,string);
}
}
if(listitem == 6)
{
for(new i = 0; i < GetMaxPlayers(); i++)
if(treni2[i] == 1)
{
ResetPlayerWeapons(i);
format(string,sizeof(string),"%s Забрал оружие.",sPlayerName);
SMG(i, COLOR_RED,string);
}
}
if(listitem == 7)
{
if(treni2[playerid] == 1)
{
treni2[playerid] = 0;
format(string,sizeof(string),"%s Вышел из тренировки.",sPlayerName);
SetPlayerPos(playerid, 1380.8158,-1088.7686,27.3844);
SetPlayerInterior(playerid,0);
SMG(playerid, COLOR_RED,string);
ResetPlayerWeapons(playerid);
}
}
}
}
case 7183:
{
if(response)
{
new sPlayerName[MAX_PLAYER_NAME];
GetPlayerName(playerid, sPlayerName, sizeof(sPlayerName));
if(listitem == 0)
{
for(new i = 0; i < GetMaxPlayers(); i++)
if(treni[i] == 1)
{
SetPlayerHealthAC(i, 100);
format(string,sizeof(string),"%s пополнил всем здоровье.",sPlayerName);
SMG(i, COLOR_RED,string);
}
}
if(listitem == 1)
{
for(new i = 0; i < GetMaxPlayers(); i++)
if(treni[i] == 1)
{
SetPlayerArmourAC(i, 100);
format(string,sizeof(string),"%s пополнил всем броню.",sPlayerName);
SMG(i, COLOR_RED,string);
}
}
if(listitem == 2)
{
for(new i = 0; i < GetMaxPlayers(); i++)
if(treni[i] == 1)
{
GetWeaponPla(i, 24 ,500);
format(string,sizeof(string),"%s дал оружие.",sPlayerName);
SMG(i, COLOR_RED,string);
}
}
if(listitem == 3)
{
for(new i = 0; i < GetMaxPlayers(); i++)
if(treni[i] == 1)
{
GetWeaponPla(i, 34 ,500);
format(string,sizeof(string),"%s дал оружие.",sPlayerName);
SMG(i, COLOR_RED,string);
}
}
if(listitem == 4)
{
for(new i = 0; i < GetMaxPlayers(); i++)
if(treni[i] == 1)
{
GetWeaponPla(i, 30 ,500);
format(string,sizeof(string),"%s дал оружие.",sPlayerName);
SMG(i, COLOR_RED,string);
}
}
if(listitem == 5)
{
for(new i = 0; i < GetMaxPlayers(); i++)
if(treni[i] == 1)
{
GetWeaponPla(i, 29 ,500);
format(string,sizeof(string),"%s дал оружие.",sPlayerName);
SMG(i, COLOR_RED,string);
}
}
if(listitem == 6)
{
for(new i = 0; i < GetMaxPlayers(); i++)
if(treni[i] == 1)
{
ResetPlayerWeapons(i);
format(string,sizeof(string),"%s Забрал оружие.",sPlayerName);
SMG(i, COLOR_RED,string);
}
}
if(listitem == 7)
{
if(treni[playerid] == 1)
{
treni[playerid] = 0;
format(string,sizeof(string),"%s Вышел из тренировки.",sPlayerName);
SetPlayerPos(playerid, 1380.8158,-1088.7686,27.3844);
SetPlayerInterior(playerid,0);
SMG(playerid, COLOR_RED,string);
ResetPlayerWeapons(playerid);
}
}
}
}
//==================
case 7182:
{
if(response)
{
new message[256+1];
if(listitem == 0)
{
format(message, 256, " Вы телепотрнулись в ПвП коробку используйте /treni", listitem);
SMG(playerid, 0xFFFFFFFF, message);
treni[playerid] = 1;
SetPlayerPos(playerid, 1416.107000,0.268620,1000.926000);
SetPlayerInterior(playerid,1);
}
if(listitem == 1)
{
format(message, 256, " Вы телепотрнулись в ПвП коробку используйте /treni2!", listitem);
SMG(playerid, 0xFFFFFFFF, message);
treni2[playerid] = 1;
SetPlayerPos(playerid,-1401.830000,107.051300,1032.273000);
SetPlayerInterior(playerid,1);
}
if(listitem == 2)
{
format(message, 256, " Вы телепотрнулись в ПвП коробку используйте /treni3!", listitem);
SMG(playerid, 0xFFFFFFFF, message);
treni3[playerid] = 1;
SetPlayerPos(playerid,1302.519897,-1.787510,1000.931946);
SetPlayerInterior(playerid,18);
}
}
}
PHP:
for(new i=0; i < GetMaxPlayers(); i++)
{
if(treni[i] == 1)
{
SetPlayerWantedLevel(playerid, 0);
format(string, sizeof(string), "[%d]%s Убил [%d]%s",killerid,Name(killerid),playerid,Name(playerid));
SMG(i,COLOR_LIGHTGREEN, string);
}
}
for(new i=0; i < GetMaxPlayers(); i++)
{
if(treni2[i] == 1)
{
SetPlayerWantedLevel(playerid, 0);
format(string, sizeof(string), "[%d]%s Убил [%d]%s",killerid,Name(killerid),playerid,Name(playerid));
SMG(i,COLOR_LIGHTGREEN, string);
}
}
for(new i=0; i < GetMaxPlayers(); i++)
{
if(treni3[i] == 1)
{
SetPlayerWantedLevel(playerid, 0);
format(string, sizeof(string), "[%d]%s Убил [%d]%s",killerid,Name(killerid),playerid,Name(playerid));
SMG(i,COLOR_LIGHTGREEN, string);
}
}
PHP:
if(treni[playerid] == 1)
{
SMG(playerid, COLOR_YELLOW, "Если вы хотите выйти введите команду /treni -> Выйти");
SetPlayerInterior(playerid, 1);
SetPlayerPos(playerid, 1416.107000,0.268620,1000.926000);
//SetPlayerFacingAngle(playerid, 270.0);
SetPlayerArmourAC(playerid, 100);//Броня
SetPlayerHealthAC(playerid, 100);
return true;
}
else if(treni2[playerid] == 1)
{
SMG(playerid, COLOR_YELLOW, "Если вы хотите выйти введите команду /treni2 -> Выйти");
SetPlayerPos(playerid,-1401.830000,107.051300,1032.273000);
SetPlayerInterior(playerid,1);
SetPlayerArmourAC(playerid, 100);//Броня
SetPlayerHealthAC(playerid, 100);
return true;
}
else if(treni3[playerid] == 1)
{
SMG(playerid, COLOR_YELLOW, "Если вы хотите выйти введите команду /treni3 -> Выйти");
SetPlayerPos(playerid,1302.519897,-1.787510,1000.931946);
SetPlayerInterior(playerid,18);
return true;
}
PHP:
Create3DTextLabel("~~~~~~~~~~~~~~~\nПвп тренеровки\nДля тп используйте команду /ter\n~~~~~~~~~~~~~~~",COLOR_GREENYELLOW,1380.8158,-1088.7686,27.3844,80.0,0,0);
Чтобы видеть скрытое содержание Зарегистрируйтесь на форуме!
у кого errors заменяем
PHP:
#define SMG(%0,%1,%2); SendClientMessage(%0,%1,%2);
#define SMGAll(%0,%1); SendClientMessageToAll(%0,%1);
Последнее редактирование:
