Hört sich alles ganz gut an, hab das so auch noch nirgendwo anders gesehen.
Beiträge von Pavex
-
-
Frohes neues Jahr.
-
Lass mir die IP zukommen & wir können das ganze schnell testen.
-
Würde gerne helfen, blicke aber nicht durch was hier alles geschrieben wird.
Im Grunde genommen müsstest du einfach beim Connecten einen 3DText, mit einer Variable, für den Spieler erstellen, mit:
http://wiki.sa-mp.com/wiki/3dtextlabel
Diesen musst du dann mit an den Spieler attachen, mit:
http://wiki.sa-mp.com/wiki/Attach3DTextLabelToPlayerSofern der Spieler Wanteds kriegt, müsstest du dann den 3DText updaten lassen mit:
http://wiki.sa-mp.com/wiki/UpdatePlayer3DTextLabelTextBeachte auch das du den 3DText, sofern er an dir selber attached ist, nicht selber siehst!
-
Alles klar, ich überlass das lieber Apfel dem Profi.
-
Alles klar, hast recht. Mit GetPlayerState werde ich ab sofort immer meinen Motor starten!
Danke, hast mir echt im Leben weitergeholfen, ohne dich hätte ich niemals was erreicht. -
http://wiki.sa-mp.com/wiki/GetPlayerState
"Get a player's current state" - Und das nennst du Motor starten? GG!Return Values:
The player's current state as an integer. -
Wenn du doch so viel Ahnung hast, warum fragst du dann hier überhaupt nach? Dir wird keiner helfen wenn du solche dummen Antworten von dir abgibst.
Ich bin jetzt auch raus. -
http://wiki.sa-mp.com/wiki/GetPlayerState
Bevor du mir hier was von "Ahnung" erzählst, solltest du selber erst mal genau lesen was "GetPlayerState" überhaupt bewirkt. -
Ja, ist ja nur für den Fall das er sich doch reinsetzt.
Geht ja schließlich beides. -
Stimmt, hatte ich vergessen, so müsste es passen:
ocmd:vowner(playerid,parms[])
{
new vehicleid;
if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER) {
vehicleid = GetPlayerVehicleID(playerid);
} else {
vehicleid = GetClosestVehicle(playerid);
if(!PlayerToVehicle(playerid, vehicleid, 5.0)) vehicleid = 0;
}
if(!vehicleid) return SendClientMessage(playerid, COLOR_RED, "Du bist bei keinem Fahrzeug");
new id = GetVehicleID(vehicleid);
new msg[128];
format(msg, sizeof(msg), "Dieses Fahzeug is eigentum von %s", VehicleOwner[id]);
SendClientMessage(playerid, COLOR_GREY, msg);
return 1;
} -
Du musst doch nur den Code zusammenwürfeln und hast das was du haben möchtest, ist doch ganz einfach?
Hab das ganze mal für dich zusammengewürfelt:
ocmd:vowner(playerid,parms[])
{
new vehicleid;
if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER) {
vehicleid = GetPlayerVehicleID(playerid);
} else {
vehicleid = GetClosestVehicle(playerid);
if(!PlayerToVehicle(playerid, vehicleid, 5.0)) vehicleid = 0;
}
if(!vehicleid) return SendClientMessage(playerid, COLOR_RED, "Du bist bei kein deiner Fahrzeuge");
new id = GetVehicleID(vehicleid);
if(!IsValidVehicle(id)) return SendClientMessage(playerid, COLOR_RED, "Du hast die Schlüssl nicht für dieses Fahrzeug");
if(GetPlayerVehicleAccess(playerid, id) < 2) return SendClientMessage(playerid, COLOR_RED, "Du hast die Schlüssl nicht für dieses Fahrzeug");
new msg[128];
format(msg, sizeof(msg), "Dieses Fahzeug is eigentum von %s", VehicleOwner[id]);
SendClientMessage(playerid, COLOR_GREY, msg);
return 1;
} -
Du sagst das GetVehicleID überflüßig ist, da man nicht einsteigen soll, nutzt aber GetVehicleID in deinem Befehl? Was macht das für einen Sinn?
Btw. deine PlayerToVehicle Funktion macht irgendwie garkeinen Sinn, tausch diese mal mit meiner aus. -
"GetVehicleID", "PlayerToVehicle"...
-
Dir wird keiner helfen können, wenn du uns nicht mal deine Funktionen zeigst die du da eingefügt hast.
-
Du solltest uns evtl. auch mal sagen was genau nicht klappt, einfach nur einen Code posten und schreiben das man nicht weiter kommt, bringt auch nichts.
Was ist denn GetVehicleID bei dir? -
Du musst herausfinden welches das nähste Fahrzeug am Spieler ist, du kannst das ganze über einen Radius eingrenzen, ca. so:
stock getNearestCarOfPlayer(playerid, float:radius) {
new Float:vx,Float:vy,Float:vz;
for(new v=0;v< MAX_VEHICLES;v++) {
GetVehiclePos(v,vx,vy,vz);
if(IsPlayerInRangeOfPoint(playerid,radius,vx,vy,vz)) return v;
}
return -1;
}