if(strcmp(cmdtext, \"/m4dm\") == 0 ) { if(DM[playerid] == true) return SendClientMessage(playerid,0xFFFF00AA,\"DM zónában vagy! Elõször /exitdm\"); ResetPlayerWeapons(playerid); GivePlayerWeapon(playerid,31,1000); SetPlayerArmour(playerid, 100); SetPlayerHealth(playerid, 100); SetPlayerPos(playerid,-2072.9172,-107.3010,35.3274); SendClientMessage(playerid, 0xFFFF00AA,\"Csatlakoztál a M4DM-hez! Kilépéshez: /exitdm\"); DM[playerid] = true; new pName[30], string[128]; GetPlayerName(playerid, pName, 30); format(string, 256, \"{0FFDD3}%s {8F698F}csatlakozott az {FF0606}M4DM-be! {0000FF}(/m4dm)!\", pName); SendClientMessageToAll(0xFFFFFFAA,string); return 1;}
public OnPlayerSpawn( playerid ){if( DM[ playerid ] == true ){SetPlayerPos( playerid, -2072.9172,-107.3010,35.3274 );SendClientMessage( playerid, -1, \"Mivel Death Mach pályában vagy ezért újra lettél spawnolva! Kilépésért: /exitdm\");}return 1;}
nem hiszem el.. le van zárva minden benne.. szóval lehet benne van 2x az OnPlayerSpawn függvény.. :hmmm:
#include a_sampnew DM;public OnPlayerSpawn(playerid){if(DM == 1){ ResetPlayerWeapons(playerid); GivePlayerWeapon(playerid,31,1000); SetPlayerArmour(playerid, 100); SetPlayerHealth(playerid, 100); SetPlayerPos(playerid,-2072.9172,-107.3010,35.3274);}return 1;}public OnPlayerConnect(playerid){DM=0; // Mikor belép nem lesz DM-benreturn 1;}public OnPlayerCommandText(playerid, cmdtext[]){if(strcmp(cmdtext, \"/m4dm\") == 0 ) { ResetPlayerWeapons(playerid); GivePlayerWeapon(playerid,31,1000); SetPlayerArmour(playerid, 100); SetPlayerHealth(playerid, 100); SetPlayerPos(playerid,-2072.9172,-107.3010,35.3274); SendClientMessage(playerid, 0xFFFF00AA,\"Csatlakoztál a M4DM-hez! Kilépéshez: /exitdm\"); DM = 1; new pName[30], string[128]; GetPlayerName(playerid, pName, 30); format(string, 256, \"{0FFDD3}%s {8F698F}csatlakozott az {FF0606}M4DM-be! {0000FF}(/m4dm)!\", pName); SendClientMessageToAll(0xFFFFFFAA,string); return 1;}if(strcmp(cmdtext, \"/sajt\") == 0){ SendClientMessage(playerid, 0xFFFF00AA,\"Ettél egy sajtot!\"); SetPlayerHealth(playerid, 100); return 1;}//Ha folytatólagosan írod a parancsokat, akkor az illetõ ha DM zónában van, akkor nem fogja engedni//Hogy parancsot használjon.if(strcmp(cmdtext,\"/exitdm\") == 0){ if(DM >= 1){ SetPlayerPos(playerid, 0,1,2);//Írd át arra a kordinátát, ahova akarod hogy kilépéskor kidobja. SendClientMessage(playerid,0xFFFFFFAA,\"Kiléptél a DM zónából\");}else{ SendClientMessage(playerid,0xFFFFFFAA,\"Nem vagy DM zónában!\");}return 1;} if(DM >=1) return SendClientMessage(playerid,0xFFFF00AA,\"DM zónában vagy! Elõször /exitdm\");return 0;}/* Te ugye new bool: DM[MAX_PLAYERS]; Változót használtál. De én jobban szeretem ezt, new DM;Mivel itt több értéket tudsz megadni.Míg a bool nál 2 állítást tehetsz: \"True\" \"False\" azaz, IGAZ HAMIS, itt tehetsz akármennyit.Mivel az újra spawnolás itt:if(DM == 1){ ResetPlayerWeapons(playerid); GivePlayerWeapon(playerid,31,1000); SetPlayerArmour(playerid, 100); SetPlayerHealth(playerid, 100); SetPlayerPos(playerid,-2072.9172,-107.3010,35.3274);}Az OnPlayerSpawn alatt, így néz ki, több DM zóna esetén lehet õket számozni ezzel a megoldással..pl.:if(strcmp(cmdtext, \"/dm2) == 0){DM=2;SetPlayerPos(playerid,x,y,z);GivePlayerWeapon(playerid,24,1000);SetPlayerHealth(playerid,100);SetPlayerArmour(playerid, 100);return 1;}Akkor így vissza tudod újra spawnoláskor kérni ennek a cuccát is:public OnPlayerSpawn(playerid){if(DM == 1){ ResetPlayerWeapons(playerid); GivePlayerWeapon(playerid,31,1000); SetPlayerArmour(playerid, 100); SetPlayerHealth(playerid, 100); SetPlayerPos(playerid,-2072.9172,-107.3010,35.3274);}if(DM == 2){ SetPlayerPos(playerid,x,y,z);GivePlayerWeapon(playerid,24,1000);SetPlayerHealth(playerid,100);SetPlayerArmour(playerid, 100);}return 1;}*/
#include a_sampnew DM[MAX_PLAYERS];public OnPlayerSpawn(playerid){if(DM[playerid] == 1){ ResetPlayerWeapons(playerid); GivePlayerWeapon(playerid,31,1000); SetPlayerArmour(playerid, 100); SetPlayerHealth(playerid, 100); SetPlayerPos(playerid,-2072.9172,-107.3010,35.3274);}return 1;}public OnPlayerConnect(playerid){DM[playerid]=0;return 1;}public OnPlayerCommandText(playerid, cmdtext[]){if(strcmp(cmdtext, \"/m4dm\") == 0 ) { ResetPlayerWeapons(playerid); GivePlayerWeapon(playerid,31,1000); SetPlayerArmour(playerid, 100); SetPlayerHealth(playerid, 100); SetPlayerPos(playerid,-2072.9172,-107.3010,35.3274); SendClientMessage(playerid, 0xFFFF00AA,\"Csatlakoztál a M4DM-hez! Kilépéshez: /exitdm\"); DM[playerid] = 1; new pName[30], string[128]; GetPlayerName(playerid, pName, 30); format(string, 256, \"{0FFDD3}%s {8F698F}csatlakozott az {FF0606}M4DM-be! {0000FF}(/m4dm)!\", pName); SendClientMessageToAll(0xFFFFFFAA,string); return 1;}if(strcmp(cmdtext, \"/sajt\") == 0){ SendClientMessage(playerid, 0xFFFF00AA,\"Ettél egy sajtot!\"); SetPlayerHealth(playerid, 100); return 1;}//Ha folytatólagosan írod a parancsokat, akkor az illetõ ha DM zónában van, akkor nem fogja engedni//Hogy parancsot használjon.if(strcmp(cmdtext,\"/exitdm\") == 0){ if(DM[playerid] >= 1){ SetPlayerPos(playerid, 0,1,2);//Írd át arra a kordinátát, ahova akarod hogy kilépéskor kidobja. SendClientMessage(playerid,0xFFFFFFAA,\"Kiléptél a DM zónából\");}else{ SendClientMessage(playerid,0xFFFFFFAA,\"Nem vagy DM zónában!\");}return 1;} if(DM[playerid] >=1) return SendClientMessage(playerid,0xFFFF00AA,\"DM zónában vagy! Elõször /exitdm\");return 0;}