Hallo wie bekomme ich es hin, dass wenn ich zum beispiel in einem Busbot sitze, das wenn ich schreibe "Busfritze" Das der NPC zurück sagt, hey nenn mich nicht busfritze
NPC spricht
- Boszor
- Geschlossen
- Erledigt
Wichtiger Hinweis: Bitte ändert nicht manuell die Schriftfarbe auf schwarz sondern belasst es bei der Standardeinstellung. Somit tragt ihr dazu bei dass euer Text auch bei Verwendung unseren dunklen Forenstils noch lesbar ist!
Tipp: Ihr wollt längere Codeausschnitte oder Logfiles bereitstellen? Benutzt unseren eigenen PasteBin-Dienst Link
-
-
Bei OnPlayerText musst du mit strcmp den text mit busfritze vergleichen lassen, dann abfragen, ob der player im bus sitzt und die Message senden.
evtl. noch an alle anderen in der nähe/im Bus senden, mit nem loop. -
könntest du mir da mal was tipseln zur veranschaulichung ?
Also so in der Art nen kleines tutorial ?
Suchfunktion schon benutzt, jedoch ist in der Suchfunktion nix zu diesem Thema zu finden leider =(
//Edit Tutorialfrage eingefügt
//edit Suchfunktion -
OnPlayerText -> GetPlayerVehicleID (also abfragen ob er in dem Bus sitzt) -> strfind "Busfritze"
-
sry aber ich kann damit noch nix so wirklich anfangen bin noch kein Profi in Pawn kann so einige kleine Sachen schon machen aber Abfragen O.o
-
if(strfind(text, "Busfritze", true) != -1)
{
if(GetPlayerVehicleID(playerid) == BUSID)
{
...
}
}So in etwa als Demonstration.
-
If-Abfragen sind was einfaches für Anfänger xD
Mit Hilfe von PlayAudioStreamForPlayer (Oder so) kannst du das auch wirklich hörbar machen (Musst nur den Text aufsagen und aufnehmen oder so) -
Also in etwa so
if(strfind(text, "Busfritze", true) != -1)
{
if(GetPlayerVehicleID(playerid) == BUSID)
{
if (PlayerNPC,Busbot1)
{
Alter ich bin kein Busfritze
}
} -
if (PlayerNPC,Busbot1)
Hö, was soll'n des bewirken?
-
Das sollte bedeuten wenn der PlayerNPC ist, dass er dann darauf reagiert und der NPC heißt busbot1 und ist im Bus
ZitatMit Hilfe von PlayAudioStreamForPlayer (Oder so) kannst du das auch wirklich hörbar machen (Musst nur den Text aufsagen und aufnehmen oder so)
Ich glaube das bekome ich noch nicht hin
-
Wah, Hilfe, nein, bitte nicht so ... tu das deinem Busfritzen nicht an ...
Wieso willst du denn abfragen ob der PlayerNPC ein NPC ist, wozu?
Fragst einfach ab ob der Spieler, der den Text schreibt im Busbot-Car ist, und dann machste sowas wie ne SendClientMessage. -
Achso meinst du das ?
if(strfind(text, "Busfritze", true) != -1)
{
if(GetPlayerVehicleID(playerid) == VBSAAutos)
{
SendClientMessage(playerid, COLOR_GRAD6, "Bitte nenn mich nicht so, ich nenne dich auch nicht Honk.");
{
return 1;
} -
Je nachdem wie du VBSAAutos definiert hast/anwendest, könnte/müsste es so gehen.
-
VBSAAutos sind die Busse womit die busbots durch die gegend rasen
Jedoch bekomme ich jedes mal 3 Errors
Zeile (49146) : Unbekannte Funktion
Zeile (49148) : Unbekannte Funktion
Zeile (49152) : Unbekannte Funktionif(strcmp(text, "Busfritze", true) != -1)
{
if(GetPlayerVehicleID(playerid) == VBSAAutos)
{
SendClientMessage(playerid, COLOR_GRAD6, "Bitte nenn mich nicht so, ich nenne dich auch nicht Honk.");
{
return 1;
}Errorzeile
if(strcmp(text, "Busfritze", true) != -1)
-
strcmp & strfind ist ein Unterschied.
-
Stimmt sind 2 verschieden genau wie ocmd
ich habe es jetzt so gemacht
Jedoch sind es immer noch die gleichen Errors
if(strcmp("Busfritze", tmp, true, strlen(tmp)) == 0) && (strlen(tmp) == strlen("Busfritze")))
{
if(GetPlayerVehicleID(playerid) == 431)
{
SendClientMessage(playerid, COLOR_GRAD6, "Bitte nenn mich nicht so, ich nenne dich auch nicht Honk.");
{
return 1;
} -
Auch wenn ich mich mit Godfather 0 auskenne, kann ich dir sagen, das da mehr als schrott steht.
STRFIND und nicht STRCMP oder STRLEN ... -
Ehm
if(strfind(text,"Busfritze")!=-1) statt deiner irren strcmp abfrage -.-
-
Weil es so nicht funktioniert leider,
Das ist auch ne Abfrage aus dem LOH
if ((strcmp("yes", tmp, true, strlen(tmp)) == 0) && (strlen(tmp) == strlen("yes")))
-
Ja mag ja sein, aber das ist mehr als umständlich in meinen Augen, wenn unser's nicht klappt, probier doch mal die Lösung zu debuggen und kopier nix aus anderen Scripten.