Guten Tag Brotfische
Wie kann man die AUtos nicht wegfahrbar machen sodass wenn icheinsteige nur eine ClientMessage erscheint?
mfG James
Guten Tag Brotfische
Wie kann man die AUtos nicht wegfahrbar machen sodass wenn icheinsteige nur eine ClientMessage erscheint?
mfG James
Autos an sich nicht, aber du kannst den Spieler mit TogglePlayerControllable "einfrieren"...
Und dann halt die SendClientmessage
Aber wenn ich enter drücke kommt er nicht mehr raus?
Kann man das nicht in den /engine Befehl integrieren?
Arbeite doch einfach mit "IsPlayerInVehicle"
http://wiki.sa-mp.com/wiki/Function:IsPlayerInVehicle
Leider bin ich kein Profi wie du
E.
Okay das schaffe icgh aber wei mache ich das das ich es in eine Variable erstelle
new Autohauscars [12];
if(strcmp(cmdtext, "/checkmycar", true) == 0)
{
if(IsPlayerInVehicle(playerid, 32))
{
SendClientMessage(playerid,0xFFFFFFFFF,"You're in vehicle 32!");
}
return 1;
}
return 0;
Einfach bei nem /motor Befehl, wenn man einsteigt und /motor eingeben will und es ein Autohaus-Car ist, sagen dass es nicht geht.
Wie soll uich das denn machen hat jemand ein Beispiel?
du koenntest auch einen dialog anzeigen lassen und bei response removeplayerblah.. dann kann man damit auch nicht fahren
Nein ich wollte kein Dialog?
Gibt es nicht eine möglichkeit ds sozumachen das man den Motor nicht starten kann?
Wie oben schon gesagt - beim Anmachen des Motors prüfen ob es ein Autohauscar ist. Du musst doch irgendwo definiert haben was Autohaus-Cars sind und was nicht.
Haste einen Befehl für motorstarzen? Wenn Ja Posten den und den Namen deiner Autohausautovariable
Kommt gleich als edit nach
Edit:
new Autohauscars [53];#
Motor
if(strcmp(cmd, "/engine",true) == 0)
{
if(IsANoTachoVehicle(GetPlayerVehicleID(playerid)))
{
SendClientMessage(playerid, COLOR_GRAD1, "{FFFFFF}Fahrräder haben {FF0000}keinen{FFFFFF} Motor ...");
return 1;
}
if(GetPlayerState(playerid) != PLAYER_STATE_DRIVER) return 1;
new engine,lights,alarm,doors,bonnet,boot,objective;
new vid = GetPlayerVehicleID(playerid);
GetVehicleParamsEx(vid,engine,lights,alarm,doors,bonnet,boot,objective);
if(vid != INVALID_VEHICLE_ID)
{
if(engine == VEHICLE_PARAMS_ON)
{
SetVehicleParamsEx(vid,VEHICLE_PARAMS_OFF,lights,alarm,doors,bonnet,boot,objective);
GameTextForPlayer(playerid, "~n~~n~~n~~n~~n~~n~~W~Motor ~r~aus!", 2000, 5);
}
else
{
SetVehicleParamsEx(vid,VEHICLE_PARAMS_ON,lights,alarm,doors,bonnet,boot,objective);
GameTextForPlayer(playerid, "~n~~n~~n~~n~~n~~n~~W~Motor ~g~an!", 2000, 5);
}
}
return 1;
}
Dann machste jetzt einfach ein stock Bei dem dir zurück gegeben wird ob es ein ahcar Ist...Da du es Ja bestimmt noch öfters brauchen wirst.
stock isahcar(carid){
for(new Cars = 0; Cars < 53;Cars++){
if(carid == Autohauscars [Cars]){
return 1;
}
}
return 0;
}
Und dann
if(strcmp(cmd, "/engine",true) == {
if(isahcar(GetPlayerVehicleID(playerid)){
SendClient.....
}
Bin am Handy also könnte Fehler haben
blackybecks
Man könnte es auch so machen:
for(new i=0;i<sizeof(Autohauscars);i++)
{
..
}
Richtig wäre dynamischer
Hat jemand ein dynamisches Autohaussystem?
Ist doch ganz einfach: Nimm ein bool: array[MAX_VEHICLES];
Füge hinzu, dass alle diese Fahrzeuge keinen angechalteten Motor haben (siehe oben).
Setze array[vehicleid] = true, wenn es ein Autohausfahrzeug ist.
Der Befehl /motor oder die Keyaction ist unmöglich, wenn array[GetPlayerVehicleID(playerid)] == false
Fertig.
james ja hab ich
Kannst du mir das evtl. geben?