05.04.2012, 11:45
Comando
Resto do cmd
Problema:
Eu vou ig planto e espero o tempo estimando, passado esse tempo tento fazer /harvestweed e sу me aparece "x"minutes remaining e nunca mais consigo apanhar a planta
pawn Код:
if(strcmp("/plantseed", cmd, true) == 0)
if (IsPlayerInRangeOfPoint(playerid, 5.0,-2591.4463,-58.2029,4.5656))
{
tmp = strtok(cmdtext, idx);
if(plantou == 1) return SendClientMessage(playerid, COLOR_GREY, " Seems someone already planted here, wait some more time."); // Comeзo do Comando
plantou = 1;
if (strcmp("weed", tmp, true) == 0)
{
for(new weed = 0; weed < sizeof(WeedInfo); weed++)
{
if(WeedInfo[weed][WeedPlanted] == 0 && WeedInfo[weed][WeedTime] == 0)
{
if (GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_GRAD2, "You must be on foot!");
if (GetPlayerInterior(playerid) != 0) return SendClientMessage(playerid, COLOR_GRAD2, " You must be outside");
new Float:X,Float:Y,Float:Z;
GetPlayerPos(playerid, X, Y, Z);
GetPlayerName(playerid, playername, 24);
ApplyAnimation(playerid, "BOMBER","BOM_Plant_In",4.0,0,0,0,0,0);
weedObject[weed] = CreateObject(3409, X, Y, Z-2, 0, 0, 0);
Weeder[playerid] = 60;
WeedInfo[weed][WeedX] = X;
WeedInfo[weed][WeedY] = Y;
WeedInfo[weed][WeedZ] = Z;
WeedInfo[weed][WeedTime] = 1;
WeedInfo[weed][WeedPlanted] = 1;
strmid(WeedInfo[weed][WeedPlanter], playername, 0, strlen(playername), 50);
SendClientMessage(playerid,COLOR_FADE1,"You have planted your seed, It will grow into a weed plant in 3 Minutes.");
SendClientMessage(playerid,COLOR_FADE1,"Remember to type /harvestweed before someone else takes your weed!");
SetTimer("TimerPlantou",300000,false);
return 1;
}
}
}
else SendClientMessage(playerid, COLOR_GRAD1,"USAGE: /plantseed");
return 1;
}
//==============================================================================
if(strcmp(cmdtext, "/harvestweed", true)==0)
if (IsPlayerInRangeOfPoint(playerid, 5.0,-2591.4463,-58.2029,4.5656))
{
for(new i = 0; i < sizeof(WeedInfo); i++)
{
if (PlayerToPoint(9.0,playerid,WeedInfo[i][WeedX],WeedInfo[i][WeedY],WeedInfo[i][WeedZ]))
{
if(WeedInfo[i][WeedTime] > 0)
{
format(string, sizeof(string), "This weed plant is not ready yet. %d Minutes Remaining", WeedInfo[i][WeedTime]);
SendClientMessage(playerid,COLOR_GRAD1,string);
return 1;
}
ApplyAnimation(playerid, "BOMBER","BOM_Plant_In",4.0,0,0,0,0,0);
SendClientMessage(playerid,COLOR_GRAD2,"You have collected 20 grams of weed.");
PlayerInfo[playerid][pDrogas] += 20;
DestroyObject(weedObject[i]);
WeedInfo[i][WeedX] = 0.0;
WeedInfo[i][WeedY] = 0.0;
WeedInfo[i][WeedZ] = 0.0;
WeedInfo[i][WeedPlanted] = 0;
strmid(WeedInfo[i][WeedPlanter], "[NONE]", 0, strlen("[NONE]"), 128);
return 1;
}
}
return 1;
}
pawn Код:
enum weedInfo
{
WeedPlanter[MAX_PLAYER_NAME],
Float:WeedX,
Float:WeedY,
Float:WeedZ,
WeedTime,
WeedPlanted,
};
new WeedInfo[MAX_WEED][weedInfo];
new Weeder[MAX_PLAYERS];
new weedObject[MAX_WEED];
forward WeedTimer();
public WeedTimer()
{
foreach (Player,i)
{
if(Weeder[i] > 0)
{
Weeder[i] --;
}
}
return 1;
}
//==============================================================================
forward Plantation();
public Plantation()
{
for(new b = 0; b < sizeof(WeedInfo); b++)
{
if(WeedInfo[b][WeedTime] > 0 && WeedInfo[b][WeedPlanted] == 1)
{
WeedInfo[b][WeedTime] -= 1;
}
}
return 1;
}
forward TimerPlantou();
public TimerPlantou()
{
plantou = 0;
return 1;
}
Eu vou ig planto e espero o tempo estimando, passado esse tempo tento fazer /harvestweed e sу me aparece "x"minutes remaining e nunca mais consigo apanhar a planta