Auto Bug -.- + 50€ PSC

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
  • Hallo Community,


    bin grade am Verzweiflen. Warum kann jeder in das Fahrzeug?


    ->


    public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
    {
    SendClientMessage(playerid,Admincmd,"Debugnachricht: Sie betreten Fahrzeug");
    if(PolizeiFahrzeug(vehicleid) && !ispassenger)
    {
    if(SpielerInfo[playerid][pTeam] == 1)
    {
    SendClientMessage(playerid,Admincmd,"Debugnachricht: Du bist im Fahrzeug.");
    }
    else
    {
    SendClientMessage(playerid,Admincmd,"** Du hast keinen Schlüssel um den Motor zu starten!");
    RemovePlayerFromVehicle(playerid);
    }
    }
    }

    Einmal editiert, zuletzt von |GXR|B3ar ()

  • if(SpielerInfo[playerid][pTeam] == 1)
    {
    SendClientMessage(playerid,Admincmd,"Debugnachricht: Du bist im Fahrzeug.");
    }
    else
    {if(SpielerInfo[playerid][pTeam] == 0){
    SendClientMessage(playerid,Admincmd,"** Du hast keinen Schlüssel um den Motor zu starten!");
    RemovePlayerFromVehicle(playerid);}
    }
    Sry ist bischen verschoben oO
    Zusammenfassung : wenn 1 darf er wenn pTeam 0 ist ,darf er nicht
    Versuch´s mal

  • OnPlayerEnterVehicle wird gecalled sobald man Enter drückt in der nähe eines Autos
    d.h. du musst den ganzen Kram nach OnPlayerStateChange packen oder mit SetPlayerPos arbeiten

    "Bevor ich mir Informationen aus der "Bild" hole,
    werde ich anfangen, Wahlergebnisse danach vorauszusagen,
    neben welchen Busch unsere Katze gepinkelt hat."

    Margarete Stokowski

  • if (PolizeiFahrzeug(vehicleid) && !ispassenger)
    {
    if(SpielerInfo[playerid][pTeam] == 1) {}
    else
    {
    SendClientMessage(playerid,COLOR_RED,"Du hast keine Schlüssel");
    TogglePlayerControllable(playerid,false);
    TogglePlayerControllable(playerid,true);
    }
    }

  • So habe alles gemacht, aber JEDER kann ins Fahrzeug rein..


    public OnPlayerStateChange(playerid, newstate, oldstate)
    {
    new newcar = GetPlayerVehicleID(playerid);
    if(newstate == PLAYER_STATE_DRIVER)
    {
    if(IsACopCar(newcar))
    {
    if(SpielerInfo[playerid][pTeam] == 1) { }
    else
    {
    RemovePlayerFromVehicle(playerid);
    return 1;
    }
    }
    }
    return 1;
    }


    SO //ich habe einen Bus Bot drinne. Der Spawnt normal fährt auch, wenn ich aber den Code da oben einfüge, spawnt er nicht und ich werde nur bei dem Bot gekickt wenn ich einsteige.. 8|
    Sollte jemand den Bug beheben. Bekommt er eine 50€ PSC !!

  • Sp müsste es gehen.
    G-Team ist zu allgemein nutz doch einfach die Fraktionsids von denCops, hab es mal so gemacht,
    Und das mit deinem BusBot müsste so gehen


    public OnPlayerStateChange(playerid, newstate, oldstate)
    {
    new newcar = GetPlayerVehicleID(playerid);
    if(newstate == PLAYER_STATE_DRIVER)
    {
    if(IsACopCar(newcar))
    {
    if(SpielerInfo[playerid][pMember] == 1||SpielerInfo[playerid][pLeader] == 1) { }
    else
    {
    if(!IsPlayerNPC(playerid))
    {
    RemovePlayerFromVehicle(playerid);
    }
    return 1;
    }
    }
    }
    return 1;
    }

  • ??


    Ich meine es so..


    Nur Team 1 soll rein. Die anderen nicht. Wenn ich den Code vor dir reinpacke, wird nur der "Bus" Bot so behandelt als ob er ein Fahrzeug vom LSPD währe..


    //EDIT Hab kein pLeader. Nutze Selfmade

  • So sollte es gehn:


    Mach anstatt IsACopCar:
    new Polizeiautos[20];
    Bei OnGameModeInit:
    Polizeiautos[0] = CreateVehicle();
    Polizeiautos[1] = CreateVehicle();//usw.
    Dann machste bei OnPlayerStateChange
    new veh = GetPlayerVehicleID(playerid);
    for(new v = 0; v < sizeof(Polizeiautos); v++)
    {
    if(veh == Polizeiautos[v])
    {
    if(SpielerInfo[playerid][pTeam] != 1)
    {
    SendClientMessage(playerid,COLOR_RED,"Du bist kein Mitglied der Polizei!");
    RemovePlayerFromVehicle(playerid);
    return 1;
    }
    }
    }
    So brauchste das public IsACopCar bzw. den Timer nicht ;D
    Bei mir funktioniert es underbar.
    mit freundlichen Grüßen
    Sven



    P.S.:Den Code des Geldes bitte per Pn will unbedingt Tomb Raider bei Steam kaufen...


    //edit 1 Etwas vergessen


    Bewerte mich und meine Transaktionen als Mittelsmann

  • public OnPlayerStateChange(playerid, newstate, oldstate)
    {
    new newcar = GetPlayerVehicleID(playerid);
    if(newstate == PLAYER_STATE_DRIVER)
    {
    if(IsACopCar(newcar))
    {
    if(SpielerInfo[playerid][pTeam] == 1) { }
    else
    {
    if(!IsPlayerNPC(playerid))
    {
    RemovePlayerFromVehicle(playerid);
    }
    return 1;
    }
    }
    }
    return 1;
    }


    So nur Cops kommen rein. Aber wenn du nen Bot hast die kommen auch rein, Spieler aber nicht


    Für deine 50 Euro würd ich dir ein ganz neues System schreiben

  • Nein ist nicht von nem Tutorial Selfmade...
    Bei mir geht es trotzdem.
    Wenn du meinst das es Tutorial ist ok torotzdem ist und belibt es Selfmade sprich von mir gemacht.
    Mit freundlichen Grüßen
    Sven


    Bewerte mich und meine Transaktionen als Mittelsmann

  • Ihr versteht das falsch.. der bot wird wie eins der fahrzeuge behandelt. man kann die fahrzeuge fahren vom lspd bloß den bot nicht, und der bot spawnt nicht..


    //


    Bus1 = CreateVehicle(437, 1903.5, -2054.8000488281, 13.39999961853, 270, 10, 1, -1);



    CopCar[0] = SetVehicleNumberPlate(AddStaticVehicleEx(523,1545.0985,-1671.4629,13.1269,127.1753,0,0,-1),"LA-PD-01");
    CopCar[1] = SetVehicleNumberPlate(AddStaticVehicleEx(523,1545.1659,-1679.7786,13.1276,54.9692,0,0,-1),"LA-PD-02");
    CopCar[2] = SetVehicleNumberPlate(AddStaticVehicleEx(523,1601.7990,-1712.1677,5.4645,37.1804,0,0,-1),"LA-PD-03");
    CopCar[3] = SetVehicleNumberPlate(AddStaticVehicleEx(523,1603.8710,-1709.1497,5.4631,71.6552,0,0,-1),"LA-PD-04");
    CopCar[4] = SetVehicleNumberPlate(AddStaticVehicleEx(596,1535.9142,-1667.5808,13.1041,0.0834,0,1,-1),"LA-PD-05");
    CopCar[5] = SetVehicleNumberPlate(AddStaticVehicleEx(596,1535.8748,-1677.5326,13.1057,0.3274,0,1,-1),"LA-PD-06");
    CopCar[6] = SetVehicleNumberPlate(AddStaticVehicleEx(596,1545.6230,-1667.8472,5.6100,89.7541,0,1,-1),"LA-PD-07");
    CopCar[7] = SetVehicleNumberPlate(AddStaticVehicleEx(596,1545.5867,-1659.0189,5.6099,89.7414,0,1,-1),"LA-PD-08");
    CopCar[8] = SetVehicleNumberPlate(AddStaticVehicleEx(596,1545.7883,-1651.0334,5.6112,89.6071,0,1,-1),"LA-PD-09");
    CopCar[9] = SetVehicleNumberPlate(AddStaticVehicleEx(427,1530.4569,-1644.9091,6.0225,179.8996,0,1,-1),"LA-PD-10");
    CopCar[10] = SetVehicleNumberPlate(AddStaticVehicleEx(427,1538.7000,-1644.9155,6.0226,180.0895,0,1,-1),"LA-PD-11");
    CopCar[11] = SetVehicleNumberPlate(AddStaticVehicleEx(596,1545.5192,-1676.1166,5.6129,89.2315,0,1,-1),"LA-PD-12");
    CopCar[12] = SetVehicleNumberPlate(AddStaticVehicleEx(596,1545.2662,-1684.3419,5.6123,89.2923,0,1,-1),"LA-PD-13");
    CopCar[13] = SetVehicleNumberPlate(AddStaticVehicleEx(599,1540.4504,-1705.5575,6.0802,223.2303,0,1,-1),"LA-PD-14");
    CopCar[15] = SetVehicleNumberPlate(AddStaticVehicleEx(596,1558.7784,-1711.3394,5.6102,359.5874,0,1,-1),"LA-PD-15");
    CopCar[16] = SetVehicleNumberPlate(AddStaticVehicleEx(596,1570.3877,-1711.1851,5.6111,0.2738,0,1,-1),"LA-PD-16");
    CopCar[17] = SetVehicleNumberPlate(AddStaticVehicleEx(596,1578.6273,-1711.0134,5.6121,359.9063,0,1,-1),"LA-PD-17");
    CopCar[18] = SetVehicleNumberPlate(AddStaticVehicleEx(596,1587.6519,-1710.9180,5.6110,359.9719,0,1,-1),"LA-PD-18");
    CopCar[19] = SetVehicleNumberPlate(AddStaticVehicleEx(596,1595.5093,-1710.6465,5.6127,0.2428,0,1,-1),"LA-PD-19");
    CopCar[20] = SetVehicleNumberPlate(AddStaticVehicleEx(596,1601.6033,-1700.2112,5.6129,89.8648,0,1,-1),"LA-PD-20");
    CopCar[21] = SetVehicleNumberPlate(AddStaticVehicleEx(596,1601.4409,-1691.9700,5.6128,90.1474,0,1,-1),"LA-PD-21");
    CopCar[22] = SetVehicleNumberPlate(AddStaticVehicleEx(596,1544.2070,-1612.7570,13.1050,270.1479,0,1,-1),"LA-PD-22");
    CopCar[23] = SetVehicleNumberPlate(AddStaticVehicleEx(596,1544.1073,-1606.6240,13.1026,270.8248,0,1,-1),"LA-PD-23");
    CopCar[24] = SetVehicleNumberPlate(AddStaticVehicleEx(497,1566.2874,-1705.9117,28.5511,87.4687,0,1,-1),"LA-PD-24");
    CopCar[25] = SetVehicleNumberPlate(AddStaticVehicleEx(497,1565.9731,-1694.1826,28.5492,90.2611,0,1,-1),"LA-PD-25");
    CopCar[26] = SetVehicleNumberPlate(AddStaticVehicleEx(497,1567.4668,-1657.2220,28.5477,88.7714,0,1,-1),"LA-PD-26");
    CopCar[27] = SetVehicleNumberPlate(AddStaticVehicleEx(497,1564.1532,-1641.7972,28.5625,86.2194,0,1,-1),"LA-PD-27");

  • Dann verschieben sie die IDS typischer GF bug(will nicht behaupten das du GF nutzt)
    Connectet der Bot?
    Ansonsten guck ma hier im Tutorial nach:
    [ SCRIPTING ] Samp 0.3 Bots Erstellen [überarbeitet]
    //edit 1
    Also willste das der Bot als LSPD Car gezählt wird?
    Falls ja dann sollte es so auch gehn:
    new veh = GetPlayerVehicleID(playerid);
    if(veh == Bus1)
    {
    if(SpielerInfo[playerid][pTeam] != 1)
    {
    SendClientMessage(playerid,COLOR_RED,"Du bist kein Mitglied der Polizei!");
    RemovePlayerFromVehicle(playerid);
    return 1;
    }
    }


    //edit 2 //edit 1 hinzugefügt


    Bewerte mich und meine Transaktionen als Mittelsmann

    2 Mal editiert, zuletzt von lollipop ()

  • Das mein ich nicht.


    Also alles von vorne ->


    Ohne den Code von mir, spawnt der Bot und fährt seine Tour ab.


    Mit meinem Code spawnt er nicht, lediglich der Bus steht da..
    Ich steige mit F in den Bus ein.. Werde rausgeschmissen.. "Du bist kein Beamter" ..


    Bei den LSPD Wagen geht es nicht.

  • public IsACopCar(carid)
    {
    for(new i = 0; i < sizeof(CopCar); i++)
    {
    if(carid == CopCar[i])
    {
    return 1;
    }
    }
    return 0;
    }

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen