CMD:puerta(playerid, params[]) { if(strcmp("id", params, true) == 0) { SendClientMessage(playerid, -1, "ID"); } if(strcmp("interior", params, true) == 0) { SendClientMessage(playerid, -1, "Interior"); } return 1; }
Код:
CMD:puerta(playerid, params[]) { if(strcmp("id", params, true) == 0) { SendClientMessage(playerid, -1, "ID"); } if(strcmp("interior", params, true) == 0) { SendClientMessage(playerid, -1, "Interior"); } return 1; } |
CMD:puerta(playerid, params[])
{
new id, interior;
if(!sscanf(params, "ri", id, interior))
{
//Funciуn
}
else SendClientMessage(playerid, -1 "Uso: /puerta [ID] [Interior]");
return 1;
}
CMD:dar(playerid, params[]) { if(pInfo[playerid][jFaccion] == Zombie) return SCM(playerid, -1, "Debes ser un humano para usar este comando."); new texto[24]; if(sscanf(params, "rs[24]i", params[0], texto, params[1])) { SCM(playerid, -1, "Modo de uso: /dar [ID] [Item] [Cantidad]"); SCM(playerid, -1, "Utilidades: ejemplo1, ejemplo2, ejemplo3, etc..."); return true; } if(params[0] == playerid) return SCM(playerid, -1, "No puedes darte utilidades a ti mismo"); if(!IsPlayerConnected(params[0])) return SCM(playerid, -1, "Al jugador a quiйn quieres darle el item no estб conectado."); new Float:x, Float:y, Float:z; GetPlayerPos(params[1], x, y, z); GetPlayerPos(playerid, x, y, z); if(!IsPlayerInRangeOfPoint(params[0], 7.0, x, y, z)) return SCM(playerid, -1, "Al jugador a quiйn quieres darle el item no estб cerca de tн."); if(params[1] <= 0) return SCM(playerid, -1, "Cantidad invбlida, nъmeros mayor a 1..."); if(strcmp(texto,"ejemplo1",true) == 0) { // cуdigo. } else if(strcmp(texto,"ejemplo2",true) == 0) { // cуdigo. } else if(strcmp(texto,"ejemplo3",true) == 0) { // cуdigo. } else SCM(playerid, -1, "Item invбlido.") return true; }
#include a_samp
#include sscanf
#include zcmd
enum _Interiores
{
Float:intPos[3],
intErior
}
new Interiores[][_Interiores] =
{
{{0.0, 0.0, 0.0}, 15},
{{0.0, 0.0, 0.0}, 3},
{{0.0, 0.0, 0.0}, 16}
};
COMMAND:puerta(playerid, args[])
{
new id, opcion[24];
if(sscanf(args, "ds[24]", id, opcion))
return SendClientMessage(playerid, -1, "Use /interior [ID][Opciуn]");
if(!(0 <= id <= (sizeof(Interiores)-1)))
return SendClientMessage(playerid, -1, "IDs: 0 al 2");
if(strfind(opcion, "interior", true) != -1)
{
}
else if(strfind(opcion, "exterior", true) != -1)
{
}
else
{
SendClientMessage(playerid, -1, "Opciones: interior, exterior");
}
return 1;
}
CMD:puerta(playerid, params[]) { new id, opcion[24]; if(sscanf(params, "ds[24]", id, opcion)) return SendClientMessage(playerid, COLOR_BLANCO, "Uso correcto, /puerta id opciуn"); if(id < 0 || id >= MAX_DOORS) return SendClientMessage(playerid, COLOR_ROJO, "ERROR: {C7C7C7} Especifica un ID valido de una puerta."); if(strcmp(opcion, "Interior", true) == 0) { GetPlayerPos(playerid, DoorInfo[id][dIntX], DoorInfo[id][dIntY], DoorInfo[id][dIntZ]); GetPlayerFacingAngle(playerid, DoorInfo[id][dIntA]); DoorInfo[id][dInterior] = GetPlayerInterior(playerid); DoorInfo[id][dInteriorVW] = GetPlayerVirtualWorld(playerid); GuardarEntradas(id); SendClientMessage(playerid, COLOR_AMARILLO, "Modificaste el interior de la puerta."); } else if(strcmp(opcion, "Exterior", true) == 0) { GetPlayerPos(playerid, DoorInfo[id][dPosX], DoorInfo[id][dPosY],DoorInfo[id][dPosZ]); DoorInfo[id][dVirtualWorld] = GetPlayerVirtualWorld(playerid); ActualizarEntrada(id); GuardarEntradas(id); SendClientMessage(playerid, COLOR_AMARILLO, "Modificaste el exterior de la puerta."); } else if(strcmp(opcion, "Nombre", true) == 0) { new nombre[36]; if(sscanf(params, "s[36]", nombre)) return SendClientMessage(playerid, COLOR_BLANCO, "Uso correcto, /puerta id nombre"); format(DoorInfo[id][dNombre], 36, nombre); ActualizarEntrada(id); GuardarEntradas(id); SendClientMessage(playerid, COLOR_AMARILLO, "Modificaste el nombre de la puerta."); } else if(strcmp(opcion, "Seguro", true) == 0) { if(DoorInfo[id][dPuerta]) { DoorInfo[id][dPuerta] = true; ActualizarEntrada(id); GuardarEntradas(id); SendClientMessage(playerid, COLOR_AMARILLO, "ЎAbriste la puerta!"); } else { DoorInfo[id][dPuerta] = false; ActualizarEntrada(id); GuardarEntradas(id); SendClientMessage(playerid, COLOR_AMARILLO, "ЎCerraste la puerta!"); } } return 1; }
// ** INCLUDES
#include <a_samp>
#include <sscanf>
#include <zcmd>
// ** DEFINES
// *** FUNCTIONS
#define isnull(%1) ((!(%1[0])) || (((%1[0]) == '\1') && (!(%1[1]))))
#define strcpy(%0,%1,%2) strcat((%0[0] = '\0', %0), %1, %2)
// ** MAIN
main()
{
print("Loaded \"one_command_multiple_syntaxes.amx\".");
}
// ** CALLBACKS
public OnGameModeInit()
{
return 1;
}
public OnGameModeExit()
{
return 1;
}
// ** COMMANDS
CMD:cmd(playerid, params[])
{
new space_pos = strfind(params, " ", true), option[128];
if(space_pos != -1)
{
strmid(option, params, 0, space_pos);
}
else
{
strcpy(option, params, 128);
}
if(isnull(option))
{
SendClientMessage(playerid, -1, "Usage: /cmd (1st/2nd/3rd) [arguments]");
}
else if(!strcmp(option, "1st", true))
{
new integer_1;
if(sscanf(params, "{s[128]}i", integer_1))
{
SendClientMessage(playerid, -1, "Usage: /cmd 1st (integer)");
}
else
{
new string[144];
format(string, sizeof(string), "Integer 1: %d", integer_1);
SendClientMessage(playerid, -1, string);
}
}
else if(!strcmp(option, "2nd", true))
{
new integer_1, integer_2;
if(sscanf(params, "{s[128]}ii", integer_1, integer_2))
{
SendClientMessage(playerid, -1, "Usage: /cmd 2nd (integer) (integer)");
}
else
{
new string[144];
format(string, sizeof(string), "Integer 1: %d, integer 2: %d", integer_1, integer_2);
SendClientMessage(playerid, -1, string);
}
}
else if(!strcmp(option, "3rd", true))
{
new integer_1, integer_2, integer_3;
if(sscanf(params, "{s[128]}iii", integer_1, integer_2, integer_3))
{
SendClientMessage(playerid, -1, "Usage: /cmd 2nd (integer) (integer) (integer)");
}
else
{
new string[144];
format(string, sizeof(string), "Integer 1: %d, Integer 2: %d, Integer 3: %d", integer_1, integer_2, integer_3);
SendClientMessage(playerid, -1, string);
}
}
else
{
SendClientMessage(playerid, -1, "Usage: /cmd (1st/2nd/3rd) [arguments]");
}
return 1;
}
if(id < 0 || id >= MAX_DOORS) return SendClientMessage(playerid, COLOR_ROJO, "ERROR: {C7C7C7}Especifica un ID valido de una entrada.");