-
Hali!
a szerveremre szeretnék egy HALÁLLISTA szkriptet
ez annyit jelent,hogy egy bizonyos ponton,pl. egy szobában beírná /kill ID ok és a beírt IDhez tartozó játékost megölné és kiírná mindenkinek, hogy a játékos meghalt és a beírt okot.
köszi!
-
CMD:kill(playerid, params[])
{
new string[64];
new aldozat;
new ok;
if(sscanf(params, \"us\", aldozat, ok)) return SendClientMessage(playerid,0xFF0000AA, \"Használat: /kill <ID/Játékosnév> <Oka>\");
if(aldozat == INVALID_PLAYER_ID) return SendClientMessage(playerid, 0xFF0000AA, \"Rossz ID/Játékosnév\");
SetPlayerHealth(aldozat, 0);
GetPlayerName(aldozat, string, sizeof(string));
format(string, sizeof(string),\" %s nevû játékos meghalt! Oka: %s\",aldozat , ok, string);
SendClientMessageToAll( 0xFF0000AA, string);
return 1;
}
Nem teszteltem!
-
a végétõl a harmadik sorban a pontosvesszõ hiányzik a végén! ezt kijavítottam...
kell hozzá include? mert bárhogyan írom be a modba mindenképpen talál egy hibát.
a CMD-t nem lehet átírni másra? :P nekem mindenem így van:
if (strcmp(\"/munka\", cmdtext, true, 10) == 0)
-
Ez zcmd parancsfeldolgozót igényel. Használd ezt. Gyorsabb, egyszerûbb, jobb.
-
pls írd már be komplett FS fájba ::| túl amatõr vagyok az ilyenhez...
-
Jaj, bocsi, figyelmetlen voltam
Tessék ittvan FS formájában:
#include <a_samp>
#include <zcmd>
#include <sscanf2>
CMD:kill(playerid, params[])
{
new string[64];
new aldozat;
new ok;
if(sscanf(params, \"us\", aldozat, ok)) return SendClientMessage(playerid,0xFF0000AA, \"Használat: /kill <ID/Játékosnév> <Oka>\");
if(aldozat == INVALID_PLAYER_ID) return SendClientMessage(playerid, 0xFF0000AA, \"Rossz ID/Játékosnév\");
SetPlayerHealth(aldozat, 0);
GetPlayerName(aldozat, string, sizeof(string));
format(string, sizeof(string),\" %s nevû játékos meghalt! Oka: %s\",aldozat , ok, string);
SendClientMessageToAll( 0xFF0000AA, string);
return 1;
}
Csak az includeokat rakod ki az elejére, és már belerakhatod egy új fs-be.
-
lehet nálam a hiba, de beírom /kill ID és engem öl meg... és nem, nem vagyok olyan hülye,hogy a saját ID-met írjam be xD
-
#include <a_samp>
#include <zcmd>
#include <sscanf2>
CMD:kill(playerid, params[])
{
new string[64];
new aldozat;
new ok;
if(sscanf(params, \"rs\", aldozat, ok)) return SendClientMessage(playerid,0xFF0000AA, \"Használat: /kill <ID/Játékosnév> <Oka>\");
if(aldozat == INVALID_PLAYER_ID) return SendClientMessage(playerid, 0xFF0000AA, \"Rossz ID/Játékosnév\");
SetPlayerHealth(aldozat, 0);
GetPlayerName(aldozat, string, sizeof(string));
format(string, sizeof(string),\" %s nevû játékos meghalt! Oka: %s\",aldozat , ok, string);
SendClientMessageToAll( 0xFF0000AA, string);
return 1;
}
-
Tessék:
#include <a_samp>
#include <zcmd>
#include <sscanf2>
#define isnull(%1) \\
((!(%1[0])) || (((%1[0]) == \'\\1\') && (!(%1[1]))))
CMD:kill(playerid, params[])
{
new string[64], aldozat, ok[20];
if(sscanf(params, \"ds[20]\", aldozat, ok)) return SendClientMessage(playerid,0xFF0000AA, \"Használat: /kill <ID> <Oka>\");
if(!IsPlayerConnected(aldozat)|| (aldozat < 0 || aldozat > MAX_PLAYERS)) return SendClientMessage(playerid, 0xFF0000AA, \"Rossz ID, vagy a játékos nincs csatlakozva.\");
if(isnull(ok))return SendClientMessage(playerid,-1,\"Nem îrtál indokot\");
SetPlayerHealth(aldozat, 0);
GetPlayerName(aldozat, string, sizeof(string));
format(string, sizeof(string),\" %s nevû játékos meghalt! Oka: %s\",aldozat , ok, string);
SendClientMessageToAll( 0xFF0000AA, string);
return 1;
}