Im Script müssten die ganzen Login-Daten für den MySQL server stehen.
#define MYSQL_HOST ...
#define MYSQL_USERNAME ...
oder so ähnlich.
Passe das an deine Datenbank, dann sollte es gehen.
Gruß,
Neo.
Im Script müssten die ganzen Login-Daten für den MySQL server stehen.
#define MYSQL_HOST ...
#define MYSQL_USERNAME ...
oder so ähnlich.
Passe das an deine Datenbank, dann sollte es gehen.
Gruß,
Neo.
Klar, man kann alles
// Oben im Script:
new gereinigt[MAX_PLAYERS];
if(strcmp(cmd,"/reinigen") true ) == 0)
{
if(!WantedLevel[playerid] == 0)
{
if(IsPlayerInRangeOfPoint(playerid, 5.0,-2187.4885,696.0842,46.8824 ))
{
if(gereinigt[playerid] == 0)
{
WantedPoints[playerid] = 0;
WantedLevel[playerid] = 0;
SendClientMessage(playerid,Farbe,"Du reinigst deine Akte. Dies dauert eine Minute");
TogglePlayerControllable(playerid, false);
SetTimerEx("freezeTimer", 60000, false, "i", playerid);
SetTimerEx("reinigenTimer", 3000000, false, "i", playerid);
gereinigt[playerid] = 1;
return 1;
}
else
{
SendClientMessage(playerid, FARBE, "Du kannst deine Akte nur alle 30 Minuten reinigen!");
}
}
else
{
SendClientMessage(playerid, FARBE, "Du bist nicht am richtigen Punkt.");
}
}
}
forward freezeTimer(playerid);
public freezeTimer(playerid)
{
TogglePlayerControllable(playerid, true);
SendClientMessage(playerid, FARBE,"Du hast deine Akte erfolgreich gereinigt.");
return 1;
}
forward reinigenTimer(playerid);
public reinigenTimer(playerid)
{
gereinigt[playerid] = 0;
return 1;
}
So, wenn ich nichts vergessen habe, sollte das so gehen.
Gruß,
Neo.
Weil du "Befehl" nicht als String, sondern als Integer erstellt hast.
Machs so;
new befehl[128];
Gruß,
Neo.
if(strcmp(cmd,"/reinigen") true ) == 0)
{
if(!WantedLevel[playerid] == 0)
{
if(IsPlayerInRangeOfPoint(playerid, 5.0,-2187.4885,696.0842,46.8824 ))
{
WantedPoints[playerid] = 0;
WantedLevel[playerid] = 0;
SendClientMessage(playerid,Farbe,"Du hast deine Akte gereinigt");
return 1;
}
else
{
SendClientMessage(playerid, FARBE, "Du bist nicht am richtigen Punkt.");
}
}
}
Gruß,
Neo.
Mahlzeit,
aus irgendeinem Grund klappt da was nicht ganz.
Hier der Code:
Problem an der Sache ist, dass die Schleife vorzeitig abbricht. In der Console steht immer nur "i = 0" und "i = 1". (Selbst wenn ich alles, bis auf das Print, auskommentiere..)
Vielleicht weiß ja einer von euch, woran das liegt.
Gruß,
Neo.
Na dann lass es einfach mal laufen.
Sollte es nach 10-15 Minuten nicht fertig sein, hast du ein Problem.
Meld' dich dann am besten einfach noch mal.
Gruß,
Neo.
Passiert besonders oft bei großen Scripts. Wie lang ist dein Script denn?
Im Normalfall lässt man den Compiler laufen, bis er fertig ist.
Länger als 10 Minuten dauert das aber normalerweise nicht.
Gruß,
Neo.
for(new i=-1; i < sizeof(dpCar); i++)
{
dpCar[i]=CreateVehicle(427,1544.8184,-1655.0813,6.0224,89.7934,0,1,-1);
}
Ganz einfach.
Aber ist es nicht etwas doof alle Fahrzeuge davon auf die selbe Position zu setzen?
Da man so ja den Integer holt, und 2 dazurechnet, oder etwa nicht?
Gruß,
Neo.
Gefällt mir sehr gut!
Habe allerdings schon mal einen Fehler gefunden.
Bei mir ist es gerade so, dass ich nicht mit dem Link auf die Seite komme. Ich komme auf die 404 Page. (http://spadow.de/Array)
http://spadow.de/test
Passwort: hallo123
Gruß,
Neo.
Ich hab dir das ganze mal behoben.
new frakeinladung[MAX_PLAYERS]; // ganz oben
ocmd:invite(playerid,params[])
{
new pID2;
new frakid = pInfo[playerid][fraktion];
if(pInfo[playerid][fraktion] == 0) { return SendClientMessage(playerid, COLOR_GREY, "Du kannst als Zivilist niemanden inviten!"); }
if(pInfo[playerid][leader] == 0) { return SendClientMessage(playerid, COLOR_GREY, "Du bist kein Leader!"); }
if(sscanf(params,"d", pID2)) { return SendClientMessage(playerid,0xAFAFAFAA,"Benutze: /invite [PlayerID]"); }
if(!IsPlayerConnected(pID2)) return SendClientMessage(playerid, COLOR_RED, "Dieser Spieler ist nicht Online!");
if(pInfo[pID2][member] == 1) { return SendClientMessage(playerid, COLOR_GREY, "Dieser Spieler ist bereits in einer Fraktion!"); }
if(pInfo[pID2][leader] == 1) { return SendClientMessage(playerid, COLOR_GREY, "Dieser Spieler ist als Leader in einer Fraktion!"); }
if(frakeinladung[pID2] >= 0) { return SendClientMessage(playerid, COLOR_RED, "Dieser Spieler hat bereits eine Einladung!"); }
frakeinladung[pID2] = frakid;
SendClientMessage(pID2, COLOR_BLUE, "Leader %s hat dir eine Fraktionseinladung angeboten.Mach /einladung annehmen um sie anzunehmen");
return 1;
}
ocmd:einladung(playerid,params[])
{
new entscheidung[20];
if(frakeinladung[playerid] == 0) { return SendClientMessage(playerid, COLOR_RED, "Du hast keine Fraktionseinladung!"); }
if(sscanf(params, "s", entscheidung)) { return SendClientMessage(playerid, COLOR_GREY, "Benutze: /einladung [annehmen/ablehnen]"); }
if(!strcmp(entscheidung, "annehmen"), true)
{
pInfo[playerid][fraktion] = frakid;
pInfo[playerid][member] = 1;
pInfo[playerid][frakrank] = 1;
frakeinladung[playerid] = 0;
SendClientMessage(playerid, COLOR_GREY, "Du hast die fraktionseinladung angenomen");
}
else if(!strcmp(entscheidung, "ablehnen", true))
{
SendClientMessage(playerid, COLOR_GREY, "Du hast die Fraktionseinladung abgelehnt");
frakeinladung[playerid] = 0;
}
else
{
return SendClientMessage(playerid, COLOR_GREY ,"Benutze: /einladung [annehmen/ablehnen]");
}
return 1;
}
Gruß,
Neo.
dini_Set(path, "key", "string"); // String setzen
dini_Get(path, "key", "string"); // String getten
SetPVarString(playerid, "Var", "string"); // String setten
new getString[123];
GetPVarString(playerid, "Var", getString, sizeof(getString)); // String getten
Hoffe, dass das verständlich ist.
Gruß,
Neo.
Okay, also wieso das nicht funktioniert, weiß ich nicht.
Aber ich weiß, dass du bei dem Biz Fehler hast. Du hast nämlich etwas an der falschen Stelle.
0|Der Staat|Lebensmittel Lager|No-one|X|Y|Z|X|Y|Z|Level|Preis|Eintrittspreis|Guthaben|Zustand (Auf/zu)|Interior|Produkte|Max. Produkte|Preis p. Produkt
So sollte es sein.
Vielleicht ist das ja der Grund, wieso es nicht geht. (?)
Ich weiß aufjedenfall nicht mehr weiter - tut mir leid.
Gruß,
Neo.
Hm.
Dann werden die Koordinaten im Script wohl extra Abgefragt.
Hast du mal im Script geschaut, bei dem Befehl, wie dort die RangeOf abgefragt wird?
Gruß,
Neo .
Dafür ist das Forum doch da.
Es wird funktionieren!
Gruß,
Neo.
Dann sind das wahrscheinlich die RangeOf Koordinaten.
Einfach beide gleich machen.
Gruß,
Neo.
Gute Frage. Ich hätte jetzt gesagt, dass das die Rot. Koordinaten sind, würde aber auch nicht so viel Sinn machen.
Probiere doch einfach mal die ersten drei aus.
Ich bin mir zu 85% sicher.
Also... Denke ich.
Häufig treten auch Bugs auf die sich darauf zurückführen lassen, dass der Scripter nicht die Dummheit oder die Hinterhältigkeit der User berücksichtigt hat.
So baut der Scripter in einen Pay-Befehl keine Abfrage rein ob der User einen -Betrag angegeben hat. doch ohne eine solche abfrage ist es möglich mit hilfe des Paybefehl belibig Geld von Usern zu stehlen.
Das... ist.. genial! :O
Naja, oder der Scripter macht etwas rein, was mit anderen Funktionen nicht "kompatibel" ist.(Ist mir schon passiert. )