Wie
So, wie ich es sage (http://wiki.sa-mp.com/wiki/SetTimer).
Wie
So, wie ich es sage (http://wiki.sa-mp.com/wiki/SetTimer).
Dein Funktionsname entspricht nicht deinem angegebenen Funktionsnamen.
Kann mann dich auch für Programme in c++ anheuern?
Anti Cheat clients oder ähnliches?
Melde dich per PN mit deiner Vorstellung von einem Anti-Cheat System. Dennoch sind SA:MP Module von mir bevorzugt.
Du kannst mit der Funktion random() dir eine beliebige Zahl in einem bestimmten Spektrum ausgeben lassen. Damit ist es möglich Zahlen und Buchstaben damit beliebig zu erstellen und somit auch eine zufälliges Nummernschild.
Für Gangzonen gibt es einen hilfreichen Include: http://forum.sa-mp.com/showthread.php?t=365425
// Beispielwerte:
Float:xMax = 1400.25;
Float:xMin = 1200.86;
Float:yMax = 896.26;
Float:yMin = 726.83;
// Funktion zur Überprüfung der Position des Spielers:
stock IsPlayerInZone(playerid, Float:xMax, Float:xMin, Float:yMax, Float:yMin) {
new Float:X, Float:Y, Float:Z;
GetPlayerPos(playerid, X, Y, Z);
if(X >= xMin && X <= xMax && Y >= yMin && Y <= yMax) {
return 1;
}
return 0;
}
public OnPlayerExitVehicle(playerid) {
if(IsPlayerInZone(playerid, xMax, xMin, yMax, yMin) == 1) {
SendClientMessage(playerid, 0xFFFFFFFF, "Sie befinden sich nun in einer speziellen Zone.");
}
}
Welche Bemerkung meinst du? Eig. bin ich nicht weiter auf ein Array eingegangen, sondern hab einen Link gepostet, wo drauf genau eingegangen wird
Ich beziehe mich auf folgendes Problem in deinem Script (ob die Zuweisung überhaupt notwenig ist sei mal dahingestellt):
// Dies wird nur den Index 0 auf false setzen.
new bool: HatGemietet[MAX_PLAYERS] = false;
// Dies wird alle Indexe des Arrays auf false setzen:
new bool: HatGemietet[MAX_PLAYERS] = {false, ...};
Danke an das Feedback und an den Hinweis. Ich hätte schwören können, das auch dies in Millisekunden ist. Habe es verbessert, danke
Wenn du schon am verbessern bist, verweise ich nochmals auf meine erste Bemerkung in Sachen Array-Zuweisung.
Die Respawn Zeit von 10 Minuten ist 600000
den 1 Sekunde = 1000
1 Minute = 1000 * 60 = 60000
1 Minute = 10 = 10 Minuten ( 60000 * 10)
"The delay until the car is respawned without a driver, in seconds." - Nicht in Millisekunden (http://wiki.sa-mp.com/wiki/AddStaticVehicleEx).
Die Variable Mietauto könnte man zwar ins Enum einbauen, jedoch warum sollte man es sich etwas umständlicher machen, wenn diese Möglichkeit auch geht
Halte ich nicht für umständlicher, aber evt. ist das nur meine Einschätzung.
Erklärung: while-, do...while-, for-Schleifen (Mit Struktogramm etc.)
// Dies wird alle Indexe des Arrays auf false setzen:
new bool: HatGemietet[MAX_PLAYERS] = {false, ...};
Mache dir klar, was dein Script dort tut. Finde heraus, wie die Schleife und die if-Abfrage fungiert und du wirst erkennen, woran das Problem liegt. Falls du das nicht tust, wirst du erneut und erneut auf Probleme stoßen. Falls dir irgendetwas am Code nur etwas unklar ist, frage hier nach.
Es ist möglich mit CSS das sog. Ribbon ganz einfach zu erstellen. Der Trick liegt darin rechts und links unten einen kurzen Border zu erstellen und von diesem dennoch drei Seiten Transparent zu machen. Dadurch entsteht ein Dreieck, das man rechts und links an die Navigation anbauen kann. Ein einfaches Beispiel, das ich dir etwas verändert habe, habe ich dir mal in meinem jsFiddle Account darstellen lassen: http://jsfiddle.net/ChrisDot/j3WQn/
Die wichtigste Zeile zur Realisierung deiner Navigation habe ich dir unten mal mit einem Kommentar makiert:
.ribbon {
font-size: 16px;
width: 25%;
position: relative;
background: darkred;
color: #fff;
font: 13px Trebuchet MS;
text-align: center;
padding: 1em 2em;
margin: 2em auto 3em;
}
.ribbon .ribbon-content:before, .ribbon .ribbon-content:after {
content: "";
position: absolute;
display: block;
border-style: solid;
border-color: darkred transparent transparent transparent; // Erstellen des Dreiecks.
bottom: -1em;
}
.ribbon .ribbon-content:before {
left: 0;
border-width: 1em 0 0 1em;
}
.ribbon .ribbon-content:after {
right: 0;
border-width: 1em 1em 0 0;
}
<h1 class="ribbon">
<strong class="ribbon-content">Your navigation button!</strong>
</h1>
Was du hier berechnest ist für mich sehr schlecht zu erkennen, da ich nicht verstehe, was mit den einzelnen Variablen gemeint ist. Betreibe doch einfach mal Debugging (gebe dir jede Variable aus und vergleiche sie mit ihrem Soll-Wert. Dadurch wirst du die problematischen Werte finden und den zu durchsuchenden Bereich eingrenzen).
Da du von einem String redest gehe ich davon aus, dass du den Wert von Per-Player Variables Typ String setzen möchtest. Den Startwert einer Per-Player Variable kannst du nicht ändern, da diese generell einfach NULL ist. Was du aber machen kannst (ob das nun Sinn mach oder nicht):
public OnPlayerConnect(playerid) {
SetPVarString(playerid, "breadfish", ppStdValue);
}
Guten Tag,
ich selbst selbst bin jahrelanger Programmierer in Sachen C++, PHP, HTML, MySQL, Javascript etc. und bin auch in bester Lage SA:MP Server zu realisieren. Ich biete mich demnach an Module in jeglicher Hinsicht (Includes, Filterscripte, Gamemodes, Plugins etc.) zu erstellen. Die Fertigungszeit variiert je nach Größe des Auftrags und meinem persönlichen Zeitmanagement. Ich kann jedoch sagen, dass kleinere Gamemodes innerhalb von zwei Wochen erstellt werden können und Includes/Filterscript etc., soweit es nichts spezielles ist, innerhalb von wenigen Tagen. Gegenleistungen werden in diesem Fall -ausschließlich- in Form von Geld akzeptiert (Bezahlmöglichkeiten: PayPal und Überweisung). Referenzen sind vorzeigbar, jedoch werde ich nicht jedem meine Werke vorführen, bevor es zu einem möglichen Auftrag kommt. Falls Interesse besteht meldet euch doch einfach bei mir per PN mit folgendem Inhalt, damit es für mich möglich ist Rückmeldung zu geben (desto genauer die Beschreibung des Vorhabens, desto schneller kann es zur Realisierung kommen):
______
Unverbindlicher Hinweis: Die Sicherheit einer Transaktion kann am besten durch die Einschaltung eines Mittelsmannes gewährleistet werden. Weitere Informationen dazu gibt es hier.
Ich kann damit nichts anfangen was Campbell geschrieben hat, sry.
Klar lese ich es
Nachfragen ist erlaubt, was verstehst du nicht?
#include <a_samp>
#if !defined MAX_CLIENTS
#define MAX_CLIENTS 50
#endif
// Erstellen des Enumerators.
enum client {
username[MAX_PLAYER_NAME],
conTimestamp,
bool:admin
}
// Zuweisung des Enumerators zu einem Array.
new clientArray[MAX_CLIENTS][client];
main() {
// Zuweisung von Werten zu den einzelnen Variablen nach Format: arrayName[arrayIndex][enumVariable]
format(clientArray[0][username], MAX_PLAYER_NAME, "Client No.001");
clientArray[0][conTimestamp] = gettime();
clientArray[0][admin] = true;
format(clientArray[1][username], MAX_PLAYER_NAME, "Client No.002");
clientArray[1][conTimestamp] = gettime();
clientArray[1][admin] = false;
// Ausgabe der Werte mithilfe einer for-Schleife (Durchlaufen aller Indexe des Arrays).
for(new c = 0; c != sizeof(clientArray); c++) {
if(strlen(clientArray[code=c][username]) > 0 && clientArray[code=c][conTimestamp] != 0) {
printf("%s: (%i - Admin: %b)", clientArray[code=c][username], clientArray[code=c][conTimestamp], clientArray[code=c][admin]);
}
}
}
Ausgabe:
Wäre im Stand dir das recht schnell und gut zu lösen. Habe mehrere Jahre Erfahrung in PHP (Design Patterns eg. MVC; Objektorientiertes Programmieren etc.), HTML, Javascript, MySQL, jQuery etc.
Melde dich bei mir falls du Interesse hättest.