zug spawnt nicht hoffe um hilfe

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
  • Hey Leute Könnt ihr mir Helfen Ich bekomme Kein zug gespawnt hoffe ihr könnt mir da Helfen



    Zug[0]=CreateVehicleEx(538, 1739.9657,-1958.2709,13.2438,270.7966, 135, 135, -1,false);


    stock CreateVehicleEx(modeltype,Float:xvehpos,Float:yvehpos,Float:zvehpos,Float:vehrotation,vehcc1,vehcc2,vehrespawndelay,bool:resett=true)
    {
    new vehicleid;
    if(modeltype < 400 || modeltype > 611)return 0;
    vehicleid = CreateVehicle(modeltype,xvehpos,yvehpos,zvehpos,vehrotation,vehcc1,vehcc2,vehrespawndelay);
    KillTimer(vFahrzeug[vehicleid][VehicleEngineTimer]);
    GetVehicleParamsEx(vehicleid,engine,lights,alarm,doors,bonnet,boot,objective);
    SetVehicleParamsEx(vehicleid,VEHICLE_PARAMS_OFF,VEHICLE_PARAMS_OFF,VEHICLE_PARAMS_OFF,VEHICLE_PARAMS_OFF,VEHICLE_PARAMS_OFF,VEHICLE_PARAMS_OFF,VEHICLE_PARAMS_OFF);
    Motor[vehicleid] = false;
    lightson[vehicleid] = false;
    motorhaube[vehicleid] = false;
    kofferraum[vehicleid] = false;
    RefillVehicle[vehicleid] = 0;
    RepairAVehicle[vehicleid] = 0;
    UCL[vehicleid] = 0;
    format(VehicleRadioStream[vehicleid],128,"NONE");
    vFahrzeug[vehicleid][OldVehPos][0] = xvehpos;
    vFahrzeug[vehicleid][OldVehPos][1] = yvehpos;
    vFahrzeug[vehicleid][OldVehPos][2] = zvehpos;
    vFahrzeug[vehicleid][OldVehPos][3] = vehrotation;
    vFahrzeug[vehicleid][Xs] = xvehpos;
    vFahrzeug[vehicleid][Ys] = yvehpos;
    vFahrzeug[vehicleid][Zs] = zvehpos;
    vFahrzeug[vehicleid][VehText] = CreateDynamic3DTextLabel(" ", GELB, 0.0, 0.0, 110.0, MAX_STREAM_NAME_DISTANCE, INVALID_PLAYER_ID, vehicleid, 1, -1, -1, -1, 100.0);
    if(resett == false)
    {
    vFahrzeug[vehicleid][Neon] = 0;
    vFahrzeug[vehicleid][KofferraumGanja] = 0;
    vFahrzeug[vehicleid][KofferraumKokain] = 0;
    vFahrzeug[vehicleid][KofferraumMaterials] = 0;
    vFahrzeug[vehicleid][KofferraumOpium] = 0;
    vFahrzeug[vehicleid][KofferraumLunchpakete] = 0;
    vFahrzeug[vehicleid][KofferraumC4] = 0;
    vFahrzeug[vehicleid][KofferraumWerkzeugkasten] = 0;
    vFahrzeug[vehicleid][KofferraumBenzinkanister] = 0;
    vFahrzeug[vehicleid][Kilometer] = 0;
    vFahrzeug[vehicleid][Tankkm] = 0;
    vFahrzeug[vehicleid][FailGas] = 0;
    vFahrzeug[vehicleid][Abgeschleppt] = 0;
    vFahrzeug[vehicleid][AbgeschlepptPreis] = 0;
    MotorDown[vehicleid] = 0;
    vFahrzeug[vehicleid][Tank] = VehicleInfo[modeltype-400][vtankvolumen];
    vFahrzeug[vehicleid][Handbremse] = 0;
    }
    return vehicleid;
    }




    MfG Lui

  • Wie wäre es mal mit selber versuchen und das ergebnis zu posten? Ich lese in den themen immer nur "Kann ich ein Beispiel haben?"


    Ich meine das ist "nur" eine simple if(GetVehicleModel(vid) == Zug_Variable) abfrage und kein Hooken, Bit-Shifting oder sonst was :)


    Soll net böse gemeint sein aber wenn du das net schaffst, solltest du erstmal das SAMP PAWN Wiki studieren... Dann geht das alles wie von geisterhand ;) Weil so macht das ganze wenig bis garkeinen Sinn...


    Ps.: Ja ich weiss das is ein Forum... Wo man sowas postet um halt zu "lernen" aber bissl eigeninitative sollte dabei sein...


    Gruß

  • Wenn du dabei schon Probleme hast, solltest du dir vielleicht mal ein paar Tutorials übers Programmieren auf Youtube anschauen. So macht das nämlich keinen Sinn.
    Besonders im Bereich Pawn Scripting gibt es viele gute deutsche Tutorials.


    Am besten suchst du mal mit deiner Suchfunktion in Pawno, wo irgendwas mit "Gas" oder so steht ... Ziemlich am Anfang des Scripts vermute ich gibt es dazu eine Array, wo alle Fahrzeuge ihren Tank zugewiesen bekommen.
    Falls du dann an dem Punkt angekommen bist, wo Fahrzeuge Benzin abgezogen bekommt (z.B. unter Gas[vehicleid] --; oder ähnliches) musst du die "if" Abfrage, welche dir @Renz schon geliefert hat, einbauen... zB mit einem return beenden.


    ps: Im Normalfall steht das mit dem Gasabzug in einem Timer drinne, oder in einer Public, die in einem Timer aufgerufen wird.

  • habe ich hier geht aber nicht gans probire es grade mit den fahredern



    public Tachometer(playerid)
    {
    new Float:Speedo_Hp,Float:TankInProzent,string[128];
    new vehicleid = GetPlayerVehicleID(playerid);
    //if(GetVehicleModel(vehicleid) == 509 || /*GetVehicleModel(vehicleid) == 481 || */GetVehicleModel(vehicleid) == 510)return 1;
    GetVehicleHealth(vehicleid,Speedo_Hp);
    if(vFahrzeug[vehicleid][Handbremse] == 0)
    {
    GetVehiclePos(vehicleid,vFahrzeug[vehicleid][OldVehPos][0],vFahrzeug[vehicleid][OldVehPos][1],vFahrzeug[vehicleid][OldVehPos][2]);
    GetVehicleZAngle(vehicleid,vFahrzeug[vehicleid][OldVehPos][3]);
    }
    vFahrzeug[vehicleid][Kilometer] += GetDistanceToLastPoint(vehicleid);
    TankInProzent = VehicleInfo[GetVehicleModel(vehicleid)-400][vtankvolumen]/100;
    if(Motor[vehicleid] == true)
    {
    vFahrzeug[vehicleid][Tankkm] += GetDistanceToLastPoint(vehicleid);
    if((vFahrzeug[vehicleid][Tankkm]/1000) >= 1)
    {
    vFahrzeug[vehicleid][Tank] -= VehicleInfo[GetVehicleModel(vehicleid)-400][vtankverbrauch];
    vFahrzeug[vehicleid][Tankkm] = 0;
    }
    }
    /*if(Spieler[playerid][pShowVehInfo] == 0)
    {
    //PlayerTextDrawShow(playerid,INFOdraw[playerid][3]);
    PlayerTextDrawShow(playerid,INFOdraw[playerid][1]);
    PlayerTextDrawShow(playerid,INFOdraw[playerid][3]),PlayerTextDrawSetString(playerid,INFOdraw[playerid][3],"~b~Taste Z:~n~~w~Infobox ein-/ausschalten~n~~b~Taste Num2:~n~~w~Motor ein-/ausschalten~n~~b~Taste Num8:~n~~w~Licht ein-/ausschalten~n~~b~Taste Num4:~n~~w~Radiomenu anzeigen~n~~b~Taste Num6:~n~~w~Handbremse ein-/ausschalten~n~~b~Fahrzeugkontrolle:~n~~w~/cv");
    }*/
    else
    PlayerTextDrawHide(playerid,INFOdraw[playerid][1]);
    PlayerTextDrawHide(playerid,INFOdraw[playerid][3]);
    PlayerTextDrawShow(playerid,Tacho[playerid][0]);
    PlayerTextDrawShow(playerid,Tacho[playerid][1]);
    PlayerTextDrawShow(playerid,Tacho[playerid][2]);
    PlayerTextDrawShow(playerid,Tacho[playerid][3]);
    PlayerTextDrawShow(playerid,Tacho[playerid][15]);
    PlayerTextDrawShow(playerid,Tacho[playerid][16]);
    PlayerTextDrawShow(playerid,Tacho[playerid][17]);
    PlayerTextDrawShow(playerid,Tacho[playerid][18]);
    if(GetVehicleModel(vehicleid) == 509 || GetVehicleModel(vehicleid) == 481 || GetVehicleModel(vehicleid) == 510)
    {
    if(vFahrzeug[vehicleid][Tank]/TankInProzent == 100)
    {
    PlayerTextDrawShow(playerid,Tacho[playerid][4]);//100
    PlayerTextDrawHide(playerid,Tacho[playerid][5]);//90
    PlayerTextDrawHide(playerid,Tacho[playerid][6]);//80
    PlayerTextDrawHide(playerid,Tacho[playerid][7]);//65
    PlayerTextDrawHide(playerid,Tacho[playerid][8]);//50
    PlayerTextDrawHide(playerid,Tacho[playerid][9]);//40
    PlayerTextDrawHide(playerid,Tacho[playerid][10]);//30
    PlayerTextDrawHide(playerid,Tacho[playerid][11]);//20
    PlayerTextDrawHide(playerid,Tacho[playerid][12]);//10
    PlayerTextDrawHide(playerid,Tacho[playerid][13]);//5
    PlayerTextDrawHide(playerid,Tacho[playerid][14]);//0
    }
    else if(vFahrzeug[vehicleid][Tank]/TankInProzent >= 90)
    {
    PlayerTextDrawHide(playerid,Tacho[playerid][4]);//100
    PlayerTextDrawShow(playerid,Tacho[playerid][5]);//90
    PlayerTextDrawHide(playerid,Tacho[playerid][6]);//80
    PlayerTextDrawHide(playerid,Tacho[playerid][7]);//65
    PlayerTextDrawHide(playerid,Tacho[playerid][8]);//50
    PlayerTextDrawHide(playerid,Tacho[playerid][9]);//40
    PlayerTextDrawHide(playerid,Tacho[playerid][10]);//30
    PlayerTextDrawHide(playerid,Tacho[playerid][11]);//20
    PlayerTextDrawHide(playerid,Tacho[playerid][12]);//10
    PlayerTextDrawHide(playerid,Tacho[playerid][13]);//5
    PlayerTextDrawHide(playerid,Tacho[playerid][14]);//0
    }
    else if(vFahrzeug[vehicleid][Tank]/TankInProzent >= 80)
    {
    PlayerTextDrawHide(playerid,Tacho[playerid][4]);//100
    PlayerTextDrawHide(playerid,Tacho[playerid][5]);//90
    PlayerTextDrawShow(playerid,Tacho[playerid][6]);//80
    PlayerTextDrawHide(playerid,Tacho[playerid][7]);//65
    PlayerTextDrawHide(playerid,Tacho[playerid][8]);//50
    PlayerTextDrawHide(playerid,Tacho[playerid][9]);//40
    PlayerTextDrawHide(playerid,Tacho[playerid][10]);//30
    PlayerTextDrawHide(playerid,Tacho[playerid][11]);//20
    PlayerTextDrawHide(playerid,Tacho[playerid][12]);//10
    PlayerTextDrawHide(playerid,Tacho[playerid][13]);//5
    PlayerTextDrawHide(playerid,Tacho[playerid][14]);//0
    }
    else if(vFahrzeug[vehicleid][Tank]/TankInProzent >= 65)
    {
    PlayerTextDrawHide(playerid,Tacho[playerid][4]);//100
    PlayerTextDrawHide(playerid,Tacho[playerid][5]);//90
    PlayerTextDrawHide(playerid,Tacho[playerid][6]);//80
    PlayerTextDrawShow(playerid,Tacho[playerid][7]);//65
    PlayerTextDrawHide(playerid,Tacho[playerid][8]);//50
    PlayerTextDrawHide(playerid,Tacho[playerid][9]);//40
    PlayerTextDrawHide(playerid,Tacho[playerid][10]);//30
    PlayerTextDrawHide(playerid,Tacho[playerid][11]);//20
    PlayerTextDrawHide(playerid,Tacho[playerid][12]);//10
    PlayerTextDrawHide(playerid,Tacho[playerid][13]);//5
    PlayerTextDrawHide(playerid,Tacho[playerid][14]);//0
    }
    else if(vFahrzeug[vehicleid][Tank]/TankInProzent >= 50)
    {
    PlayerTextDrawHide(playerid,Tacho[playerid][4]);//100
    PlayerTextDrawHide(playerid,Tacho[playerid][5]);//90
    PlayerTextDrawHide(playerid,Tacho[playerid][6]);//80
    PlayerTextDrawHide(playerid,Tacho[playerid][7]);//65
    PlayerTextDrawShow(playerid,Tacho[playerid][8]);//50
    PlayerTextDrawHide(playerid,Tacho[playerid][9]);//40
    PlayerTextDrawHide(playerid,Tacho[playerid][10]);//30
    PlayerTextDrawHide(playerid,Tacho[playerid][11]);//20
    PlayerTextDrawHide(playerid,Tacho[playerid][12]);//10
    PlayerTextDrawHide(playerid,Tacho[playerid][13]);//5
    PlayerTextDrawHide(playerid,Tacho[playerid][14]);//0
    }
    else if(vFahrzeug[vehicleid][Tank]/TankInProzent >= 40)
    {
    PlayerTextDrawHide(playerid,Tacho[playerid][4]);//100
    PlayerTextDrawHide(playerid,Tacho[playerid][5]);//90
    PlayerTextDrawHide(playerid,Tacho[playerid][6]);//80
    PlayerTextDrawHide(playerid,Tacho[playerid][7]);//65
    PlayerTextDrawHide(playerid,Tacho[playerid][8]);//50
    PlayerTextDrawShow(playerid,Tacho[playerid][9]);//40
    PlayerTextDrawHide(playerid,Tacho[playerid][10]);//30
    PlayerTextDrawHide(playerid,Tacho[playerid][11]);//20
    PlayerTextDrawHide(playerid,Tacho[playerid][12]);//10
    PlayerTextDrawHide(playerid,Tacho[playerid][13]);//5
    PlayerTextDrawHide(playerid,Tacho[playerid][14]);//0
    }
    else if(vFahrzeug[vehicleid][Tank]/TankInProzent >= 30)
    {
    PlayerTextDrawHide(playerid,Tacho[playerid][4]);//100
    PlayerTextDrawHide(playerid,Tacho[playerid][5]);//90
    PlayerTextDrawHide(playerid,Tacho[playerid][6]);//80
    PlayerTextDrawHide(playerid,Tacho[playerid][7]);//65
    PlayerTextDrawHide(playerid,Tacho[playerid][8]);//50
    PlayerTextDrawHide(playerid,Tacho[playerid][9]);//40
    PlayerTextDrawShow(playerid,Tacho[playerid][10]);//30
    PlayerTextDrawHide(playerid,Tacho[playerid][11]);//20
    PlayerTextDrawHide(playerid,Tacho[playerid][12]);//10
    PlayerTextDrawHide(playerid,Tacho[playerid][13]);//5
    PlayerTextDrawHide(playerid,Tacho[playerid][14]);//0
    }
    else if(vFahrzeug[vehicleid][Tank]/TankInProzent >= 20)
    {
    PlayerTextDrawHide(playerid,Tacho[playerid][4]);//100
    PlayerTextDrawHide(playerid,Tacho[playerid][5]);//90
    PlayerTextDrawHide(playerid,Tacho[playerid][6]);//80
    PlayerTextDrawHide(playerid,Tacho[playerid][7]);//65
    PlayerTextDrawHide(playerid,Tacho[playerid][8]);//50
    PlayerTextDrawHide(playerid,Tacho[playerid][9]);//40
    PlayerTextDrawHide(playerid,Tacho[playerid][10]);//30
    PlayerTextDrawShow(playerid,Tacho[playerid][11]);//20
    PlayerTextDrawHide(playerid,Tacho[playerid][12]);//10
    PlayerTextDrawHide(playerid,Tacho[playerid][13]);//5
    PlayerTextDrawHide(playerid,Tacho[playerid][14]);//0
    }
    else if(vFahrzeug[vehicleid][Tank]/TankInProzent >= 10)
    {
    PlayerTextDrawHide(playerid,Tacho[playerid][4]);//100
    PlayerTextDrawHide(playerid,Tacho[playerid][5]);//90
    PlayerTextDrawHide(playerid,Tacho[playerid][6]);//80
    PlayerTextDrawHide(playerid,Tacho[playerid][7]);//65
    PlayerTextDrawHide(playerid,Tacho[playerid][8]);//50
    PlayerTextDrawHide(playerid,Tacho[playerid][9]);//40
    PlayerTextDrawHide(playerid,Tacho[playerid][10]);//30
    PlayerTextDrawHide(playerid,Tacho[playerid][11]);//20
    PlayerTextDrawShow(playerid,Tacho[playerid][12]);//10
    PlayerTextDrawHide(playerid,Tacho[playerid][13]);//5
    PlayerTextDrawHide(playerid,Tacho[playerid][14]);//0
    }
    else if(vFahrzeug[vehicleid][Tank]/TankInProzent >= 5)
    {
    PlayerTextDrawHide(playerid,Tacho[playerid][4]);//100
    PlayerTextDrawHide(playerid,Tacho[playerid][5]);//90
    PlayerTextDrawHide(playerid,Tacho[playerid][6]);//80
    PlayerTextDrawHide(playerid,Tacho[playerid][7]);//65
    PlayerTextDrawHide(playerid,Tacho[playerid][8]);//50
    PlayerTextDrawHide(playerid,Tacho[playerid][9]);//40
    PlayerTextDrawHide(playerid,Tacho[playerid][10]);//30
    PlayerTextDrawHide(playerid,Tacho[playerid][11]);//20
    PlayerTextDrawHide(playerid,Tacho[playerid][12]);//10
    PlayerTextDrawShow(playerid,Tacho[playerid][13]);//5
    PlayerTextDrawHide(playerid,Tacho[playerid][14]);//0
    }
    else if(vFahrzeug[vehicleid][Tank]/TankInProzent >= 0)
    {
    PlayerTextDrawHide(playerid,Tacho[playerid][4]);//100
    PlayerTextDrawHide(playerid,Tacho[playerid][5]);//90
    PlayerTextDrawHide(playerid,Tacho[playerid][6]);//80
    PlayerTextDrawHide(playerid,Tacho[playerid][7]);//65
    PlayerTextDrawHide(playerid,Tacho[playerid][8]);//50
    PlayerTextDrawHide(playerid,Tacho[playerid][9]);//40
    PlayerTextDrawHide(playerid,Tacho[playerid][10]);//30
    PlayerTextDrawHide(playerid,Tacho[playerid][11]);//20
    PlayerTextDrawHide(playerid,Tacho[playerid][12]);//10
    PlayerTextDrawHide(playerid,Tacho[playerid][13]);//5
    PlayerTextDrawShow(playerid,Tacho[playerid][14]);//0
    }
    }

  • Habe ein kleines Problem der user wird nicht aus dem zug geschmischen wenn der user nicht im job ist weiß einer warum




    if(IsVehicleAZug(vehicleid))
    {
    if(Spieler[playerid][pJob] != 21)
    {
    TextDrawShowForPlayer(playerid,InfoSign);
    PlayerTextDrawSetString(playerid,INFOdraw[playerid][2],"~r~Info:~w~~n~Du besitzt nicht den jeweiligen Job.");
    PlayerTextDrawShow(playerid,INFOdraw[playerid][2]);
    SetTimerEx("HideInfoBox",3000,0,"i",playerid);
    return RemovePlayerFromVehicle(playerid);
    }
    }

  • Wo rufst du das auf?
    Wie sieht die IsVehicleAZug Funktion aus?
    Versuch mal das return vor dem RemovePlayerFromVehicle zu entfernen und eine Zeile darunter zu packen.


    Trennung..


    Wieso machst du das so kompliziert mit der Tankanzeige, also die TextDraws anzeigen?
    Du kannst auch ein einziges TextDraw erstellen und dann den String ändern und die genaue Tankanzeige anzeigen lassen.


    Mit freundlichen Grüßen
    JustMe.77 8)

  • das mit dem return 1; eine zeile weiter geht nicht



    und der zug wird so erstellt



    Zug[0]=AddStaticVehicleEx(538,1739.9657,-1958.2709,13.2438,270.7966,1,1,120); for(new i=0; i<sizeof(Zug); i++)
    {
    UpdateDynamic3DTextLabelText(vFahrzeug[Zug[i]][VehText], BUSFARBESYSTEM, #JobNameBus\n"Leerfahrt");
    Streamer_SetFloatData(STREAMER_TYPE_3D_TEXT_LABEL, vFahrzeug[Zug[i]][VehText], E_STREAMER_ATTACH_OFFSET_Z, 2.0);
    Streamer_SetFloatData(STREAMER_TYPE_3D_TEXT_LABEL, vFahrzeug[Zug[i]][VehText], E_STREAMER_ATTACH_OFFSET_Y, 5.0);
    }
    Kann mir da Einer helfen MfG