[Dringend] Fraktionswagen | Kein Kick aus Auto, trotz definierung

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
  • public IsACopCar(carid)
    {
    new model = GetVehicleModel(carid);
    if(model == 427 || model == 497 || model == 523 || model == 528 || model == 596 || model == 597 || model == 598 || model == 599 || model == 601 || model == 33)
    {
    return 1;
    }
    return 0;
    }
    Hier sind die Model Ids definiert.... Sind alle Copcars.... Über Oldcar habe ich die letze Zahl rausbekommen, die 33... Dies ist also die Carid (33. auto)
    Der rest sind die ModelIds


    Nun der nächste Teil:
    else if(IsACopCar(newcar))
    {
    if(PlayerInfo[playerid][pMember] == 1||PlayerInfo[playerid][pLeader] == 1 || PlayerInfo[playerid][pLeader] == 3 || PlayerInfo[playerid][pMember] == 3|| PlayerInfo[playerid][pLeader] == 2 || PlayerInfo[playerid][pMember] == 2) { }
    else
    {
    RemovePlayerFromVehicle(playerid);
    }
    }
    Wenn ich aber als Zivilist einsteige werde ich nicht ausm auto geschmissennn....


    Was ist da falsch?

    Einmal editiert, zuletzt von [GRS]InCredible ()

  • So habe ich es so müsste es funktionieren.


    public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
    {
    if(IsCopCar(GetPlayerVehicleID(playerid)))
    {
    if(gTeam[playerid] != TEAM_LSPD) // MUss hier noch die IF abfrage ändern
    {
    RemovePlayerFromVehicle(playerid);
    SendClientMessage(playerid,RED,"Du bist kein Polizist!");
    }
    }
    return 1;
    }


    achja und die copcars definieren so:


    bei News


    new copcar[13]; // Zahl ändern!


    Unter Gamemodeint

    copcar[0] = AddStaticVehicle(596,1601.7402,-1683.9487,5.6117,89.1942,0,1); // pdcar1
    copcar[1] = AddStaticVehicle(596,1601.7346,-1687.9990,5.6118,90.4221,0,1); // pdcar2
    copcar[2] = AddStaticVehicle(596,1601.7441,-1692.1085,5.6129,90.0150,0,1); // pdcar3
    copcar[3] = AddStaticVehicle(596,1601.7682,-1696.3033,5.6126,90.8450,0,1); // pdcar4
    copcar[4] = AddStaticVehicle(596,1601.7307,-1700.3146,5.6125,91.1427,0,1); // pdcar5
    copcar[5] = AddStaticVehicle(596,1601.6544,-1704.3232,5.6136,90.3366,0,1); // pdcar6
    copcar[6] = AddStaticVehicle(599,1595.4712,-1711.2780,6.0870,0.2318,0,1); // pdcar7
    copcar[7] = AddStaticVehicle(599,1591.4020,-1711.3721,6.0872,1.2291,0,1); // pdcar8
    copcar[8] = AddStaticVehicle(427,1587.3844,-1710.9065,6.0249,359.6377,0,1); // pdcar9
    copcar[9] = AddStaticVehicle(427,1583.5768,-1710.8958,6.0232,359.9684,0,1); // pdcar10
    copcar[10] = AddStaticVehicle(523,1587.8984,-1675.7637,5.4668,271.2763,1,0); // copbike1
    copcar[11] = AddStaticVehicle(523,1587.7444,-1677.6245,5.4613,270.3202,1,0); // copbike2
    copcar[12] = AddStaticVehicle(523,1587.8896,-1679.6384,5.4608,273.4376,1,0); // copbike3

    Ganz unten!
    public IsCopCar(vehid)
    {
    for(new i = 0;i<sizeof(copcar);i++)
    {
    if(vehid == copcar[i])return 1;
    }
    return 0;
    }


    ~*|B|*|S|*|F|*~ - Reallife


    *Closed Beta 0.1 - Finish
    *Closed Beta 0.2 - Started
    *Erste Open Beta 0.3 Come Soon !!!


    Prozent : 20%
    ||||||||||


  • Toll, dann müsste ich mein komplettes System abändern... Geht das noch anders?? Mein System einfach überarbeiten?? Da muss doch was falsch sein

  • Tipp: Bei OnPlayerEnterVehicle kann man den Spieler nicht rausschmeisen, da dieser Callback schon anfängt wenn man auf die Einsteig-Taste drückt ;)
    Versuchs mal mit OnPlayerStateChange :)

  • Schau dir mein Tutorial ein, dort wird erklärt wie du das Auto kurzschliessen kannst, wen du der Fraktion
    nicht angehörst, du kannst das kurzschliessen einfach rausnehmen, und dan RemovePlayerFromVehicle...


    Das heißt, du kannst dan den Callback bei OnPlayerEnterVehicle nutzen, da in meinem Tutorial ein Timer
    abläuft, und der erst nach 5 Sekunden, den Spieler Freezt, und ihm die möglichkeit ausgibt !


    Schau auf meine Signatur.

  • Ist das möglich, irgendwie durch ein Zeichen es so zu machen, dass ich nicht alle CarIDs schreiben muss sondern einfach z.b 90-104 machen kann... Gibt es da eine möglichkeit?

  • Geht immernoch nicht.. Habs jetzt so:


    Meine Autos:
    copcar[0] = AddStaticVehicle(497,-1676.6909,712.1545,30.7782,269.6934,0,1); // sf heli 1
    copcar[1] = AddStaticVehicle(497,-1676.5270,699.8519,30.7782,269.1807,0,1); // sf heli2
    copcar[2] = AddStaticVehicle(601,-1623.4092,649.3776,-5.4837,89.5186,0,1); // spritze 1
    copcar[3] = AddStaticVehicle(528,-1640.0264,649.7460,-5.1972,270.2427,0,1); // tank 1
    copcar[4] = AddStaticVehicle(601,-1623.1870,653.7153,-5.4834,88.8438,0,1); // spritze 2
    copcar[5] = AddStaticVehicle(528,-1640.0371,653.8900,-5.1975,269.8074,0,1); // tank 2
    copcar[6] = AddStaticVehicle(599,-1616.5688,732.2340,-5.0504,359.6032,0,1); // ranger 1
    copcar[7] = AddStaticVehicle(599,-1612.9281,731.5094,-5.0512,0.3569,0,1); // ranger 2
    copcar[8] = AddStaticVehicle(597,-1616.5963,748.7743,-5.4736,180.0533,0,1); // police 1
    copcar[9] = AddStaticVehicle(597,-1612.4529,748.7443,-5.4740,180.0297,0,1); // police 2
    copcar[10] = AddStaticVehicle(597,-1608.5807,748.9258,-5.4729,181.0740,0,1); // police 3
    copcar[11] = AddStaticVehicle(523,-1592.4868,706.0534,-5.6715,327.3725,0,1); // motor 1
    copcar[12] = AddStaticVehicle(523,-1590.8335,705.1049,-5.6678,317.8932,0,1); // motor 2
    copcar[13] = AddStaticVehicle(523,-1588.5435,704.9459,-5.6645,324.9074,0,1); // motor 3
    copcar[14] = AddStaticVehicle(523,-1592.9642,705.3075,-5.6704,327.3724,0,1); // motor 0
    copcar[15] = AddStaticVehicle(427,1526.8040,-1645.2378,6.0225,180.1777,0,1); // LSPDenf
    copcar[16] = AddStaticVehicle(427,1530.6295,-1645.1561,6.0226,180.9305,0,1); // LSPDenf
    copcar[17] = AddStaticVehicle(427,1534.6031,-1645.0212,6.0225,181.4529,0,1); // LSPDEnforc
    copcar[18] = AddStaticVehicle(427,1538.6747,-1644.8713,6.0247,182.2266,0,1); // lspdenfor
    copcar[19] = AddStaticVehicle(599,1558.8527,-1710.3196,6.0789,0.2289,0,1); // LSPDRancher
    copcar[20] = AddStaticVehicle(601,1564.8849,-1709.7466,5.6494,333.0285,0,1); // Wasserwerfer
    copcar[21] = AddStaticVehicle(596,1570.3167,-1709.4863,5.6118,1.9558,0,1); // LSPD
    copcar[22] = AddStaticVehicle(596,1574.4641,-1709.4738,5.6112,359.8345,0,1); // LSPD
    copcar[23] = AddStaticVehicle(596,1578.7756,-1709.6188,5.6118,0.8803,0,1); // LSPD
    copcar[24] = AddStaticVehicle(599,1583.5287,-1709.7101,6.0792,358.6688,0,1); // LSPD
    copcar[25] = AddStaticVehicle(599,1587.6195,-1709.7272,6.0829,2.0047,0,1); // LSPD
    copcar[26] = AddStaticVehicle(601,1593.4230,-1710.3311,5.6494,318.5876,0,1); // Wasserwerfer
    copcar[27] = AddStaticVehicle(523,1603.9866,-1710.1903,5.4643,55.0181,0,1); // Bike
    copcar[28] = AddStaticVehicle(523,1602.9913,-1711.9707,5.4603,57.7238,0,1); // Bike
    copcar[29] = AddStaticVehicle(523,1601.2034,-1713.0629,5.4596,21.9783,0,1); // bike
    copcar[30] = AddStaticVehicle(523,1599.2734,-1713.2079,5.4604,4.1978,0,1); // Bike
    copcar[31] = AddStaticVehicle(596,1586.0958,-1667.7905,5.6119,270.6534,0,1); // LSPD
    copcar[32] = AddStaticVehicle(596,1586.0526,-1671.5160,5.6141,270.5114,0,1); // LSPD
    copcar[33] = AddStaticVehicle(599,1600.5248,-1700.1803,6.0778,91.2639,0,1); // rancher
    copcar[34] = AddStaticVehicle(599,1600.4611,-1696.0944,6.0793,91.0152,0,1); // Rancher
    copcar[35] = AddStaticVehicle(599,1600.5719,-1692.1035,6.0788,90.3121,0,1); // Rancher
    copcar[36] = AddStaticVehicle(596,1528.8552,-1683.8950,5.6114,270.5047,0,1); // LSPD
    copcar[37] = AddStaticVehicle(596,1528.7667,-1687.8878,5.6111,268.4010,0,1); // LSPD Auch unter New; new copcar[38];


    Onplayerstatechange:
    else if(IsACopCar(newcar))
    {
    if(PlayerInfo[playerid][pMember] == 1||PlayerInfo[playerid][pLeader] == 1 || PlayerInfo[playerid][pLeader] == 3 || PlayerInfo[playerid][pMember] == 3|| PlayerInfo[playerid][pLeader] == 2 || PlayerInfo[playerid][pMember] == 2) { }
    else
    {
    RemovePlayerFromVehicle(playerid);
    }
    }
    public IsACopCar(carid)
    {
    for(new i = 0;i<sizeof(copcar);i++)
    {
    if(carid == copcar[i])return 1;
    }
    return 0;
    }