Wie sieht ein Teleport mit Auto aus?
wie muss ich das machen?
greez Beni
Wie sieht ein Teleport mit Auto aus?
wie muss ich das machen?
greez Beni
ein teleport mit auto aus was eminst du damit
das man mit dem auto zu einem punkt kommt?
if (strcmp("/gotolv", cmdtext, true, 10) == 0)
{
if(IsPlayerInAnyVehicle(playerid))
{
new carid = GetPlayerVehicleID(playerid);
SetVehiclePos(carid, 1970.8090,1625.2159,12.8489);
PutPlayerInVehicle(playerid,carid, 0);
}
else
{
SetPlayerPos(playerid, 1970.8090,1625.2159,12.8489);
}
}
return 1;
}
sollte so stimmen is bei mir aus gm raus
wie wärs mit erklärung
if (strcmp("/meincommand", cmdtext, true, 10) == 0)//nach dem / trägst du dein befehl ein
{
if(IsPlayerInAnyVehicle(playerid))// hier wird gefragt ob der spieler in einem auto ist
{
new carid = GetPlayerVehicleID(playerid);
SetVehiclePos(carid, 1970.8090,1625.2159,12.8489);//wenn ja wird das auto an diesen ort gebracht
PutPlayerInVehicle(playerid,carid, 0);//und hier wird der spieler in das auto gesetzt
}
else//wenn der spieler in keinem auto ist
{
SetPlayerPos(playerid, 1970.8090,1625.2159,12.8489);//wird er hier hin gebracht
}
SetPlayerInterior(playerid,0);// hier wird das interior auf 0 gesetzt (die normale welt
}
return 1;
}
if(IsPlayerInAnyVehicle(playerid))
{
new tpcar = GetPlayerVehicleID(playerid);
SetVehiclePos(tpcar , Position X, Position Y, Position Z);
PutPlayerInVehicle(playerid,tpcar , 1);
}
else
{
SetPlayerPos(playerid, Position X, Position Y, Position Z);
}
}
return 1;
}
Den Code einfach in dein Befehl.
Um es übersichtlicher zu machen kannste anstatt Position X,Y,Z oben define machen z.B
#define FlughavenX X
#define FlughavenY Y
#define FlughavenZ Z
was willschen du jetzt mit defines machs doch in eine float in dem befehl dan kannste die variable immer wieder neu verwenden
//edit fehler
//noch n fehler
if(IsPlayerInAnyVehicle(playerid))
{
new tpcar = GetPlayerVehicleID(playerid);
SetVehiclePos(tpcar , Position X, Position Y, Position Z);
PutPlayerInVehicle(playerid,tpcar , 1);
}
else
{
SetPlayerPos(playerid, Position X, Position Y, Position Z);
}
return 1;
}
so wärs richtig
Alles anzeigenwie wärs mit erklärung
if (strcmp("/meincommand", cmdtext, true, 10) == 0)//nach dem / trägst du dein befehl ein
{
if(IsPlayerInAnyVehicle(playerid))// hier wird gefragt ob der spieler in einem auto ist
{
new carid = GetPlayerVehicleID(playerid);
SetVehiclePos(carid, 1970.8090,1625.2159,12.8489);//wenn ja wird das auto an diesen ort gebracht
PutPlayerInVehicle(playerid,carid, 0);//und hier wird der spieler in das auto gesetzt
}
else//wenn der spieler in keinem auto ist
{
SetPlayerPos(playerid, 1970.8090,1625.2159,12.8489);//wird er hier hin gebracht
}
SetPlayerInterior(playerid,0);// hier wird das interior auf 0 gesetzt (die normale welt
}
return 1;
}
1. er hat gefragt wie einer aussieht
2. deine beschreibung stimmt auch nicht ganz
if (strcmp("/gotolv", cmdtext, true, 10) == 0)//command
{
if(IsPlayerInAnyVehicle(playerid))//Spieler in einem auto?
{//ja, auto wird mit geportet und spieler ins auto gepackt
new carid = GetPlayerVehicleID(playerid);
SetVehiclePos(carid, 1970.8090,1625.2159,12.8489);
PutPlayerInVehicle(playerid,carid, 0);
}
else
{//nein, nur spieler wird teleportiert
SetPlayerPos(playerid, 1970.8090,1625.2159,12.8489);
}
return 1;
}
//edit:@über mir: es war eine klammer zu viel
gut bin auch ein mensch nun hat er ja genug ideen wie mans macht
Thx für die vielen Antworten werde sobald ich wieder mal Zeit habe das ganze einbauen
ZitatPutPlayerInVehicle(playerid,carid, 0);//und hier wird der spieler in das auto gesetzt
wird gar nicht gebraucht, hab ich auch net da der spieler im fahrzeug drin ist, wird der spieler sozusagen "deaktiviert" und putplayerinvehicle ist unnütz.
einfaches beispiel:
new spieler[MAX_PLAYERS] = 1; // Das bist du, die 1 steht dafür das du normal gehst (also nicht im auto bist)
new auto[MAX_PLAYERS] = 0; // das ist das auto in das du einsteigen wirst... (also noch deaktiviert)
//jetzt ein standart callback
public OnPlayerEnterVehicle(playerid,vehicleid,ispassenger)
{
spieler[playerid] = 0; //der spieler wird deaktiviert das heißt du gehst in den automodus
auto[playerid] = 1; //du bist nun im auto und der automodus ist aktiviert.
return 1;
}
//jetzt wenn er aussteigt
public OnPlayerExitVehicle(playerid,vehicleid)
{
spieler[playerid] = 1;
auto[playerid] = 0;
//wieder normalzustand
return 1;
}
//jetzt der befehl (ich hab ocmd)
ocmd:gotols(playerid,params[])
{
if(GetPVarInt(playerid,"Adminlevel") >= 1)//ich benutz kein enum :P (das ist das gleiche wie PlayerInfo/Spieler/etc.pp.)
{
if(IsPlayerInAnyVehicle(playerid))// <-- das ist das gleiche wie if(auto[playerid] == 1)
SetVehiclePos(GetPlayerVehicleID(playerid),x,y,z);//x,y,z sind die koordinaten
else SetPlayerPos(playerid,x,y,z); // siehe oben ^^
}
else return SendClientMessage(playerid,rot,"Du bist nicht befugt diesen befehl zu nutzen!");
return 1;
}
hoffe konnte helfen