Hi all van nekem ez a dm parancs úgy kellene nekem ez Scritben hogy ha belép a Dm-ben akkor a chat-ben kiírja hogy (Player neve) Belépett a sawn dm-be belépés (/sawn dm)
és kellene bele egy /exit dm parancs és amikor kilép akkor az eredeti fegyverét kapja meg és ahogy volt
PL: volt neki egy uzi-ja és egy sawn-off ja és 10 hp-ja akkor azt töltse vissza neki gondolom értitek és kapjon egy üzenetet hogy (Poziciód vissza töltve)
A nevedet feltüntetem.
És ha ezt meglehet : rakja át egy másik virtuális világba
if(strcmp(cmdtext, \"/sawn dm\", true) == 0)
{
SetPlayerInterior(playerid, 2);
SetPlayerVirtualWorld(playerid, 0);
SetPlayerColor(playerid,0xFFFFFFAA);
SetPlayerPos(playerid,2567.52,-1294.59,1063.25);
ResetPlayerWeapons(playerid);
SetPlayerSkillLevel(playerid,WEAPONSKILL_PISTOL,500);
SetPlayerSkillLevel(playerid,WEAPONSKILL_MICRO_UZI,500);
SetPlayerSkillLevel(playerid,WEAPONSKILL_SAWNOFF_SHOTGUN,500);
SetPlayerSkin(playerid,269);
SetPlayerArmour(playerid,0.00);
{GivePlayerWeapon(playerid, 27, 300);}
SendClientMessage(playerid, 0x33CCFFAA, \"Üdvözöllek a Sawno-Off & Tec9-Dm Ben\");
return 1;
}
Másik virtuális világba fölösleges berakni, mert akkor nehéz megoldani, hogy DM-bõl ne tudjon portot stb..-ot használni.
Én a bool változós megoldást szeretem.
Ezt a mod tetejére:
new bool:DM[MAX_PLAYERS];
Ezzel egy bbol változót hozol létre.
Majd a parancsod:
if(strcmp(cmdtext, \"/exitdm\", true) == 0)
{
if(DM[playerid] == 1) return SendClientMessage(playerid,[sZÍN],\"Te már DM-ben vagy! /exitdm\"); // leellenõrizzük, hogy DM-ben van -e. Ha 1(true) akkor aktív, ha 0(false) akkor nem.
SetPlayerInterior(playerid, 2);
DM[playerid]=false; // Engedélyezzük a DM változónkat.
SetPlayerColor(playerid,0xFFFFFFAA);
SetPlayerPos(playerid,2567.52,-1294.59,1063.25);
ResetPlayerWeapons(playerid);
SetPlayerSkillLevel(playerid,WEAPONSKILL_PISTOL,500);
SetPlayerSkillLevel(playerid,WEAPONSKILL_MICRO_UZI,500);
SetPlayerSkillLevel(playerid,WEAPONSKILL_SAWNOFF_SHOTGUN,500);
SetPlayerSkin(playerid,269);
SetPlayerArmour(playerid,0.00);
GivePlayerWeapon(playerid, 27, 300);
SendClientMessage(playerid, 0x33CCFFAA, \"Üdvözöllek a Sawno-Off & Tec9-Dm Ben\");
return 1;
}
Az exitdm parancs is egyszerû, egyszerûen csak ki kell portolnunk onnan, és deaktiválni a DM változónkat.
if(strcmp(cmdtext, \"/sawn dm\", true) == 0)
{
SetPlayerInterior(playerid, 2);
SetPlayerVirtualWorld(playerid, 0);
SetPlayerColor(playerid,0xFFFFFFAA);
SetPlayerPos(playerid,2567.52,-1294.59,1063.25);
ResetPlayerWeapons(playerid);
SetPlayerSkillLevel(playerid,WEAPONSKILL_PISTOL,500);
SetPlayerSkillLevel(playerid,WEAPONSKILL_MICRO_UZI,500);
SetPlayerSkillLevel(playerid,WEAPONSKILL_SAWNOFF_SHOTGUN,500);
SetPlayerSkin(playerid,269);
SetPlayerArmour(playerid,0.00);
{GivePlayerWeapon(playerid, 27, 300);}
SendClientMessage(playerid, 0x33CCFFAA, \"Üdvözöllek a Sawno-Off & Tec9-Dm Ben\");
return 1;
}
Másik virtuális világba fölösleges berakni, mert akkor nehéz megoldani, hogy DM-bõl ne tudjon portot stb..-ot használni.
Én a bool változós megoldást szeretem.
Ezt a mod tetejére:
new bool:DM[MAX_PLAYERS];
Ezzel egy bbol változót hozol létre.
Majd a parancsod:
if(strcmp(cmdtext, \"/exitdm\", true) == 0)
{
if(DM[playerid] == 0) return SendClientMessage(playerid,[sZÍN],\"Te nem vagy DM-ben! Honnan akarsz kilépni?!\"); // leellenõrizzük, hogy DM-ben van -e. Ha 1(true) akkor aktív, ha 0(false) akkor nem.
SetPlayerInterior(playerid, 0); // vissza rakjuk az interiort.
DM[playerid]=false; // Letiltjuk a DM változónkat.
ResetPlayerWeapons(playerid); // ugye fegyvereit elvesszük.
SendClientMessage(playerid, 0x33CCFFAA, \"Kiléptél a DM-bõl\"); // egyértelmû.
return 1;
}
Ha le akarod ellenõrizni, hogy DM-ben van -e, és ha igen ne használhassa azt a parancsot, akkor ezt rakd a parancsba:
if(DM[playerid] == true) return SendClientMessage(playerid,SZIN,\"Ha true - Akkor bennevan ha false - Akkor nicns\");
Remélem érthetõ volt. Ha mégsem, csak nyugottan szólj.