if(strcmp(cmdtext, "/pmarihuana", true) == 0)
{
if(PlantaObjeto[playerid][Plant] != 0) return SendClientMessage(playerid, ROJO_OSCURO, " No puede plantar mas plantas por ahora!");
if(JugadorInfo[playerid][jSemillasMarihuana] <= 0) return SendClientMessage(playerid, ROJO_OSCURO, " Nesesitas Semillas!");
if(!IsPlayerInAgujero(playerid)) return SendClientMessage(playerid, ROJO_OSCURO, " Nesesita hacer un agujero!");
if(IsPlayerInPlanta(playerid))
{
SendClientMessage(playerid, ROJO_OSCURO, "* Aquн hay una planta.");
}
else
{
SendClientMessage(playerid, VERDE, "* Plantaste una planta de marihuana.");
format(string, sizeof(string), "* %s se agacha y planta unas semillas de marihuana en la tierra.", NombreJugador(playerid));
MandarMensajeCercano(30.0, playerid, string, ROSA,ROSA,ROSA,ROSA,ROSA);
PlantaObjetoDroga(playerid);
}
return 1;
}
public OnPlayerCommandText(playerid, cmdtext[])
{
new idcoche = GetPlayerVehicleID(playerid);
new sendername[MAX_PLAYER_NAME];
new giveplayer[MAX_PLAYER_NAME];
new playername[MAX_PLAYER_NAME];
new cmd[256];
new tmp[256];
new giveplayerid, moneys, idx;
new animationplayed;
new string[256];
cmd = strtok(cmdtext, idx);
new playermoney;
new nick[24];
GetPlayerName(playerid,nick,24);
forward PlantaObjetoDroga(playerid);
forward Creser(playerid);
forward Descosechar(playerid);
forward CrearAgujero(playerid);
public PlantaObjetoDroga(playerid)
{
ApplyAnimation(playerid, "BOMBER", "BOM_Plant", 4.0, 0, 1, 1, 0,0);
SetTimerEx("PonerPlantaDroga",1500,0,"d",playerid);
return 1;
}
forward PonerPlantaDroga(playerid);
public PonerPlantaDroga(playerid)
{
new mensaje[150];
GetPlayerPos(playerid, PlantaObjeto[playerid][PosX], PlantaObjeto[playerid][PosY], PlantaObjeto[playerid][PosZ]);
PlantaObjeto[playerid][Plant] = CreateDynamicObject(DROGA_OBJETO, PlantaObjeto[playerid][PosX], PlantaObjeto[playerid][PosY], PlantaObjeto[playerid][PosZ]-1.8, 0, 0, 0);
format(mensaje, sizeof(mensaje), "[Plantaciуn: En proceso]");
PlantaObjeto[playerid][Progreso] = CreateDynamic3DTextLabel(mensaje, VERDE, PlantaObjeto[playerid][PosX], PlantaObjeto[playerid][PosY], PlantaObjeto[playerid][PosZ], 5, INVALID_PLAYER_ID, INVALID_VEHICLE_ID, 0, 0, 0);
Agujero[playerid][AgujeroX] = 0;
Agujero[playerid][AgujeroY] = 0;
Agujero[playerid][AgujeroZ] = 0;
JugadorInfo[playerid][jSemillasMarihuana]--;
SetTimerEx("Creser",900000,0,"d",playerid);
return 1;
}
forward PonerCosecho(playerid, cosecho);
public PonerCosecho(playerid, cosecho)
{
new mensaje[150];
GetPlayerPos(playerid, CosechoObjeto[cosecho][CPosX], CosechoObjeto[cosecho][CPosY], CosechoObjeto[cosecho][CPosZ]);
if(CosechoObjeto[cosecho][Tipo] == 1) { CosechoObjeto[cosecho][Objeto] = CreateDynamicObject(14469, CosechoObjeto[cosecho][CPosX], CosechoObjeto[cosecho][CPosY], CosechoObjeto[cosecho][CPosZ]-1.8, 0, 0, 0); }
else if(CosechoObjeto[cosecho][Tipo] == 2) { CosechoObjeto[cosecho][Objeto] = CreateDynamicObject(638, CosechoObjeto[cosecho][CPosX], CosechoObjeto[cosecho][CPosY], CosechoObjeto[cosecho][CPosZ]-1.8, 0, 0, 0); }
else if(CosechoObjeto[cosecho][Tipo] == 3) { CosechoObjeto[cosecho][Objeto] = CreateDynamicObject(2253, CosechoObjeto[cosecho][CPosX], CosechoObjeto[cosecho][CPosY], CosechoObjeto[cosecho][CPosZ]-1.8, 0, 0, 0); }
else if(CosechoObjeto[cosecho][Tipo] == 4) { CosechoObjeto[cosecho][Objeto] = CreateDynamicObject(859, CosechoObjeto[cosecho][CPosX], CosechoObjeto[cosecho][CPosY], CosechoObjeto[cosecho][CPosZ]-1.8, 0, 0, 0); }
else if(CosechoObjeto[cosecho][Tipo] == 5) { CosechoObjeto[cosecho][Objeto] = CreateDynamicObject(3409, CosechoObjeto[cosecho][CPosX], CosechoObjeto[cosecho][CPosY], CosechoObjeto[cosecho][CPosZ]-1.8, 0, 0, 0); }
else if(CosechoObjeto[cosecho][Tipo] == 6) { CosechoObjeto[cosecho][Objeto] = CreateDynamicObject(2241, CosechoObjeto[cosecho][CPosX], CosechoObjeto[cosecho][CPosY], CosechoObjeto[cosecho][CPosZ]-1.8, 0, 0, 0); }
else if(CosechoObjeto[cosecho][Tipo] == 7) { CosechoObjeto[cosecho][Objeto] = CreateDynamicObject(949, CosechoObjeto[cosecho][CPosX], CosechoObjeto[cosecho][CPosY], CosechoObjeto[cosecho][CPosZ]-1.8, 0, 0, 0); }
else if(CosechoObjeto[cosecho][Tipo] == 8) { CosechoObjeto[cosecho][Objeto] = CreateDynamicObject(19473, CosechoObjeto[cosecho][CPosX], CosechoObjeto[cosecho][CPosY], CosechoObjeto[cosecho][CPosZ]-1.8, 0, 0, 0); }
format(mensaje, sizeof(mensaje), "[Cosecho: En proceso]");
CosechoObjeto[cosecho][CProgreso] = CreateDynamic3DTextLabel(mensaje, VERDE, CosechoObjeto[cosecho][CPosX], CosechoObjeto[cosecho][CPosY], CosechoObjeto[cosecho][CPosZ], 5, INVALID_PLAYER_ID, INVALID_VEHICLE_ID, 0, 0, 0);
Agujero[playerid][AgujeroX] = 0;
Agujero[playerid][AgujeroY] = 0;
Agujero[playerid][AgujeroZ] = 0;
if(CosechoObjeto[cosecho][Tipo] == 1) { JugadorInfo[playerid][jSemillasCerezas]--; }
else if(CosechoObjeto[cosecho][Tipo] == 2) { JugadorInfo[playerid][jSemillasZanahorias]--; }
else if(CosechoObjeto[cosecho][Tipo] == 3) { JugadorInfo[playerid][jSemillasFresas]--; }
else if(CosechoObjeto[cosecho][Tipo] == 4) { JugadorInfo[playerid][jSemillasCebollas]--; }
else if(CosechoObjeto[cosecho][Tipo] == 5) { JugadorInfo[playerid][jSemillasPerejil]--; }
else if(CosechoObjeto[cosecho][Tipo] == 6) { JugadorInfo[playerid][jSemillasCiruelas]--; }
else if(CosechoObjeto[cosecho][Tipo] == 7) { JugadorInfo[playerid][jSemillasLimones]--; }
else if(CosechoObjeto[cosecho][Tipo] == 8) { JugadorInfo[playerid][jSemillasMarihuana]--; }
CosechoObjeto[cosecho][NecesitaRiego] = 1;
SetTimerEx("NecesitaRiego2",300000,0,"d",playerid);
return 1;
}
public Creser(playerid)
{
new mensaje[100];
format(mensaje, sizeof(mensaje), "[Plantaciуn: Terminada]");
UpdateDynamic3DTextLabelText(PlantaObjeto[playerid][Progreso], VERDE, mensaje);
PlantaObjeto[playerid][Size] = 1;
return 1;
}
forward Regando(playerid, cosecho);
public Regando(playerid, cosecho)
{
new mensaje[256];
CosechoObjeto[cosecho][Riegos]++;
format(mensaje, sizeof(mensaje), "[Cosecho: En proceso]");
UpdateDynamic3DTextLabelText(CosechoObjeto[cosecho][CProgreso], VERDE, mensaje);
SetTimerEx("NecesitaRiego2", 600000, 1, "d", cosecho);
SendClientMessage(playerid, VERDE, "Has acabado de regar");
TogglePlayerControllable(playerid, true);
return 1;
}
forward RecogiendoCosecho(playerid, cosecho);
public RecogiendoCosecho(playerid, cosecho)
{
new mensaje[256];
new conseguido[256];
if(CosechoObjeto[cosecho][Tipo] == 1) { JugadorInfo[playerid][jSemillasCerezas] += 25; conseguido = "cerezas"; }
else if(CosechoObjeto[cosecho][Tipo] == 2) { JugadorInfo[playerid][jSemillasZanahorias] += 25; conseguido = "zanahorias"; }
else if(CosechoObjeto[cosecho][Tipo] == 3) { JugadorInfo[playerid][jSemillasFresas] += 25; conseguido = "fresas"; }
else if(CosechoObjeto[cosecho][Tipo] == 4) { JugadorInfo[playerid][jSemillasCebollas] += 25; conseguido = "cebollas"; }
else if(CosechoObjeto[cosecho][Tipo] == 5) { JugadorInfo[playerid][jSemillasPerejil] += 25; conseguido = "perejil"; }
else if(CosechoObjeto[cosecho][Tipo] == 6) { JugadorInfo[playerid][jSemillasCiruelas] += 25; conseguido = "ciruelas"; }
else if(CosechoObjeto[cosecho][Tipo] == 7) { JugadorInfo[playerid][jSemillasLimones] += 25; conseguido = "limones"; }
else if(CosechoObjeto[cosecho][Tipo] == 7) { JugadorInfo[playerid][jSemillasMarihuana] += 25; conseguido = "marihuana"; }
format(mensaje, sizeof(mensaje), "Has recogido la planta, y has conseguido: 25 %s", conseguido);
DestroyDynamicObject(CosechoObjeto[cosecho][Objeto]);
DestroyDynamic3DTextLabel(CosechoObjeto[cosecho][CProgreso]);
SendClientMessage(playerid, VERDE, mensaje);
TogglePlayerControllable(playerid, true);
CosechoObjeto[cosecho][Tipo] = 0;
CosechoObjeto[cosecho][CPosX] = 0;
CosechoObjeto[cosecho][CPosY] = 0;
CosechoObjeto[cosecho][CPosZ] = 0;
CosechoObjeto[cosecho][Crecida] = 0;
CosechoObjeto[cosecho][Riegos] = 0;
CosechoObjeto[cosecho][NecesitaRiego] = 0;
return 1;
}
forward NecesitaRiego2(cosecho);
public NecesitaRiego2(cosecho)
{
new mensaje[256];
if(CosechoObjeto[cosecho][NecesitaRiego] == 1)
{
format(mensaje, sizeof(mensaje), "[Cosecho: Terminada (Se ha secado)]");
UpdateDynamic3DTextLabelText(CosechoObjeto[cosecho][CProgreso], VERDE, mensaje);
CosechoObjeto[cosecho][Crecida] = 5;
}
return 1;
}
public Descosechar(playerid)
{
if(IsPlayerInRangeOfPoint(playerid, 2.0, PlantaObjeto[playerid][PosX], PlantaObjeto[playerid][PosY], PlantaObjeto[playerid][PosZ]))
{
DestroyDynamicObject(PlantaObjeto[playerid][Plant]);
DestroyDynamic3DTextLabel(PlantaObjeto[playerid][Progreso]);
PlantaObjeto[playerid][Plant] = 0;
PlantaObjeto[playerid][PosX] = 0;
PlantaObjeto[playerid][PosY] = 0;
PlantaObjeto[playerid][PosZ] = 0;
JugadorInfo[playerid][jMarihuana] += 20;
}
}
public CrearAgujero(playerid)
{
GetPlayerPos(playerid, Agujero[playerid][AgujeroX], Agujero[playerid][AgujeroY], Agujero[playerid][AgujeroZ]);
}
stock IsPlayerInPlanta(playerid)
{
for(new i; i < MAX_PLAYERS; i++)
{
if(IsPlayerInRangeOfPoint(playerid, 2.0, PlantaObjeto[i][PosX], PlantaObjeto[i][PosY], PlantaObjeto[i][PosZ])) return 1;
}
return 0;
}
stock EstaEnCosecho(playerid)
{
for(new i; i < MAX_COSECHOS; i++)
{
if(IsPlayerInRangeOfPoint(playerid, 2.0, CosechoObjeto[i][CPosX], CosechoObjeto[i][CPosY], CosechoObjeto[i][CPosZ])) return 1;
}
return 0;
}
stock IsPlayerInAgujero(playerid)
{
for(new i; i < MAX_PLAYERS; i++)
{
if(IsPlayerInRangeOfPoint(playerid, 2.0, Agujero[i][AgujeroX], Agujero[i][AgujeroY], Agujero[i][AgujeroZ]))return 1;
}
return 0;
}
enum PlantaObjetoInfo {
Plant,
Float:PosX,
Float:PosY,
Float:PosZ,
Text3D:Progreso,
Size
};
new PlantaObjeto[MAX_PLAYERS][PlantaObjetoInfo];
enum CosechoInfo {
Tipo,
Float:CPosX,
Float:CPosY,
Float:CPosZ,
Text3D:CProgreso,
Crecida,
Riegos,
Objeto,
NecesitaRiego
};
new CosechoObjeto[MAX_PLAYERS][CosechoInfo];
enum DatosAgujero {
Float:AgujeroX,
Float:AgujeroY,
Float:AgujeroZ
};
new Agujero[MAX_COSECHOS][DatosAgujero];
if(strcmp(cmdtext, "/pmarihuana", true) == 0)
{
if(PlantaObjeto[playerid][Plant] != 0) return SendClientMessage(playerid, ROJO_OSCURO, " No puede plantar mas plantas por ahora!");
if(JugadorInfo[playerid][jSemillasMarihuana] <= 0) return SendClientMessage(playerid, ROJO_OSCURO, " No tienes semillas, cуmpralas en el mercado negro!");
if(!IsPlayerInAgujero(playerid)) return SendClientMessage(playerid, ROJO_OSCURO, " Necesita hacer un /agujero!");
if(IsPlayerInPlanta(playerid))
{
SendClientMessage(playerid, ROJO_OSCURO, "* Aquн hay una planta.");
}
else
{
SendClientMessage(playerid, VERDE, "* Plantaste una planta de marihuana.");
format(string, sizeof(string), "* %s se agacha y planta unas semillas de marihuana en la tierra.", NombreJugador(playerid));
MandarMensajeCercano(30.0, playerid, string, ROSA,ROSA,ROSA,ROSA,ROSA);
PlantaObjetoDroga(playerid);
}
return 1;
}
if(strcmp(cmdtext, "/agujero", true) == 0)
{
if(GetPlayerWeapon(playerid) != 6) return SendClientMessage(playerid, ROJO_OSCURO, "* No tiene una pala.");
else if(IsPlayerInAgujero(playerid)) return SendClientMessage(playerid, ROJO_OSCURO, "* Aquн ya hay un agujero.");
else if(IsPlayerInPlanta(playerid)) return SendClientMessage(playerid, ROJO_OSCURO, "* Aquн ya hay una planta.");
else
{
CrearAgujero(playerid);
format(string, sizeof(string), "* %s toma firmemente la pala, acto seguido apoya la misma en la tierra y comienza a cavar un agujero.", NombreJugador(playerid));
MandarMensajeCercano(30.0, playerid, string, ROSA,ROSA,ROSA,ROSA,ROSA);
SendClientMessage(playerid, VERDE, "* Terminaste de cavar el agujero.");
return 1;
}
return 1;
}
if(strcmp(cmdtext, "/rmarihuana", true) == 0)
{
if(!IsPlayerInPlanta(playerid)) return SendClientMessage(playerid, ROJO_OSCURO, "* Aquн no hay ninguna planta.");
if(PlantaObjeto[playerid][Size] == 1)
{
Descosechar(playerid);
ApplyAnimation(playerid, "BOMBER", "BOM_Plant", 4.0, 0, 0, 0, 0, 0);
format(string, sizeof(string), "* %s arranca la planta de marihuana con una tijera, y guarda las hojas en una bolsa.", NombreJugador(playerid));
MandarMensajeCercano(30.0, playerid, string, ROSA,ROSA,ROSA,ROSA,ROSA);
return 1;
}
else
{
SendClientMessage(playerid, ROJO_OSCURO, "* La planta aъn no creciу.");
return 1;
}
}
else if(strcmp(x_nr,"marihuana",true) == 0)
{
if(JugadorInfo[playerid][jDinero] >= 200)
{
JugadorInfo[playerid][jDinero] -= 200;
JugadorInfo[playerid][jSemillasMarihuana] += 1;
SendClientMessage(playerid, BLANCO, " Semilla de marihuana comprada ((/ayuda plantar))!");
}
else
{
SendClientMessage(playerid, ROJO_OSCURO, " No tienes el dinero!");
return 1;
}
}
Le dije que esta retornando 1 en el callback de onplayercommandtext ¬¬
|
if(JugadorInfo[playerid][jSemillasMarihuana] <= 0) return SendClientMessage(playerid, ROJO_OSCURO, " Nesesitas Semillas!");
se debe retornar 0 en el callback de onplayerconnect.. Tal vez estas confundido se debe retornar 1 al terminar el comando..
|