Üdvözletem!
Ma valaki már kért egy ilyen szkriptet, hogy nem tudnánk meg csinálni neki én neki kezdtem mert láttam nem írt senki a témához és gondoltam más játékosnak is nagyon jól jön ez a kis leírás. :smokin: Ha hiba van a \"leírásban\" akkor kérlek írjátok és veszem a fáradságom és kijavítom!
Szóval van egy parancs a belépéshez /dm kijön egy dialog és választhatól 2 csapatot, Rendõr és Bûnõzõt ezt természetesen átt lehet írni másra.
Minden késszen van benne csak a fegyver adást kell modosítani és a spawnolási pozíciót.
Mód Elejére ami szükséges:
#include <zcmd> //Include
new IsPlayerInDM[MAX_PLAYERS]; //Egy váltózó létrehozása.
new IsPlayerInDMRendor[MAX_PLAYERS]; //Két váltózó kell, hogy e keveredjenek össze a csapatok.
#define DIALOG_CSAPAT 1 //Ez a dialog ID ha, hogy ne ütközzön más dialogal össze.
Belépési Parancs:
CMD:dm(playerid, params[])
{
if(IsPlayerInDM[playerid] == 1) return SendClientMessage(playerid, 0x00FF00, \"Már DM -ben vagy nem választhatól megint!\"); //Ha a Játékos már DM -ben van akkor ki irja neki a szöveget.
if(IsPlayerInDMRendor[playerid] == 1) return SendClientMessage(playerid, 0x00FF00, \"Már DM -ben vagy nem választhatól megint!\");
ShowPlayerDialog(playerid, DIALOG_CSAPAT, DIALOG_STYLE_LIST, \"Válasz egy Csapatot\", \"Rendõr\\nBünõzõ\", \"Választ\", \"Mégsem\"); //A dialog kijelenése és a választása \"Rendõr\" majd \"Bünõzõ\"
return 1;
}
OnDialogResponse alá!
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
if(dialogid == DIALOG_CSAPAT) //A dialog neve amit létrehoztunk a belépésnél.
{
if(response)
{
if(listitem == 0) //Rendõr Csapata
{
SetPlayerPos(playerid, POZICÍÓ); //IDE A POZíCÍTÓ AHOVÁ TEGYE A JÁTÉKOST A RENDÕRÕKNEK!
IsPlayerInDMRendor[playerid] == 1;
}
if(listitem == 1) //Bünõzõ Csapat
{
SetPlayerPos(playerid, POZÍCIÓ); //IDE AZ A POZíCÍÓ AHOVÁ TEGYE A BÜNÕZÕKET!
IsPlayerInDM[playerid] == 1;
}
}
}
return 1;
}
OnPlayerConnect rész!
public OnPlayerConnect(playerid) //Csatlakozás a Szerverrhez!
{
IsPlayerInDM[playerid] = 0; //Ha egy játékos ha csatlakozik ne tegye be a DM -be így le 0 -zuk.
IsPlayerInDMRendor[playerid] == 0;
return 1;
}
OnPlayerDiconnect alá!
public OnPlayerDisconnect(playerid, reason) //Lelépés a szerverrõl.
{
IsPlayerInDM[playerid] = 0; //Ha egy játékos lemegyen a szerverrõl akkor kilép a dm zónából is.
IsPlayerInDMRendor[playerid] = 0;
return 1;
}
OnPlayerSpawn alá!
public OnPlayerSpawn(playerid) //Ha a játékos meghall akkor lespawnolja.
{
if(IsPlayerInDM[playerid] == 1) //Ha megölik a játékos le ellenõrzi, hogy nincs -e DM -ben ha DM -ben van akkor vissza teszi.
{
SetPlayerPos(playerid, DM SPAWNOLÁSA); //HOVA TEGYE
SendClientMessage(playerid,-1,\"{FF0606}Meghaltál ezért vissza lettél rakva a Dead Matchba! Killépéshez /exitdm!\");
SetPlayerHealth(playerid, 100); //adunk neki 100 életerõt.
SetPlayerArmour(playerid,0); //levesszûk a páncélt de ha szeretnél adni neki akkor tedd 100 a 0 -t!
return 1;
}
if(IsPlayerInDMRendor[playerid] == 1) //Ha megölik a játékos le ellenõrzi, hogy nincs -e DM -ben ha DM -ben van akkor vissza teszi.
{
SetPlayerPos(playerid, DM SPAWNOLÁSA); //HOVA TEGYE
SendClientMessage(playerid,-1,\"{FF0606}Meghaltál ezért vissza lettél rakva a Dead Matchba! Killépéshez /exitdm!\");
SetPlayerHealth(playerid, 100); //adunk neki 100 életerõt.
SetPlayerArmour(playerid,0); //levesszûk a páncélt de ha szeretnél adni neki akkor tedd 100 a 0 -t!
return 1;
}
return 1;
}
Kilépés a DM -bõl.
CMD:exitdm(playerid, params[]) //A killépési parancs!
{
new string[600],pname[MAX_PLAYER_NAME];
GetPlayerName(playerid, pname, sizeof(pname));
if(IsPlayerInDM[playerid] == 0) return SendClientMessage(playerid, 0x00FF00, \"Nem vagy DM -ben!\"); //Ha a játékos nincs DM -ben akkor elküldi ezt az üzenetet.
if(IsPlayerInDMRendor[playerid] == 0) return SendClientMessage(playerid, 0x00FF00, \"Nem vagy DM -ben!\"); //Ha a játékos nincs DM -ben akkor elküldi ezt az üzenetet.
IsPlayerInDMRendor[playerid] == 0)
IsPlayerInDM[playerid] = 0; //A játékost killéptetjük a DM zonából vagyis már nincs benne.
format(string, sizeof(string), \"Játékos %s killépet a DM Zónábol! (/exitdm)\", pname); //Elküldi mindenkinek az üzenetet.
SendClientMessageToAll(0x00FF00, string);
SendClientMessage(playerid, 0x00FF00, \"Sikeresen killéptél a DM Zónábol!\"); //Elküldi a játékosnak, hogy killépet a DM -zónából.
SetPlayerPos(playerid, SPAWNOLÁSA);
return 1;
}
A DM -ben a játékosok ne használjanak parancsokat.!
if(IsPlayerInDM[playerid] == 1) return SendClientMessage(playerid, 0x00FF00, \"Vigyázz DM -ben vagy így nem használhatól más parancsot!\");
if(IsPlayerInDMRendor[playerid] == 1) return SendClientMessage(playerid, 0x00FF00, \"Vigyázz DM -ben vagy így nem használhatól más parancsot!\");