Timerproblem, IfPlayerToPoint

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, habe ein Problem bei diesem Code:


    public IfInATram(playerid)
    {
    new car2 = GetVehicleModel(GetPlayerVehicleID(playerid));
    if(car2 == 449)
    {
    IsInTram[playerid] = 1;
    }
    else
    {
    IsInTram[playerid] = 0;
    }


    if(IsInTram[playerid] == 1)
    {
    if(PlayerToPoint(10.0,playerid,-2006.6013,113.9948,27.0912)) //GOTOZEROS
    {
    SendClientMessage(playerid, COLOR_CBLUE,"________________ Straßenbahn ________________");
    SendClientMessage(playerid, COLOR_GREEN," Nächste Station: Zeros RC Shop");
    SendClientMessage(playerid, COLOR_CBLUE,"________________ Straßenbahn ________________");
    }
    if(PlayerToPoint(10.0,playerid,-2251.6741,216.1704,34.7366)) //Chinatown
    {
    SendClientMessage(playerid, COLOR_CBLUE,"________________ Straßenbahn ________________");
    SendClientMessage(playerid, COLOR_GREEN," Nächste Station: Chinatown");
    SendClientMessage(playerid, COLOR_CBLUE,"________________ Straßenbahn ________________");
    }
    if(PlayerToPoint(10.0,playerid,-2264.7903,645.8811,48.8616)) //Pier
    {
    SendClientMessage(playerid, COLOR_CBLUE,"________________ Straßenbahn ________________");
    SendClientMessage(playerid, COLOR_GREEN," Nächste Station: Pier 69");
    SendClientMessage(playerid, COLOR_CBLUE,"________________ Straßenbahn ________________");
    }
    if(PlayerToPoint(10.0,playerid,-1653.2128,1266.3635,6.6038)) //BSZIP
    {
    SendClientMessage(playerid, COLOR_CBLUE,"________________ Straßenbahn ________________");
    SendClientMessage(playerid, COLOR_GREEN," Nächste Station: Burgershot / ZIP SF");
    SendClientMessage(playerid, COLOR_CBLUE,"________________ Straßenbahn ________________");
    }
    if(PlayerToPoint(10.0,playerid,-1786.3103,848.8072,24.2991)) //San Fierre Station
    {
    SendClientMessage(playerid, COLOR_CBLUE,"________________ Straßenbahn ________________");
    SendClientMessage(playerid, COLOR_GREEN," Nächste Station: San Fierro Hauptbahnhof");
    SendClientMessage(playerid, COLOR_CBLUE,"________________ Straßenbahn ________________");
    }
    }
    return 1;
    }


    Timer wird bei OnGameModeInit gesetzt, mit 1 Sekunde.


    Wenn ich mit der Straßenbahn an der Genannten Stelle Vorbeifahre passiert nix, kennt jemand den Fehler?
    MfG

  • SetTimer("IfInATram",1000, 1);
    In OnGameModeInit


    Ich habs auch Schon Per SetTimerEx in OnPlayerConnect probiert aber das ist Blödsinn^^

  • ich denke das ist zu schnell wenn du vorbei fährst
    mach den timer 500ms

  • Die Straßenbahn ist nicht so Schnell!
    Auserdem sinds ja 10 Meter Entfernung

  • Ich habs auch Schon Per SetTimerEx in OnPlayerConnect probiert aber das ist Blödsinn


    Stimmt aber so wie dus da gemacht hast ist es auch blödsinn xD


    ich denke das ist zu schnell wenn du vorbei fährst
    mach den timer 500ms


    500ms ist doch noch schneller? dann wird man ja zugespammt :pinch:


    So würd ichs machen(verhindert man direkt den Spam)



    forward IfInATram();
    new MessageSend[MAX_PLAYERS];
    //Gamemodeinit
    SetTimer("IfInATram",1000,1);
    //onplayerconnect:
    MessageSend[playerid] = 0;
    public IfInATram()
    {
    for(new playerid = 0; playerid < MAX_PLAYERS; playerid++)
    {
    if(IsPlayerConnected(playerid))
    {
    new car2 = GetVehicleModel(GetPlayerVehicleID(playerid));
    if(car2 == 449)
    {
    IsInTram[playerid] = 1;
    }
    else
    {
    IsInTram[playerid] = 0;
    }
    if(IsInTram[playerid] == 1)
    {
    if(PlayerToPoint(10.0,playerid,-2006.6013,113.9948,27.0912) && MessageSend[playerid] == 0) //GOTOZEROS
    {
    SendClientMessage(playerid, COLOR_CBLUE,"________________ Straßenbahn ________________");
    SendClientMessage(playerid, COLOR_GREEN," Nächste Station: Zeros RC Shop");
    SendClientMessage(playerid, COLOR_CBLUE,"________________ Straßenbahn ________________");
    MessageSend[playerid] = 1;
    }
    if(PlayerToPoint(10.0,playerid,-2251.6741,216.1704,34.7366) && MessageSend[playerid] == 0) //Chinatown
    {
    SendClientMessage(playerid, COLOR_CBLUE,"________________ Straßenbahn ________________");
    SendClientMessage(playerid, COLOR_GREEN," Nächste Station: Chinatown");
    SendClientMessage(playerid, COLOR_CBLUE,"________________ Straßenbahn ________________");
    MessageSend[playerid] = 1;
    }
    if(PlayerToPoint(10.0,playerid,-2264.7903,645.8811,48.8616) && MessageSend[playerid] == 0) //Pier
    {
    SendClientMessage(playerid, COLOR_CBLUE,"________________ Straßenbahn ________________");
    SendClientMessage(playerid, COLOR_GREEN," Nächste Station: Pier 69");
    SendClientMessage(playerid, COLOR_CBLUE,"________________ Straßenbahn ________________");
    MessageSend[playerid] = 1;
    }
    if(PlayerToPoint(10.0,playerid,-1653.2128,1266.3635,6.6038) && MessageSend[playerid] == 0) //BSZIP
    {
    SendClientMessage(playerid, COLOR_CBLUE,"________________ Straßenbahn ________________");
    SendClientMessage(playerid, COLOR_GREEN," Nächste Station: Burgershot / ZIP SF");
    SendClientMessage(playerid, COLOR_CBLUE,"________________ Straßenbahn ________________");
    MessageSend[playerid] = 1;
    }
    if(PlayerToPoint(10.0,playerid,-1786.3103,848.8072,24.2991) && MessageSend[playerid] == 0) //San Fierre Station
    {
    SendClientMessage(playerid, COLOR_CBLUE,"________________ Straßenbahn ________________");
    SendClientMessage(playerid, COLOR_GREEN," Nächste Station: San Fierro Hauptbahnhof");
    SendClientMessage(playerid, COLOR_CBLUE,"________________ Straßenbahn ________________");
    MessageSend[playerid] = 1;
    }
    else
    {
    MessageSend[playerid] = 0;
    }
    }
    }
    }
    return 1;
    }