Aber dann sollte es theoretisch gehen , oder sind dann alle Einsteiger automatisch Fahrer ?
dUDA
Aber dann sollte es theoretisch gehen , oder sind dann alle Einsteiger automatisch Fahrer ?
dUDA
Hallo
Das Problem ist, dass Beifahrer, welche ins Auto steigen auch rausgekickt werden, jedoch soll das nur beim Fahrer passieren. Das einizge was ich darüber weiss ist, dass der Beifahrer Platz Nr 2 hat (Kann mich auch irren).
Wegen den schwierigen Lösungen. Teilweise ist es alleine schon witzig, zu knobeln. Ich will eigentlich auch nicht immer fertige Lösungen, ich frage mich, wie ich mit einer Funktion oder einem Callback sowas abfragen kann
dUDA
Hallo
Endlich haben wir unser Lizensystem einigermassen am funktionieren, jedoch werden alle User ohne Lizenz aus dem Auto geworfen, auch als Beifahrer. Ich will jedoch nur, das der Fahrer rausgeworfen wird. Gibts da andere Funtionen dafür ? Ist das überhaupt am richtigen Ort, da es ja noch ein OnPlayerEnterVehicle gibt. Wie kann man sowa smit ispassenger machen ?
public OnPlayerStateChange(playerid, newstate, oldstate) // - Führerschein
{
if(newstate == 2)
{
new vehicleid = GetPlayerVehicleID(playerid);
if(FLUGZEUGCAR(vehicleid) && PlayerInfo[playerid][pFlugLiz] != 1)
{
GameTextForPlayer(playerid, "~r~Du hast noch keinen Flugschein", 2000, 5);
RemovePlayerFromVehicle(playerid);
return 1;
}
else if(PlayerInfo[playerid][pAutoLiz] != 1)
{
RemovePlayerFromVehicle(playerid);
GameTextForPlayer(playerid, "~r~Du hast noch keinen Fuehrerschein", 2000, 5);
return 1;
}
..........
Wie kann ich jetzt mache, dass nur der Fahrer aus dem Auto entfernt wird und nicht alle ?
MfG dUDALUS
Ah ja , nein es ist kein GF
Du kannst mit mit jedem beliebigen "Text" den Fraktionschannel aufrufen, sofern du in einer Fraktion bist und ein / verwendest
/f Text -->geht
/flalalalal (kein Text) -->geht leider auch, sogar ohne Text !
/lolalala Text --> geht
Es erscheint folglich gar keine "Unbekannter Befehl"- Meldung, da jeder Befehl der nicht im Script definiert ist, richtig ist und in den Fraktionschannel schreibt.
Mit Channel aufrufen meine ich, das der Player in den Fraktionschannel, der eigentlich nur mit /f Text benutzbar sein sollte, schreibt/schreiben kann.
MfG dUDA
Hallo
Ich bins ma wieder
Ich habe ein Problem, hatte/habe auch eine Vermutung und das schon ausprobiert, jedoch ohne Erfolg. Das Problem ist folgendes, dass ich mit allen CMDs, welche es im Script nicht gibt, den Fraktionschannel /f aufrufen kann.
Es geht also zB / jaja /lolala etc.. Es muss nichtmal ein Text stehen.
Was mich verwundertist die Tatsache, dass
if(strcmp(cmd, "/f", true) == 0)
in Anführungs- und Schlusszeichen steht, ich habe es also ohne probiert, jedoch ging das auch nicht. Ich habe dann mal so aus Wunder bei anderen Strcmp Sachen reingeschaut und gemerkt, dass der Fraktionschannel gar kein dcmd_f hat, was mich wie oben gesagt etwas verwunder.
Hier der Code:
new string[256];
new cmd[256];
new sendername[MAX_PLAYER_NAME];
new idx;
if(strcmp(cmd, "/f", true) == 0)
{
if(IsPlayerConnected(playerid))
{
GetPlayerName(playerid, sendername, sizeof(sendername));
new length = strlen(cmdtext);
while ((idx < length) && (cmdtext[idx] <= ' '))
{
idx++;
}
new offset = idx;
new result[64];
while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
{
result[idx - offset] = cmdtext[idx];
idx++;
}
result[idx - offset] = EOS;
if(!strlen(result))
{
SendClientMessage(playerid, COLOR_WHITE, "Verwendung: /f [Text]");
return 1;
}
if (PlayerInfo[playerid][pTeam] != 0)
{
if(PlayerInfo[playerid][pMember] != 0)
{
format(string, sizeof(string), " Fraktion %s: %s. )) ", sendername, result);
SendFamilyMessage(PlayerInfo[playerid][pMember], COLOR_YELLOW, string);
return 1;
}
if(PlayerInfo[playerid][pLeader] != 0)
{
format(string, sizeof(string), " Fraktion (Leader) %s: %s. )) ", sendername, result);
SendFamilyMessage(PlayerInfo[playerid][pLeader], COLOR_YELLOW, string);
return 1;
}
}
}
return 1;
}
return 1;
}
MfG dUDALUS
Hallo
In den letzten Tagen gings bei mir auch sehr lange. Trotz VDSL 20k dauerte es komischerweise teilweise 15 Sekunden. Zudem dauert in letzter Zeit das Laden generell einfach 1-2 Sekunden länger
dUDA
Hallo MWP
Ich hätte dir noch einen super Tipp:
Mach bei den GUI Kapitel ein paar Bilder mit.
Du hast micht echt neugierig gemacht, paar Freunde von mir in der Klasse kennen Autohotkey, jetzt kann ich mir endlich mal sowas genau anschauene und lernen.
MfG dUDALUS
Ok danke,
Habes mir halber gedacht. Werde es morgen ausprobieren.
Voerst mal close, wird aber sicherlich gehen
dUDA
Hallo
Ich wollte mal fragen, wie ich einen Text über einem Pickup einblenden kann. Die Frage wurde auch schon gestellt. Muss ich mit der Funktion 3D Text Labels arbeiten ? Ich habe dort auf den ertsen schnellen Blick keine solche Funktion gefunden. Kann mir jemand helfen ?
MfG dUDA
Edit: Geht es mit :
CreatePlayer3DTextLabel
?
Teste es morgen, dank euch aber, habe vorhin mein erstes Teleportsystem erfolgreich testen können.
Danke vielmals.
MfG dUDA
Hmm..ok
Kann ich bei dem Beispiel:
if(IsPlayerInRangeOfPoint(i, 1.0, gPickKoords[2][0], gPickKoords[2][1], gPickKoords[2][2]))
{
GameTextForPlayer(i, "~r~Garage~n~~w~Betreten: ~g~/enter", 4000, 5);
return 1;
}
Das "i" durch playerid ersetzen und dann oben die Schleife weglassen ?
MfG dUDA
Also ist im Wike-Beispiel das Format nur da,weil die Model/Car-ID ausgelesen wird ?
Ich möchte zB einfach schreiben:
Los Santos Police Department
Betreten: /enter
(Das mit dem Zeilenumbruch ist klar).
Wofür steht das ? Muss ich bei meinem System auch so etwas einbauen. Ich bin am Punkt X und Meldung Y soll erscheinen.
for(new i = 0; i<MAX_PLAYERS; i++)
Hallo
So, ich habe eine Frage zu GameTextForPlayer ( http://wiki.sa-mp.com/wiki/GameTextForPlayer ) .
Muss ich den String vorher definieren und dann per format umwandeln ? Ich bin mir da nicht ganz sicher, da im alten System der Text direkt in die GameTextForPLayer geschrieben wurde. Das verwirt mich deshalb.
Irgendwie sah das so aus :
public IsPlayerAtEnterExit(playerid)
{
for(new i = 0; i<MAX_PLAYERS; i++)
{
if(IsPlayerInRangeOfPoint(i, 1.0, gPickKoords[0][0], gPickKoords[0][1], gPickKoords[0][2]))
{
GameTextForPlayer(i, "~r~Los Santos Police Department~n~~w~Betreten: ~g~/enter", 4000, 5);
return 1;
}
if(IsPlayerInRangeOfPoint(i, 1.0, gPickKoords[1][0], gPickKoords[1][1], gPickKoords[1][2]))
{
GameTextForPlayer(i, "Verlassen: ~r~/exit", 4000, 5);
return 1;
}
if(IsPlayerInRangeOfPoint(i, 1.0, gPickKoords[2][0], gPickKoords[2][1], gPickKoords[2][2]))
{
GameTextForPlayer(i, "~r~Rathaus~n~~w~Betreten: ~g~/enter", 4000, 5);
return 1;
}
if(IsPlayerInRangeOfPoint(i, 1.0, gPickKoords[3][0], gPickKoords[3][1], gPickKoords[3][2]))
{
GameTextForPlayer(playerid, "Verlassen: ~r~/exit", 4000, 5);
return 1;
}
if(IsPlayerInRangeOfPoint(i, 1.0, gPickKoords[4][0], gPickKoords[4][1], gPickKoords[4][2]))
{
GameTextForPlayer(i, "~r~Admin Base~n~~w~Betreten: ~g~/enter", 4000, 5);
return 1;
}
}
return 0;
}
Wie kann ich so etwas scripten, ohne den String zu formatieren, den im Wike steht es anderst und ich bekomme sonst auch Fehlermeldungen.
MfG dUDA
Okey
Hey danke, werde es am Sonntag mal Ingame testen, gehe morgen eben mit anderen nach Frankreich
Off-Topic: Spielst du mit NeoPhönix CS, BF oä ?
Hallo
Jein, der Hintergrund ist der, das das LVPD und das Bundespolzei das gleiche Interior haben und ich deshalb eine neue Virtuelle World Abfrage einabeun muss (Da es ja logischerwiese sonst 2 Exits gibt ).
Welches ist die normale Welt ? 0 ?
Könntest du mal den Code posten, ich poste noch schnell den gesamtne mom.
dUDA
Hallo
Ich will eine Abfrage machen, ob der Spieler im Breich X ist und in der Virtual World Y ist. Warum geht das so nicht ? Ich verwende ja GetPlayerVirtaulWorld
if(IsPlayerInRangeOfPoint(i, 1.0, gPickKoords[13][0], gPickKoords[13][1], gPickKoords[13][2]) && GetPlayerVirtualWorld == 1 )
{
GameTextForPlayer(i, "~r~Garage~n~~w~Betreten: ~g~/enter", 4000, 5);
return 1;
}
Um eine schnelle Info wäre ich echt sehr dankbarm, da ich es gerade sehr gebrauchen könnte
MfG dUDA
Hallo
Könnte es daran liegen, das man x y z color1 color2 und respawn durch Zahlen ersetzen müsste
Hmm..gut es gibt eine soclhe Funktion. Damit hat sich einiges geklärt. Wie soll ich aber so ein System aufbauen ?
Könnte man nicht eine Art Liste machen , zB so :
{ModelID,Lizenzart},
........
Ach weisste was, ich schau schnell mal in einen anderen GM rein
dUDA, dank dir !
Hallo
Ich habe hier ein Führerscheinsystem, das geht, es bezweckt aber nicht das, was ich möchte.
Ich habe verscheidene Führerscheinarten (Autoschein,LKW-Schein,Flugschein,Bootsschein)
Wie muss ich etwas machen, dass jede Model-ID eine Lizenzzugehörigkeit hat. Zum Beispiel, wenn ich in ein Auto mit der ModelID 431 (Weiss nicht grad ob das stimmt ) einsteige, word geprüft, mit welcher Lizenz diese ModelID gefahren werden kann, sofern man die Lizenz nicht hat, wird man aus dem Auto geworfen.
MfG dUDA
Aber das mit der Taste f12 = Kick tönt gut, kann man in S0bit die Taste ändern, habe den Scheiss eben ganrochnie installiert (gehabt).