Wie sieht denn deine Funktion "IsPlayerAtFarmerPflanze(playerid)" aus?
Wegen deiner Schleife. Du musst sie abbrechen (break) nachdem die Pflanze erstellt wurde.
COMMAND:farmer(playerid,params[])
{
for(new fp=0;fp<MAX_FPFLANZEN;fp++)
{
// NOTE: Hier fehlt noch eine Abfrage, ob die Pflanze bereits erstellt wurde
new query[128];
GetPlayerPos(playerid,FarmPflanzenInfo[fp][fpXpos],FarmPflanzenInfo[fp][fpYpos],FarmPflanzenInfo[fp][fpZpos]);
FarmPflanzenInfo[fp][fpvirtualworld] = GetPlayerVirtualWorld(playerid);
// FarmPflanzenInfo[fp][fpOwner] = Spieler[playerid][pName]);
format(FarmPflanzenInfo[fp][fpOwner],24,"%s",Spieler[playerid][pName]);
format(query,sizeof(query),"Pflanzen-ID %i\nVon: %s",fp,FarmPflanzenInfo[fp][fpOwner]);
FarmPflanzenLabel[fp] = CreateDynamic3DTextLabel(query,GRUEN,FarmPflanzenInfo[fp][fpXpos],FarmPflanzenInfo[fp][fpYpos],FarmPflanzenInfo[fp][fpZpos],7.5,INVALID_PLAYER_ID,INVALID_VEHICLE_ID,1,FarmPflanzenInfo[fp][fpvirtualworld]);
FarmPflanzenInfo[fp][fpobject] = CreateDynamicObject(802,FarmPflanzenInfo[fp][fpXpos],FarmPflanzenInfo[fp][fpYpos],FarmPflanzenInfo[fp][fpZpos],0.0,0.0,0.0,FarmPflanzenInfo[fp][fpvirtualworld]);
SendClientMessage(playerid,0x0069FFFF,"PFLANZE ERSTELLT!");
break;
}
return 1;
}